Advertisement
Faisal_khan

Mine System

Apr 27th, 2012
335
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
Pawn 2.91 KB | None | 0 0
  1. /*=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-==-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=*\
  2. ||                                                                                            ||
  3. ||                      Created 28th April 2012 By Faisal Khan ([email protected]).                                 ||
  4. ||      WARNING: Do NOT Claim This As Your Own. Do NOT Re-Release This Without Permission.    ||
  5. ||                                  DO NOT SELL THIS SCRIPT!                                  ||
  6. ||                                        Credits: Faisal                                                ||
  7. \*=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-==-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=*/
  8. //=========================================INCLUDES=============================//
  9. #include <a_samp>
  10. //=========================================DEFINES=====================================//
  11. #define FILTERSCRIPT
  12. #define MAX_MINES 100
  13.  
  14. enum mInfo
  15. {
  16.     mCreated,
  17.     Float:mX,
  18.     Float:mY,
  19.     Float:mZ,
  20.     mObject,
  21. };
  22. new MineInfo[MAX_MINES][mInfo];
  23.  
  24. public OnFilterScriptInit()
  25. {
  26.     print("\n--------------------");
  27.     print("Police Car Bomb System");
  28.     print("--------------------\n");
  29.     return 1;
  30. }
  31.  
  32. public OnFilterScriptExit()
  33. {
  34.     return 1;
  35. }
  36.  
  37. public OnPlayerKeyStateChange(playerid, newkeys, oldkeys)
  38. {
  39.     if (newkeys == KEY_YES)
  40.     {
  41.         new vehicleid;
  42.         vehicleid = GetPlayerVehicleID(playerid);
  43.         if (IsPlayerInAnyVehicle(playerid) && GetVehicleModel(GetPlayerVehicleID(playerid)) != 597)
  44.         {
  45.             return GameTextForPlayer(playerid,"~w~Roadblock ~b~Placed!",3000,1);
  46.         }
  47.         else
  48.         {
  49.             new Float:plocx,Float:plocy,Float:plocz;
  50.             GetVehiclePos(vehicleid, plocx, plocy, plocz);
  51.             CreateMine(plocx,plocy,plocz);
  52.         }
  53.     }
  54.     return 1;
  55. }
  56.  
  57. public OnPlayerUpdate(playerid)
  58. {
  59.     if(!IsPlayerConnected(playerid)) return 0;
  60.     if(GetPlayerState(playerid) == PLAYER_STATE_DRIVER)
  61.     {
  62.         for(new i = 0; i < sizeof(MineInfo); i++)
  63.         {
  64.             if(IsPlayerInRangeOfPoint(playerid, 1, MineInfo[i][mX], MineInfo[i][mY], MineInfo[i][mZ]))
  65.             {
  66.                 if(MineInfo[i][mCreated])
  67.                 {
  68.                     if (IsPlayerInAnyVehicle(playerid) && GetVehicleModel(GetPlayerVehicleID(playerid)) == 411)
  69.                     {
  70.                         return 1;
  71.                     }
  72.                     else
  73.                     {
  74.                         CreateExplosion(MineInfo[i][mX], MineInfo[i][mY], MineInfo[i][mZ], 7, 20.0);
  75.                         DestroyObject(MineInfo[i][mObject]);
  76.                     }
  77.                     return 0;
  78.                 }
  79.             }
  80.          }
  81.     }
  82.     return 1;
  83. }
  84.  
  85. stock CreateMine(Float:x,Float:y,Float:z)
  86. {
  87.     for(new i = 0; i < sizeof(MineInfo); i++)
  88.     {
  89.         if(MineInfo[i][mCreated] == 0)
  90.         {
  91.             MineInfo[i][mCreated]=1;
  92.             MineInfo[i][mX]=x;
  93.             MineInfo[i][mY]=y;
  94.             MineInfo[i][mZ]=z-0.7;
  95.             MineInfo[i][mObject] = CreateObject(364, x, y, z, 0, 0, 0);
  96.             return 1;
  97.         }
  98.     }
  99.     return 0;
  100. }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement