problem mit zone betreten Kick

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
  • Hi,
    Ich hab 3 Gangzonen gemacht bei denen wenn jemand sie betritt man gekickt wird.
    Wenn ich jetzt den Server starte dann kommt entweder der Login oder Registrierungsdialog.
    So wenn ich das Erste mal auf den Server gehe werde ich nicht gekickt.
    Wenn ich den Server anlasse und wieder raufgehe werde ich beim loginDialog gekickt weil der Login dialog in einer Kickzone angezeigt wird.(Bei ersten aber auch und da passiert es nicht)


    Hat jemand eine Idee wie ich das Fixen kann?
    //EDIT: Wenn Script benötigt poste ich den Teil gerne.

  • Hier :
    forward check();


    Dann unter OnPlayerSpawn: (Hab ich nach gaanz unten gemacht)
    SetTimer("check",1000,1);


    public check()
    {
    for(new i = 0; i < MAX_PLAYERS; i++)
    {
    if(!IsPlayerAdmin(i))
    {
    if(IsPlayerInArea(i,583.8938, -2078.662, 1074.365, -1681.614))
    {
    return 1;
    }
    if(IsPlayerInArea(i,-2989.536, 1763.359, 2977.858, 2989.536) || IsPlayerInArea(i,-2989.536, -2942.825, 2977.858, -864.1628) || IsPlayerInArea(i,-1237.855, -2942.825, 2977.858, 2989.536)) //abc
    {
    SendClientMessage(i,COLOR_RED, " CHEATER WEG !!!!");
    Kick(i);
    }
    }
    }
    return 1;
    }
    Die public davon


    Und der stock stock IsPlayerInArea(playerid,Float:minX,Float:minY,Float:maxX,Float:maxY)
    {
    new Float:pX,Float:pY,Float:pZ;
    GetPlayerPos(playerid,pX,pY,pZ);
    if(pX >= minX && pX <= maxX && pY >= minY && pY <= maxY) return 1;
    else return 0;
    }
    //Edit hier der Login DIalog falls du ihn brauchst
    case DIALOG_LOGIN: // ID Login
    {
    if(!strlen(inputtext) || strcmp(inputtext, " ", false) == 0)//
    {
    ShowPlayerDialog(playerid,DIALOG_LOGIN,1,"Login","Bitte logge dich ein","Login","Abrechen");
    return SendClientMessage(playerid,0xFFFFFFFF,"Kein Passwort angegeben!");
    }
    if(strcmp(inputtext,dini_Get(accFormat,"Passwort")) == 0) // Passwort Direkt aus der Datei Laden
    {
    Spieler[playerid][team] = 0;
    Spieler[playerid][admin] = 0;
    Spieler[playerid][score] = 0;
    Spieler[playerid][skin] = 0;
    Spieler[playerid][pwaffen] = 0;
    Spieler[playerid][eingeloggt] = 1; // Spieler ist nun erfolgreich eingeloggt
    SendClientMessage(playerid,0xFFFFFFFF,"Du wurdest erfolgreich eingeloggt.");
    GivePlayerMoney(playerid,dini_Int(accFormat,"Geld"));
    SetPlayerScore(playerid,dini_Int(accFormat,"Score"));
    }
    else
    {
    SendClientMessage(playerid,0xFFFFFFFF,"Das Passwort war Falsch!");
    }
    }
    wenn du noch mehr brauchst sag es nur ^^
    //EDIT so sry war 3 Ostsee, hab was dazu gemacht ich hatte eine Zeile vergessen :P

  • Hi


    Mach doch einfach noch ne abfrage mit rein ob man eingeloggt is oda net. Dann wird man auch nimmer gekickt wenn man sich am einloggen is ;) Warum man beim reggen nit gekickt wird weiß ich allerdings nicht.


    MFG, Robdeflop®