SHARE
TWEET

[FS] Sistema de MedKit 0.5v

IlanZiin Apr 10th, 2017 (edited) 191 Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
  1. /* ***********************************************************************************************************
  2.  
  3.                                     FilterScript criado por: IlanZ
  4.  
  5.                                     Skype: ilan.silva11
  6.  
  7.                                     (Não tire os créditos)                                    
  8.  
  9.    ***********************************************************************************************************
  10. */
  11. #include <a_samp>
  12. #include <zcmd>
  13.  
  14. #if defined FILTERSCRIPT
  15.  
  16. public OnFilterScriptInit()
  17. {
  18.     print("\n--------------------------------------");
  19.     print(" FilterScript MedKit 0.5v Carregado. By: IlanZ");
  20.     print("--------------------------------------\n");
  21.     return 1;
  22. }
  23.  
  24. #else
  25. main(){
  26.     print("\n----------------------------------");
  27.     print(" FilterScript MedKit 0.5v Carregado. By: IlanZ");
  28.     print("----------------------------------\n");
  29. }
  30.  
  31. #endif
  32.  
  33. enum MedKitEnum
  34. {
  35.     bool: MedKitPlayer,
  36.     bool: MedPlayer,
  37.     MedKits,
  38.     VidaMedKit,
  39.     MedKitObject,
  40.     TimerReceber,
  41.     Float:PosPlayerX,
  42.     Float:PosPlayerY,
  43.     Float:PosPlayerZ,
  44.     Text3D: LabelMed
  45. }
  46.  
  47. new MedKitDados[MAX_PLAYERS][MedKitEnum];
  48.  
  49. public OnPlayerConnect(playerid)
  50. {
  51.     SpawnPlayer(playerid);
  52.     MedKitDados[playerid][MedPlayer] = false;
  53.     return 1;
  54. }
  55. public OnPlayerDisconnect(playerid, reason)
  56. {
  57.     DestruirMedKit(playerid);
  58.     return 1;
  59. }
  60.  
  61. public OnPlayerDeath(playerid, killerid, reason)
  62. {
  63.     DestruirMedKit(playerid);
  64.     return 1;
  65. }
  66.  
  67. public OnPlayerPickUpPickup(playerid, pickupid)
  68. {
  69.     if(pickupid == MedKitDados[playerid][MedKits])
  70.     {
  71.         MedKitDados[playerid][TimerReceber] = SetTimerEx("AumentarVidaMed",2000,false,"i",playerid);
  72.     }
  73.     return 1;
  74. }
  75. forward AumentarVidaMed(playerid);
  76. public AumentarVidaMed(playerid)
  77. {
  78.     new Float:soma,Float:Vida,Float:Colete;
  79.     GetPlayerArmour(playerid, Colete);
  80.     GetPlayerHealth(playerid, Vida);
  81.     soma = Vida+Colete;
  82.     floatround(soma);
  83.     if(!IsPlayerInRangeOfPoint(playerid, 2.0, MedKitDados[playerid][PosPlayerX], MedKitDados[playerid][PosPlayerY], MedKitDados[playerid][PosPlayerZ]))
  84.     {
  85.         KillTimer(MedKitDados[playerid][TimerReceber]);
  86.     }else{
  87.         if(soma != 200)
  88.         {
  89.             MedKitDados[playerid][VidaMedKit]--;
  90.             if(Vida > 99)
  91.             {
  92.                 GetPlayerArmour(playerid, Colete);
  93.                 SetPlayerArmour(playerid, (Colete+6));
  94.                 PlayerPlaySound(playerid, 5202, 0.0, 0.0, 0.0);
  95.             }  
  96.             if(Vida < 99)
  97.             {
  98.                 GetPlayerHealth(playerid, Vida);
  99.                 SetPlayerHealth(playerid, (Vida+6));
  100.                 PlayerPlaySound(playerid, 5202, 0.0, 0.0, 0.0);
  101.             }
  102.             if(MedKitDados[playerid][VidaMedKit] == 0)
  103.             {
  104.                 DestruirMedKit(playerid);
  105.                 SendClientMessage(playerid, -1, "MedKit Quebrado!");
  106.                 KillTimer(MedKitDados[playerid][TimerReceber]);
  107.                 PlayerPlaySound(playerid, 6402, 0.0, 0.0, 0.0);
  108.             }
  109.             if(Vida >= 100) SetPlayerHealth(playerid, 100);
  110.             if(Colete >= 100) SetPlayerArmour(playerid, 100);
  111.         }else{
  112.             SendClientMessage(playerid, -1, "Vida e Colete cheio!");
  113.         }
  114.     }
  115.     return 1;
  116. }
  117. CMD:medkit(playerid){
  118.     new str[89], string[35];
  119.     if(MedKitDados[playerid][MedKitPlayer] != true) return SendClientMessage(playerid, -1, "Voce nao tem medkit");
  120.     if(MedKitDados[playerid][MedPlayer] == true) return SendClientMessage(playerid, -1, "Você ja criou um medkit");
  121.     GetPlayerPos(playerid, MedKitDados[playerid][PosPlayerX],MedKitDados[playerid][PosPlayerY], MedKitDados[playerid][PosPlayerZ]);
  122.     MedKitDados[playerid][MedKits] = CreatePickup(19605,1, MedKitDados[playerid][PosPlayerX], MedKitDados[playerid][PosPlayerY], MedKitDados[playerid][PosPlayerZ]-1.5), MedKitDados[playerid][MedKitObject] = CreateObject(11736, MedKitDados[playerid][PosPlayerX], MedKitDados[playerid][PosPlayerY], MedKitDados[playerid][PosPlayerZ]-1, 0.0, 0.0, 0.0);
  123.     MedKitDados[playerid][VidaMedKit] = 10;
  124.     format(str,89, "Voce criou um Medkit em X:%.2f Y:%.2f Z:%.2f", MedKitDados[playerid][PosPlayerX], MedKitDados[playerid][PosPlayerY], MedKitDados[playerid][PosPlayerZ]);
  125.     format(string,35,"MedKit\n de %s", PlayerName(playerid));
  126.     PlayerPlaySound(playerid, 32000, 0.0, 0.0, 0.0), MedKitDados[playerid][MedPlayer] = true;
  127.     MedKitDados[playerid][LabelMed] = Create3DTextLabel(string, 0xEDE6E6AA, MedKitDados[playerid][PosPlayerX],MedKitDados[playerid][PosPlayerY],MedKitDados[playerid][PosPlayerZ], 25.0, 0);
  128.     return SendClientMessage(playerid, -1, str);
  129. }
  130. CMD:destruirmedkit(playerid)
  131. {
  132.     if(MedKitDados[playerid][MedPlayer] != true) return SendClientMessage(playerid, -1, "Você não criou um medkit");
  133.     DestruirMedKit(playerid);
  134.     SendClientMessage(playerid, -1, "Medkit destruido");
  135.     return 1;
  136. }
  137. CMD:comprarmedkit(playerid)
  138. {
  139.     MedKitDados[playerid][MedKitPlayer] = true;
  140.     SendClientMessage(playerid, -1, "MedKit comprado");
  141.     return 1;
  142. }
  143. PlayerName(playerid)
  144. {
  145.     new nome[MAX_PLAYER_NAME];
  146.     GetPlayerName(playerid,nome,MAX_PLAYER_NAME);
  147.     return nome;
  148. }
  149. DestruirMedKit(playerid)
  150. {
  151.     DestroyPickup(MedKitDados[playerid][MedKits]);
  152.     DestroyObject(MedKitDados[playerid][MedKitObject]);
  153.     Delete3DTextLabel(MedKitDados[playerid][LabelMed]);
  154.     MedKitDados[playerid][MedPlayer] = false;
  155.     return 1;
  156. }
RAW Paste Data
Top