Ah, sorry, das vergisst man so leicht.
print("Maske7-> %s", pname);
zu:
printf("Maske7-> %s", pname);
Fraktionscars von Fraktion 1 Spawnen nicht
- RedDragon28080
- 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
-
-
also geht immer noch nicht
[19:29:02] Maske1
[19:29:02] Maske2
[19:29:02] Maske3
[19:29:02] Maske4
[19:29:02] Maske5
[19:29:02] Maske6
[19:29:02] Maske7-> Unbekannt_127
dann Server Crash
print("Maske1");
if(maskehat[playerid] == true) return SendClientMessage(playerid,GRAU,"Du hast deine Maske noch an!");
print("Maske2");
SetPlayerAttachedObject(playerid,0,19037,2,0.108000,0.046000,-0.001000,79.900032,80.200012,8.999998);
print("Maske3");
SendClientMessage(playerid,GRAU,""#HTML_RED"Tarnung: "#HTML_WHITE"Angezogen!");
print("Maske4");
maskehat[playerid] = true;
print("Maske5");
SetPlayerSkinEx(playerid,294);
print("Maske6");
new pname[MAX_PLAYER_NAME];
format(pname,sizeof(pname),"Unbekannt_%i",random(50) + 122);
printf("Maske7-> %s", pname);
SetPlayerName(playerid,pname); //<-- Crasht Server
print("Maske8");
CreateErfolg(playerid,44,"Ich war Luft...","Setze eine Maske auf","",0,10);
print("Maske9");
return true; -
Komisch.
Hast du das getestet gehabt, ob es geht, wenn du einfach mal nur
SetPlayerName(playerid,"Testname123");
machst?
Geht das? -
geht auch nicht bleibt wieder hier stehen "[19:47:27] Maske7-> Unbekannt_144"
-
Wenn du die Zeile auskommentierst, geht es dann, also:
//SetPlayerName(playerid,pname);Klappt das?
(Mir ist klar, dass es den Name dann nicht ändert, aber nur um zu testen, ob es wirklich daran liegt.) -
wenn ich es ausklammer geht der befehl
-
Beitrag von German_ScripterHD ()
Dieser Beitrag wurde vom Autor gelöscht (). -
wenn ich es ausklammer geht der befehl
Versuch mal bitte dies hier einzubauen.
new rand = random(50) +122);
format(pname,sizeof(pname),"Unbekannt_%d",rand);
printf("%s", pname);
SetPlayerName(playerid,pname); -
Du könntest es mal mit einem Timer versuchen. Ich hatte schon Fälle, da hat eine Umgehung per Timer solch unerklärliches Problem gelöst:
print("Maske1");
if(maskehat[playerid] == true) return SendClientMessage(playerid,GRAU,"Du hast deine Maske noch an!");
print("Maske2");
SetPlayerAttachedObject(playerid,0,19037,2,0.108000,0.046000,-0.001000,79.900032,80.200012,8.999998);
print("Maske3");
SendClientMessage(playerid,GRAU,""#HTML_RED"Tarnung: "#HTML_WHITE"Angezogen!");
print("Maske4");
maskehat[playerid] = true;
print("Maske5");
SetPlayerSkinEx(playerid,294);
print("Maske6");
SetTimerEx("ChangeMaskeName", 200, false, "d", playerid);
print("Maske8");
CreateErfolg(playerid,44,"Ich war Luft...","Setze eine Maske auf","",0,10);
print("Maske9");
return true;Unten im Gamemode:
forward ChangeMaskeName(playerid);
public ChangeMaskeName(playerid)
{
printf("ChangeMaskeName aufgerufen.");
new pname[MAX_PLAYER_NAME];
format(pname,sizeof(pname),"Unbekannt_%i",random(50) + 122);
printf("Maske7-> %s", pname);
SetPlayerName(playerid,pname); //<-- Crasht Server
printf("ChangeMaskeName durchgeführt.");
return 1;
} -
geht immer noch nicht
Crasht immer noch -
Dann weiß ich leider keinen wirklichen Grund mehr, warum SetPlayerName den Server crashen sollte, es passt eigentlich alles.
Du kannst mal noch folgende Dinge probieren:1) Versuche ein SetPlayerName auf einem leeren Server, geht das?
2) Falls das geht, aktualisiere gegebenenfalls mal deine Server-Dateien, vielleicht geht es dann.
3) Teste ansonsten mal, ob du irgendwoanders in deinem Server SetPlayerName nutzt, vielleicht in einem /setname Befehl und schaue ob das geht.Ansonsten - wenn gar nichts hilft - dann schaue ich es mir nach meinem Urlaub nochmal an.
-
breadfish.de
Hat das Thema geschlossen.