Working on it from yesterday, but no use.
#1

I'm making a freeze command..
pawn Код:
new IsFrozen[MAX_PLAYERS];
//-----------------------------------
public OnPlayerCommandText(playerid, cmdtext[])
{
    //All Player's Commands.
    dcmd(rules,5,cmdtext);
    //Admins Commands.
    if(PlayerInfo[playerid][pAdminLevel] >= 1)
    {
      dcmd(ann,3,cmdtext);
      dcmd(slap,4,cmdtext);
      dcmd(acar,4,cmdtext);
      dcmd(amotor,6,cmdtext);
      return 1;
    }
    if(PlayerInfo[playerid][pAdminLevel] >= 2)
    {
      dcmd(freeze,6,cmdtext);
      return 1;
    }
    if(PlayerInfo[playerid][pAdminLevel] >= 3)
    {
      return 1;
    }
    return 1;
}
//------------------------------------------------------------
dcmd_freeze(playerid,params[])
{
    #pragma unused params
    new pname[MAX_PLAYER_NAME];
    new string[128];
    new cmdreason[100];
    if(sscanf(params,"us[100]",cmdreason))
    {
        SendClientMessage(playerid,COLOR_ERROR,"USAGE: /freeze (Player Name) (Reason)");
        return 1;
    }
    if(IsFrozen[pname] == 1)   //line 940 (first error)
    {
        format(string,sizeof(string),"%s is already frozen by an Administrator. You cannot freeze them.",pname);
        SendClientMessage(playerid,COLOR_ERROR,string);
        return 1;
    }
    IsFrozen[pname] =1; //line 946 (second error)
    format(string,sizeof(string),"An Administrator has frozen %s.  (Reason: %s.)",pname,cmdreason);
    SendClientMessageToAll(COLOR_PINK,string);
    TogglePlayerControllable(0); //warning line

    /*format(string,sizeof(string),"9[ADMIN] Administrator has frozen %s(%d) for reason: %s.",PlayerName(ID),ID,cmdreason);
    IRC_GroupSay(gGroupID,IRC_CHANNEL,string);*/

    return 1;
}
//---------------------------------------------------------------------------------------------
Okay error:
Код:
D:\SAMP\Server\SACCNR [0.3e R2]\gamemodes\SACCNR.pwn(940) : error 029: invalid expression, assumed zero
D:\SAMP\Server\SACCNR [0.3e R2]\gamemodes\SACCNR.pwn(946) : error 033: array must be indexed (variable "pname")
D:\SAMP\Server\SACCNR [0.3e R2]\gamemodes\SACCNR.pwn(949) : warning 202: number of arguments does not match definition
Pawn compiler 3.2.3664	 	 	Copyright © 1997-2006, ITB CompuPhase


2 Errors.
I've been working on this command since yesterday but didn't find a solution yet, can you?
Reply
#2

pawn Код:
dcmd_freeze(playerid,params[])
{
    #pragma unused params
    new pname[MAX_PLAYER_NAME];
    new string[128];
    new cmdreason[100];
    new id;
    if(sscanf(params,"us[100]",id,cmdreason))
    {
        SendClientMessage(playerid,COLOR_ERROR,"USAGE: /freeze (Player Name) (Reason)");
        return 1;
    }
    GetPlayerName(id,pname,sizeof pname);
    if(IsFrozen[id] == 1)
    {
        format(string,sizeof(string),"%s is already frozen by an Administrator. You cannot freeze them.",pname);
        SendClientMessage(playerid,COLOR_ERROR,string);
        return 1;
    }
    IsFrozen[id] =1;
    format(string,sizeof(string),"An Administrator has frozen %s.  (Reason: %s.)",pname,cmdreason);
    SendClientMessageToAll(COLOR_PINK,string);
    TogglePlayerControllable(0);

    /*format(string,sizeof(string),"9[ADMIN] Administrator has frozen %s(%d) for reason: %s.",PlayerName(ID),ID,cmdreason);
    IRC_GroupSay(gGroupID,IRC_CHANNEL,string);*/

    return 1;
}
Reply
#3

THANKS! But still the warning..
Reply
#4

Didn't notice it.
So, here it is:
pawn Код:
TogglePlayerControllable(id,0);
Reply
#5

Thanks, I forgot IDs then, Appreciate it
Reply


Forum Jump:


Users browsing this thread: 1 Guest(s)