Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- #include a_samp
- #include mapandreas
- #undef MAX_PLAYERS
- #define MAX_PLAYERS 100 // Serverslots beachten!
- #define MAX_CHOPPERS 5
- #define AMMO 50
- #define SHOOT "/fire"
- enum pInfo{
- chopper,
- bool:HasChopper,
- ChopperID,
- chpTime,
- bool:change,
- timer,
- PlayerText:TimerDraw,
- Float:SaveX,
- Float:SaveY,
- Float:SaveZ,
- Float:SaveR
- };
- forward CreatePlayerChopper( gunnerid, npcname[ ], script[ ], length, pilotid );
- forward ChopperHandler( gunnerid, func );
- new PlayerInfo[ MAX_PLAYERS ][ pInfo ];
- new obj[ MAX_CHOPPERS char ] = -1;
- new objChopper[ MAX_OBJECTS char ] = -1;
- new Timer[ MAX_OBJECTS char ];
- new bool:Rocket[ MAX_OBJECTS ];
- new Text:TextDraw[ 7 char ];
- new ammo[ MAX_PLAYERS char ] = 0;
- new pName[ MAX_PLAYERS ][ MAX_PLAYER_NAME ];
- new pBotName[ MAX_PLAYERS ][ MAX_PLAYER_NAME ];
- new PlayerText:AmmoTDraw[ MAX_PLAYERS char ];
- #define AmmoTDraw[%0] AmmoTDraw{%0}
- #define objChopper[%0] objChopper{%0}
- #define TextDraw[%0] TextDraw{%0}
- #define obj[%0] obj{%0}
- #define Timer[%0] Timer{%0}
- #define ammo[%0] ammo{%0}
- public OnFilterScriptInit( )
- {
- MapAndreas_Init( MAP_ANDREAS_MODE_FULL );
- TextDraw[ 0 ] = TextDrawCreate( -1.000000, 2.000000, "w" );
- TextDrawBackgroundColor( TextDraw[ 0 ], 255 );
- TextDrawFont( TextDraw[ 0 ], 1 );
- TextDrawLetterSize( TextDraw[ 0 ], 0.019998, 51.299999 );
- TextDrawColor( TextDraw[ 0 ], -1 );
- TextDrawSetOutline( TextDraw[ 0 ], 0 );
- TextDrawSetProportional( TextDraw[ 0 ], 1 );
- TextDrawSetShadow( TextDraw[ 0 ], 1 );
- TextDrawUseBox( TextDraw[ 0 ], 1 );
- TextDrawBoxColor( TextDraw[ 0 ], 100 );
- TextDrawTextSize( TextDraw[ 0 ], 642.000000, 30.000000 );
- TextDraw[ 1 ] = TextDrawCreate( 489.000000, 6.000000, "Uplink: 29.28.54#~n~ 10x60 MHZ" );
- TextDrawBackgroundColor( TextDraw[ 1 ], 255 );
- TextDrawFont( TextDraw[ 1 ], 1 );
- TextDrawLetterSize( TextDraw[ 1 ], 0.500000, 1.000000 );
- TextDrawColor( TextDraw[ 1 ], -1 );
- TextDrawSetOutline( TextDraw[ 1 ], 0 );
- TextDrawSetProportional( TextDraw[ 1 ], 1 );
- TextDrawSetShadow( TextDraw[ 1 ], 1 );
- TextDraw[ 2 ] = TextDrawCreate( 601.000000, 25.000000, "Lazer: armed" );
- TextDrawBackgroundColor( TextDraw[ 2 ], 255 );
- TextDrawFont( TextDraw[ 2 ], 1 );
- TextDrawLetterSize( TextDraw[ 2 ], 0.170000, 1.000000 );
- TextDrawColor( TextDraw[ 2 ], -1 );
- TextDrawSetOutline( TextDraw[ 2 ], 0 );
- TextDrawSetProportional( TextDraw[ 2 ], 1 );
- TextDrawSetShadow( TextDraw[ 2 ], 1 );
- TextDraw[ 4 ] = TextDrawCreate( 308.000000, 218.000000, "- -" );
- TextDrawBackgroundColor( TextDraw[ 4 ], 255 );
- TextDrawFont( TextDraw[ 4 ], 1 );
- TextDrawLetterSize( TextDraw[ 4 ], 0.500000, 1.000000 );
- TextDrawColor( TextDraw[ 4 ], -1 );
- TextDrawSetOutline( TextDraw[ 4 ], 0 );
- TextDrawSetProportional( TextDraw[ 4 ], 1 );
- TextDrawSetShadow( TextDraw[ 4 ], 1 );
- TextDraw[ 5 ] = TextDrawCreate( 321.750000, 210.000000, "!~n~~n~!" );
- TextDrawBackgroundColor( TextDraw[ 5 ], 255 );
- TextDrawFont( TextDraw[ 5 ], 1 );
- TextDrawLetterSize( TextDraw[ 5 ], 0.180000, 1.000000 );
- TextDrawColor( TextDraw[ 5 ], -1 );
- TextDrawSetOutline( TextDraw[ 5 ], 0 );
- TextDrawSetProportional( TextDraw[ 5 ], 1 );
- TextDrawSetShadow( TextDraw[ 5 ], 1 );
- TextDraw[ 6 ] = TextDrawCreate( 222.000000, 90.000000, "CAMERA: AH64-APACHE#" );
- TextDrawBackgroundColor( TextDraw[ 6 ], 255 );
- TextDrawFont( TextDraw[ 6 ], 1 );
- TextDrawLetterSize( TextDraw[ 6 ], 0.500000, 1.000000 );
- TextDrawColor( TextDraw[ 6 ], -1 );
- TextDrawSetOutline( TextDraw[ 6 ], 0 );
- TextDrawSetProportional( TextDraw[ 6 ], 1 );
- TextDrawSetShadow( TextDraw[ 6 ], 0 );
- for( new i = 0; i < MAX_PLAYERS; i ++ )
- {
- if( !IsPlayerConnected( i ) ) continue;
- GetPlayerName( i, pName[ i ], MAX_PLAYER_NAME );
- AmmoTDraw[ i ] = CreatePlayerTextDraw( i, 514.000000, 397.000000, "!!!!!!!!!!!!!!!!!!!!~n~!!!!!!!!!!!!!!!!!!!!" );
- PlayerTextDrawBackgroundColor( i, AmmoTDraw[ i ], 255 );
- PlayerTextDrawFont( i, AmmoTDraw[ i ], 1 );
- PlayerTextDrawLetterSize( i, AmmoTDraw[ i ], 0.500000, 1.000000 );
- PlayerTextDrawColor( i, AmmoTDraw[ i ], -1 );
- PlayerTextDrawSetOutline( i, AmmoTDraw[ i ], 0 );
- PlayerTextDrawSetProportional( i, AmmoTDraw[ i ], 1 );
- PlayerTextDrawSetShadow( i, AmmoTDraw[ i ], 1 );
- PlayerInfo[ i ][ TimerDraw ] = CreatePlayerTextDraw( i, 21.000000, 400.000000, "1:30min");
- PlayerTextDrawBackgroundColor( i, PlayerInfo[ i ][ TimerDraw ], 255);
- PlayerTextDrawFont( i, PlayerInfo[ i ][ TimerDraw ], 1);
- PlayerTextDrawLetterSize( i, PlayerInfo[ i ][ TimerDraw ], 0.500000, 1.000000);
- PlayerTextDrawColor( i, PlayerInfo[ i ][ TimerDraw ], -1);
- PlayerTextDrawSetOutline( i, PlayerInfo[ i ][ TimerDraw ], 0);
- PlayerTextDrawSetProportional( i, PlayerInfo[ i ][ TimerDraw ], 1);
- PlayerTextDrawSetShadow( i, PlayerInfo[ i ][ TimerDraw ], 0);
- }
- }
- public OnFilterScriptExit( )
- {
- for( new i = 0 ; i < MAX_PLAYERS ; i ++ )
- {
- if( !IsPlayerConnected( i ) ) continue;
- PlayerTextDrawDestroy( i, AmmoTDraw[ i ] );
- PlayerTextDrawDestroy( i, PlayerInfo[ i ][ TimerDraw ] );
- }
- TextDrawHideForAll( TextDraw[ 0 ] );
- TextDrawDestroy( TextDraw[ 0 ] );
- TextDrawHideForAll( TextDraw[ 1 ] );
- TextDrawDestroy( TextDraw[ 1 ] );
- TextDrawHideForAll( TextDraw[ 2 ] );
- TextDrawDestroy( TextDraw[ 2 ] );
- TextDrawHideForAll( TextDraw[ 3 ] );
- TextDrawDestroy( TextDraw[ 3 ] );
- TextDrawHideForAll( TextDraw[ 4 ] );
- TextDrawDestroy( TextDraw[ 4 ] );
- TextDrawHideForAll( TextDraw[ 5 ] );
- TextDrawDestroy( TextDraw[ 5 ] );
- TextDrawHideForAll( TextDraw[ 6 ] );
- TextDrawDestroy( TextDraw[ 6 ] );
- return 1;
- }
- public OnPlayerCommandText( playerid, cmdtext[ ] )
- {
- if ( !strcmp( cmdtext, SHOOT ) )
- {
- ammo[ PlayerInfo[ playerid ][ ChopperID ] ]++;
- new str[ 64 ];
- format( str, sizeof str, "~b~" );
- for( new i = 0 ; i < AMMO ; i++ )
- {
- if( i == AMMO/2 )
- {
- format( str, sizeof str, ( ( ammo[ PlayerInfo[ playerid ][ ChopperID ] ] != AMMO/2 ) ? ( "%s~n~!" ) : ( "%s~n~~w~!" ) ), str );
- continue;
- }
- if( i == ammo[ PlayerInfo[ playerid ][ ChopperID ] ] )
- {
- format( str, sizeof str, "%s~w~!", str );
- continue;
- }
- if( i < ammo[ PlayerInfo[ playerid ][ ChopperID ] ] )
- {
- format( str, sizeof str, "%s!", str );
- continue;
- }
- format( str, sizeof str, "%s!", str );
- }
- PlayerTextDrawSetString( playerid, AmmoTDraw[ playerid ], str );
- new
- Float:fPX, Float:fPY, Float:fPZ,
- Float:fVX, Float:fVY, Float:fVZ,
- Float:object_x, Float:object_y, Float:object_z;
- new
- Float:fScale = 500;
- GetPlayerCameraPos( playerid, fPX, fPY, fPZ );
- GetPlayerCameraFrontVector( playerid, fVX, fVY, fVZ );
- object_x = fPX + floatmul( fVX, fScale );
- object_y = fPY + floatmul( fVY, fScale );
- object_z = fPZ + floatmul( fVZ, fScale );
- new obj1 = CreateObject( 345, fPX, fPY, fPZ, asin( fVZ ), 0.0, 360 - atan2( fVX, fVY ) );
- Rocket[ obj1 ] = true;
- objChopper[ obj1 ] = playerid;
- MoveObject( obj1, object_x, object_y, object_z, 75.0 );
- Timer[ obj1 ] = SetTimerEx( "CheckObj", 100, 1, "d", obj1 );
- if( ammo[ PlayerInfo[ playerid ][ ChopperID ] ] >= AMMO )
- {
- ChopperHandler( playerid, 1 );
- ammo[ PlayerInfo[ playerid ][ ChopperID ] ] = 0;
- }
- return 1;
- }
- if( !strcmp( "/chopper", cmdtext, true ) )
- {
- new str[ 24 ];
- format( str, sizeof str, "chopper%d", playerid );
- CreatePlayerChopper( playerid, str, "glenpark", 60, -1 );
- return 1;
- }
- if( !strcmp( "/stop", cmdtext, true ) )
- {
- ChopperHandler( playerid, 1 );
- return 1;
- }
- /*if( !strcmp( "/check", cmdtext, true ) )
- {
- new Float:x, Float:y, Float:z;
- GetPlayerPos( GetPlayerID( "Chopper" ) , x, y, z );
- SetPlayerPos( playerid, x, y, z );
- }
- if( !strcmp( cmdtext, "/test" ) )
- {
- new
- Float:fVX, Float:fVY, Float:fVZ;
- GetPlayerCameraFrontVector( playerid, fVX, fVY, fVZ );
- new str[ 256 ];
- format( str, sizeof str, "XVec: %f YVec: %f ZVec: %f", fVX, fVY, fVZ );
- SendClientMessage( playerid, 0xFFFFFF, str );
- return 1;
- }*/
- return 0;
- }
- public CreatePlayerChopper( gunnerid, npcname[ ], script[ ], length, pilotid )
- {
- switch( pilotid )
- {
- case -1:
- {
- if( !IsPlayerConnected( gunnerid ) ) return 0;
- ConnectNPC( npcname, script );
- format( pBotName[ gunnerid ], sizeof pBotName[ ], npcname );
- SendClientMessage( gunnerid, 0xFFFFFFFF, "Verbündeter Apache ist unterwegs!" );
- PlayerInfo[ gunnerid ][ HasChopper ] = true;
- GetPlayerPos( gunnerid, PlayerInfo[ gunnerid ][ SaveX ], PlayerInfo[ gunnerid ][ SaveY ], PlayerInfo[ gunnerid ][ SaveZ ] );
- GetPlayerFacingAngle( gunnerid, PlayerInfo[ gunnerid ][ SaveR ] );
- new str[ 32 ];
- PlayerInfo[ gunnerid ][ chpTime ] = length;
- format( str, sizeof str, "%d:%dmin" , length / 60, length - 60 * ( length / 60 ) );
- PlayerTextDrawSetString( gunnerid, PlayerInfo[ gunnerid ][ TimerDraw ], str );
- return 1;
- }
- default:
- {
- if( !IsPlayerConnected( pilotid ) ) return 0;
- if( !IsPlayerConnected( gunnerid ) ) return 0;
- PlayerInfo[ gunnerid ][ ChopperID ] = pilotid;
- obj[ pilotid ] = CreateObject( 330, 0, 0, 235, 0 , 0, 0, 0.0 );
- PlayerInfo[ pilotid ][ chopper ] = CreateVehicle( 425, 0, 0, 0, 0, 0, 0, -1 );
- AttachObjectToVehicle( obj[ pilotid ], PlayerInfo[ pilotid ][ chopper ], 0, 4.45, -1.2, 0, 0, 0 );
- PutPlayerInVehicle( pilotid, PlayerInfo[ pilotid ][ chopper ], 0 );
- PutPlayerInVehicle( gunnerid, PlayerInfo[ pilotid ][ chopper ], 1 );
- PlayerInfo[ gunnerid ][ chpTime ] = length;
- GetPlayerPos( gunnerid, PlayerInfo[ gunnerid ][ SaveX ], PlayerInfo[ gunnerid ][ SaveY ], PlayerInfo[ gunnerid ][ SaveZ ] );
- GetPlayerFacingAngle( gunnerid, PlayerInfo[ gunnerid ][ SaveR ] );
- GetPlayerPos( pilotid, PlayerInfo[ pilotid ][ SaveX ], PlayerInfo[ pilotid ][ SaveY ], PlayerInfo[ pilotid ][ SaveZ ] );
- GetPlayerFacingAngle( pilotid, PlayerInfo[ pilotid ][ SaveR ] );
- new str[ 32 ];
- format( str, sizeof str, "%d:%dmin" , length / 60, length - 60 * ( length / 60 ) );
- PlayerTextDrawSetString( gunnerid, PlayerInfo[ gunnerid ][ TimerDraw ], str );
- PlayerTextDrawSetString( pilotid, PlayerInfo[ pilotid ][ TimerDraw ], str );
- PlayerInfo[ gunnerid ][ timer ] = SetTimerEx( "ChopperHandler", 500, 1, "dd", gunnerid, 0 );
- AttachCameraToObject( gunnerid, obj[ pilotid ] );
- TextDrawShowForPlayer( gunnerid, TextDraw[ 0 ] );
- TextDrawShowForPlayer( gunnerid, TextDraw[ 1 ] );
- TextDrawShowForPlayer( gunnerid, TextDraw[ 2 ] );
- PlayerTextDrawShow( gunnerid, AmmoTDraw[ gunnerid ] );
- PlayerTextDrawShow( gunnerid, PlayerInfo[ gunnerid ][ TimerDraw ] );
- PlayerTextDrawShow( pilotid, PlayerInfo[ pilotid ][ TimerDraw ] );
- TextDrawShowForPlayer( gunnerid, TextDraw[ 4 ] );
- TextDrawShowForPlayer( gunnerid, TextDraw[ 5 ] );
- TextDrawShowForPlayer( gunnerid, TextDraw[ 6 ] );
- return 1;
- }
- }
- return 0;
- }
- public OnPlayerDisconnect( playerid )
- {
- if( PlayerInfo[ playerid ][ HasChopper ] )
- {
- if( IsPlayerNPC( PlayerInfo[ playerid ][ ChopperID ] ) )
- Kick( PlayerInfo[ playerid ][ ChopperID ] );
- }
- if( PlayerInfo[ playerid ][ HasChopper ] )
- ChopperHandler( playerid, 1 );
- PlayerInfo[ playerid ][ HasChopper ] = false;
- for( new i = 0; i < MAX_PLAYERS; i ++ )
- {
- if( !IsPlayerConnected( i ) || !PlayerInfo[ i ][ HasChopper ] ) continue;
- if( PlayerInfo[ i ][ ChopperID ] == playerid)
- return ChopperHandler( playerid, 1 );
- }
- return 0;
- }
- public OnPlayerKeyStateChange( playerid, newkeys, oldkeys )
- {
- if( newkeys & KEY_FIRE && PlayerInfo[ playerid ][ HasChopper ] ) OnPlayerCommandText( playerid, SHOOT );
- return 0;
- }
- public OnObjectMoved( objectid )
- {
- if( !Rocket[ objectid ] ) return 1;
- KillTimer( Timer[ objectid ] );
- Timer[ objectid ] = -1;
- new
- Float:x, Float:y, Float:z, Float:Dist;
- GetObjectPos( objectid, x, y, z );
- CreateExplosion( x, y, z, 0, 10.0 );
- for( new i = 0; i < MAX_PLAYERS; i ++ )
- {
- if( !IsPlayerConnected( i ) ) continue;
- Dist = GetPlayerDistanceFromPoint( i, x, y, z);
- if( Dist < 10.0 )
- {
- new Float:HP,Float:NewHP;
- GetPlayerHealth( i, HP );
- NewHP = HP-150+Dist*10;
- if( NewHP >= HP )
- {
- TogglePlayerSpectating( i, 1 );
- TogglePlayerSpectating( i, 0 );
- CallRemoteFunction( "OnPlayerDeath", "ddd", i, objChopper[ objectid ], 51 );
- }
- else SetPlayerHealth( i, NewHP );
- }
- }
- Rocket[ objectid ] = false;
- DestroyObject( objectid );
- return 0;
- }
- forward CheckObj( objid );
- public CheckObj( objid )
- {
- if( !Rocket[ objid ] ) return 1;
- new
- Float:x, Float:y, Float:z, Float:Z, Float:Dist;
- GetObjectPos( objid, x, y, z );
- MapAndreas_FindZ_For2DCoord( x, y, Z );
- if( Z > z || ( z - Z ) < 5.0 )
- {
- KillTimer( Timer[ objid ] );
- Timer[ objid ] = -1;
- CreateExplosion( x, y, z, 0, 10.0 );
- for( new i = 0; i < MAX_PLAYERS; i ++ )
- {
- if( !IsPlayerConnected( i ) ) continue;
- Dist = GetPlayerDistanceFromPoint( i, x, y, z);
- if( Dist < 10.0 )
- {
- new Float:HP,Float:NewHP;
- GetPlayerHealth( i, HP );
- NewHP = HP-150+Dist*10;
- if( NewHP >= HP )
- {
- TogglePlayerSpectating( i, 1 );
- TogglePlayerSpectating( i, 0 );
- CallRemoteFunction( "OnPlayerDeath", "ddd", i, objChopper[ objid ], 51 );
- }
- else SetPlayerHealth( i, NewHP );
- }
- }
- Rocket[ objid ] = false;
- DestroyObject( objid );
- }
- return 1;
- }
- public ChopperHandler( gunnerid, func )
- {
- switch( func )
- {
- case 0:
- {
- if( !IsPlayerConnected( gunnerid ) ) return KillTimer( PlayerInfo[ gunnerid ][ timer ] );
- if( !IsPlayerConnected( PlayerInfo[ gunnerid ][ ChopperID ] ) ) return KillTimer( PlayerInfo[ gunnerid ][ timer ] );
- PlayerInfo[ gunnerid ][ change ] = PlayerInfo[ gunnerid ][ change ] ? false : true;
- if( PlayerInfo[ gunnerid ][ change ] )
- {
- PlayerInfo[ gunnerid ][ chpTime ] -- ;
- new str[32];
- format( str, sizeof str, "%d:%02dmin" , PlayerInfo[ gunnerid ][ chpTime ] / 60,
- PlayerInfo[ gunnerid ][ chpTime ] - 60 * ( PlayerInfo[ gunnerid ][ chpTime ] / 60 ) );
- PlayerTextDrawSetString( gunnerid, PlayerInfo[ gunnerid ][ TimerDraw ], str);
- PlayerTextDrawSetString( PlayerInfo[ gunnerid ][ ChopperID ],PlayerInfo[ PlayerInfo[ gunnerid ][ ChopperID ] ][ TimerDraw ], str );
- }
- if(PlayerInfo[ gunnerid ][ chpTime ] < 30)
- {
- if( PlayerInfo[ gunnerid ][ change ] )
- {
- PlayerTextDrawHide( gunnerid, PlayerInfo[ gunnerid ][ TimerDraw ] );
- if( !IsPlayerNPC( PlayerInfo[ gunnerid ][ ChopperID ] ) )
- PlayerTextDrawHide( PlayerInfo[ gunnerid ][ ChopperID ], PlayerInfo[ PlayerInfo[ gunnerid ][ ChopperID ] ][ TimerDraw ] );
- }
- else
- {
- PlayerTextDrawShow( gunnerid, PlayerInfo[ gunnerid ][ TimerDraw ] );
- if( !IsPlayerNPC( PlayerInfo[ gunnerid ][ ChopperID ] ) )
- PlayerTextDrawShow( PlayerInfo[ gunnerid ][ ChopperID ], PlayerInfo[ PlayerInfo[ gunnerid ][ ChopperID ] ][ TimerDraw ] );
- }
- }
- if(PlayerInfo[ gunnerid ][ chpTime ] <= 0) KillTimer( PlayerInfo[ gunnerid ][ timer ] ), ChopperHandler( gunnerid, 1 );
- }
- case 1:
- {
- PlayerInfo[ gunnerid ][ HasChopper ] = false;
- new ID = GetPlayerID( pBotName[ gunnerid ] );
- if( IsPlayerNPC( ID ) )
- {
- Kick( ID );
- ammo[ ID ] = 0;
- DestroyVehicle( PlayerInfo[ ID ][ chopper ] );
- DestroyObject( obj[ ID ] );
- obj[ ID ] = -1;
- }
- else
- {
- ammo[ PlayerInfo[ gunnerid ][ ChopperID ] ] = 0;
- DestroyVehicle( PlayerInfo[ PlayerInfo[ gunnerid ][ ChopperID ] ][ chopper ] );
- DestroyObject( obj[ PlayerInfo[ gunnerid ][ ChopperID ] ] );
- obj[ PlayerInfo[ gunnerid ][ ChopperID ] ] = -1;
- }
- SetCameraBehindPlayer( gunnerid );
- SetPlayerPos( gunnerid, PlayerInfo[ gunnerid ][ SaveX ], PlayerInfo[ gunnerid ][ SaveY ], PlayerInfo[ gunnerid ][ SaveZ ] );
- SetPlayerFacingAngle( gunnerid, PlayerInfo[ gunnerid ][ SaveR ] );
- SetPlayerPos( PlayerInfo[ gunnerid ][ ChopperID ],
- PlayerInfo[ PlayerInfo[ gunnerid ][ ChopperID ] ][ SaveX ],
- PlayerInfo[ PlayerInfo[ gunnerid ][ ChopperID ] ][ SaveY ],
- PlayerInfo[ PlayerInfo[ gunnerid ][ ChopperID ] ][ SaveZ ] );
- SetPlayerFacingAngle( PlayerInfo[ gunnerid ][ ChopperID ], PlayerInfo[ PlayerInfo[ gunnerid ][ ChopperID ] ][ SaveR ] );
- TextDrawHideForPlayer( gunnerid, TextDraw[ 0 ] );
- TextDrawHideForPlayer( gunnerid, TextDraw[ 1 ] );
- TextDrawHideForPlayer( gunnerid, TextDraw[ 2 ] );
- TextDrawHideForPlayer( gunnerid, TextDraw[ 4 ] );
- TextDrawHideForPlayer( gunnerid, TextDraw[ 5 ] );
- TextDrawHideForPlayer( gunnerid, TextDraw[ 6 ] );
- PlayerTextDrawHide( gunnerid, AmmoTDraw[ gunnerid ] );
- PlayerTextDrawHide( gunnerid, PlayerInfo[ gunnerid ][ TimerDraw ] );
- PlayerTextDrawHide( PlayerInfo[ gunnerid ][ ChopperID ], PlayerInfo[ PlayerInfo[ gunnerid ][ ChopperID ] ][ TimerDraw ] );
- PlayerInfo[ gunnerid ][ ChopperID ] = -1;
- return 1;
- }
- }
- return 1;
- }
- public OnPlayerConnect( playerid )
- {
- if( !IsPlayerNPC( playerid) )
- {
- GetPlayerName( playerid, pName[ playerid ], MAX_PLAYER_NAME );
- AmmoTDraw[ playerid ] = CreatePlayerTextDraw( playerid, 514.000000, 397.000000, "!!!!!!!!!!!!!!!!!!!!~n~!!!!!!!!!!!!!!!!!!!!" );
- PlayerTextDrawBackgroundColor( playerid, AmmoTDraw[ playerid ], 255 );
- PlayerTextDrawFont( playerid, AmmoTDraw[ playerid ], 1 );
- PlayerTextDrawLetterSize( playerid, AmmoTDraw[ playerid ], 0.500000, 1.000000 );
- PlayerTextDrawColor( playerid, AmmoTDraw[ playerid ], -1 );
- PlayerTextDrawSetOutline( playerid, AmmoTDraw[ playerid ], 0 );
- PlayerTextDrawSetProportional( playerid, AmmoTDraw[ playerid ], 1 );
- PlayerTextDrawSetShadow( playerid, AmmoTDraw[ playerid ], 1 );
- PlayerInfo[ playerid ][ TimerDraw ] = CreatePlayerTextDraw( playerid, 21.000000, 400.000000, "1:30min");
- PlayerTextDrawBackgroundColor( playerid, PlayerInfo[ playerid ][ TimerDraw ], 255);
- PlayerTextDrawFont( playerid, PlayerInfo[ playerid ][ TimerDraw ], 1);
- PlayerTextDrawLetterSize( playerid, PlayerInfo[ playerid ][ TimerDraw ], 0.500000, 1.000000);
- PlayerTextDrawColor( playerid, PlayerInfo[ playerid ][ TimerDraw ], -1);
- PlayerTextDrawSetOutline( playerid, PlayerInfo[ playerid ][ TimerDraw ], 0);
- PlayerTextDrawSetProportional( playerid, PlayerInfo[ playerid ][ TimerDraw ], 1);
- PlayerTextDrawSetShadow( playerid, PlayerInfo[ playerid ][ TimerDraw ], 0);
- }
- else
- {
- for( new i = 0; i < MAX_PLAYERS; i ++ )
- {
- if( !IsPlayerConnected( i ) ) continue;
- if( !strcmp( pName[ playerid ], pBotName[ i ] ) && pBotName[ i ][ 0 ] )
- {
- PlayerInfo[ i ][ ChopperID ] = playerid;
- obj[ playerid ] = CreateObject( 330, 0, 0, 235, 0 , 0, 0, 0.0 );
- PlayerInfo[ playerid ][ chopper ] = CreateVehicle( 425, 0, 0, 235, 0, 0, 0, -1 );
- AttachObjectToVehicle( obj[ playerid ], PlayerInfo[ playerid ][ chopper ], 0, 4.45, -1.2, 0, 0, 0 );
- PutPlayerInVehicle( playerid, PlayerInfo[ playerid ][ chopper ], 0 );
- PutPlayerInVehicle( i, PlayerInfo[ playerid ][ chopper ], 1 );
- PlayerInfo[ i ][ timer ] = SetTimerEx( "ChopperHandler", 500, 1, "dd", i, 0 );
- AttachCameraToObject( i, obj[ playerid ] );
- TextDrawShowForPlayer( i, TextDraw[ 0 ] );
- TextDrawShowForPlayer( i, TextDraw[ 1 ] );
- TextDrawShowForPlayer( i, TextDraw[ 2 ] );
- PlayerTextDrawShow( i, AmmoTDraw[ i ] );
- PlayerTextDrawShow( i, PlayerInfo[ i ][ TimerDraw ] );
- TextDrawShowForPlayer( i, TextDraw[ 4 ] );
- TextDrawShowForPlayer( i, TextDraw[ 5 ] );
- TextDrawShowForPlayer( i, TextDraw[ 6 ] );
- break;
- }
- }
- }
- return 0;
- }
- public OnPlayerDeath( playerid, killerid, reason)
- {
- if( PlayerInfo[ playerid ][ HasChopper ] )
- ChopperHandler( playerid, 1 );
- for( new i = 0; i < MAX_PLAYERS; i ++ )
- {
- if( !IsPlayerConnected( i ) || !PlayerInfo[ i ][ HasChopper ] ) continue;
- if( PlayerInfo[ i ][ ChopperID ] == playerid)
- return ChopperHandler( playerid, 1 );
- }
- return 0;
- }
- GetPlayerID( playername[ ] )
- {
- for( new i = 0; i < MAX_PLAYERS; i++ )
- {
- if( !IsPlayerConnected( i ) ) continue;
- if( !strcmp( playername, pName[ i ] ) ) return i;
- }
- return -1;
- }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement