03.12.2013, 21:24
Fiz esse comando pra um emprego de mйdico, o mйdico pode curar 50 de vida a sн mesmo ou a outro player que estiver perto com intervalo de 5 minutos pra usar de novo, porйm й meio bugado, as vezes a vida nгo seta 50 e sim 200 ou 300 e o player fica no god mode, qual o problema do comando?
pawn Код:
if(strcmp(cmd, "/curativo", true) == 0)
{
if(IsPlayerConnected(playerid))
{
tmp = strtok(cmdtext, idx);
if(!strlen(tmp))
{
SendClientMessage(playerid, COLOR_GRAD2, "USE: /curativo [id]");
return true;
}
if(GetTickCount() - aFlood[playerid] < 300000)
{
SendClientMessage(playerid,COLOR_GREY,"Vocк jб fez um curativo, espere 5 minutos para fazer de novo!");
return 1;
}
giveplayerid = ReturnUser(tmp);
if(IsPlayerConnected(giveplayerid))
{
if(giveplayerid != INVALID_PLAYER_ID)
{
if(ProxDetectorS(8.0, playerid, giveplayerid))
{
GetPlayerName(giveplayerid, giveplayer, sizeof(giveplayer));
GetPlayerName(playerid, sendername, sizeof(sendername));
if(gTeam[playerid] == TEAM_CYAN||PlayerInfo[playerid][pEmpregoVIP] == 1)//model
{
format(string, sizeof(string), "~y~Voce foi curado ~n~~w~%s~n~~g~", giveplayer);
GameTextForPlayer(playerid, string, 5000, 1);
new hp = 0;
aFlood[playerid] = GetTickCount();
ApplyAnimation(playerid,"BOMBER","BOM_Plant",1.0,1,0,0,0,0);
SetTimerEx("AnimCurativo", 500, 0, "i", playerid);
if(PlayerInfo[playerid][pPainPerk] > 0)
{
VidaDoCara[giveplayerid] = 2; AXITERCOLETE[giveplayerid] = 3;
hp = 50 * PlayerInfo[playerid][pPainPerk]; hp += 50;
GivePlayerHealth(giveplayerid, hp);
}
else
{
VidaDoCara[giveplayerid] = 2; AXITERCOLETE[giveplayerid] = 3;
hp = 50;
GivePlayerHealth(giveplayerid, 50);
}
PlayerPlaySound(playerid, 1150, 0.0, 0.0, 0.0);
PlayerPlaySound(giveplayerid, 1150, 0.0, 0.0, 0.0);
format(string, sizeof(string), "Vocк foi curado, %d de saude.",hp);
SendClientMessage(giveplayerid, COLOR_LIGHTBLUE,string);
}
}
else
{
SendClientMessage(playerid, COLOR_GRAD1, "O jogador estб muito longe!");
return true;
}
}
}
else
{
SendClientMessage(playerid, COLOR_GRAD1, " Esse jogador estб offline");
}
}
return true;
}