dcmd_makeadmin(playerid, params[])
{
new string[256],giveid,value;
new sendername[MAX_PLAYER_NAME];
new giveplayer[MAX_PLAYER_NAME];
if (PlayerInfo[playerid][pAdminLevel] >= 4)
{
if (sscanf(params, "ud", giveid, value)) SendClientMessage(playerid,COLOR_BLUE,"**USAGE:/MakeAdmin [Playerid/PlayerName] [Level]");
else
{
if (value > 5) return SendClientMessage(playerid, COLOR_GREY,"* Only levels 0-5 Are allowed!");
GetPlayerName(playerid, sendername, sizeof(sendername));
GetPlayerName(giveid, giveplayer, sizeof(giveplayer));
PlayerInfo[giveid][pAdminLevel] = value ;
format(string,sizeof(string),"Admin %s has set your Admin Level to %d",sendername,value);
SendClientMessage(giveid,COLOR_RED,string);
format(string,sizeof(string),"You gave %s admin level %d",giveplayer,value);
SendClientMessage(playerid,COLOR_RED,string); }
}
return 1;
}
if (sscanf(params, "dd", giveid, value)) SendClientMessage(playerid,COLOR_BLUE,"**USAGE:/MakeAdmin [Playerid/PlayerName] [Level]");
CMD:setadmin(playerid, params[])
{
new otherId;
new adminLevel;
if(PlayerInfo[playerid][pLogged] == 0)
return SendClientMessage(playerid, COLOR_RED, "[Error]: Please login before using this command.");
if(PlayerInfo[playerid][pAdmin] < 3)
return SendClientMessage(playerid, COLOR_RED, ADMIN_CMD_ERROR);
GetPlayerName(otherId, otherName, sizeof(otherName));
GetPlayerName(playerid, playerName, sizeof(playerName));
if(sscanf(params, "dd", otherId, adminLevel))
{
SendClientMessage(playerid, COLOR_STEELBLUE, "[USAGE]: /setadmin [playerid] [Admin Level]");
return true;
}
if (PlayerInfo[otherId][pAdmin] == PlayerInfo[playerid][pAdmin])
{
format(stri, sizeof(stri), "[AdminSys]: You cannot demote/promote %s.",PlayerInfo[playerid][pName]);
SendClientMessage(otherId, COLOR_YELLOW,stri);
SendClientMessage(playerid, COLOR_RED, "[Error]: You are not allowed to demote/promote this Admin.");
return 1;
}
if(PlayerInfo[otherId][pAdmin] == adminLevel)
{
format(stri, sizeof(stri), "[Error]: Player is already level %d.", adminLevel);
SendClientMessage(playerid, COLOR_RED, stri);
return true;
}
if(!IsPlayerConnected(otherId))
return SendClientMessage(playerid, COLOR_RED, "[Error]: Invalid Player ID.");
if(adminLevel > 4)
return SendClientMessage(playerid, COLOR_RED, "[Error]: Level can't be higher than 4.");
if(adminLevel < 0)
return SendClientMessage(playerid, COLOR_RED, "[Error]: Level can't be lower than 0.");
if(adminLevel > PlayerInfo[otherId][pAdmin]) {
format(stri, sizeof(stri), "[AdminSys]: You have been promoted to level %d administrator, by admin %s", adminLevel, playerName);
SendClientMessage(otherId, COLOR_YELLOW, stri);
format(stri, sizeof(stri), "[AdminSys]: You have promoted %s to level %d administrator.", otherName, adminLevel);
SendClientMessage(playerid, COLOR_YELLOW, stri); }
if(adminLevel < PlayerInfo[otherId][pAdmin]) {
format(stri, sizeof(stri), "[AdminSys]: You have been demoted to level %d administrator, by admin %s", adminLevel, playerName);
SendClientMessage(otherId, COLOR_YELLOW, stri);
format(stri, sizeof(stri), "[AdminSys]: You have demoted %s to level %d administrator.", otherName, adminLevel);
SendClientMessage(playerid, COLOR_YELLOW, stri); }
PlayerInfo[otherId][pAdmin] = adminLevel;
SavePlayer(otherId);
return true;
}
|
Код:
if (sscanf(params, "dd", giveid, value)) SendClientMessage(playerid,COLOR_BLUE,"**USAGE:/MakeAdmin [Playerid/PlayerName] [Level]"); |
dcmd_makeadmin(playerid, params[])
{
if ( PlayerInfo[playerid][pAdminLevel] >= 4 )
return 0;
if ( sscanf(params, "ud", params[ 0 ], params[ 1 ] ) )
return SendClientMessage(playerid,COLOR_BLUE,"**USAGE:/MakeAdmin [Playerid/PlayerName] [Level]");
if ( params[ 1 ] > 5 ) return SendClientMessage(playerid, COLOR_GREY,"* Only levels 0-5 Are allowed!");
new string[256],
sendername[MAX_PLAYER_NAME],
giveplayer[MAX_PLAYER_NAME]
;
GetPlayerName(playerid, sendername, sizeof( sendername ) );
GetPlayerName(params[ 0 ], giveplayer, sizeof( giveplayer ) );
PlayerInfo[giveid][pAdminLevel] = params[ 1 ] ;
format(string,sizeof(string),"Admin %s has set your Admin Level to %d",sendername,params[ 1 ]);
SendClientMessage(giveid,COLOR_RED,string);
format(string,sizeof(string),"You gave %s admin level %d",giveplayer, params[ 1 ]);
SendClientMessage(playerid,COLOR_RED,string); }
return 1;
}
|
Don't fix it when it isn't broke. The 'u' (User) parameter is a perfectly acceptable input for sscanf.
|
CMD:heal(playerid, params[])
{
new
id,value;
if (PlayerInfo[playerid][pAdminLevel] >= 4)
{
if (sscanf(params, "ud", id,value)) SendClientMessage(playerid, 0xFF0000AA, "Usage: \"/heal <playerid> <Amount>\"");
else if (id == INVALID_PLAYER_ID) SendClientMessage(playerid, 0xFF0000AA, "Player not found");
else
{
SetPlayerHealth(id, value);
SendClientMessage(id, 0x00FF00AA, "You have been healed");
SendClientMessage(playerid, 0x00FF00AA, "Player healed");
}
}
return 1;
}
warning 203: symbol is never used: "heal"






??