/changename +REP -
WhiteAngels - 03.04.2014
I'm Using
SATDM_v9 Gamemode...
SATDM_v9 is using
Dini Include
how to create Commands changename with Dini
I'll give you some +REP if you can help me !!
*Note:Sorry For My Little English*
Re: /changename +REP -
forgottenkings - 03.04.2014
This May Work :P
For Players...
pawn Код:
CMD:changename(playerid,params[])
{
if(isnull(params)) return SendClientMessage(playerid, red, "USAGE: /changename [new name]");
if(strlen(length) < 3 || strlen(length) > MAX_PLAYER_NAME) return SendClientMessage(playerid,red,"ERROR: Incorrect Name Length");
new string[128];
SetPlayerHealth(playerid, 100);
SetPlayerName(playerid, params);
ForceClassSelection(playerid);
OnPlayerConnect(playerid);
format(string, sizeof(string),"ACCOUNT: You have successfully changed your name to \"%s\"",params);
SendClientMessage(playerid,yellow,string);
return 1;
}
For Admins
pawn Код:
CMD:setname(playerid,params[]) {
if(PlayerInfo[playerid][Level] >= 2) {
new tmp[128], tmp2[128], Index; tmp = strtok(params,Index), tmp2 = strtok(params,Index);
if(isnull(tmp) || isnull(tmp2)) return SendClientMessage(playerid, red, "USAGE: /setname [playerid] [new name]");
new player1 = strval(tmp), length = strlen(tmp2), string[128];
if(length < 3 || length > MAX_PLAYER_NAME) return SendClientMessage(playerid,red,"ERROR: Incorrect Name Length");
if(PlayerInfo[player1][Level] == ServerInfo[MaxAdminLevel] && PlayerInfo[playerid][Level] != ServerInfo[MaxAdminLevel]) return SendClientMessage(playerid,red,"ERROR: You cannot use this command on this admin");
if(IsPlayerConnected(player1) && player1 != INVALID_PLAYER_ID) {
CMDMessageToAdmins(playerid,"SETNAME");
format(string, sizeof(string), "You have set \"%s's\" name to \"%s\" ", pName(player1), tmp2); SendClientMessage(playerid,blue,string);
if(player1 != playerid) { format(string,sizeof(string),"Administrator \"%s\" has set your name to \"%s\" ", pName(playerid), tmp2); SendClientMessage(player1,blue,string); }
SetPlayerHealth(player1, 100);
SetPlayerName(player1, tmp2);
return OnPlayerConnect(player1);
} else return SendClientMessage(playerid,red,"ERROR: Player is not connected");
} else return SendClientMessage(playerid,red,"ERROR: You are not a high enough level to use this command");
}
Re: /changename +REP -
RenovanZ - 03.04.2014
pawn Код:
CMD:changename(playerid, params[])
{
new id, newname[MAX_PLAYER_NAME];
if(sscanf(params, "us[24]", id, newname)) return SendClientMessage(playerid, -1, "USAGE: /changename [playerid] [new name]");
if(!IsPlayerAdmin(playerid)) return SendClientMessage(playerid, -1, "You are not admin!"); //Change it to your admin enum or whatever
if(IsPlayerConnected(id))
{
new pname[MAX_PLAYER_NAME];
GetPlayerName(id, pname, MAX_PLAYER_NAME);
if(strcmp(pname, newname))
{
SetPlayerName(id, newname);
new string[64];
format(string, sizeof(string), "users/%s.ini", pname); // Your user data folder
fremove(string);
//Then re-save the player
}
else return SendClientMessage(playerid, -1, "Oldname & Newname cannot same!");
}
else return SendClientMessage(playerid, -1, "Player not connected!");
return 1;
}
Re: /changename +REP -
WhiteAngels - 03.04.2014
Quote:
Originally Posted by Kiyozi_Mu
pawn Код:
CMD:changename(playerid, params[]) { new id, newname[MAX_PLAYER_NAME]; if(sscanf(params, "us[24]", id, newname)) return SendClientMessage(playerid, -1, "USAGE: /changename [playerid] [new name]");
if(!IsPlayerAdmin(playerid)) return SendClientMessage(playerid, -1, "You are not admin!"); //Change it to your admin enum or whatever if(IsPlayerConnected(id)) { new pname[MAX_PLAYER_NAME]; GetPlayerName(id, pname, MAX_PLAYER_NAME); if(strcmp(pname, newname)) { SetPlayerName(id, newname);
new string[64]; format(string, sizeof(string), "users/%s.ini", pname); // Your user data folder fremove(string); //Then re-save the player } else return SendClientMessage(playerid, -1, "Oldname & Newname cannot same!"); } else return SendClientMessage(playerid, -1, "Player not connected!"); return 1; }
|
Why the changename isn't saving ??when i logout , and login back with the new name why i must register ?? I'm Checking in the Scriptfiles/User/%s.sav the name isn't change to the new name.
Re: /changename +REP -
forgottenkings - 03.04.2014
is it just me or is my posts invisible
Re: /changename +REP -
WhiteAngels - 03.04.2014
Quote:
Originally Posted by forgottenkings
This May Work :P
For Players...
pawn Код:
CMD:changename(playerid,params[]) { if(isnull(params)) return SendClientMessage(playerid, red, "USAGE: /changename [new name]"); if(strlen(length) < 3 || strlen(length) > MAX_PLAYER_NAME) return SendClientMessage(playerid,red,"ERROR: Incorrect Name Length"); new string[128]; SetPlayerHealth(playerid, 100); SetPlayerName(playerid, params); ForceClassSelection(playerid); OnPlayerConnect(playerid); format(string, sizeof(string),"ACCOUNT: You have successfully changed your name to \"%s\"",params); SendClientMessage(playerid,yellow,string); return 1; }
For Admins
pawn Код:
CMD:setname(playerid,params[]) { if(PlayerInfo[playerid][Level] >= 2) { new tmp[128], tmp2[128], Index; tmp = strtok(params,Index), tmp2 = strtok(params,Index); if(isnull(tmp) || isnull(tmp2)) return SendClientMessage(playerid, red, "USAGE: /setname [playerid] [new name]"); new player1 = strval(tmp), length = strlen(tmp2), string[128]; if(length < 3 || length > MAX_PLAYER_NAME) return SendClientMessage(playerid,red,"ERROR: Incorrect Name Length"); if(PlayerInfo[player1][Level] == ServerInfo[MaxAdminLevel] && PlayerInfo[playerid][Level] != ServerInfo[MaxAdminLevel]) return SendClientMessage(playerid,red,"ERROR: You cannot use this command on this admin"); if(IsPlayerConnected(player1) && player1 != INVALID_PLAYER_ID) { CMDMessageToAdmins(playerid,"SETNAME"); format(string, sizeof(string), "You have set \"%s's\" name to \"%s\" ", pName(player1), tmp2); SendClientMessage(playerid,blue,string); if(player1 != playerid) { format(string,sizeof(string),"Administrator \"%s\" has set your name to \"%s\" ", pName(playerid), tmp2); SendClientMessage(player1,blue,string); } SetPlayerHealth(player1, 100); SetPlayerName(player1, tmp2); return OnPlayerConnect(player1); } else return SendClientMessage(playerid,red,"ERROR: Player is not connected"); } else return SendClientMessage(playerid,red,"ERROR: You are not a high enough level to use this command"); }
|
it isn't saved when login back.
i want the /changename is saved when login back
if Somebody can help me ??
Re: /changename +REP -
forgottenkings - 03.04.2014
(NOTE: you english sucks :P)
and after you get the new name you are redirected to OnPlayerConnect where you can register and login and then your account will get saved.. :P
Re: /changename +REP -
WhiteAngels - 03.04.2014
Quote:
Originally Posted by forgottenkings
(NOTE: you english sucks :P)
and after you get the new name you are redirected to OnPlayerConnect where you can register and login and then your account will get saved.. :P
|
hahaha...sorry for my little english
Re: /changename +REP -
LocMax - 03.04.2014
What do you use? Y_INI, SQLite..?
Re: /changename +REP -
forgottenkings - 03.04.2014
well SATDM uses dudb,dini :P