Advertisement
BlueRey

Deathmatch Area

Oct 12th, 2019
155
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
Pawn 4.32 KB | None | 0 0
  1. /*
  2.  
  3. # Deathmatch Area [V0.2]
  4. # Created: 15/03/2009
  5. # Last edit: 15/07/2010
  6.  
  7. # By: BlueRey [2009-2010] ©
  8.  
  9. */
  10. #include <a_samp>
  11. //==============================================================================
  12. forward Check(playerid);
  13. forward TelePlayerToDM(playerid,bool:meesage);
  14. //==============================================================================
  15. new bool:InDM[MAX_PLAYERS];
  16. new DMTimer[MAX_PLAYERS];
  17. new Weapon[] = {35,38};
  18. new Float:Spawns[][3] =
  19. {
  20.     {-2044.1980,-497.2107,35.5313},
  21.     {2591.5173,2820.3782,27.8203},
  22.     {2610.1113,2729.1050,36.5386},
  23.     {2637.7939,2771.6663,25.8222},
  24.     {2693.0894,2780.2490,59.0212},
  25.     {2595.7690,2640.1360,109.1719},
  26.     {2499.0588,2704.6191,10.9844},
  27.     {2531.0337,2849.6812,10.8203},
  28.     {2556.6719,2806.6592,19.9922},
  29.     {2607.7131,2825.2637,19.9922},
  30.     {2682.6799,2679.4478,22.9472},
  31.     {2647.3228,2807.8252,36.3222},
  32.     {2670.8394,2809.9463,36.3222},
  33.     {2681.0952,2750.8208,19.0722},
  34.     {2647.7700,2805.2942,10.8203},
  35.     {2602.3147,2800.9075,10.8203},
  36.     {2581.4431,2752.7930,10.8203},
  37.     {2612.7920,2662.9963,37.8865},
  38.     {2661.2039,2663.2451,37.7669},
  39.     {2688.1023,2648.0784,38.0345},
  40.     {2574.3608,2658.6206,37.7509},
  41.     {2506.0901,2788.3293,10.8203},
  42.     {2575.3323,2808.3220,10.8203},
  43.     {2621.7708,2839.4243,10.8203}
  44. };
  45. //==============================================================================
  46. public OnFilterScriptInit()
  47. {
  48.     print("\n---------------------------------------");
  49.     print("     DeathMatch Filterscript by BlueRey  ");
  50.     print("---------------------------------------\n");
  51.     return 1;
  52. }
  53. //==============================================================================
  54. public OnFilterScriptExit()
  55. {
  56.     for(new i; i < MAX_PLAYERS; i++) ClearVars(i,true);
  57.     return 1;
  58. }
  59. //==============================================================================
  60. public OnPlayerDisconnect(playerid)
  61. {
  62.     ClearVars(playerid);
  63.     return 1;
  64. }
  65. //==============================================================================
  66. public OnPlayerDeath(playerid,killerid,reason)
  67. {
  68.     if(InDM[playerid]) KillTimer(DMTimer[playerid]);
  69. }
  70. //==============================================================================
  71. public OnPlayerSpawn(playerid)
  72. {
  73.     if(InDM[playerid]) return SetTimerEx("TelePlayerToDM",350,0,"di",playerid,false),0;
  74.     return 1;
  75. }
  76. //==============================================================================
  77. public OnPlayerCommandText(playerid,cmdtext[])
  78. {
  79.     if(strcmp("/dm",cmdtext,true) == 0)
  80.     {
  81.         if(!InDM[playerid])
  82.         {
  83.             InDM[playerid] = true;
  84.             TelePlayerToDM(playerid,true);
  85.         }
  86.         else
  87.         {
  88.             SendClientMessage(playerid,0xFF9900AA/* Orange */,".DM éöàú îàéæåø ä");
  89.             ClearVars(playerid,true);
  90.         }
  91.         return 1;
  92.     }
  93.     return 0;
  94. }
  95. //==============================================================================
  96. public TelePlayerToDM(playerid,bool:meesage)
  97. {
  98.     if(IsPlayerConnected(playerid))
  99.     {
  100.         new rand = random(sizeof(Spawns));
  101.         new rand2 = random(sizeof(Weapon));
  102.         DMTimer[playerid] = SetTimerEx("Check",1000,1,"i",playerid);
  103.         if(meesage)
  104.         {
  105.             SendClientMessage(playerid,0x0F66AFF/* Light Green */,"! DM -áøåê äáà ìàéæåø ä");
  106.             SendClientMessage(playerid,0x0F66AFF/* Light Green */,".ëãé ìöàú îàéæåø æä ä÷ù àú äô÷åãä ùåá");
  107.         }
  108.         SetPlayerPos(playerid,Spawns[rand][0],Spawns[rand][1],Spawns[rand][2]);
  109.         ResetPlayerWeapons(playerid);
  110.         GivePlayerWeapon(playerid,Weapon[rand2],1600);
  111.     }
  112. }
  113. //==============================================================================
  114. public Check(playerid)
  115. {
  116.     if(InDM[playerid] && !IsPlayerInArea(playerid,2762.2783,2482.7942,2872.4058,2581.7100)) ClearVars(playerid);
  117. }
  118. //==============================================================================
  119. stock IsPlayerInArea(playerid,Float:max_x,Float:min_x,Float:max_y,Float:min_y)
  120. {
  121.     new Float:X,Float:Y,Float:Z;
  122.     GetPlayerPos(playerid,X,Y,Z);
  123.     if(X <= max_x && X >= min_x && Y <= max_y && Y >= min_y) return 1;
  124.     return 0;
  125. }
  126. //==============================================================================
  127. stock ClearVars(playerid,bool:spawn=false)
  128. {
  129.     if(IsPlayerConnected(playerid) && InDM[playerid])
  130.     {
  131.         InDM[playerid] = false;
  132.         ResetPlayerWeapons(playerid);
  133.         KillTimer(DMTimer[playerid]);
  134.         if(spawn) SpawnPlayer(playerid);
  135.     }
  136. }
  137. //==============================================================================
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement