Hey, admin level problem: -
blackwave - 14.11.2010
I have that code:
Код:
dcmd_setlevel(playerid, params[])
{
new tmp[256], tmp2[256], Index; tmp = strtok(params,Index), tmp2 = strtok(params,Index);
if(!strlen(params)) return SendClientMessage(playerid, VERMELHO, "USAGE: /setlevel [playerid] [level]");
new player1, level, playername[MAX_PLAYER_NAME], adminname[MAX_PLAYER_NAME], string[128];
GetPlayerName(playerid, playername, MAX_PLAYER_NAME);
GetPlayerName(playerid, adminname, MAX_PLAYER_NAME);
player1 = strval(tmp);
level = strval(tmp2);
if(!strlen(tmp2)) return SendClientMessage(playerid, VERMELHO, "USAGE: /setlevel [playerid] [level]");
if(!IsPlayerConnected(player1)) return SendClientMessage(playerid, VERMELHO, "Player nгo conectado");
if(level > MAX_LEVEL) return SendClientMessage(playerid, VERMELHO, "Level maximo й 100. Escolha igual ou menor a 100");
format(string,sizeof(string),"ADMIN: %s mudou o level de %s para %d", adminname, playername, level);
dUserSetINT(PlayerName2(player1)).("Level",(level));
PlayerInfo[player1][Level] = level;
dUserSetINT(PlayerName2(player1)).("level",(level));
PlayerInfo[player1][Level] = level;
return SendClientMessageToAll(BRANCO, string);
}
It's for admin's set level, which max is 100. It works perfectly as it is wrote above, show which level I changed for someone else on a string. The problem is saving to file, which I dont know how to save someone else's level, cause the single allowed is:
Код:
PlayerInfo[playerid][Level]
And don't have a victim save system. I'd like to know how to add it to someone else.
Re: Hey, admin level problem: -
Mike_Peterson - 14.11.2010
errm? use dini
just save to their account
Re: Hey, admin level problem: -
dark_clown - 14.11.2010
use dini like mike sayed
Re: Hey, admin level problem: -
blackwave - 14.11.2010
Dude, on my code above, the "playername" is the victim name I'll set the level of. I can't save with a dini, because had to be so:
Код:
dini_IntSet(file, "level",PlayerInfo[playerid][Level]);
And I cannot use: [When I use that underneath, give me this error under this code underneath
Код:
dini_IntSet(file, "level",PlayerInfo[playername][Level]);
Код:
Error: C:\DOCUME~1\FeLiPe\Desktop\SERVER~1\FILTER~1\adminx.pwn(286) : error 033: array must be indexed (variable "playername")
Re: Hey, admin level problem: -
blackwave - 14.11.2010
Bump please =SSS
Re: Hey, admin level problem: -
blackwave - 14.11.2010
Sorry for dual flood, but I really NEED the soluction
Re: Hey, admin level problem: -
Kidemo - 14.11.2010
pawn Код:
if(strcmp(cmdtext, "/setlevel", true) == 0)
{
new tmp[256], tmp2[256], Index; tmp = strtok(params,Index), tmp2 = strtok(params,Index);
if(!strlen(params)) return SendClientMessage(playerid, VERMELHO, "USAGE: /setlevel [playerid] [level]");
new player1, level, playername[MAX_PLAYER_NAME], adminname[MAX_PLAYER_NAME], string[128];
GetPlayerName(playerid, playername, MAX_PLAYER_NAME);
GetPlayerName(playerid, adminname, MAX_PLAYER_NAME);
player1 = strval(tmp);
level = strval(tmp2);
if(!strlen(tmp2)) return SendClientMessage(playerid, VERMELHO, "USAGE: /setlevel [playerid] [level]");
if(!IsPlayerConnected(player1)) return SendClientMessage(playerid, VERMELHO, "Player nгo conectado");
if(level > MAX_LEVEL) return SendClientMessage(playerid, VERMELHO, "Level maximo й 100. Escolha igual ou menor a 100");
format(string,sizeof(string),"ADMIN: %s mudou o level de %s para %d", adminname, playername, level);
dUserSetINT(PlayerName2(player1)).("Level",(level));
PlayerInfo[player1][Level] = level;
dUserSetINT(PlayerName2(player1)).("level",(level));
PlayerInfo[player1][Level] = level;
return SendClientMessageToAll(BRANCO, string);
}
Re: Hey, admin level problem: -
blackwave - 14.11.2010
sorry, didn't work lol. There's the same thing on ladmin4v2 admin FS, and but seems to not work on mine o. o; everything else is saving/reloading on OnPlayerDisconnect/OnPlayerConnect
Re: Hey, admin level problem: -
blackwave - 14.11.2010
I've tried the someone else's code with myself (PlayerInfo[playerid[Level]) and saving, but it doesn't saves while your online! lol =S