Moinsen ihr Fischis
Ich habe 2 Probleme die ich geklärt haben möchte, zum einen lasse ich mir per GetPlayerHealth den Float in ein Userfile schreiben.
Das Problem an der Sache ist, dass sobald das File geschrieben sprich bei Disconnect erneuert wird, die Energie NICHT korrekt gespeichert wird und ich kann mir grad nicht erklären warum.
Im File steht dann sowas wie Energie=1.000000 - WARUM?
Bevor ich es vergesse, die Lebensanzeige ist voll bei Disconnect
OnPlayerDisconnect
new Float:health, Float:armour;
if(dini_Exists(save)) //
{
dini_FloatSet(save,"Energie",GetPlayerHealth(playerid,health));
dini_FloatSet(save,"Ruestung",GetPlayerArmour(playerid,armour))
OnPlayerSpawn
SetPlayerHealth(playerid,dini_Float(save,"Energie"));
SetPlayerArmour(playerid,dini_Float(save,"Ruestung"));
=================
Das andere Problem ist, dass ich vorhatte dieses System zu optimieren und ich auch gerne mal mit Enums arbeiten möchte. Der Effekt ist zwar nicht so atemberaubend, aber trotzdem möchte ich es lernen.
Gut hier mein geschriebenes:
enum Spielerdaten
{
skin,
wanteds,
pX,
pY,
pZ,
interior,
geld
}
new Spieler[MAX_PLAYERS][Spielerdaten];
Spieler[playerid][skin] = GetPlayerSkin(playerid);
Spieler[playerid][geld] = GetPlayerMoney(playerid);
Spieler[playerid][wanteds] = GetPlayerWantedLevel(playerid);
if(dini_Exists(save))
{
dini_IntSet(save,"Geld",Spieler[playerid][geld]);
dini_IntSet(save,"Skin",Spieler[playerid][skin]);
dini_IntSet(save,"Wanteds",Spieler[playerid][wanteds]);
}
Klappt auch soweit
Aber ich kriege die Syntax nicht gebacken, wenn ich die Koordinaten speichern und auslesen will? Wie schreibe ich das an der Stelle? Btw. /savespawn soll die Coords natürlich speichern