Beiträge von Kasakow


    Ok, das lässt alternativ mit einem Timer regeln, aber ich denke für diesen Zweck lohnt es sich nicht. Danke für die Info Jeffry :thumbup:

    Schreibs mal so:


    ocmd:veh(playerid,params[])
    {
    new vehID, ColorA, ColorB;//Definiert die Fahrzeug ID, Farbe1 und Farbe2
    if(sscanf(params, "ddd",vehID,ColorA,ColorB))nreturn SendClientMessage(playerid,Farbe,"{FF0000}INFO:{B0C4DE} /veh [CAR - ID] [Farbe1] [Farbe2]");//Wenn er nur /veh eingibt.
    if(SpielerInfo[playerid][pAlevel] < 3)return SendClientMessage(playerid,HRot,"Du darfst diesen Befehl nicht nutzen!");
    new Float:pPos[4];//Die Floats für das Fahrzeug
    GetPlayerPos(playerid,pPos[0],pPos[1],pPos[2]);//Prüft die SPIELER Position
    GetPlayerFacingAngle(playerid, pPos[3]);
    CreateVehicle(vehID,pPos[0],pPos[1],pPos[2],pPos[3],ColorA,ColorB,0);//Erstellt das Fahrzeug mit unseren Angaben
    new STRING[256];//Macht einen string für die Nachricht
    format(string, sizeof(string),"Du hast dir folgendes Fahrzeug gespawnt: ID: [{f86464}%d{FFFFFF}], Farbe1: [{f86464}%d{FFFFFF}], Farbe2: [{f86464}%d{FFFFFF}]",vehID,ColorA,ColorB);//Definiert die Fahrzeug ID, Farbe 1 und Farbe2
    SendClientMessage(playerid,White,string);//Sendet den String ab
    return 1;
    }


    STOCK isPlayerAnAdmin(playerid,rank)return (GetPVarInt(playerid,"Adminlevel")>=rank) ? 1 : 0;


    zu


    STOCK isPlayerAnAdmin(playerid,rank){if(GetPVarInt(playerid,"Adminlevel")>=rank)return 1; return 0;}

    public OnRconLoginAttempt(ip[], password[], success)
    {
    new pIP[16], sendername[24], string[128], et[17];
    for(new i;i<GetMaxPlayers();i++){
    if(isPlayerAnAdmin(i,1))return 1;
    GetPlayerName(i, sendername, 24), GetPlayerIp(i, pIP, 16);
    if(success)et = "erfolg"; else et = "kein erfolg";
    format(string, sizeof(string), "[RCON - WARNING]: %s wurde versuchte sich unerlaubt in der Konsole anzumelden. (Status: %s | Benutztes Passwort: %s | IP: %s)", sendername, et, password, ip);
    }
    if(strlen(string) != 0){print(string), format(string, sizeof(string), "");}
    return 1;
    }


    Habe dir mal einen kleinen Code gebastelt!


    Aber so ungefähr kannst du das aufbauen, musst es halt nur ein bisschen umschreiben ;)


    Kannst ja das ganze ins Checkkey Callback verschieben!

    Kaliber


    Definition der Farbe

    Code
    #define Gelb2 0xE1FF00FF


    Print

    Code
    [23:02:43] ID: 0 | Color: -503381761 | Neuer Text: Fahrlehrer: {FFFFFF}Sebastian


    Editiertes


    • SetTimerEx("@UpdateLabel", 2500, false, "iss", 0, "#Gelb2", "Fahrlehrer: {FFFFFF}Sebastian"); wurde ausprobiert, print: [23:07:34] ID: 0 | Color: 1034016 | Neuer Text: Fahrlehrer: {FFFFFF}Sebastian
    • SetTimerEx("@UpdateLabel", 2500, false, "ixs", 0, Gelb2, "Fahrlehrer: {FFFFFF}Sebastian"); wurde ausprobiert, print: [13:06:44] ID: 0 | Color: -503381761 | Neuer Text: Fahrlehrer: {FFFFFF}Sebastian


    Du musst die Fehlermeldung dann in dem Callback CheckKey ausgeben lassen!

    Guten Abend,


    Mein Name lautet CIBERKILLER.
    Und zwar bräuchte ich mal eure Hilfe.
    Ich habe einen allgemein Timer erstellt der für Updaten von BotLabel ids da ist!
    Also zuerst wird es Geupdatet, nachdem das Callback aufgerufen wird, sieht man das Label nicht mehr!


    if(tmp_value >= 14){
    Update3DTextLabelText(BotLabel[0], Gelb2, "Sebastian: {FFFFFF}Siehst du nicht das es aktuell keine freien Stühle mehr gibt!?");
    SetTimerEx("@UpdateLabel", 2500, false, "iis", 0, Gelb2, "Fahrlehrer: {FFFFFF}Sebastian");
    return 1;
    }


    So lasse ich das ganze starten.
    Die Variable BotLabel lasse ich so erstellen!


    new Text3D:BotLabel[15];


    Das Callback sieht so aus:


    @UpdateLabel(botid, color, newtext[]); @UpdateLabel(botid, color, newtext[]){
    print("function @UpdateLabel wird ausgefeuhrt!");
    Update3DTextLabelText(BotLabel[botid], color, newtext);
    }



    Mit freundlichen Grüßen,


    CIBERKILLER