Beiträge von 40Polat_Alemdar95

    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