[HELP] TeamChat + /smack
#1

Team Chat: = The team "FISHER" dont get the messages =/
pawn Код:
public OnPlayerCommandText(playerid, cmdtext[])
{
    if(strcmp("/fm", cmdtext, true, 3) == 0)
    {
        if(gTeam[playerid] == TEAM_FISHER)
        {
            if(strlen(cmdtext) <= 4) return SendClientMessage(playerid,COLOR_RED,"USAGE: /fm <message>");

            new message[255];
            strmid(message, cmdtext, 3, strlen(cmdtext));

            new name[MAX_PLAYER_NAME], string[128];
            GetPlayerName(playerid, name, sizeof(name));

            for(new i = 0; i < MAX_PLAYERS; i++)
            {
                if(gTeam[i] == TEAM_FISHER)
                {
                    format(string, sizeof(string), "FISH MESSAGE: %s(%d) %s",name, playerid, message);
                    SendClientMessage(i, COLOR_TEAMCHAT, string);
                    return 1;
                }
            }
            return 1;
        }
        return 0;
    }
    return 0;
}
Smack: Makes other commands buggy, like: if i type "/smac" then my server crash
"/"
"/kil"
"/smack "
ect...
pawn Код:
public OnPlayerCommandText(playerid, cmdtext[])
{
    new targetid = strval(cmdtext[6]);
    new Float:x, Float:y, Float:z;
   
    new Float:health;
    GetPlayerHealth(targetid, health);
       
    new pName [MAX_PLAYER_NAME], tName [MAX_PLAYER_NAME], string [128];
    GetPlayerName(playerid, pName, MAX_PLAYER_NAME);
    GetPlayerName(targetid, tName, MAX_PLAYER_NAME);
       
    if (strcmp("/smack", cmdtext, true, 6) == 0 && IsPlayerAdmin(playerid))
    {
        if(cmdtext[6] != 32 || cmdtext[7] == EOS) return SendClientMessage(playerid, 0xFFFFFFFF, "USAGE: /smack [playerid]");
        if('9' < cmdtext[7] || cmdtext[7] < '0') return SendClientMessage(playerid, 0xFFFFFFFF, "The ID must be a number");
        if(GetPlayerPos(targetid, x, y, z) == 0) return SendClientMessage(playerid, 0xFFFFFFFF, "Invalid ID");
        if(!IsPlayerNearPlayer(playerid, targetid, 2.0)) return SendClientMessage(playerid, 0xFFFFFFFF, "Not Near");

        if (health < 50.0)
        {
            format(string, sizeof(string), "%s(%d) has smacked %s(%d) to death",pName, playerid, tName, targetid);
            SendClientMessageToAll(0xFF0000FF, string);
           
            SetPlayerHealth(targetid, 0);
            return 1;
        }
        else
        {
            format(string, sizeof(string), "%s(%d) has smacked %s(%d)",pName, playerid, tName, targetid);
            SendClientMessageToAll(0xFF0000FF, string);
            return 1;
        }
    }
    return 0;
}

stock IsPlayerNearPlayer(playerid, targetid, Float:Range)
{
    new Float:X, Float:Y, Float:Z;
    GetPlayerPos(targetid, X, Y, Z);
    if(IsPlayerInRangeOfPoint(playerid, Range, X, Y, Z)) return 1;
    return 0;
}
Reply
#2

pawn Код:
public OnPlayerCommandText(playerid, cmdtext[])
{
    if(strcmp("/fm", cmdtext, true, 3) == 0)
    {
        if(gTeam[playerid] == TEAM_FISHER)
        {
            if(cmdtext[3] == 0)
            {
                SendClientMessage(playerid,COLOR_RED,"USAGE: /fm <message>");
                return 1;
            }
            new name[MAX_PLAYER_NAME], string[128];
            GetPlayerName(playerid, name, sizeof(name));
            for(new i = 0; i < MAX_PLAYERS; i++)
            {
                if(IsPlayerConnected(i))
                {
                    if(gTeam[i] == gTeam[playerid])
                    {
                        format(string, sizeof(string), "FISH MESSAGE: %s(%d) %s",name, playerid,cmdtext[4]);
                        SendClientMessage(i, COLOR_TEAMCHAT, string);
                    }
                }
            }
        }
        return 1;
    }
    return 0;
}
Can't make right now the /smack command workable because i need to go to sleep. I will make it as soon as possible if someone else won't do it.
Reply
#3

Quote:
Originally Posted by Franck_
Посмотреть сообщение
Can't make right now the /smack command workable because i need to go to sleep. I will make it as soon as possible if someone else won't do it.
Thanks,

And.. take your time :P
Reply


Forum Jump:


Users browsing this thread: 3 Guest(s)