Man muss doch eigentlich ganz einfach erst alle Variablen überprüfen (Level, Geld, Fraktion...)
diese dann erstmal mit pVar's oder mit Enums speichern lassen, dann die Accountdatei löschen lassen
Dann eine neue Account datei erstellen lassen und alles so wieder laden lassen.
Hier bei wird natürlich SetPlayerName(....) verwendet.
/changename [id] [name]
- Maxx
- Geschlossen
- Erledigt
Wichtiger Hinweis: Bitte ändert nicht manuell die Schriftfarbe auf schwarz sondern belasst es bei der Standardeinstellung. Somit tragt ihr dazu bei dass euer Text auch bei Verwendung unseren dunklen Forenstils noch lesbar ist!
Tipp: Ihr wollt längere Codeausschnitte oder Logfiles bereitstellen? Benutzt unseren eigenen PasteBin-Dienst Link
-
-
Ein 4Jahre alter Thread ..
Respekt ! -
Ja ich habe ein Login/Register System...
Ich editier gleich mal den befehl changename.
EDIT//
ocmd:changename(playerid,params[])
{
if(!isPlayerAnAdmin(playerid,1337))return SendClientMessage(playerid,Rot,"Du bist kein 1337*Admin!");
new pID;
new newname[24];
new file[16];
if(sscanf(params,"us",pID,newname))return SendClientMessage(playerid,HBlau,"Benutzung: /changename [ID] [Name]");
SetPlayerName(pID,newname);
format(file,sizeof(file), "Accounts/%s.ini",SpielerName(pID));
dini_Set(file, "%s.ini", newname);
SpielerSpeichern(pID);
return 1;
}Kann ja sein, dass ich das mit accounts/%s.ini falsch gemacht habe oder so...
MfG
-
Theoretisch müsstest du die Daten von dem Spieler in Variablen Strings usw. Speichern. Dann löscht du seine alte Textdatei (dini_Remove) und erstellst eine neue(dini_Create) mit seinem neuen namen und speicherst die Variablen und Strings wieder dort rein.
-
breadfish.de
Hat das Thema geschlossen.