Nyft_

COMANDOS: Algemar e Desalgemar~NYFT

Sep 18th, 2021 (edited)
1,012
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
  1. #include a_samp
  2. #include sscanf2
  3. #include pawn.cmd
  4.  
  5. //
  6.  
  7. enum E_PLAYER
  8. {
  9.     bool:Cuffed
  10. }
  11.  
  12. new Player[MAX_PLAYERS][E_PLAYER];
  13.  
  14. main(){}
  15.  
  16. CMD:algemar(playerid, params[])
  17. {
  18.     if(!IsPlayerAdmin(playerid))
  19.         return SendClientMessage(playerid, -1, "* Você não tem permissão.");
  20.  
  21.     new targetid;
  22.    
  23.     if(sscanf(params, "u", targetid))
  24.         return SendClientMessage(playerid, -1, "* Use: /algemar (id)");
  25.  
  26.     if(playerid == targetid)
  27.         return SendClientMessage(playerid, -1, "* Você não pode algemar você mesmo.");
  28.  
  29.     if(!IsPlayerConnected(targetid))
  30.         return SendClientMessage(playerid, -1, "* ID não encontrado.");
  31.  
  32.     new Float:fPos[3];
  33.     GetPlayerPos(targetid, fPos[0], fPos[1], fPos[2]);
  34.  
  35.     if(GetPlayerDistanceFromPoint(playerid, fPos[0], fPos[1], fPos[2]) > 5.0)
  36.         return SendClientMessage(playerid, -1, "* Esse jogador está longe para ser algemado.");
  37.  
  38.     if(Player[playerid][Cuffed])
  39.         return SendClientMessage(playerid, -1, "* Esse jogador já está algemado.");
  40.  
  41.     Player[playerid][Cuffed] = true;
  42.     TogglePlayerControllable(targetid, false);
  43.     SetPlayerSpecialAction(targetid, SPECIAL_ACTION_CUFFED);
  44.     GameTextForPlayer(targetid, "ALGEMADO!", 5000, 3);
  45.  
  46.     new string[64];
  47.     format(string, sizeof(string), "* %s algemou o(a) %s.", GetPlayerNamef(playerid), GetPlayerNamef(targetid));
  48.  
  49.     for(new i = GetPlayerPoolSize() + 1; i > -1; i--)
  50.         if(IsPlayerConnected(i) && IsPlayerInRangeOfPoint(i, 30.0, fPos[0], fPos[1], fPos[2]))
  51.             SendClientMessage(i, -1, string);
  52.  
  53.     return 1;
  54. }
  55. CMD:desalgemar(playerid, params[])
  56. {
  57.     if(!IsPlayerAdmin(playerid))
  58.         return SendClientMessage(playerid, -1, "* Você não tem permissão.");
  59.  
  60.     new targetid;
  61.  
  62.     if(sscanf(params, "u", targetid))
  63.         return SendClientMessage(playerid, -1, "* Use: /desalgemar (id)");
  64.  
  65.     if(playerid == targetid)
  66.         return SendClientMessage(playerid, -1, "* Você não pode desalgemar você mesmo.");
  67.  
  68.     if(!IsPlayerConnected(targetid))
  69.         return SendClientMessage(playerid, -1, "* ID não encontrado.");
  70.  
  71.     new Float:fPos[3];
  72.     GetPlayerPos(targetid, fPos[0], fPos[1], fPos[2]);
  73.  
  74.     if(GetPlayerDistanceFromPoint(playerid, fPos[0], fPos[1], fPos[2]) > 5.0)
  75.         return SendClientMessage(playerid, -1, "* Esse jogador está longe para ser desalgemado.");
  76.  
  77.     if(!Player[playerid][Cuffed])
  78.         return SendClientMessage(playerid, -1, "* Esse jogador já está desalgemado.");
  79.  
  80.     Player[playerid][Cuffed] = false;
  81.     TogglePlayerControllable(targetid, true);
  82.     SetPlayerSpecialAction(targetid, SPECIAL_ACTION_NONE);
  83.     GameTextForPlayer(targetid, "DESALGEMADO!", 5000, 3);
  84.  
  85.     new string[64];
  86.     format(string, sizeof(string), "* %s desalgemou o(a) %s.", GetPlayerNamef(playerid), GetPlayerNamef(targetid));
  87.  
  88.     for(new i = GetPlayerPoolSize() + 1; i > -1; i--)
  89.         if(IsPlayerConnected(i) && IsPlayerInRangeOfPoint(i, 30.0, fPos[0], fPos[1], fPos[2]))
  90.             SendClientMessage(i, -1, string);
  91.  
  92.     return 1;
  93. }
  94.  
  95. //
  96.  
  97. GetPlayerNamef(playerid)
  98. {
  99.     new name[MAX_PLAYER_NAME];
  100.     GetPlayerName(playerid, name, MAX_PLAYER_NAME);
  101.     return name;
  102. }
RAW Paste Data