help with whisper
#1

im trying to make /w (whisper) but i always get player is not point of range while they are near
pawn Код:
COMMAND:w(playerid, params[])
{
    new id,string[128], text[64], Float:dpX, Float:dpY, Float:dpZ;
    if(sscanf(params, "s[64",string, text)) return SendClientMessage(playerid, 0xFF0000FF, "USAGE: /w [text]");
    if (!IsPlayerInRangeOfPoint(id, 10, dpX, dpY, dpZ)) return SendClientMessage(playerid, 0xFF0000FF, "ERROR: Nobody is in point of range!");
    GetPlayerName(playerid, string, sizeof(string));
    format(string, sizeof(string), "%s whispers: %s", string, text);
    SendClientMessage(id,0x10F441AA, string);
    return 1;
}
Reply
#2

That's because you're checking the distance to the co-ordinates of the player who's ID is the value of "id", which is not specifically defined by you, therefore by default it is 0. So you're comparing the location of ID 0 with dpX, dpY and dpZ which have no locations stored in them, yet again, they are defaulted to 0.0000.

Do you see the problem here? For such a command, you need a loop which will go through the players and send them the message each if they are in range.
Reply
#3

ohhh lol thanks JaToch
Reply


Forum Jump:


Users browsing this thread: 1 Guest(s)