Error in AFK System
#1

Here Is My Code Of The Away From Keyboard System:

PHP код:
//-------------------------[Includes]-------------------------------------//
#include <a_samp>
#include <zcmd>
#define dcmd(%1,%2,%3) if (!strcmp((%3)[1], #%1, true, (%2)) && ((((%3)[(%2) + 1] == '\0') && (dcmd_%1(playerid, ""))) || (((%3)[(%2) + 1] == ' ') && (dcmd_%1(playerid, (%3)[(%2) + 2]))))) return 1
#pragma tabsize 0
//-------------------------[Color Defines]-------------------------------------//
#define COLOR_WHITE 0xFFFFFFAA
#define COLOR_GREEN 0x00FF00AA
#define COLOR_RED 0xFF0000AA
#define COLOR_LIGHTBLUE 0x33CCFFAA
#define COLOR_YELLOW 0xFFFF00AA
enum Player
{
    
AFKstatus
}
new 
PlayerInfo[MAX_PLAYERS][Player];
public 
OnFilterScriptInit()
{
        print(
"\n--------------------------------------");
        print(
"Elite Gaming Away From Keyboard System Loaded!");
        print(
"--------------------------------------\n");
        return 
1;
}
public 
OnFilterScriptExit()
{
        return 
1;
}
dcmd_afk(playeridparams[])
        {
            
#pragma unused params
                
new string[256];
                if (
PlayerInfo[playerid][AFKstatus] == 1)
                {
                        
SendClientMessage(playeridCOLOR_RED"SERVER:{FFFFFF} You are already /afk");
                        return 
1;
                }
                else if (
PlayerInfo[playerid][AFKstatus] == 0)
                {
                        new 
pname[MAX_PLAYER_NAME];
                        
GetPlayerName(playeridpnamesizeof(pname));
                        
format(stringsizeof(string), "*{FFFFFF} %s is now AFK"pname);
                        
SendClientMessageToAll(COLOR_YELLOWstring);
                        
TogglePlayerControllable(playerid,0);
                        
SetPlayerVirtualWorld(playeridGetPlayerVirtualWorld(playerid) + 50);
                        
PlayerInfo[playerid][AFKstatus] = 1;
                        return 
1;
                }
return 
0;
}
dcmd_back(playeridparams[])
{
    
#pragma unused params
     
new string [256];
      if (
PlayerInfo[playerid][AFKstatus] == 0)
           {
             
SendClientMessage(playeridCOLOR_RED"SERVER:{FFFFFF} You aren't /afk");
               return 
1;
           }
            else if (
PlayerInfo[playerid][AFKstatus] == 1)
                {
                        new 
pname[MAX_PLAYER_NAME];
                        
GetPlayerName(playeridpnamesizeof(pname));
                        
format(stringsizeof(string), "*{FFFFFF} %s is now back!"pname);
                        
SendClientMessageToAll(COLOR_YELLOWstring);
                        
TogglePlayerControllable(playerid,1);
                        
SetPlayerVirtualWorld(playeridGetPlayerVirtualWorld(playerid) - 50);
                        
PlayerInfo[playerid][AFKstatus] = 0;
                        return 
1;
}
CMD:afkhelp(playeridparams [])
{
    
SendClientMessage(playeridCOLOR_RED"____Elite Gaming Away From Keyboard Help____");
    
SendClientMessage(playeridCOLOR_WHITE"To go in AFK Status use /afk");
    
SendClientMessage(playeridCOLOR_WHITE"To get back into your normal status use /back");
    return 
1;
}
return 
0;
}
public 
OnPlayerDisconnect(playeridreason)
{
        
PlayerInfo[playerid][AFKstatus] = 0;
        return 
1;
}
public 
OnPlayerText(playeridtext[])
{
        if (
PlayerInfo[playerid][AFKstatus] == 1)
        {
                
SendClientMessage(playeridCOLOR_RED"SERVER:{FFFFFF} You need to type /back to speak");
                return 
0;
        }
        else if (
PlayerInfo[playerid][AFKstatus] == 0)
        {
                return 
1;
        }
        return 
1;
}
public 
OnPlayerCommandText(playeridcmdtext[])
{
        
dcmd(afk,3,cmdtext);
        
dcmd(back,4,cmdtext);
        return 
0;

Here Is My Error:

PHP код:
C:\Users\Immortal\Desktop\Classified Gaming Roleplay\filterscripts\AFKSystem.pwn(82) : error 029invalid expressionassumed zero
C
:\Users\Immortal\Desktop\Classified Gaming Roleplay\filterscripts\AFKSystem.pwn(82) : error 017undefined symbol "cmd_afkhelp"
C:\Users\Immortal\Desktop\Classified Gaming Roleplay\filterscripts\AFKSystem.pwn(82) : error 029invalid expressionassumed zero
C
:\Users\Immortal\Desktop\Classified Gaming Roleplay\filterscripts\AFKSystem.pwn(82) : fatal error 107too many error messages on one line
Compilation aborted
.Pawn compiler 3.2.3664              Copyright (c1997-2006ITB CompuPhase
4 Errors

Reply
#2

......
Reply
#3

I am getting this error trying to compile:

PHP код:
C:\Users\Immortal\Desktop\Classified Gaming Roleplay\filterscripts\AFKSystem.pwn(41) : error 017undefined symbol "ReturnPlayerName"
C:\Users\Immortal\Desktop\Classified Gaming Roleplay\filterscripts\AFKSystem.pwn(57) : error 017undefined symbol "ReturnPlayerName"
C:\Users\Immortal\Desktop\Classified Gaming Roleplay\filterscripts\AFKSystem.pwn(74) : error 054unmatched closing brace ("}")
Pawn compiler 3.2.3664              Copyright (c1997-2006ITB CompuPhase
3 Errors

Reply
#4

Never combine more than one command processor, it will make the other one not being called.

Sabur's code will give you a error because there is undefined function ReturnPlayerName.
Use the GetPlayerName method that is in your original post's code.
Reply
#5

Can you help me fix it please?
Reply
#6

PHP код:
//-------------------------[Includes]-------------------------------------//
#include <a_samp>
#include <zcmd>
#pragma tabsize 0
//-------------------------[Color Defines]-------------------------------------//
#define COLOR_WHITE 0xFFFFFFAA
#define COLOR_GREEN 0x00FF00AA
#define COLOR_RED 0xFF0000AA
#define COLOR_LIGHTBLUE 0x33CCFFAA
#define COLOR_YELLOW 0xFFFF00AA
enum Player
{
    
AFKstatus
}
new 
PlayerInfo[MAX_PLAYERS][Player];
public 
OnFilterScriptInit()
{
        print(
"\n--------------------------------------");
        print(
"Elite Gaming Away From Keyboard System Loaded!");
        print(
"--------------------------------------\n");
        return 
1;
}
public 
OnFilterScriptExit()
{
        return 
1;
}
CMD:afk(playeridparams[])
{
    new
    
string[128];
    
    if(
PlayerInfo[playerid][AFKstatus])
       return 
SendClientMessage(playeridCOLOR_RED"SERVER: {FFFFFF}You are already /afk.");
       
    new
    
name[24];
    
GetPlayerName(playeridnamesizeof(name));
    
format(stringsizeof(string), "*{FFFFFF} %s is now AFK."name);
    
SendClientMessageToAll(COLOR_YELLOWstring);
    
TogglePlayerControllable(playerid0);
    
SetPlayerVirtualWorld(playeridGetPlayerVirtualWorld(playerid) + 50);
    
PlayerInfo[playerid][AFKstatus] = 1;
    return 
1;
}
CMD:back(playeridparams[])
{
    new
    
string[128];
    
    if(!
PlayerInfo[playerid][AFKstatus])
       return 
SendClientMessage(playeridCOLOR_RED"SERVER: {FFFFFF}You aren't /afk.");
       
    new
    
name[24];
    
GetPlayerName(playeridnamesizeof(name));
    
format(stringsizeof(string), "*{FFFFFF} %s is now back!"name);
    
SendClientMessageToAll(COLOR_YELLOWstring);
    
TogglePlayerControllable(playerid1);
    
SetPlayerVirtualWorld(playeridGetPlayerVirtualWorld(playerid) - 50);
    
PlayerInfo[playerid][AFKstatus] = 0;
    
    return 
1;
}
CMD:afkhelp(playeridparams [])
{
    
SendClientMessage(playeridCOLOR_RED"____Elite Gaming Away From Keyboard Help____");
    
SendClientMessage(playeridCOLOR_WHITE"To go in AFK Status use /afk");
    
SendClientMessage(playeridCOLOR_WHITE"To get back into your normal status use /back");
    return 
1;
}
public 
OnPlayerDisconnect(playeridreason)
{
        
PlayerInfo[playerid][AFKstatus] = 0;
        return 
1;
}
public 
OnPlayerText(playeridtext[])
{
        if (
PlayerInfo[playerid][AFKstatus] == 1)
        {
                
SendClientMessage(playeridCOLOR_RED"SERVER:{FFFFFF} You need to type /back to speak");
                return 
0;
        }
        else if (
PlayerInfo[playerid][AFKstatus] == 0)
        {
                return 
1;
        }
        return 
1;

just paste it, now it will work.
Reply
#7

Thanks Sabur & Darkwood17. I +rep Sabur & +rep Darkwood17 for helping me
Reply


Forum Jump:


Users browsing this thread: 1 Guest(s)