Wenn man gebannt ist beim Online kommen Grund anzeigen

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
  • Hallo.
    Ich verzweifle gerade, und weiß echt nicht wie ich weiterkomme.
    Also, wenn ein Spieler gebannt wird, wird ein Wert ( in meinem Falle "Banned" ) auf 1 gesetzt.
    Wenn der Spieler online kommt soll er sofort gekickt werden, aber der Grund soll als Dialog oder Nachricht angezeigt werden.
    Ich hoffe mir kann jemand helfen. :S

  • Du müsstest den Grund in der Datei mit abspeichern und dann wenn er versucht zu joinen abfragen, ob er gebannt wurde und wenn er gebannt wurde dann den Grund aus der Dini oder ini abfragen und ihn ihm anzeigen lassen.

    PN Support? Kannste knicken!

  • @Halu:
    Wenn er nicht weiß wie er das mit Strings usw. macht dann hilft deins glaube ich nicht weiter ^^


    Pawno:
    Von der Ferne kann ich dir eigl. auch nur sagen, dass du beim Bannen den Grund speichern musst und beim Connecten einfach erst den Grund ausgeben und dann direkt kicken.
    Warum man dafür jetzt nen Timer machen soll ist fraglich ^^


    Wenn man dir helfen soll müsstest du uns vllt. den OnPlayerConnect Teil geben und den Ban Teil, wo der jenige gebannt wird ^^

    Miete mich (nicht) :love:

  • Wie willst du n Spieler der gebannt ist nen String ausgeben lassen?!
    Dann connectet er auf den Server und da wird halt stehen "You are banned from this server.".
    Da hilft auch kein Timer weiter.
    Dann musst du selbst n Bann-Befehl schreiben und nicht mit der Standardfunktion Ban(playerid);
    Erst dann kommt der ganze Rest mit dem Grund speichern und co.
    Ist also nicht ganz einfach für dich.

  • du musst das ganze an deinem system anpassen:


    in einer enum speicherst du sicherlich die spielerdaten:



    enum bla //anpassen!
    {
    ban,
    bangrund[150]
    }


    falls du den spieler nun bannst, ich denke mal mit einem befehl:
    dini_Set(DATEI,"bangrund",msg); //anpassen
    dini_IntSet(DATEI,"ban",1);
    Kick(playerid);


    beim einloggen:
    if(dini_Exists(DATEI))
    {
    if(dini_Int(DATEI,"Ban") == 1)
    {
    new str[175];
    format(str,sizeof(str),"Du bist auf diesem Server gebannt, Grund: %s!",dini_Get(DATEI,"bangrund");
    SendClientMessage(playerid,farbe,str);
    return kick(playerid);
    }
    }


    so muss das ungefär aussehen, musst du dann halt an deinem system anpassen