SA-MP Forums Archive
SERVER: UNKNOWN COMMAND (Help) - Printable Version

+- SA-MP Forums Archive (https://sampforum.blast.hk)
+-- Forum: SA-MP Scripting and Plugins (https://sampforum.blast.hk/forumdisplay.php?fid=8)
+--- Forum: Scripting Help (https://sampforum.blast.hk/forumdisplay.php?fid=12)
+--- Thread: SERVER: UNKNOWN COMMAND (Help) (/showthread.php?tid=372943)



SERVER: UNKNOWN COMMAND (Help) - mickos - 28.08.2012

Hey, I just created a /report command but why it doesnt work? When I type ingame /report I got: SERVER: UNKNOWN COMMAND!

This is the code:

pawn Код:
public OnPlayerCommandText(playerid, cmdtext[])
{
    if (strcmp("/report", cmdtext, true, 10) == 0)
    {
        new reported, tmp[256], tmp2[256], Index;
        tmp = strtok(params,Index), tmp2 = strtok(params,Index);
        if(!strlen(params)) return SendClientMessage(playerid,COLOR_RED, "USAGE: /report [playerid] [reason]");
        reported = strval(tmp);
        if(IsPlayerConnected(reported) && reported != INVALID_PLAYER_ID) {
                if(IsPlayerAdminLevel(reported,1)) return SendClientMessage(playerid,COLOR_RED,"You can't report an admin.");
                if(playerid == reported) return SendClientMessage(playerid,COLOR_RED,"Why Would You Report Yourself??");
                if(strlen(params) > 7)
                {
                        new reportedname[MAX_PLAYER_NAME], reporter[MAX_PLAYER_NAME], str[128];
                        GetPlayerName(reported, reportedname, sizeof(reportedname));    GetPlayerName(playerid, reporter, sizeof(reporter));
                        format(str, sizeof(str), "%s(%d) Reported %s(%d) : %s",reporter,playerid, reportedname, reported, params[strlen(tmp)+1]);
                        for(new i = 0; i < MAX_PLAYERS; i++)
                                {
                    if(IsPlayerAdminLevel(reported,1))
                    {
                    GameTextForPlayer(i,"New Report",400,6);
                    SendClientMessage(i,COLOR_GREEN,str);
                    PlayerPlaySound(i,1057,0,0,0);
                    }
                                }
                        return SendClientMessage(playerid,COLOR_YELLOW, "Report Sent. Admin's Will Review It And Get Back To You.");
            } else return SendClientMessage(playerid,COLOR_RED,"Not A Valid Reason.");
        } else return SendClientMessage(playerid,COLOR_RED, "That Player Is Not Connected.");
        return 1;
    }
    return 0;
}
Anyone that know it?

Ty


Re: SERVER: UNKNOWN COMMAND (Help) - ZBits - 28.08.2012

do you use any other Command processor?


Re: SERVER: UNKNOWN COMMAND (Help) - mickos - 28.08.2012

No, I just only use strcmp


Re: SERVER: UNKNOWN COMMAND (Help) - M3mPHi$_S3 - 28.08.2012

and have you compiled this script ?


Re: SERVER: UNKNOWN COMMAND (Help) - mickos - 28.08.2012

Yes I have compiled it and I didnt have any errors or warnings


Re: SERVER: UNKNOWN COMMAND (Help) - ThePhenix - 28.08.2012

Try it:
pawn Код:
public OnPlayerCommandText(playerid, cmdtext[])
{
    if (strcmp("/report", cmdtext, true, 10) == 0)
    {
        new reported, tmp[256], tmp2[256], Index;
        tmp = strtok(params,Index), tmp2 = strtok(params,Index);
        if(!strlen(params)) return SendClientMessage(playerid,COLOR_RED, "USAGE: /report [playerid] [reason]");
        reported = strval(tmp);
        if(IsPlayerConnected(reported) && reported != INVALID_PLAYER_ID) {
                if(IsPlayerAdminLevel(reported,1)) return SendClientMessage(playerid,COLOR_RED,"You can't report an admin.");
                if(playerid == reported) return SendClientMessage(playerid,COLOR_RED,"Why Would You Report Yourself??");
                if(strlen(params) > 7)
                {
                        new reportedname[MAX_PLAYER_NAME], reporter[MAX_PLAYER_NAME], str[128];
                        GetPlayerName(reported, reportedname, sizeof(reportedname));    GetPlayerName(playerid, reporter, sizeof(reporter));
                        format(str, sizeof(str), "%s(%d) Reported %s(%d) : %s",reporter,playerid, reportedname, reported, params[strlen(tmp)+1]);
                        for(new i = 0; i < MAX_PLAYERS; i++)
                                {
                    if(IsPlayerAdminLevel(reported,1))
                    {
                    GameTextForPlayer(i,"New Report",400,6);
                    SendClientMessage(i,COLOR_GREEN,str);
                    PlayerPlaySound(i,1057,0,0,0);
                    }
                                }
                        return SendClientMessage(playerid,COLOR_YELLOW, "Report Sent. Admin's Will Review It And Get Back To You.");
            } else return SendClientMessage(playerid,COLOR_RED,"Not A Valid Reason.");
        } else return SendClientMessage(playerid,COLOR_RED, "That Player Is Not Connected.");
        return 1;
    }



Re: SERVER: UNKNOWN COMMAND (Help) - RedJohn - 28.08.2012

pawn Код:
public OnPlayerCommandText(playerid, cmdtext[])
{
    if (strcmp("/report", cmdtext, true, 10) == 0)
    {
        new reported, tmp[256], tmp2[256], Index;
        tmp = strtok(params,Index), tmp2 = strtok(params,Index);
        if(!strlen(params)) return SendClientMessage(playerid,COLOR_RED, "USAGE: /report [playerid] [reason]");
        reported = strval(tmp);
        if(IsPlayerConnected(reported) && reported != INVALID_PLAYER_ID) {
                if(IsPlayerAdminLevel(reported,1)) return SendClientMessage(playerid,COLOR_RED,"You can't report an admin.");
                if(playerid == reported) return SendClientMessage(playerid,COLOR_RED,"Why Would You Report Yourself??");
                if(strlen(params) > 7)
                {
                        new reportedname[MAX_PLAYER_NAME], reporter[MAX_PLAYER_NAME], str[128];
                        GetPlayerName(reported, reportedname, sizeof(reportedname));    GetPlayerName(playerid, reporter, sizeof(reporter));
                        format(str, sizeof(str), "%s(%d) Reported %s(%d) : %s",reporter,playerid, reportedname, reported, params[strlen(tmp)+1]);
                        for(new i = 0; i < MAX_PLAYERS; i++)
                                {
                    if(IsPlayerAdminLevel(reported,1))
                    {
                    GameTextForPlayer(i,"New Report",400,6);
                    SendClientMessage(i,COLOR_GREEN,str);
                    PlayerPlaySound(i,1057,0,0,0);
                    }
                                }
                        return SendClientMessage(playerid,COLOR_YELLOW, "Report Sent. Admin's Will Review It And Get Back To You.");
            } else return SendClientMessage(playerid,COLOR_RED,"Not A Valid Reason.");
        } else return SendClientMessage(playerid,COLOR_RED, "That Player Is Not Connected.");
        return 1;
    }
    return 1;
}
If you got it still then use this:
pawn Код:
forward OnPlayerCommandPerformed(playerid, cmdtext[], success);
pawn Код:
public OnPlayerCommandPerformed(playerid, cmdtext[], success)
{
    if(!success) return 1;
    return 1;
}



Re: SERVER: UNKNOWN COMMAND (Help) - mickos - 28.08.2012

It didnt work =S


Re: SERVER: UNKNOWN COMMAND (Help) - ThePhenix - 28.08.2012

If you use:

Код:
return 0;
The server will sent that kind of message!

So change it to:

PHP код:
return 1



Re: SERVER: UNKNOWN COMMAND (Help) - RedJohn - 28.08.2012

Well, i'm using my 2nd opinion and it's working like a charm. You need to have forward and public thingy.