22.01.2015, 05:23
Basically I'm using this gamemode here: https://sampforum.blast.hk/showthread.php?tid=558762
I'm stuck on actually getting it to use a distance of how far you should be from a player. I don't known Pawn too well, but by reading it I don't know what's wrong. At the moment you can rob someone from the other side of the map like normal.
I'm stuck on actually getting it to use a distance of how far you should be from a player. I don't known Pawn too well, but by reading it I don't know what's wrong. At the moment you can rob someone from the other side of the map like normal.
Код:
stock GetClosePlayer(playerid) { new Float:X,Float:Y,Float:Z; GetPlayerPos(playerid,X,Y,Z); foreach(Player,i) { if(IsPlayerInRangeOfPoint(i, 5, X,Y,Z) && pData[i][Jailed] == false && i != playerid) { return i; } } return -1; } CMD:rob(playerid,params[]) { if(iTeam[playerid] != T_CIVIL) return Error(playerid,"You Have To Be Civilian To Rob Players"); if(pData[playerid][RobTim] != 0) return Error(playerid,"Please Wait Before Robbing a Player Again"); new d; if(sscanf(params,"u",d)) d = GetClosePlayer(playerid); if(d == -1) return Error(playerid,"No Player Close Enough To Rob"); if(pData[d][Jailed] == true) {Form(playerid,red,"** %s(%d) Is Jailed ! You Can't Rob Him",GetName(d),d); return 1;} if(pData[d][InGang] == true && pData[playerid][Gang_ID] == pData[d][Gang_ID]) return Error(playerid,"You Can't Rob Your Gang Members"); new Fail = random(3); if(Fail == 2) { if(GetCash(d) < 5000) { TextToPlayer(playerid,"~y~Rob Attempt Failed"); Form(playerid,green,"* %s(%d) Is Not Carrying Any Money",GetName(d),d); Form(d,blue,"* %s(%d) Has Attempted To Rob You",GetName(playerid),playerid); pData[playerid][RobTim] = 30; }else{ GiveCash(playerid,GetCash(d)/4); GiveCash(d,-GetCash(d)/4); new str[256]; format(str,sizeof(str),"~w~Robbed ~g~%d$~w~ From %s",GetCash(d)/4,GetName(d)); TextToPlayer(playerid,str); format(str,sizeof(str),"~r~%s Has Robbed You~n~~g~%d$~r~ Lost",GetName(playerid),4,GetName(d)); pData[playerid][RobTim] = 30; } }else{ TextToPlayer(playerid,"~y~Rob Attempt Failed"); Form(playerid,Dred,"* %s(%d) Has Noticed You Trying To Rob Him",GetName(d),d); Form(d,blue,"* %s(%d) Has Attempted To Rob You",GetName(playerid),playerid); pData[playerid][RobTim] = 30; } return 1; }