Hallo
Ich habe irgendwie ein Problem mit OnGameModeInit. Es kommt vor, dass ich mit dem Skin der Hauptfigur aus dem SP spawne und ich nicht beim Haus spawne. Zudem wurden die Häuser und Business nicht geladen. Ich weiss nicht genau, woran es liegt. Ich dachte zuerst an MySQL, jedoch kommen die Probleme auch ohne MySQL vor. Wenn der Fehler auftritt, werden gewisse Dateien leergeschrieben.
Ich poste hier mal mein gesamtes OnGameModeInit:
http://pastebin.com/FwGQNxFA
Ich hatte zuerst einen Delemiter (oder so ?), also den Trenner bei sscanf 2 vergessen und dachte, es liege daran, aber anscheinend ist dem nicht so. Ich bin echt wieder ratlos. Wäre um Tipps oder Lösungsansätze froh.
MfG dUDA
Edit:
-Autos werden fehlerfrei geladen
-Haussystem wird nicht geladen (macht sich im Spawnort bemerkbar)
-Businesssystem wird nicht geladen
-Pickups und 3DTexte werden nicht geladen
-Nach einem weiteren Neustart sind alle Dateien leerresettet, Servername ist Unknown,Skin ist der mit dem weissen Hemd
Edit 2:
Beim Resett werden alle Dateien ausser die Fraktion und Lottodatei resettet. Die Fraktionsdatei hat aber witzigerweise folgenden Inhalt (immer eine Zwischenzeile)
http://pastebin.com/miFvFxEE
Edit 3:
Ich konnte das Problem auf die Fraktionsdatei isolieren. Könnte sich jemand mal bitte diesen Code anschauen ?
Das Problem tritt anscheinend erst beim Abspeichern auf und es wird eben falsch gespeichert (Info oben)
//Fraktionskasse und Blacklist
new id = 0, geld, name1[30],name2[30],name3[30],name4[30],name5[30];
new File:fop = fopen(FRAKTION_DATEI,io_read);
new eingabe[256];
if(fop)
{
while(fread(fop,eingabe))
{
sscanf(eingabe,"p<,>is[30]s[30]s[30]s[30]s[30]",geld,name1,name2,name3,name4,name5);
FraktionInfo[id][FBetrag] = geld;
strmid(FraktionInfo[id][Blacklist1],name1,0,20,20);
strmid(FraktionInfo[id][Blacklist2],name2,0,20,20);
strmid(FraktionInfo[id][Blacklist3],name3,0,20,20);
strmid(FraktionInfo[id][Blacklist4],name4,0,20,20);
strmid(FraktionInfo[id][Blacklist5],name5,0,20,20);
id++;
}
fclose(fop);
}
public SaveFraktionen()
{
new fm[256],File:kassenx = fopen(FRAKTION_DATEI,io_write);
for(new i = 0;i<MAX_FRAKTIONEN;i++)
{
format(fm,sizeof fm,"%d,%s,%s,%s,%s,%s\r\n",
FraktionInfo[i][FBetrag],
FraktionInfo[i][Blacklist1],
FraktionInfo[i][Blacklist2],
FraktionInfo[i][Blacklist3],
FraktionInfo[i][Blacklist4],
FraktionInfo[i][Blacklist5]);
fwrite(kassenx,fm);
}
fclose(kassenx);
return 1;
}