[SAMMELTHREAD] Kleine Scripting Fragen

Dein Problem konnte durch einen User gelöst werden? Bedank dich bei ihm indem du seinen Beitrag als Hilfreich markierst sowie einen Daumen oben dalässt
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
  • Irgendwie klappt das nicht :/


    Habe das so
    public OnPlayerStreamIn(playerid, forplayerid)
    {
    printf("StreamIn %d_%s / %d_%s",playerid,PlayerInfo[playerid][Name], forplayerid,PlayerInfo[forplayerid][Name]);
    if(IsOnBlackList(PlayerInfo[forplayerid][Userid], PlayerInfo[playerid][Team]))
    {
    PlayerInfo[playerid][BlackListLable][forplayerid] = CreatePlayer3DTextLabel(playerid, "Blacklist", cRed, 0.0, 0.0, 0.0, 30.0, forplayerid, INVALID_VEHICLE_ID, 1);
    print("Create");
    }
    return 1;
    }
    playerid bin ich forplayer der gegner
    Ich habe das einfach mal mit einen Bot getestet, und nix kam...
    StreamIn 1_[DT]Beavis / 0_[DTrp]Eric_Cartman

    All in all it's just another brick in the wall

  • Soo... grad mal mein CTF-System angepasst, auf bools umgeschrieben etc.


    Kann mir jemand mal erklären, wie ich den RAM Verbrauch ausrechnen kann?


    Da laufen paar mehrere Timer :D


    Engelsflügel am Astonkühler, als Schutz vor dem Teufel!

  • if(dialogid == MAXPLAYERS)
    {
    new aN[128], str[128], pN[128];
    GetPlayerName(playerid, aN, sizeof(aN)), GetPlayerName(strval(pN), pN, sizeof(pN));
    if(!IsPlayerConnected(strval(pN))) return SendClientMessage(playerid, ROT, "Ungültige Eingabe");
    format(str,sizeof(str),"Bitte gebe den Grund ein weswegen du den Nutzer %s kicken möchtest.",pN);
    ShowPlayerDialog(playerid, Kickgrund, DIALOG_STYLE_INPUT,"Spieler kicken",str,"Zurück","Weiter");
    return 1;
    }



    Zeile
    ShowPlayerDialog(playerid, Kickgrund, DIALOG_STYLE_INPUT,"Spieler kicken",str,"Zurück","Weiter");


    Waschdalos?


    //Edit Komisch wenn ich für Kickgrund eine 22 eingebe dann funktionierts. Aber warum?


    #define Kickgrund 22;

    KleineHilfe 2.0

    Einmal editiert, zuletzt von YaBroo ()

  • if(dialogid == 22)
    {
    if(response == 1)
    {
    if(!IsPlayerConnected(strval(pN))) return SendClientMessage(playerid, ROT, "Ungültige Eingabe");
    new string[125];
    SendClientMessageToAll(GELB ," [NEWS][NEWS]");
    format(string, sizeof(string),""#COL_MAGENTA"Spieler %s "#COL_YELLOW"wurde von "#COL_MAGENTA"%s "#COL_YELLOW"gekickt "#COL_MAGENTA"(Grund: %d)",pN, aN,inputtext);
    SendClientMessageToAll(grün, string);
    Kick(strval(pN));
    return 1;
    }
    return 1;
    }


    Ich kann einen Spieler kicken, beim 2. jeden weiteren Spieler den ich versuche zu kicken kommt die Fehlermeldung "Ungültige Eingabe"
    Need help


    //Edit
    Hier werden die Spieler aufgelistet


    if(listitem == 6)
    {
    new string[500];
    for(new i; i<GetMaxPlayers(); i++)
    {
    if(!IsPlayerConnected(i))continue;
    format(string, sizeof string, "%s\n%s", SpielerName(i), string);
    }
    ShowPlayerDialog(playerid, DIALOG_SPIELER_KICKEN, DIALOG_STYLE_LIST, "{FF0066}A{FFFFFF}dmin {FF0066}C{FFFFFF}ontrol {FF0066}P{FFFFFF}anel", string,"Ausführen","Spielen");
    }
    return 1;
    }

    KleineHilfe 2.0

    Einmal editiert, zuletzt von YaBroo ()

  • new aN[128], str[128], pN[128];





    pN = strval(inputtext);


    Schon mal so versucht? :>


    Engelsflügel am Astonkühler, als Schutz vor dem Teufel!

  • do.de - Domain-Offensive - Domains für alle und zu super Preisen
  • Ich verwende inputtext in Kombination mit dem Grund den man angibt. Wenn ich jetzt dies noch mache führts bestimmt so Fehlern oder meinste nicht.


    Dazu kann ich leider nix sagen.


    Ich hab auf jedenfall immer mit dem strval so wie oben beschrieben gearbeitet, (strval geht übrigens nur für Zahlen / Integer) ;)


    und mit ReturnUser (Wobei die Methode nicht zu empfehlen ist. :D)


    Engelsflügel am Astonkühler, als Schutz vor dem Teufel!

  • Dazu kann ich leider nix sagen.


    Ich hab auf jedenfall immer mit dem strval so wie oben beschrieben gearbeitet, (strval geht übrigens nur für Zahlen / Integer) ;)


    und mit ReturnUser (Wobei die Methode nicht zu empfehlen ist. :D)


    Find's jetzt auch net so berauschend. Dann warte ich noch ein wenig, bis der allwissende SynonymousZ zu uns stößt :)

    KleineHilfe 2.0


  • Das hilft dir sicherlich weiter:
    MAX_PLAYERS - Dialog


    if(listitem == 6)
    {
    new iItem;
    new string[MAX_PLAYER_NAME*MAX_PLAYERS];
    for(new i; i != GetMaxPlayers(); i++)
    {
    if(!IsPlayerConnected(i))continue;
    new dName[MAX_PLAYER_NAME];
    GetPlayerName(i, dName, sizeof dName);
    format(string, sizeof string, "%s\n%s", string, dName);
    item[playerid][iItem] = i;
    iItem ++;
    }
    ShowPlayerDialog(playerid, DIALOG_SPIELER_KICKEN, DIALOG_STYLE_LIST, "{FF0066}A{FFFFFF}dmin {FF0066}C{FFFFFF}ontrol {FF0066}P{FFFFFF}anel", string,"Ausführen","Spielen");
    return 1;
    }


    if(dialogid == 22)
    {
    if(response == 1)
    {
    if(!IsPlayerConnected(strval(pN))) return SendClientMessage(playerid, ROT, "Ungültiger Spieler");
    new string[125];
    SendClientMessageToAll(GELB ," [NEWS]dsada[NEWS]");
    format(string, sizeof(string),""#COL_MAGENTA"Spieler %s "#COL_YELLOW"wurde von "#COL_MAGENTA"%s "#COL_YELLOW"gekickt "#COL_MAGENTA"(Grund: %s)",pN, aN,inputtext);
    SendClientMessageToAll(grün, string);
    Kick(strval(pN));
    return 1;
    }
    return 1;
    }


    Wenn man einen kickt, ist das Problem noch das selbe. Muss wohl am Code liegen. Die restlichen Spieler werden ja angezeigt, jedoch sagt er eifnach Ungültiger Spieler trotz das ich den richtige anwähle.
    //Edit Kann es einfach sein das er abfragt ob pN on ist und wenn ich den ersten kicke fliegt er ja raus, aber er soll ja eig. abfragen ob der Spieler den ich angeklickt hab auch on ist


    //Edit naja wenn ich die Zeile entferne kommt zwar der Text, aber gekickt wird er nicht.


    /e

    KleineHilfe 2.0

    Einmal editiert, zuletzt von YaBroo ()