COMMAND:setlevel(playerid, params[]) { new id,lvl,string[128]; new pName[24], pTame[24]; new targetid; GetPlayerName(playerid,pName,24); GetPlayerName(targetid,pTame,24); new DBResult: Result, name[ MAX_PLAYER_NAME ]; new Field[ 20 ]; GetPlayerName(playerid, name, sizeof(name)); format(db_query, 128, "SELECT `ADMINLEVEL` FROM `USERS` WHERE `NAME` = '%s'", name); db_get_field_assoc(Result, "ADMINLEVEL", Field, 30); Bit16_Set(g_AdminLevel, playerid, strval(Field)); if(g_AdminLevel[playerid] < 0) return SendClientMessage(playerid,COLOR_RED,"You Are Not Allowed Access To This Command!"); if(sscanf(params,"ui",id,lvl)) return SendClientMessage(playerid,COLOR_GREEN,""COL_GREY"/setlevel [PlayerID] [Level]"); if(!IsPlayerConnected(targetid)) return SendClientMessage(playerid, COLOR_WHITE, ""COL_RED"[ERROR]"COL_CMD" Player Not Connected!"); format(string,sizeof(string),"%s Has Been Promoted To Admin Level:(%d) By Administrator: %s",pTame,lvl,pName); SendClientMessage(id,COLOR_GREEN,string); if(PlayerInfo[id][AdminLevel] < lvl) { GameTextForPlayer(id,"~g~~h~~h~Promoted!",4000,3); } if(PlayerInfo[id][AdminLevel] > lvl) { GameTextForPlayer(id,"~r~~h~Demoted!",4000,3); } format(string,sizeof(string),"%s(%d) Has Been Set To Level %d",pTame,id,lvl); SendClientMessage(playerid,COLOR_GREEN,string); PlayerInfo[id][AdminLevel] = lvl; return 0; }
COMMAND:setlevel(playerid, params[])
{
new id,lvl,string[128];
new pName[24], pTame[24],targetid;
GetPlayerName(playerid,pName,24);
GetPlayerName(targetid,pTame,24);
new DBResult: Result,name[ MAX_PLAYER_NAME ], Field[ 20 ],PlayerLevel;
GetPlayerName(playerid, name, sizeof(name));
format(db_query, 128, "SELECT `ADMINLEVEL` FROM `USERS` WHERE `NAME` = '%s'", name);
db_get_field_assoc(Result, "ADMINLEVEL", Field, 30);
PlayerLevel = strval(Field);
if(PlayerLevel < 0) return SendClientMessage(playerid,COLOR_RED,"You Are Not Allowed Access To This Command!");
if(sscanf(params,"ui",id,lvl)) return SendClientMessage(playerid,COLOR_GREEN,""COL_GREY"/setlevel [PlayerID] [Level]");
if(!IsPlayerConnected(targetid)) return SendClientMessage(playerid, COLOR_WHITE, ""COL_RED"[ERROR]"COL_CMD" Player Not Connected!");
format(string,sizeof(string),"%s Has Been Promoted To Admin Level:(%d) By Administrator: %s",pTame,lvl,pName);
SendClientMessage(id,COLOR_GREEN,string);
if(PlayerInfo[id][AdminLevel] < lvl)
{
GameTextForPlayer(id,"~g~~h~~h~Promoted!",4000,3);
}
if(PlayerInfo[id][AdminLevel] > lvl)
{
GameTextForPlayer(id,"~r~~h~Demoted!",4000,3);
}
format(string,sizeof(string),"%s(%d) Has Been Set To Level %d",pTame,id,lvl);
SendClientMessage(playerid,COLOR_GREEN,string);
PlayerInfo[id][AdminLevel] = lvl;
Db_free_result(ServerDatabase,db_query);
return 0;
}
new query[128];
CostumFormat(query,"SELECT ADMINLEVEL FROM `USERS` WHERE `NAME` = '%s'",name);
db_query("ServerDatabase.db",query);
COMMAND:setlevel(playerid, params[]) { new id,lvl,string[128]; new Query[250]; new pName[24], pTame[24],targetid; GetPlayerName(playerid,pName,24); GetPlayerName(targetid,pTame,24); new DBResult: Result,name[ MAX_PLAYER_NAME ], Field[ 20 ],PlayerLevel; GetPlayerName(playerid, name, sizeof(name)); format(Query, sizeof(Query), "SELECT `ADMINLEVEL` FROM `USERS` WHERE `NAME` = '%s'", name); db_get_field_assoc(Result, "ADMINLEVEL", Field, 30); PlayerLevel = strval(Field); if(PlayerLevel < 0) return SendClientMessage(playerid,COLOR_RED,"You Are Not Allowed Access To This Command!"); if(sscanf(params,"ui",id,lvl)) return SendClientMessage(playerid,COLOR_GREEN,""COL_GREY"/setlevel [PlayerID] [Level]"); if(!IsPlayerConnected(targetid)) return SendClientMessage(playerid, COLOR_WHITE, ""COL_RED"[ERROR]"COL_CMD" Player Not Connected!"); format(string,sizeof(string),""COL_RED"[ADMIN ACTION]"COL_CMD" %s Has Been Promoted To Admin Level:(%d) By Administrator: %s",pTame,lvl,pName); SendClientMessage(id,COLOR_GREEN,string); if(PlayerInfo[id][AdminLevel] < lvl) { GameTextForPlayer(id,"~g~~h~~h~Promoted!",4000,3); } if(PlayerInfo[id][AdminLevel] > lvl) { GameTextForPlayer(id,"~r~~h~Demoted!",4000,3); } format(string,sizeof(string),""COL_RED"[ADMIN ACTION]"COL_CMD" %s(%d) Has Been Set To Level %d",pTame,id,lvl); SendClientMessage(playerid,COLOR_GREEN,string); PlayerInfo[id][AdminLevel] = lvl; db_free_result(Result); return 0; }
Problem Fixed...
Код:
COMMAND:setlevel(playerid, params[]) { new id,lvl,string[128]; new Query[250]; new pName[24], pTame[24],targetid; GetPlayerName(playerid,pName,24); GetPlayerName(targetid,pTame,24); new DBResult: Result,name[ MAX_PLAYER_NAME ], Field[ 20 ],PlayerLevel; GetPlayerName(playerid, name, sizeof(name)); format(Query, sizeof(Query), "SELECT `ADMINLEVEL` FROM `USERS` WHERE `NAME` = '%s'", name); db_get_field_assoc(Result, "ADMINLEVEL", Field, 30); PlayerLevel = strval(Field); if(PlayerLevel < 0) return SendClientMessage(playerid,COLOR_RED,"You Are Not Allowed Access To This Command!"); if(sscanf(params,"ui",id,lvl)) return SendClientMessage(playerid,COLOR_GREEN,""COL_GREY"/setlevel [PlayerID] [Level]"); if(!IsPlayerConnected(targetid)) return SendClientMessage(playerid, COLOR_WHITE, ""COL_RED"[ERROR]"COL_CMD" Player Not Connected!"); format(string,sizeof(string),""COL_RED"[ADMIN ACTION]"COL_CMD" %s Has Been Promoted To Admin Level:(%d) By Administrator: %s",pTame,lvl,pName); SendClientMessage(id,COLOR_GREEN,string); if(PlayerInfo[id][AdminLevel] < lvl) { GameTextForPlayer(id,"~g~~h~~h~Promoted!",4000,3); } if(PlayerInfo[id][AdminLevel] > lvl) { GameTextForPlayer(id,"~r~~h~Demoted!",4000,3); } format(string,sizeof(string),""COL_RED"[ADMIN ACTION]"COL_CMD" %s(%d) Has Been Set To Level %d",pTame,id,lvl); SendClientMessage(playerid,COLOR_GREEN,string); PlayerInfo[id][AdminLevel] = lvl; db_free_result(Result); return 0; } Instead Of Having All This SQLite Code In Each Command. Enum Called: PlayerInfo |
enum pInfo
{
pAdmin,
};
Yeahh But I Want To Load AdminLevel With The Enum.. So The SQL Isn't In Every Code.
Hopefully you'll understand :P |