Danke, ich konnte dank dir einen Fehler in der Include beheben.
Mit dem neuen Update sollte das also gehen.
HSA Multi - Einfach und schnell speichern! v. 2.2.0
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
-
-
Gibt ein kleines Problem ...
Die Datei wird fehlerhaft erstellt.
Ich möchte eine .ini erstellt wird eine .in
Ich möchte eine .txt erstellt wird eine .txHier:
new Spieleraccounts[64];
format(Spieleraccounts,sizeof(Spieleraccounts),"/Spieleraccounts/%s.txt",sName(playerid));So sollte es aussehen.
Name.txt
Stattdessen kommt Name.tx
und die Datei ist leer. -
Schonmal versucht den Ordner nicht so lang zu machen?
-
Jup,
nix zu machen ... -
die include speichert automatisch in hsa Dateien.
-
Schon wärs
Es werden zwar auch ohne angegeben Endung dateien erstellt,
aber diese sind wieder nur zweistellig (.hs)
und haben eine größe von 0kb. -
Versuch einmal in dem scriptfiles ordner direkt zu speichern.. und einen kurzen Dateinamen zu verwenden. Vielleicht sollte ich das Array für den Dateinamen vergrößern.
-
Die Endung ist nun komplett.
Nur die Datei ist leer.
So speicher ich alles ab:
stock Speichern(playerid)
{
new Spieleraccounts[MAX_PLAYER_NAME + 3];
format(Spieleraccounts,sizeof(Spieleraccounts),"%s",sName(playerid));
if(fexist(Spieleraccounts))
{
setInt:Spieleraccounts("Team",sNutzer[playerid][Team]);
setInt:Spieleraccounts("Score",GetPlayerScore(playerid));
setInt:Spieleraccounts("Adminlevel",sNutzer[playerid][Adminlevel]);
setInt:Spieleraccounts("Kills",sNutzer[playerid][Kills]);
setInt:Spieleraccounts("Deaths",sNutzer[playerid][Deaths]);
setInt:Spieleraccounts("Wantedlevel",GetPlayerWantedLevel(playerid));
setInt:Spieleraccounts("Geld",GetPlayerMoney(playerid));
setInt:Spieleraccounts("Bombe",sNutzer[playerid][Registriert]);
Save(Spieleraccounts);
return 1;
}
printf("%s's [ID: %d] Account wurde gespeichert!",sName(playerid),playerid);
return 1;
}Was mach ich falsch
-
Diese Abfrage kannst du so nicht nutzen: fexist(Spieleraccounts)
Nutze sie so:
stock Speichern(playerid)
{
new Spieleraccounts[MAX_PLAYER_NAME + 3] , FileName[MAX_PLAYER_NAME+3];
format(Spieleraccounts,sizeof(Spieleraccounts),"%s",sName(playerid));
format(FileName,sizeof FileName,"%s.hsa",Spieleraccounts);
if(fexist(FileName))
{
setInt:Spieleraccounts("Team",sNutzer[playerid][Team]);
setInt:Spieleraccounts("Score",GetPlayerScore(playerid));
setInt:Spieleraccounts("Adminlevel",sNutzer[playerid][Adminlevel]);
setInt:Spieleraccounts("Kills",sNutzer[playerid][Kills]);
setInt:Spieleraccounts("Deaths",sNutzer[playerid][Deaths]);
setInt:Spieleraccounts("Wantedlevel",GetPlayerWantedLevel(playerid));
setInt:Spieleraccounts("Geld",GetPlayerMoney(playerid));
setInt:Spieleraccounts("Bombe",sNutzer[playerid][Registriert]);
Save(Spieleraccounts);
return 1;
}
printf("%s's [ID: %d] Account wurde gespeichert!",sName(playerid),playerid);
return 1;
} -
Gibt es eine möglichkeit zu überprüfen ob ein String = inputtext ist.
Ich bekomme einen Error.Habe es so:
if(getString:bAccount("Passwort") == inputtext)Aber es kommt der Error das ich keinen Array angegeben habe.
-
strcmp nutzen
-
if(!strcmp(text[], text[]))
-
Das Include ist schön
und gut zum anwenden jedoch
stimmt etwas mit SaveAll(); nicht
Immer wenn ich es verwende kommt dieser Fehler
AirportWars\pawno\include\hsa_multi.inc(236) : error 017: undefined symbol "CacheSlot"Bitte einmal überarbeiten
-
Ok, danke für die Info. Ich sehe mir das mal an.
-
Könnte jemand mal ein Tutorial machen damit?
z.B. Ein einfaches Register/Login - System und so...
PS. I-wie führen alle Links nur noch zu Pastebin
-
Links funktionieren nun.
Die Idee ein Tutorial damit zu machen finde ich auch gut. -
Ich habe bereits ein solches angefangen.
Wenn der Wunsch besteht, dass ich es weiterführen soll ist des Kein Problem. -
Ich würde mir auch ein TUT Wünschen dafür,
Da ich es gerne mal in Action Sehen will -
Ist kein Problem.
Ich denke, ich habe mich solangsam mit diesem Speicherungssystem angefreundet
Ich benutze es derzeit für alle meine Scripts.Ich werde mich heut Abend dransetzen, wenn ich die Datei noch habe.
-
Ist es normal das ich diese Warnings bekomme? o.o
C:\Users\Richard\Desktop\Alle Ordner-Dateien\Scripte\!Self\pawno\include\hsa.inc(77) : warning 219: local variable "Key" shadows a variable at a preceding level
C:\Users\Richard\Desktop\Alle Ordner-Dateien\Scripte\!Self\pawno\include\hsa.inc(83) : warning 219: local variable "Key" shadows a variable at a preceding level
C:\Users\Richard\Desktop\Alle Ordner-Dateien\Scripte\!Self\pawno\include\hsa.inc(89) : warning 219: local variable "Key" shadows a variable at a preceding level
C:\Users\Richard\Desktop\Alle Ordner-Dateien\Scripte\!Self\pawno\include\hsa.inc(95) : warning 219: local variable "Key" shadows a variable at a preceding level
C:\Users\Richard\Desktop\Alle Ordner-Dateien\Scripte\!Self\pawno\include\hsa.inc(101) : warning 219: local variable "Key" shadows a variable at a preceding level
C:\Users\Richard\Desktop\Alle Ordner-Dateien\Scripte\!Self\pawno\include\hsa.inc(107) : warning 219: local variable "Key" shadows a variable at a preceding level
C:\Users\Richard\Desktop\Alle Ordner-Dateien\Scripte\!Self\pawno\include\hsa.inc(111) : warning 219: local variable "Key" shadows a variable at a preceding level
C:\Users\Richard\Desktop\Alle Ordner-Dateien\Scripte\!Self\pawno\include\hsa.inc(163) : warning 219: local variable "Key" shadows a variable at a preceding level
Pawn compiler 3.2.3664 Copyright (c) 1997-2006, ITB CompuPhase8 Warnings.
-