beim TOT Sofort wider am Spawn Punkt

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
  • hey ich hab nen Problem wen ich mich selber kille den respawnt er sofort wider am Spawn
    ich will es aba so haben das er noch 30Sec am Krankenhaus ist
    das ging auch mal ich wies jetzt nicht wo der Fehler ist
    Hier mal die komplette OnPlayerDeath

    public OnPlayerDeath(playerid, killerid, reason)
    {
    if(PlayerOnFire[playerid])
    {
    #if defined German
    SendClientMessage(playerid, 0xff000000, "Du bist verbrannt!"); StopPlayerBurning(playerid);
    #endif
    }
    {
    TogglePlayerControllable(playerid, 0);
    SetPlayerPos(playerid,-2655.0537,638.8485,14.4531);
    SetPlayerCameraPos(playerid, -2607.5732,598.1437,20.1806);
    SetPlayerCameraLookAt(playerid, -2658.5701,632.3820,14.1802);
    SetPlayerInterior(playerid, 0);
    SendClientMessage(playerid,WEIS,"|____ Krankenhaus ____|");
    SendClientMessage(playerid,WEIS,"Du bist nun im Krankenhaus. Du wirst gerade behandelt und darfst das Krankenhaus");
    SendClientMessage(playerid,WEIS,"nicht verlassen bis die Ärtze mit der Untersuchung fertig sind. Dieser Vorgang");
    SendClientMessage(playerid,WEIS,"wird eine Zeit von mindestens 30 Sekunden nach sich ziehen.");
    SendClientMessage(playerid,WEIS,"|_____________________|");



    SetTimerEx("tot",30000,0,"i",playerid);
    return 1;
    }
    }


    kann mir da bitte wer helfen
    wen was Fehl sagen ich Liefer es nach
    lg kifkat

    2 Mal editiert, zuletzt von Kevin B. ()

  • In Zeile 9 wird eine Klammer geöffnet, aber da ist weder ein While, if, else oder sonst was davor


    Das #if defined blabla und #endif kannste auch rausnehmen, ich denke mal du willst es eh auf Deutsch haben.
    Entferne in Zeile 9 und 24 mal die beiden Klammern, dann sollte es gehen


    //Edit: Denkfehler

  • Böses Ben du und dein Halbwissen ;D


    Das muss unter OnPlayerSpawn, denn OnPlayerDeath wird auf gerufen wenn der Spieler bereits Tot ist.
    Man kann keinen toten Spieler irgendwo hinsetzen


    Und außerdem kann man auch Klammern öffnen ohne eine Bedingung zu starten ;)

    "Bevor ich mir Informationen aus der "Bild" hole,
    werde ich anfangen, Wahlergebnisse danach vorauszusagen,
    neben welchen Busch unsere Katze gepinkelt hat."

    Margarete Stokowski

  • Mache es mal so:


    public OnPlayerDeath(playerid, killerid, reason)
    {
    if(PlayerOnFire[playerid])
    {
    #if defined German
    SendClientMessage(playerid, 0xff000000, "Du bist verbrannt!"); StopPlayerBurning(playerid);
    #endif
    }
    TogglePlayerControllable(playerid, 0);
    SetPlayerPos(playerid,-2655.0537,638.8485,14.4531);
    SetPlayerCameraPos(playerid, -2607.5732,598.1437,20.1806);
    SetPlayerCameraLookAt(playerid, -2658.5701,632.3820,14.1802);
    SetPlayerInterior(playerid, 0);
    SendClientMessage(playerid,WEIS,"|____ Krankenhaus ____|");
    SendClientMessage(playerid,WEIS,"Du bist nun im Krankenhaus. Du wirst gerade behandelt und darfst das Krankenhaus");
    SendClientMessage(playerid,WEIS,"nicht verlassen bis die Ärtze mit der Untersuchung fertig sind. Dieser Vorgang");
    SendClientMessage(playerid,WEIS,"wird eine Zeit von mindestens 30 Sekunden nach sich ziehen.");
    SendClientMessage(playerid,WEIS,"|_____________________|");



    SetTimerEx("tot",30000,0,"i",playerid);
    return 1;
    }