Problem kleine Script-Abfrage

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
  • Guten Tach Brotfische.
    Ich habe vorhin mal etwas ausprobieren wollen, jedoch erhalte ich dauernd wenn es ausgeführt wird direkt einen Kick o.ä.


    Was soll eigentlich gemacht werden?
    Nachdem man sich Registriert/Einloggt, startet ein kleiner Timer von einer Sekunde,
    welcher dann das Public "Spawnen" aufruft. Dort befindet sich die Abfrage hier unten.


    Ich hab mal spontan nachdem ich den Fehler bemerkt hatte, wie man sehen kann, mit print gearbeitet
    und laut meinen Erkenntnissen läuft alles gut bis zu dem Punkt an dem die Variabel zu 1 gesetzt wird.
    Auf dem Server werde ich dann irgendwie gekickt, aus welchem Grund auch immer.


    Vielleicht wisst ihr weiter. :/


    Zeilen:

    if(PlayerInfo[playerid][pLoginSpawn] == 0)
    {
    new str[128];
    SetPlayerPos(playerid,-1978.0568,884.4935,45.2031);
    TogglePlayerSpectating(playerid, 0);
    print("Spieler wurde gespawnt.");
    format(str, sizeof (str),"Dem Spieler %s wurde die pLoginSpawn-Variabel auf 1 gesetzt.",PlayerName(playerid));
    PlayerInfo[playerid][pLoginSpawn] = 1;
    print(str);
    }

  • Die Sache ist ja die, dass ich gerne den Spawn-Button überspringen möchte.
    Unter OnPlayerSpawn befindet sich absolut nichts bis auf ein return 1;.


    Aber hier mal die restlichen Zeilen von meinem public Spawnen:



    // Der Timer der sich unter OnDialogResponse befindet
    SetTimer("Spawnen",1000,0);


    // und Public Spawnen
    public Spawnen(playerid)
    {
    if(PlayerInfo[playerid][pLoginSpawn] == 0)
    {
    new str[128];
    SetPlayerPos(playerid,-1978.0568,884.4935,45.2031);
    TogglePlayerSpectating(playerid, 0);
    print("Spieler wurde gespawnt.");
    format(str, sizeof (str),"Dem Spieler %s wurde die pLoginSpawn-Variabel auf 1 gesetzt.",PlayerName(playerid));
    PlayerInfo[playerid][pLoginSpawn] = 1;
    print(str);
    }
    else
    {
    print("Spieler wurde an seine Position gespawnt.");
    TogglePlayerSpectating(playerid, 0);
    SetPlayerPos(playerid,PlayerInfo[playerid][pPosx],PlayerInfo[playerid][pPosy],PlayerInfo[playerid][pPosz]);
    SetPlayerVirtualWorld(playerid,PlayerInfo[playerid][pVw]);
    SetPlayerInterior(playerid,PlayerInfo[playerid][pInt]);
    GivePlayerWeapon(playerid,PlayerInfo[playerid][pW1],PlayerInfo[playerid][pWam1]);
    GivePlayerWeapon(playerid,PlayerInfo[playerid][pW2],PlayerInfo[playerid][pWam2]);
    GivePlayerWeapon(playerid,PlayerInfo[playerid][pW3],PlayerInfo[playerid][pWam3]);
    GivePlayerWeapon(playerid,PlayerInfo[playerid][pW4],PlayerInfo[playerid][pWam4]);
    GivePlayerWeapon(playerid,PlayerInfo[playerid][pW5],PlayerInfo[playerid][pWam5]);
    GivePlayerWeapon(playerid,PlayerInfo[playerid][pW6],PlayerInfo[playerid][pWam6]);
    GivePlayerWeapon(playerid,PlayerInfo[playerid][pW7],PlayerInfo[playerid][pWam7]);
    GivePlayerWeapon(playerid,PlayerInfo[playerid][pW8],PlayerInfo[playerid][pWam8]);
    SetPlayerArmour(playerid,PlayerInfo[playerid][pArmour]);
    SetPlayerHealth(playerid,PlayerInfo[playerid][pHealth]);
    }
    return 1;
    }

  • SpawnButton überspringen machst du einfach


    OnPlayerRequestClass
    SetPlayerSpawnInfo
    SpawnPlayer


    Versuch das mal so


    Sollte das nicht gehen suchst du ÜBERALL im Script nach Kick(
    Danach lässt du dir mit print eine EINDEUTIGE Zahl ausgeben.
    Danach schaust du in die Konsole und schaust wo und warum er dich kickt.


    Klingt logisch oder? :D

    ik bin der vito c: