7/10
Schlicht aber hat was.
lg
7/10
Schlicht aber hat was.
lg
Das hat RedJoker doch perfekt erklärt & geschrieben?
Erstelle einen neuen Wert und lasse diesen z.B. bei jedem Level Up um 4 steigern. ( +=4 )
lg
Beim /park Befehl kannst du einfach so vorgehen:
new Float:x,Float:y,Float:z;
new vehicle = GetPlayerVehicleID(playerid);
new AutoDatei[64];
GetVehiclePos(vehicle,x,y,z);
if(!dini_Exists(AutoDatei)
{
dini_Create(AutoDatei)
dini_FloatSet(AutoDatei,"x",x);
// Und so weiter
}
So ist denke ich ne gute Vorgangsweise, einfach speichern und dann beim Connecten des Spielers die Autos wieder laden.
lg
Kam es einfach so? Hast du was hinzugefügt?
lg
Joa sollte klappen. Sorry bin total übermüdet schon.
lg
Dann mach es mal ganz anders.
Beispiel:
new pfad[50], string[164];
{
format(pfad,sizeof(pfad),"/Krieg/%s.txt",string);
if(!fexist(pfad))
{
dini_Create(pfad);
// Sö und hier füllst du nun die Datei mit Integer- / Srings-/ Floats / What ever variablen.
return 1;
}
}
return 0;
}
Ansonsten zeig uns mal alles nochmal wie du's jetzt hast.
lg
Naja wenn du Zeichenketten speichern willst würde ich eher dini_Set (oder so) anwenden.
Wenn du einzelne Zahl speichern möchtest = dini_Int.
Einen Moment ich suche die Seite raus wo alle dini Funktionen dargestellt und erklärt sind. (Ich editiere dann.)
lg
#E: Hier haben was' doch. Useful Functions - Dini!
Schön erklärt und kapiert.
lg
Naja guck mal...
if(!fexist(KriegOrdner))
PAWNO versteht das jetzt so:
if(!fexist(KriegOrdner)) // Wenn der Ordner KriegsOrdner nicht existiert ( Also wenn die .ini / .txt NICHT vorhanden ist
{
Anzahlfrak[Spieler[playerid][Fraktion]][gestartet] = dini_Int(KriegOrdner,"gestartet"); // Setzt du Integer
Anzahlfrak[Spieler[playerid][Fraktion]][kills] = dini_Int(KriegOrdner,"kills"); // in die Datei, was logischerweise nicht geht, da die Datei nicht existiert.
}
else if(dini_Create(KriegOrdner)) // Und wenn er nicht da ist lässt du ihn Createn
{
Anzahlfrak[Spieler[playerid][Fraktion]][gestartet] = dini_Int(KriegOrdner,"gestartet"); // Und füllst
Anzahlfrak[Spieler[playerid][Fraktion]][kills] = dini_Int(KriegOrdner,"kills"); // ihn dann mit Integer - Werten.
}
Damit meine ich, das dass Obere (if(!fexist(KriegOrdner))) unnötig ist.
lg
Komm mal Skype on, ich mach es dir per TV.
lg
Ich bin jetzt zu müde, aber könntest du für mich nochmal die Zeilen markieren? xD
lg
pfad hast du anscheinend nicht definiert und die function "CreateHaus" hast du schon mal irgendwo deklariert.
Zeig uns mal die dazu gehörigen stocks. (LoadHaus und CreateHaus und die Error Zeilen)
lg
Komisch komisch... Bei mir funktioniert das System super. Am besten wäre wenn du nochmal alles im Tutorial nachgehst und guckst, ob du vielleicht nicht doch irgendwo einen Fehler gemacht hast.
lg
Bei der Enum - Struktur haus_pickup hinzugefügt?
enum haus_info
{
Float:haus_x,
Float:haus_y,
Float:haus_z,
// Hier haus_pickup, einfügen, das wars.
haus_besitzer[32],
haus_preis
}
lg
Dann hasste wohl was falsch gemacht. Wird bei "printf" was in der Konsole ausgegeben? Guck mal in der server_log.txt nach.
lg
Das mein ich auch nicht. Guck dir das Tutorial komplett an und du weißt was ich meine.
lg
Beschreibt er doch genau?
ZitatAlles anzeigen
Anstatt für jeden Wert den wir speichern/laden wollen eine eigene Variable zu erstellen verwenden wir eine Enum-Struktur.
Diese kann z.B. so aussehen:
enum haus_info
{
Float:haus_x,
Float:haus_y,
Float:haus_z,
haus_besitzer[32],
haus_preis
}
Und das einfach vor das hier.
new HausInfo[15][haus_info];
Und das Printf kommt in OnGameModeInit, wobei es eher fraglich ist ob es benötigt ist oder nicht, da du nur ausgibst wo sich was befindet.
lg
Oha. Das geht viel einfacher mein Freund.
Lass ihn einfach so abspeichern.
dini_IntSet(Spielerdatei,"Skin",GetPlayerSkin(playerid));
Und so einfach laden.
SetPlayerSkin(playerid,dini_Int(Spielerdatei,"Skin"));
So schwer ist das doch gar nicht.
lg