Beiträge von 40Polat_Alemdar95

In 10 Minuten startet der nächtliche Backupvorgang! Es kann währenddessen (ca. 10 Minuten) zu Einschränkungen bei der Nutzung des Forums kommen
Weitere Infos findet ihr im Thema Backup des Forums

    Guten Tag liebe Community,


    als ich mir ein /respawncars befehl erstellt habe war mir klar, dass ich auch sowas machen muss, wo nur die Fahrzeuge, die nicht besetzt sind respawnen sollen.


    ocmd:respawncars(playerid, params[])
    {
    if(!IsPlayerAnAdmin(playerid, 4))return SendClientMessage(playerid,GRAU,"Du bist dafür nicht befugt");
    for(new i=0; i<MAX_VEHICLES; i++)
    {
    for(new j=0; j<MAX_PLAYERS; j++)
    {
    if(IsPlayerInVehicle(j, i))return 1;
    SetVehicleToRespawn(i);
    }
    }
    new string[250];
    format(string,sizeof(string), "//----------------------------Alle unbesetzte Autos wurden von %s respawnt.------------------------------//", SpielerName(playerid));
    SendClientMessageToAll(COLOR_OOC, string);
    return 1;
    }



    aber leider wenn ich es mache, werden nicht alle Fahrzeuge respawnt ... komischer weise werden nur die hälfte respawnt und ich bekomme auch keine Nachricht wie "//----------------------------Alle unbesetzte Autos wurden von %s respawnt.------------------------------//" ich verstehe nicht, was ich falsch mache


    hilft mir bitte!



    Ehmm?? Es werden aber irgendwie komischer weise nicht alle Fahrzeuge respawnt -.-

    Guten Morgen liebe community,


    als ich versucht habe den befehl /checkwaffen zu scripten, habe ich es zwar geschafft, aber ist halt nicht Fehlerfrei. Also wenn ich /checkwaffen [ID] eintippe, wird nur die Waffe angezeigt, die der Spieler in der Hand hat... -.- ich will, dass alle Waffen angezeigt werden sollen .. also alles was er dabei hat.


    ocmd:checkwaffen(playerid, params[])
    {
    if(IsPlayerConnected(playerid))
    {
    new pID, ammo, string[128];
    if(GetPVarInt(playerid, "Fraktion") == 1 || GetPVarInt(playerid, "Fraktion") == 2 || GetPVarInt(playerid, "Fraktion") == 3 || GetPVarInt(playerid, "Fraktion") == 4)
    {
    if(sscanf(params,"u", pID))return SendClientMessage(playerid, GRAU, "FEHLER: /checkwaffen [ID]");
    ammo = GetPlayerAmmo(pID);
    format(string, sizeof(string), "//=========Waffen von %s =============//", SpielerName(pID));
    SendClientMessage(playerid, ORANGE, string);
    for (new i = 0; i < 13; i++)
    {
    format(string, sizeof(string),"%s: | %i Munitionen.", GetPlayerWeaponName(playerid), ammo);
    SendClientMessage(playerid, COLOR_SMS, string);
    /*format(string, sizeof(string),"Waffe 2: %s: | %i Munitionen.", GetPlayerWeaponName(playerid), ammo);
    SendClientMessage(playerid, COLOR_SMS, string);
    format(string, sizeof(string),"Waffe 3: %s: | %i Munitionen.", GetPlayerWeaponName(playerid), ammo);
    SendClientMessage(playerid, COLOR_SMS, string);
    format(string, sizeof(string),"Waffe 4: %s: | %i Munitionen.", GetPlayerWeaponName(playerid), ammo);
    SendClientMessage(playerid, COLOR_SMS, string);
    format(string, sizeof(string),"Waffe 5: %s: | %i Munitionen.", GetPlayerWeaponName(playerid), ammo);
    SendClientMessage(playerid, COLOR_SMS, string);*/
    }
    }
    else
    {
    SendClientMessage(playerid, GRAU, "Du bist dafür nicht befugt!");
    }
    }
    else
    {
    SendClientMessage(playerid, ROT, "Du musst erst eingeloggt sein!");
    }
    return 1;
    }

    Ne klappt leider nicht -.- ich glaube der Fehler ist bei


    if(!IsNumeric(inputtext))return SendClientMessage(....)


    als stock habe ich sowas:


    stock IsNumeric(const string[])
    {
    new length=strlen(string);
    if(length==0)
    {
    return 0;
    }
    for(new i=0; i<MAX_PLAYERS; i= '0' || (i==0 && (string[i]=='-')) || string[i]=='+')
    {
    return false;
    }
    return 0;
    }



    //Edit: Ok Habe jetzt endlich geschafft :) vielen dank an: Sony

    if(strcmp(cmd, "/veh", true) == 0)
    {
    if(IsPlayerConnected(playerid))
    {
    if(PlayerInfo[playerid][pAdmin] < 1338)
    {
    SendClientMessage(playerid, COLOR_GRAD1, "Du bist kein Admin[1338]!");
    return 1;
    }
    tmp = strtok(cmdtext, idx);
    if(!strlen(tmp))
    {
    SendClientMessage(playerid, COLOR_GRAD2, "Benutze: /veh [carid] [color1] [color2]");
    return 1;
    }
    new car;
    car = strval(tmp);
    if(car < 400 || car > 611) { SendClientMessage(playerid, COLOR_GREY, "Auto Nummer nicht weniger als 400 oder höher als 611 sein !"); return 1; }
    tmp = strtok(cmdtext, idx);
    if(!strlen(tmp))
    {
    SendClientMessage(playerid, COLOR_GRAD2, "Benutze: /veh [carid] [color1] [color2]");
    return 1;
    }
    new color1;
    color1 = strval(tmp);
    if(color1 < 0 || color1 > 252) { SendClientMessage(playerid, COLOR_GREY, "Nicht Weniger als 0 oder höher 252 !"); return 1; }
    tmp = strtok(cmdtext, idx);
    if(!strlen(tmp))
    {
    SendClientMessage(playerid, COLOR_GRAD2, "Benutze: /veh [carid] [color1] [color2]");
    return 1;
    }
    new color2;
    color2 = strval(tmp);
    if(color2 < 0 || color2 > 252) { SendClientMessage(playerid, COLOR_GREY, "Nicht weniger als 0 oder höher als 252!"); return 1; }
    new Float:X,Float:Y,Float:Z;
    GetPlayerPos(playerid, X,Y,Z);
    new carid = CreateVehicle(car, X,Y,Z, 0.0, color1, color2, -1);
    SetVehicleNumberPlate(carid, "{009900}R{FF0000}G{0000FF}R {0000FF}Event");
    CreatedCars[CreatedCar] = carid;
    CreatedCar++;
    PutPlayerInVehicle(playerid,carid,0);
    // Gas[carid] = GetGasMax(car);
    format(string, sizeof(string), "Auto mit der ID %d hergestellt.", carid);
    SendClientMessage(playerid, COLOR_GREY, string);
    }
    return 1;
    }

    Guten Tag liebe Community,


    wenn ich mit /veh ein Fahrzeug InGame erstelle ( CreateVehicle(....)), und es wieder mit /deletethiscar oder /deletethecar (DestroyVehicle(GetPlayerVehicleID(playerid))) zerstöre, wird es zwar zerstört aber es kommt nach dem Server Restart wieder dahin wo es mit /veh erstellt wurde -.- am ende habe ich dann ein Car Chaos


    Wahrscheinlich muss ich es im Script löschen, aber wie?? könnt ihr mir bitte helfen.


    Mit Freundlichen Grüßen


    40Polat_Alemdar95 ~ Anfänger/Fortgeschrittener Scripter ~

    Guten Tag liebe Community,


    ich habe mir ein Bankkonto erstellt. Es funktuniert alles fehlerfrei. Aber wenn ich in der Bank bin, und /menu eingebe, und das Geld was ich einzahlen möchte eintippe passiert nichts, weil:



    if(dialogid==DIALOG_LSBANK)
    {
    if(response==1)
    {
    switch(listitem)
    {
    case 0:
    {
    new string[128];
    format(string,sizeof(string),"Dein Kontostand beträgt: %i$!",GetPVarInt(playerid,"Konto"));
    SendClientMessage(playerid,WEISS,string);
    }
    case 1:
    {
    ShowPlayerDialog(playerid,9,DIALOG_STYLE_INPUT,"Los Santos Bank","Wie viel möchtest du einzahlen:","Auszahlen","Abbrechen");
    }
    }
    }
    }
    if(dialogid==DIALOG_LSBANK_EINZAHLEN)
    {
    if(response==1)
    {
    SetPVarInt(playerid, "Konto", GetPVarInt(playerid,"Konto")+inputtext);
    }
    }


    Leider klappt es nicht-.- ich will die Zahl was der Spieler eingibt auslesen, dann zur GetPVarInt(playerid,"Konto") addieren oder subtrahieren

    Wie xd? Bsp: if(IsPlayerAnAdmin(playerid,1))return SendClientMessage(...?


    Aber ich will dass garnicht Server unknown command kommen soll
    Das heisst: auch wenn ich /c oder /abc schreibe obwohl dieser Befehl nicht gescriptet ist, soll kein Unknown Command kommen bzw. Einfach nichts passieren

    Guten Abend liebe Communty,


    Ich wollte mal fragen wie ich "Server: Unknown Command" entfernen kann.
    bsp: wenn ich soger /blabla schreibe soll da einfach nichts kommen, statt "Server: Unknown Command"


    Hoffentlich könnt ihr mir helfen.


    Mit Freundlichen Grüßen


    40Polat_Alemdar95 - AnfängerScripter

    Guten Tag liebe Community,


    Ich habe mir ein Zeit und Datum system erstellt, und zwar:



    forward clock();


    Bei OnGameModeInit


    SetTimer(clock, 1000, 0);
    clock();




    public clock()
    {
    new Text:Clock; // Hier wird ein neuer Textdraw für die Uhr definiert
    TextDrawDestroy(Clock); // Dies ist wichtig!!! Somit kann sich der Textdraw bei der Aktualisierung durch den Timer nicht überlagern!!
    new hour, minuteX, second; // Hier werden die Variablen für Stunde, Minute und Sekunde deklariert
    new string[9]; // Der String von 9 reicht aus, um das Datum anzuzeigen
    gettime(hour,minuteX,second); // Hiermit wird die Uhrzeit von dem Rechner/Server eingeholt, auf dem das Script läuft
    format(string, sizeof string, "%d:%d:%d", hour, minuteX, second);// Hier wird die Uhrzeit formatiert, damit sie im Format Stunde:Minute:Sekunde angezeigt wird
    TextDrawHideForAll(Clock);
    Clock = TextDrawCreate(545.0, 14.0, string); // Koordinaten, wo die Uhr angezeigt wird
    TextDrawLetterSize(Clock, 0.5, 1.6); // Hier wird die Textgröße festgelegt, zuerst die Breite [0.6], danach die Höhe [1.8]
    TextDrawFont(Clock, 3); // Hier wird die Schriftart der Uhrzeit festgelegt
    TextDrawSetOutline(Clock, 1); // Mit diesem Code kann ein schwarzer Rand um die Uhrzeig gelegt werden, damit es besser lesbar ist. die Zahl bestimmt die Dicke des Randes
    TextDrawShowForAll(Clock); // Hiermit wird der TextDraw für alle Spieler angezeigt
    SetTimer("clock",1000,0); // Ein Timer von 1000 ms (1 Sekunde) wird gesetzt, um sich dann zu wiederholen, somit wird jede Sekunde die Uhrzeit erneuert
    return 1;
    }


    Das gleiche habe ich auch beim Datum gemacht. Das Problem ist, es zeigt nur die Uhrzeit. Das Datum wird i-wie nicht angezeigt bzw. nur 1Sekunde lang beim Login angezeigt, danach verschwindet es wieder. Wenn ich aber die Uhrzeit ausklammere dann wird das Datum angezeigt -.- Ich weiß nicht was für ein Zusammenhang die beiden haben aber hoffentlich könnt ihr mir helfen ... :)


    Mit Freundlichen Grüßen


    40Polat_Alemdar95 - AnfängerScripter