Faction Radio problem once again
#1

Hello, I am trying to make a /r (radio) for every faction. Every faction radio will send a message to all online members of the faction the sender is in..
Now my problem is: Only player id 0 sees the messages...
My code:

pawn Код:
CMD:r(playerid, params[])
{
    if(PlayerInfo[playerid][Fmember] >= 1)
    {
        if(isnull(params)) return SendClientMessage(playerid, COLOR_RED, "USAGE: /r [Text]");
        foreach(Player, i) {
            if(PlayerInfo[i][Fmember] == PlayerInfo[playerid][Fmember]) {
                new
                    string[ 128 ], name[ MAX_PLAYER_NAME ];
                GetPlayerName(playerid, name, sizeof(name));
                format(string, sizeof(string), "%s (radio): %s , Over.", name, params);
                SendClientMessage(i, TEAM_RADIO_COLOR, string);
                return 1;
            }
        }
        return 1;
    }
    else return SendClientMessage(playerid, COLOR_GREY, "You are not in a faction!");
}
someone know how to fix it?
Reply
#2

Try
pawn Код:
for (new i = 0; i < MAX_PLAYERS; i++)
instead of foreach
Reply
#3

Quote:
Originally Posted by milanosie
Посмотреть сообщение
Hello, I am trying to make a /r (radio) for every faction. Every faction radio will send a message to all online members of the faction the sender is in..
Now my problem is: Only player id 0 sees the messages...
My code:

pawn Код:
CMD:r(playerid, params[])
{
    if(PlayerInfo[playerid][Fmember] >= 1)
    {
        if(isnull(params)) return SendClientMessage(playerid, COLOR_RED, "USAGE: /r [Text]");
        foreach(Player, i) {
            if(PlayerInfo[i][Fmember] == PlayerInfo[playerid][Fmember]) {
                new
                    string[ 128 ], name[ MAX_PLAYER_NAME ];
                GetPlayerName(playerid, name, sizeof(name));
                format(string, sizeof(string), "%s (radio): %s , Over.", name, params);
                SendClientMessage(i, TEAM_RADIO_COLOR, string);
                return 1;
            }
        }
        return 1;
    }
    else return SendClientMessage(playerid, COLOR_GREY, "You are not in a faction!");
}
someone know how to fix it?
Hmm, try this out

pawn Код:
CMD:r(playerid, params[])
{
    if(PlayerInfo[playerid][Fmember] >= 1)
    {
        if(isnull(params)) return SendClientMessage(playerid, COLOR_RED, "USAGE: /r [Text]");
        new string[128], name[MAX_PLAYER_NAME];
        GetPlayerName(playerid, name, sizeof(name));
        format(string, sizeof(string), "%s (radio): %s , Over.", name, params);
        foreach(Player, i)
        {
            if(PlayerInfo[i][Fmember] == PlayerInfo[playerid][Fmember]) SendClientMessage(i, TEAM_RADIO_COLOR, string);
        }
    }
    else return SendClientMessage(playerid, COLOR_GREY, "You are not in a faction!");
    return 1;
}
Reply


Forum Jump:


Users browsing this thread: 1 Guest(s)