Rob Command doesn't use distance
#1

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.

Код:
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;

}
Reply


Forum Jump:


Users browsing this thread: 1 Guest(s)