Server geht bei /tazer -Befehl down

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
  • Ich habe folgendes Problem. Wenn ich den Befehl /tazer (von mir gescriptet) eingebe scheißt der Server ab, aber nicht direkt. Und das ist das komische. Wenn ich alleine /tazer eingebe kann ich in Ruhe weiterspielen. Wenn ich allerdings mit einem Kumpel den Befehl teste kackt der Server ab. Der Befehl an sich geht, das heißt, er wird ge- und entfreezt, aber wenn ich anschließend versuche, ihn zu töten, bleibt sein Leben auf ca. 5% stehen und der Server geht down.
    Hat jemand ne Ahnung, woran das liegt?


    Hier der Befehl:
    //tazer
    if (strcmp("/tazer", cmdtext, true, 6) == 0)
    {
    if(IsPlayerCop(playerid))
    {
    if(Duty[playerid] == 1 || SWATduty[playerid] == 1)
    {
    if(Tazer[playerid] < 4)
    {
    new Float:X, Float:Y, Float:Z;
    GetPlayerPos(playerid, X, Y, Z);
    new range = 0;
    for(new i = 0; i < MAX_PLAYERS; i++)
    {
    if(IsPlayerConnected(i))
    {
    if(IsPlayerInRangeOfPoint(i, 5.0, X, Y, Z))
    {
    if(!IsPlayerCop(i))
    {
    new namecop[MAX_PLAYER_NAME], namesu[MAX_PLAYER_NAME];
    new string[256];
    GetPlayerName(playerid, namecop, sizeof(namecop));
    GetPlayerName(i, namesu, sizeof(namesu));
    format(string, sizeof(string), "%s schießt mit dem Tazer auf %s und lähmt ihn für 10 Sekunden.", namecop, namesu);


    SendLocalMessage(10.0, X, Y, Z, LILA, string);


    format(string, sizeof(string), "%s hat mit dem Tazer auf dich geschossen und elektisiert dich für 10 Sekunden!", namecop);
    SendClientMessage(i, TÜRKIS, string);
    format(string, sizeof(string), "Du schießt mit dem Tazer auf %s und lähmst ihn für 10 Sekunden.", namesu);
    SendClientMessage(playerid, TÜRKIS, string);


    TogglePlayerControllable(i,0);
    SetTimerEx("TazerFreeze", 10000, false, "i", i);
    range++;
    Tazer[playerid]++;
    }
    }
    }
    }
    if(range == 0) SendClientMessage(playerid, GRAU, "Es ist niemand in deiner Nähe!");
    }
    else if(Tazer[playerid] == 4)
    {
    SendClientMessage(playerid, GRAU, "Du hast deinen Tazer zu oft benutzt. Warte, bis er wieder aufgeladen ist!");
    }


    }
    else SendClientMessage(playerid, ROT, "Du bist nicht im Dienst!");
    }
    else SendClientMessage(playerid, GRAU, "Du bist kein Polizist/Agent/Soldat!");
    return 1;
    }


    Bitte helfen, ist wichtig!

  • Ich sehe gerade nicht was den Crash verursacht.


    Ich gebe dir mal einen guten Tipp damit du raus finden kannst was den Crash verursacht.


    Füge einfach vor jeder Zeile folgendes hinzu:


    Printf("[Debug] Linie: 1");


    Die Zahl erhöhst du immer nach jeder Zeile, sobald du fertig bist starte den Server neu und führe den Befehl aus, wenn der Server jetzt crashen sollte geh einfach in deiner SA-MP Log Datei und guck welche Zahl er zu letzt geschrieben hat, somit weißt du wenigstens schon einmal was den Crash verursacht.