F4 Funktion

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
  • Nein ich meine also das man wenn dort bei dieser Skin auswahl landet aus dem Spiel rausfliegt.
    Also man bekommt zb sowas wenn man zu Skin Auswahl kommt
    SendClientMessage(playerid, COLOR_LIGHTRED, "Bitte wähle einen Skin in einem Bekleidungsgeschäft.");
    SendClientMessage(playerid, COLOR_LIGHTRED, "Bitte Log dich aus und Connecte neu auf dem Server.");
    Und dann soll der Spieler direkt gekickt werden , sodass der Spieler garnicht erst die Möglichkeit hat einen Skinauszuwählen.
    Ich weiß das es machbar ist , aber wie das ist nur die Frage :D
    Mfg
    Roleplayer

  • Mach es einfach so das wenn man F4 Drückt das man gekickt wird. Einfach die Kick Funktion auf die F4 Taste legen und fertig.

  • Ja nur liegt genau dabei das Problem.
    Es sind nur bestimmte Tasten bei SA:MP definiert.
    D.h. es können nur Tasten benutzt werden, die du Hauptsächlich Offline beöntigst.


    Ich hoffe ich konnte es dir ein wenig erklären.

    Jeder Veränderung hat was positives in sich

  • Naja ich weiß das es zu Hundert Prozent Möglich ist

    PlayerPlaySound(playerid, 1176, 0.0, 0.0, 0.0);
    PlayerInfo[playerid][pModel] = Peds[classid][0];
    if (classid == 0)
    {
    format(string, sizeof(string), "~y~>Zivlisten ~y~<!");
    GameTextForPlayer(playerid,string,3500,6);
    }
    else
    {
    format(string, sizeof(string), "~y~> ~g~Zivilisten ~y~<");
    GameTextForPlayer(playerid,string,3500,6);
    }
    SetPlayerTeamFromClass(playerid,classid);
    SetupPlayerForClassSelection(playerid);
    return 1;
    }


    Hier ist die Stelle mit F4
    Wie könnte ich das nun umsetzen
    einfach Kickplayer
    Und Sendmessage?
    Hat Jemand vielleicht einen Vorschlag? Da ich mir etwas unsicher bin wie ich das anstellen soll
    aber das hier ist zu Hundertprozent F4 XD

  • do.de - Domain-Offensive - Domains für alle und zu super Preisen
  • naja F4 ruft OnPlayerRequestClass auf.


    Wenn du die Skinauswahl für irgendwelche zwecke behalten willst, setzte einfach eine variable auf 1, bei dem Command der den Player zur Auswahl bringt und frage das am anfang bei OnPlayerRequestClass auf ob diese 1 ist und dann als else wert machst du den kick.


    Wenn du die wirklich entfernen willst:


    public OnPlayerRequestClass(playerid, classid)
    {
    SendClientMessage(playerid, /*farbe*/, "F4 ist Verboten.");
    Kick(playerid);
    return 1;
    }


    MfG


    Edit: Rechtschreibung, klarer Ausgedrückt


    Bitte keine Script/Supportanfragen via PN!!!
    (Ausnahme: Scripten gegen Bezahlung!)

  • Dann musst du aber auch noch für den Sonderfall eine Abfrage erstellen, meiner Meinung nach, solltest du dazu noch einen Bool erstellen, und wenn der auf 1 ist, wird die Funktion erst ausgeführt mit OnPlayerRequestClass, sonst wird man ja jedes mal gekickt..

    Jeder Veränderung hat was positives in sich

  • Dann musst du aber auch noch für den Sonderfall eine Abfrage erstellen, meiner Meinung nach, solltest du dazu noch einen Bool erstellen, und wenn der auf 1 ist, wird die Funktion erst ausgeführt mit OnPlayerRequestClass, sonst wird man ja jedes mal gekickt..


    hatte ich eigentlich geschrieben.. aber naja, bitte lies dir auch den ganzen post durch und schau dir nicht nur den pawn code an... DANKE


    MfG


    Bitte keine Script/Supportanfragen via PN!!!
    (Ausnahme: Scripten gegen Bezahlung!)

  • naja sry RFT aber das gibt so einige Probleme, war selber einige zeit dahinter, besser ist es sich eine SkipSpawn funktion zu erstellen via Timer, weil das mit SpawnPlayer buggt bissi.


    Aber du hast schon recht, hatte ich oben auch nicht bedachte, sollte eher ein denkanstoß von mir sein.^^


    MfG


    Bitte keine Script/Supportanfragen via PN!!!
    (Ausnahme: Scripten gegen Bezahlung!)

  • naja ist zwar nicht die beste Lösung schätze ich mal aber auf die schnelle würde ich das vorschlagen:


    forward SkipSpawn(playerid);


    public OnPlayerRequestClass(playerid, classid)
    {
    SetTimerEx("SkipSpawn", 0, false, "i", playerid);
    return 1;
    }


    public SkipSpawn(playerid)
    {
    SpawnPlayer(playerid);
    return 1;
    }


    MfG


    Bitte keine Script/Supportanfragen via PN!!!
    (Ausnahme: Scripten gegen Bezahlung!)

  • Ich weis das hier ist schon etwas älter, aber ich hoffe ich kann immernoch was frage^^.
    Also ich wollte wissen warum du SetTimerEx("SkipSpawn", 0, false, "i", playerid); gemacht hast?
    Da du die Zeit auf 0 hast, hättest du doch grad SkipSpawn(playerid); machen können, odeR?