Admin Command

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
  • wie geht das wenn ich /auto [Name] [Frabe1] [Farbe2] haben will!hab schon was versucht kommen aber funkt nicht


    bitte hilfe


    Danke

  • news:


    new CarID[MAX_PLAYERS];


    Also zu Gamemodeinit:

    if(strcmp(cmd, "/auto", true) == 0)
    {
    if(IsPlayerConnected(playerid))
    {
    if (PlayerInfo[playerid][pAdmin] < 4)
    {
    SendClientMessage(playerid, COLOR_ROT, " Du bist kein Mitarbeiter");
    SendClientMessage(playerid, COLOR_ROT, " Bitte unterlass das in Zukunft");
    SendClientMessage(playerid, COLOR_ROT, " Oder wir schließen dich vom Server aus");
    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, " Autonummer zwischen 400 - 611"); return 1; }
    tmp = strtok(cmdtext, idx);
    if(!strlen(tmp))
    {


    Lg
    SendClientMessage(playerid, COLOR_GRAD2, "Benutze: /veh [carid] [color1] [color2]");
    return 1;
    }
    new color1;
    color1 = strval(tmp);
    if(color1 < 0 || color1 > 126) { SendClientMessage(playerid, COLOR_GREY, " Color Number can't be below 0 or above 126 !"); 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 > 126) { SendClientMessage(playerid, COLOR_GREY, " Color Number can't be below 0 or above 126 !"); 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, 60000);
    CreatedCars[CreatedCar] = carid;
    CreatedCar ++;
    format(string, sizeof(string), " Vehicle %d spawned.", carid);
    SendClientMessage(playerid, COLOR_GREY, string);
    }
    return 1;
    }

    Unser Server Ist Da !
    94.249.157.199:9436


  • oder in weniger als 100 zeilen...
    ocmd:auto(i,prm[])
    {
    if(!IsPlayerAdmin(i))return SendClientMessage(i,0xFFFFFFFF,"Du bist kein Admin");
    new mod,f[2];
    if(sscanf(prm,"ddd",mod,f[0],f[1]))return SendClientMessage(i,0xFFFFFFFF,"/auto [model] [farbe 1] [farbe 2]");
    new Float:pp[4];
    GetPlayerPos(i,pp[0],pp[1],pp[2]);
    GetPlayerFacingAngle(i,pp[3]);
    return PutPlayerInVehicle(i,CreateVehicle(mod,pp[0],pp[1],pp[2],pp[3],pp[4],f[0],f[1],1000),0);
    }

  • ich mach das alles mit if(gAdmin[playerid) == rang)

  • ich mach das alles mit if(gAdmin[playerid) == rang)

    Ein Bisschen eigenes Denken geht doch wohl oder?
    if(strcmp(cmd, "/auto", true) == 0)
    {
    if(IsPlayerConnected(playerid))
    {
    if(gAdmin[playerid) < 4)
    {
    SendClientMessage(playerid, COLOR_ROT, " Du bist kein Mitarbeiter");
    SendClientMessage(playerid, COLOR_ROT, " Bitte unterlass das in Zukunft");
    SendClientMessage(playerid, COLOR_ROT, " Oder wir schließen dich vom Server aus");
    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, " Autonummer zwischen 400 - 611"); return 1; }
    tmp = strtok(cmdtext, idx);
    if(!strlen(tmp))
    {


    Lg
    SendClientMessage(playerid, COLOR_GRAD2, "Benutze: /veh [carid] [color1] [color2]");
    return 1;
    }
    new color1;
    color1 = strval(tmp);
    if(color1 < 0 || color1 > 126) { SendClientMessage(playerid, COLOR_GREY, " Color Number can't be below 0 or above 126 !"); 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 > 126) { SendClientMessage(playerid, COLOR_GREY, " Color Number can't be below 0 or above 126 !"); 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, 60000);
    CreatedCars[CreatedCar] = carid;
    CreatedCar ++;
    format(string, sizeof(string), " Vehicle %d spawned.", carid);
    SendClientMessage(playerid, COLOR_GREY, string);
    }
    return 1;
    }

    Ungetestet.



    MfG Firer

  • wenn ich das rein mach kommen lauter errors


    undefined symbol Lg
    das gleiche bei createcars und creatcar

    Einmal editiert, zuletzt von deathrunner ()

  • ocmd:auto(i,prm[])
    {
    if(gAdmin[i]<2)return SendClientMessage(i,0xFFFFFFFF,"Du bist kein Admin");
    new mod,f[2];
    if(sscanf(prm,"ddd",mod,f[0],f[1]))return SendClientMessage(i,0xFFFFFFFF,"/auto [model] [farbe 1] [farbe 2]");
    new Float:pp[4];
    GetPlayerPos(i,pp[0],pp[1],pp[2]);
    GetPlayerFacingAngle(i,pp[3]);
    return PutPlayerInVehicle(i,CreateVehicle(mod,pp[0],pp[1],pp[2],pp[3],pp[4],f[0],f[1],1000),0);
    }

  • und was mit undefined symbol creatcars


    und undefined symbol creatcar


    muss ich da ne new machen?

  • Nimm einfach meins... man sollte halt keine commands einfach so aus dem GF nehmen.

  • könnt ihr mir das mit diesem command beginn machen


    if (strcmp("/auto", cmdtext, true, 10) == 0)
    {
    if(gAdmin[playerid] == 2 || gAdmin[playerid] == 3 || gAdmin[playerid] == 4)
    {


    und dann die funtionen


    so mein ich das sonst bekom ich nur errors

  • benutz dcmd!! strcmp ist für sowas nicht gut ! und wieso schreibst du so ? :


    if(gAdmin[playerid] == 2 || gAdmin[playerid] == 3 || gAdmin[playerid] == 4)
    so gehts auch


    {
    if(gAdmin[playerid] >=2)
    hier mal aus der Cmd aus meinen AdminScript
    bei OnPlayerCommandText
    dcmd(auto,4,cmdtext);
    irg wo im Script nur nicht im Callback

    dcmd_auto(playerid,params[])
    if(gAdmin[playerid]< 2){
    return SendClientMessage (playerid,COLOR_RED,"You must be a SuperAdmin or higher to spawn cars");
    }
    new veh,color1,color2;
    if(sscanf(params,"ddd",veh,color1,color2)){
    return SendClientMessage(playerid,COLOR_RED,"USAGE: /veh [vehicleID] [color1] [color2]");
    }
    if(veh < 400){
    return SendClientMessage(playerid,COLOR_RED,"INVALID vehID![400-611]");
    }
    if(veh > 611){
    return SendClientMessage(playerid,COLOR_RED,"INVALID vehID![400-611]");
    }
    if(color1 < 0){
    return SendClientMessage(playerid,COLOR_RED,"INVALID color1ID![0-126]");
    }
    if(color1 > 126){
    return SendClientMessage(playerid,COLOR_RED,"INVALID color1ID![0-126]");
    }
    if(color2 < 0){
    return SendClientMessage(playerid,COLOR_RED,"INVALID color2ID![0-126]");
    }
    if(color2 > 126){
    return SendClientMessage(playerid,COLOR_RED,"INVALID color2ID![0-126]");
    }
    new Float:x , Float:y , Float: z;
    GetPlayerPos(playerid,x,y,z);
    CreateVehicle(veh, x, y, z, 0, color1, color2, 123456789);
    return 1;
    }
    dcmd kannst du in google eingeben und downloaden und mit sscanf dasselbe ....

    Einmal editiert, zuletzt von Hustlеr ()

  • 1. ich mach alle commands so!


    2. könntest du mir so ein Command machen?


    Bitte


    //edit allso alles bei onplayercommandtext rein

    Einmal editiert, zuletzt von deathrunner ()

  • ehm nein ? Lol kannste net vernünftig lesen ? hab ja geschriben das erste kommt bei OnPlayerCommandText und das andere irg wo im script nur nicht im callback
    dcmd kommt ganz nach oben im script (wenn du es gedownloadet hast )
    #include<dcmd>
    wohin sscanf reinkommt steht in Wiki
    einfach das hier anschauen falls du weitere Fragen hast
    [ SCRIPTING ] Commands mit Parametern

  • und das mit gadmin muss ich da noch 3 und 4 dazu machen oder nicht


    //edit finde denn kck dcmd nicht an


    schick bitte link

    Einmal editiert, zuletzt von deathrunner ()

  • nein musst du nicht kukst du Mathe Stunde für dich:
    < = ist kleiner als z.B 3<4 jz auf Deutsch "3 ist kleiner als 4"
    > = ist größer als z.B 4>3 jz auf Deutsch "4 ist größer als 3"


    PHP
    if(gAdmin[playerid]< 2){
    		return SendClientMessage (playerid,COLOR_RED,"You must be a SuperAdmin or higher to spawn cars")


    >>> auf deutsch "wenn der Spieler gAdmin Rank kleiner als 2 hat wird die Aktion nicht zugelassen"

  • ah und schau auch gleich meine edit frage an


    //edit noch was kann ich statt COLOR_RED die farb cods zb"0x002285FF" nehmen