stock setadminlevel(playerid)
{
new adname[128];
switch pInfo[playerid][AdminLevel]); // this line
{
case 0: adname = "Player"; // and this line
case 1: adname = "Trial Administrator";
case 2: adname = "Moderator";
case 3: adname = "Administrator";
case 4: adname = "Head Admin";
case 5: adname = "Co-Owner";
case 6: adname = "Owner/Developer";
}
return setadminlevel;
}
stock setadminlevel(playerid) { new adname[128]; switch (pInfo[playerid][AdminLevel]) // this line { case 0: adname = "Player"; // and this line case 1: adname = "Trial Administrator"; case 2: adname = "Moderator"; case 3: adname = "Administrator"; case 4: adname = "Head Admin"; case 5: adname = "Co-Owner"; case 6: adname = "Owner/Developer"; } return adname; }
switch(pInfo[playerid][AdminLevel])
This forum requires that you wait 120 seconds between posts. Please try again in 44 seconds.
Код:
stock setadminlevel(playerid) { new adname[128]; switch (pInfo[playerid][AdminLevel]) // this line { case 0: adname = "Player"; // and this line case 1: adname = "Trial Administrator"; case 2: adname = "Moderator"; case 3: adname = "Administrator"; case 4: adname = "Head Admin"; case 5: adname = "Co-Owner"; case 6: adname = "Owner/Developer"; } return adname; } EDIT: And you put ";" before switch ... |
CMD:setadminlevel(playerid,params[])
{
if(!IsPlayerAdmin(playerid)) return SendClientMessage(playerid, -1, "{FF0000}ERROR: You don't have the rights to use this command !");
new pid, level;
if(sscanf(params, "ui",pid,level)) return SendClientMessage(playerid, -1, "USAGE: /setadminlevel [id] [level]");
if(!IsPlayerConnected(pid)) return SendClientMessage(playerid, -1, "{FF0000}The player which are you trying to set the level to is not connected !");
if(level < 0 || level > 6) return SendClientMessage(playerid, -1, "{FF0000}ERROR: You have entered invaild admin level.");
{
PlayerPlaySound(pid,17802,0.0,0.0,0.0);
}
new file[64],PlayerName[24], string[128];
GetPlayerName(pid,PlayerName,sizeof PlayerName);
format(file, sizeof file, "Accounts/%s.ini", PlayerName);
if(!fexist(file)) return SendClientMessage(playerid, -1, "{FF0000}The player is not REGISTERED");
INI_Open(file);
INI_WriteInt("Level",level);
INI_Save();
INI_Close();
format(string, sizeof(string), "You have been promoted to {FF0000}%s{FFFFFF} Congratulations ! !", setadminlevel(playerid));
SendClientMessageToAll(-1, string);
GameTextForPlayer(pid, "PROMOTED", 2000, 1);
PlayerPlaySound(pid,17802,0.0,0.0,0.0);
return 1;
}
#define getAdminLevel(%0,%1) strunpack(%1,adminlevel[pInfo[%0][AdminLevel]])
stock const adminlevel[][] = //@top of your script
{
!"Player",!"Trial Administrator",!"Moderator",!"Administrator",!"Head Admin",!"Co-Owner",!"Owner/Developer"
};
//Then where you wanna use it:
new tmp[20];
getAdminLevel(pid, tmp);
//Then in tmp you have the adminlevel :)
CMD:setadminlevel(playerid,params[])
{
if(!IsPlayerAdmin(playerid)) return SendClientMessage(playerid, -1, "{FF0000}ERROR: You don't have the rights to use this command !");
new pid, level;
if(sscanf(params, "ui",pid,level)) return SendClientMessage(playerid, -1, "USAGE: /setadminlevel [id] [level]");
if(!IsPlayerConnected(pid)) return SendClientMessage(playerid, -1, "{FF0000}The player which are you trying to set the level to is not connected !");
if(level < 0 || level > 6) return SendClientMessage(playerid, -1, "{FF0000}ERROR: You have entered invaild admin level.");
{
PlayerPlaySound(pid,17802,0.0,0.0,0.0);
}
new file[64],PlayerName[24], string[128];
GetPlayerName(pid,PlayerName,sizeof PlayerName);
format(file, sizeof file, "Accounts/%s.ini", PlayerName);
if(!fexist(file)) return SendClientMessage(playerid, -1, "{FF0000}The player is not REGISTERED");
INI_Open(file);
INI_WriteInt("Level",level);
INI_Save();
INI_Close();
pInfo[playerid][AdminLevel] = level;
format(string, sizeof(string), "You have been promoted to {FF0000}%s{FFFFFF} Congratulations ! !", setadminlevel(playerid));
SendClientMessageToAll(-1, string);
GameTextForPlayer(pid, "PROMOTED", 2000, 1);
PlayerPlaySound(pid,17802,0.0,0.0,0.0);
return 1;
}
You also could do sth like this:
PHP код:
![]() |
//Global var to store the admin level names, put it on top new AdminLevelName[7][24] = { {"Player"}, {"Trial Moderator"}, {"Moderator"}, {"Administrator"}, {"HeadAdmin"}, {"Co-Owner"}, {"Owner/Developer"} }; CMD:setadminlevel(playerid,params[]) { if(!IsPlayerAdmin(playerid)) return SendClientMessage(playerid, -1, "{FF0000}ERROR: You don't have the rights to use this command !"); new pid, level; if(sscanf(params, "ui",pid,level)) return SendClientMessage(playerid, -1, "USAGE: /setadminlevel [id] [level]"); if(!IsPlayerConnected(pid)) return SendClientMessage(playerid, -1, "{FF0000}The player which are you trying to set the level to is not connected !"); if(level < 0 || level > 6) return SendClientMessage(playerid, -1, "{FF0000}ERROR: You have entered invaild admin level."); { PlayerPlaySound(pid,17802,0.0,0.0,0.0); } new file[64],PlayerName[24], string[128]; GetPlayerName(pid,PlayerName,sizeof PlayerName); format(file, sizeof file, "Accounts/%s.ini", PlayerName); if(!fexist(file)) return SendClientMessage(playerid, -1, "{FF0000}The player is not REGISTERED"); INI_Open(file); INI_WriteInt("Level",level); INI_Save(); INI_Close(); pInfo[pid][AdminLevel] = level; format(string, sizeof(string), "You have been promoted to {FF0000}%s{FFFFFF} Congratulations ! !", AdminLevelName[pInfo[pid][AdminLevel]]); SendClientMessageToAll(-1, string); GameTextForPlayer(pid, "PROMOTED", 2000, 1); PlayerPlaySound(pid,17802,0.0,0.0,0.0); return 1; }
PHP код:
|