Problem: nach Spawn tot.

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 hab ein kleines Problem:


    Und zwar stirbt man manchmal nach dem Connecten und landet im Krankenhaus. Wie kann ich das machen, dass man nicht stirbt?


    forward tot(playerid);
    new Tot[MAX_PLAYERS]; //Krankenhaus
    public tot(playerid)
    {
    SetPlayerPos(playerid,1178.3859,-1324.1239,14.1175);
    SetPlayerHealth(playerid,100);
    GivePlayerMoney(playerid,-150);
    SendClientMessage(playerid,weis,"~~~~~> Krankenhaus <~~~~~");
    SendClientMessage(playerid,weis,"Du wurdest entlassen.");
    SendClientMessage(playerid,weis,"Kosten der Behandlung 150$");
    Tot[playerid] = 0;
    if(isPlayerInFrakt(playerid,0)) //Zivi
    {
    SetPlayerPos(playerid,1641.7704,-2238.1873,13.4986);
    SetPlayerSkin(playerid,21);
    SetPlayerColor(playerid,weis);
    }
    if(isPlayerInFrakt(playerid,1)) //LSPD
    {
    SetPlayerColor(playerid,0x009BFFFF);
    if(GetPVarInt(playerid,"Leader")==1)
    {
    SetPlayerSkin(playerid,283);
    SetPVarInt(playerid,"Frakrang",6);
    }
    else
    {
    SetPlayerSkin(playerid,281);
    }
    }
    if(isPlayerInFrakt(playerid,2)) //Army
    {
    SetPlayerColor(playerid,0x00FF00FF);
    if(GetPVarInt(playerid,"Leader")==2)
    {
    SetPlayerSkin(playerid,287);
    SetPVarInt(playerid,"Frakrang",6);
    }
    else
    {
    SetPlayerSkin(playerid,287);
    }
    }
    if(isPlayerInFrakt(playerid,3)) //Ballas
    {
    SetPlayerColor(playerid,weis);
    if(GetPVarInt(playerid,"Leader")==3)
    {
    SetPlayerSkin(playerid,103);
    }
    else
    {
    SetPlayerSkin(playerid,104);
    }
    }
    if(isPlayerInFrakt(playerid,4)) //Grove Street, GS
    {
    SetPlayerColor(playerid,weis);
    if(GetPVarInt(playerid,"Leader")==4)
    {
    SetPlayerSkin(playerid,270);
    }
    else
    {
    SetPlayerSkin(playerid,269);
    }
    }
    if(isPlayerInFrakt(playerid,5)) //Fahrschule
    {
    SetPlayerColor(playerid,weis);
    if(GetPVarInt(playerid,"Leader")==5)
    {
    SetPlayerSkin(playerid,171);
    }
    else
    {
    SetPlayerSkin(playerid,240);
    }
    }
    SendClientMessage(playerid,weis,"~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~");
    TogglePlayerControllable(playerid,true);
    SetCameraBehindPlayer(playerid);
    return 1;
    }


    // OnPlayerDeath(playerid, killerid, reason)
    Tot[playerid] = 1;

  • public OnPlayerSpawn(playerid)
    {
    //Removes von Helm,Schild, etc und beginn vom Tut...
    if(pFirstLog[playerid] == false) //wenn nicht das erste mal eingeloggt
    {
    if(GetPVarInt(playerid,"prisontime") > 1) //Prison
    {
    SetPlayerPos(playerid,271.9027,1859.7306,8.7649);
    SendClientMessage(playerid,rot,"Es wird nicht ausgebrochen!");
    }
    else
    {
    if(Knasti[playerid] == 1) //wenn er im knast ist...
    {
    SetPlayerPos(playerid,263.7476,77.6176,1001.0391); //Knast LSPD
    SendClientMessage(playerid,blau,"Polizist: Willkommen zurück im Gefängnis.");
    }
    else
    {
    if(Tot[playerid] == 1) //Wenn er Tot ist
    {
    TogglePlayerControllable(playerid, 0);
    SetPlayerPos(playerid,1162.871704, -1339.109619, 14.297291);
    SetPlayerCameraPos(playerid, 1223.379028, -1333.354126, 33.809105);
    SetPlayerCameraLookAt(playerid, 1178.824829, -1325.804077, 13.284119);
    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 Ärzte mit der Untersuchung fertig sind. Dieser Vorgang");
    SendClientMessage(playerid,weis,"wird eine Zeit von mindestens zwei Minuten nach sich ziehen.");
    SendClientMessage(playerid,weis,"~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~");
    KHTimer = SetTimerEx("tot",120000,0,"i",playerid);
    }
    else
    {
    if(isPlayerInFrakt(playerid,0)) //Zivi
    {
    SetPlayerPos(playerid,1641.7704,-2238.1873,13.4986);
    SetPlayerSkin(playerid,21);
    SetPlayerColor(playerid,weis);
    }
    if(isPlayerInFrakt(playerid,1)) //LSPD
    {
    SetPlayerColor(playerid,0x009BFFFF);
    SetPlayerPos(playerid,217.0080,81.8994,1005.0391);
    SetPlayerArmour(playerid,100);
    SetPlayerInterior(playerid,6);
    if(GetPVarInt(playerid,"Leader")==1)
    {
    SetPlayerSkin(playerid,283);
    SetPVarInt(playerid,"Frakrang",6);
    }
    else
    {
    SetPlayerSkin(playerid,281);
    }
    }
    //... usw

  • Zum Beispiel:
    Du erstellst ganz oben
    new ConnectSpawn[MAX_PLAYERS] = 0:


    unter OnPlayerSpawn schreibst du dann UNTER deine Function damit es erst aufgerufen wird nachdem er die public tot abfrage durch hat:


    ConnectSpawn[playerid] = 1;


    nun unter deinem "public tot" schreibst du extakt 1 Zeile rein am besten ganz oben


    if( ConnectSpawn[playerid] == 0) return 1;


    mfg.
    D4rkCl3ric