LeomarMM

Hydra-based rocket

Apr 29th, 2013
79
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
Pawn 1.95 KB | None | 0 0
  1. #include <a_samp>
  2. #include <streamer>
  3. #define CHECKTIMER 4000
  4. forward CheckForRocket(vehicleid, fireid, baseid);
  5. new Rocket[3][MAX_PLAYERS+1];
  6. new created[MAX_PLAYERS];
  7. public OnPlayerConnect(playerid){created[playerid] = 0;return 1;}
  8. public OnPlayerDisconnect(playerid){created[playerid] = 0; return 1;}
  9. public OnPlayerCommandText(playerid, cmdtext[])
  10. {
  11.     if(!strcmp(cmdtext, "/rocket", true))
  12.     {
  13.         if(IsPlayerInAnyVehicle(playerid)) return SendClientMessage(playerid, 0xFF0000FF, "Sorry, you cannot create a rocket while driving!");
  14.         if(created[playerid] == 1)
  15.         {
  16.             DestroyDynamicObject(Rocket[0][playerid]);
  17.             DestroyDynamicObject(Rocket[1][playerid]);
  18.             DestroyVehicle(Rocket[2][playerid]);
  19.         }
  20.         new Float:x, Float:y, Float:z, Float:rot;
  21.         GetPlayerPos(playerid, x, y, z);
  22.         GetPlayerFacingAngle(playerid, rot);
  23.         Rocket[0][playerid] = CreateDynamicObject(3786, 0.02, 2.13, 0.00,   0.00, 0.00, -90.00);
  24.         Rocket[1][playerid] = CreateDynamicObject(18692, -0.50, 1.73, -1.00,   0.00, 0.00, 0.00);
  25.         Rocket[2][playerid] = CreateVehicle(520, x, y, z, rot, -1, -1, 100);
  26.         LinkVehicleToInterior(Rocket[2][playerid], 15);
  27.         AttachDynamicObjectToVehicle(Rocket[0][playerid], Rocket[2][playerid], 0.02, 3.13, 0.00,   0.00, 0.00, -90.00);
  28.         AttachDynamicObjectToVehicle(Rocket[1][playerid], Rocket[2][playerid], -0.50, 2.73, -1.00,   0.00, 0.00, 0.00);
  29.         PutPlayerInVehicle(playerid, Rocket[2][playerid], 0);
  30.         SetTimerEx("CheckForRocket", CHECKTIMER, true, "ddd", Rocket[2][playerid], Rocket[1][playerid], Rocket[0][playerid]);
  31.         created[playerid] = 1;
  32.         return 1;
  33.     }
  34.     return 0;
  35. }
  36. public CheckForRocket(vehicleid, fireid, baseid)
  37. {
  38.     new p = 0;
  39.     new count = 0;
  40.     while(p != MAX_PLAYERS)
  41.     {
  42.         if(IsPlayerInVehicle(p, vehicleid)) count++;
  43.         p++;
  44.     }
  45.     if(count == 0 && count < 1)
  46.     {
  47.         DestroyDynamicObject(fireid);
  48.         DestroyDynamicObject(baseid);
  49.         DestroyVehicle(vehicleid);
  50.     }
  51.     return 1;
  52. }
Advertisement
Add Comment
Please, Sign In to add comment