SA-MP Forums Archive
/changename command HELP - Printable Version

+- SA-MP Forums Archive (https://sampforum.blast.hk)
+-- Forum: SA-MP Scripting and Plugins (https://sampforum.blast.hk/forumdisplay.php?fid=8)
+--- Forum: Scripting Help (https://sampforum.blast.hk/forumdisplay.php?fid=12)
+--- Thread: /changename command HELP (/showthread.php?tid=428702)



/changename command HELP - Areax - 06.04.2013

Hello!

I need help with my /changename command. Everything is working fine, but wheh I change my name and then leave game and come back, is still the same name.

CODE:

PHP код:
CMD:changename(playeridparams[])
{
    if(
gPlayerInfo[playerid][PLAYER_LEVEL] < 4) return SendClientMessage(playeridCOLOR_RED"You are not allowed to use this command!");
    new 
idnewname[24];
    if(
sscanf(params,"is[24]",idnewname))
        return 
SendClientMessage(playeridCOLOR_RED"Usage: /changename [player id] [new name]");
    if(!
IsPlayerConnected(id))
        return 
SendClientMessage(playeridCOLOR_RED"ERROR: This player is not connected.");
    
SetPlayerName(idnewname);
    
SendClientMessage(playeridCOLOR_YELLOW"You have successfuly changed his/her name.");
    return 
1;

Thanks for your help


Re: /changename command HELP - venomlivno8 - 06.04.2013

This command does not save the name of an player...


Re: /changename command HELP - Areax - 06.04.2013

Quote:
Originally Posted by venomlivno8
Посмотреть сообщение
This command does not save the name of an player...
Can you fix that?


Re: /changename command HELP - venomlivno8 - 06.04.2013

Do you have a saving system?


Re: /changename command HELP - Areax - 06.04.2013

Quote:
Originally Posted by venomlivno8
Посмотреть сообщение
Do you have a saving system?
Do you mean login/register system? Yes I have it.


Re: /changename command HELP - Areax - 06.04.2013

Anyone?


Respuesta: /changename command HELP - Onfroi - 06.04.2013

Do you use Y_ini, MySQL, Dini, or what saving system do you use?


Re: /changename command HELP - NewCityRoleplay - 06.04.2013

Try this code

CMD:changename(playerid, params[])
{
new string[128], giveplayerid, name[MAX_PLAYER_NAME];
new playername[MAX_PLAYER_NAME];
if(sscanf(params, "us[24]", giveplayerid, name)) return SendClientMessageEx(playerid, COLOR_WHITE, "USAGE: /changename [playerid] [newname]");

if(IsPlayerConnected(giveplayerid))
{
if (PlayerInfo[playerid][pAdmin] >= 4)
{
if(!doesAccountExist(name))
{
new
newname[MAX_PLAYER_NAME + 10];

GetPlayerName(giveplayerid, playername, sizeof(playername));
format(newname, sizeof(newname), "users/%s.ini", name);

if(PlayerInfo[giveplayerid][pPhousekey] != INVALID_HOUSE_ID && strcmp(playername, HouseInfo[PlayerInfo[giveplayerid][pPhousekey]][hOwner], true) == 0)
{
strmid(HouseInfo[PlayerInfo[giveplayerid][pPhousekey]][hOwner], name, 0, strlen(name), 255);
format(string, sizeof(string), "This house is owned by\n %s\nLevel: %d\nID: %d",HouseInfo[PlayerInfo[giveplayerid][pPhousekey]][hOwner],HouseInfo[PlayerInfo[giveplayerid][pPhousekey]][hLevel],PlayerInfo[giveplayerid][pPhousekey]);
UpdateDynamic3DTextLabelText(HouseInfo[PlayerInfo[giveplayerid][pPhousekey]][hTextID], COLOR_GREEN, string);
}

if(PlayerInfo[giveplayerid][pPhousekey2] != INVALID_HOUSE_ID && strcmp(playername, HouseInfo[PlayerInfo[giveplayerid][pPhousekey2]][hOwner], true) == 0)
{
strmid(HouseInfo[PlayerInfo[giveplayerid][pPhousekey2]][hOwner], name, 0, strlen(name), 255);
format(string, sizeof(string), "This house is owned by\n %s\nLevel: %d\nID: %d",HouseInfo[PlayerInfo[giveplayerid][pPhousekey2]][hOwner],HouseInfo[PlayerInfo[giveplayerid][pPhousekey2]][hLevel],PlayerInfo[giveplayerid][pPhousekey2]);
UpdateDynamic3DTextLabelText(HouseInfo[PlayerInfo[giveplayerid][pPhousekey2]][hTextID], COLOR_GREEN, string);
}

if(PlayerInfo[giveplayerid][pDonateRank] >= 1)
{
new string2[128];
format(string2, sizeof(string2), "[VIP NAMECHANGES] %s has changed their name to %s.", GetPlayerNameEx(giveplayerid), name);
Log("logs/vipnamechanges.log", string2);
}

format(string, sizeof(string), " Your name has been changed from %s to %s.", GetPlayerNameEx(giveplayerid), name);
SendClientMessageEx(giveplayerid,COLOR_YELLOW,stri ng);
format(string, sizeof(string), " You have changed %s's name to %s.", GetPlayerNameEx(giveplayerid), name);
SendClientMessageEx(playerid,COLOR_YELLOW,string);
format(string, sizeof(string), "%s changed \"%s\"s name to \"%s\"",GetPlayerNameEx(playerid),GetPlayerNameEx( giveplayerid),name);
Log("logs/stats.log", string);
SetPlayerName(giveplayerid, name);
OnPlayerStatsUpdate(giveplayerid);

format(newname, sizeof(newname), "users/%s.ini", playername);
fremove(newname);

if(doesAccountExist(playername)) // If it doesn't get removed, blank the file with write io and check its length when a player attempts to authenticate (it'll be 0)
{
new File: BlankTheFile = fopen(newname, io_write);
SendClientMessageEx(playerid, COLOR_GRAD2, "The old account couldn't be removed completely (it's been blanked for future use).");
fclose(BlankTheFile);
}
}
else
{
SendClientMessageEx(playerid, COLOR_WHITE, "This name is already registered.");
}
}
else
{
SendClientMessageEx(playerid, COLOR_GRAD2, "You aren't authorised to use this command.");
}
}
else
{
SendClientMessageEx(playerid, COLOR_GRAD2, "No Such Player");
}
return 1;
}


That should work for you


Re: /changename command HELP - MattSlater - 06.04.2013

That will 99% not work, as he is probably not using NGRP script! So, don't take things from that script and try and get some rep.

What saving system do you use?


Re: /changename command HELP - HurtLocker - 06.04.2013

why would this command be useful? If you want to change your name, then just rename the .ini file of your account. Then open samp and write the new name in the name entering gap. Then, join your server.