OCMD Hilfe <.<

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
  • Hallo, habe ein Problem mit OCMD.
    Immer wenn ich InGame gehe und z.B /kick 0 Lol oder so eingebe steht z.B das hier da:


    INFO: ol wurde von 0 gekickt, Grund: Lol


    Oder so..
    Kann mir wer helfen?
    Hier mal alle meine OCMD Befehle, alle gehen nicht.



    ocmd:makeadmin(playerid,params[])
    {
    if(Spieler[playerid][Admin] <= 5)return SendClientMessage(playerid,COLOR_GREY,"Du brauchst Admin Rank 5 oder höher.");
    new pID, rank, string[256];
    if(sscanf(params,"ui",pID,rank))return SendClientMessage(playerid,COLOR_GREY,"FEHLER: /makeadmin [SpielerID/TeildesNamens] [AdminLevel]");
    if(rank<0||rank>6)return SendClientMessage(playerid,COLOR_GREY,"Nicht niedriger als 0 und höher als 6.");
    Spieler[playerid][Admin] = rank;
    format(string,sizeof (string),"Du hast %s zum Admin %s gemacht.",pID,rank);
    SendClientMessage(playerid,COLOR_LIGHTBLUE,string);
    format(string,sizeof (string),"Du wurdest zum Admin Rank %s gemacht.",rank);
    SendClientMessage(pID,COLOR_LIGHTBLUE,string);

    return 1;
    }


    ocmd:ban(playerid,params[])
    {
    if(Spieler[playerid][Admin] <= 2)return SendClientMessage(playerid,COLOR_GREY,"Du brauchst Admin Rank 2 um den Befehl auszuführen zu können!");
    new pID, reason, string[256];
    if(sscanf(params,"us",pID,reason))return SendClientMessage(playerid,COLOR_GREY,"FEHLER: /ban [SpielerID/TeildesNamens] [Grund]");
    format(string,sizeof(string),"INFO: %s wurde von Admin %s gebannt, Grund: %s",pID,playerid,reason);
    SendClientMessageToAll(COLOR_DARKRED,string);
    format(string,sizeof(string),"Du wurdest von Admin %s gebannt, aus folgendem Grund: %s",playerid, reason);
    SendClientMessage(pID,COLOR_DARKRED,string);
    SendClientMessage(pID,COLOR_DARKRED,"Wenn du zu unrecht gebannt wurdest, melde dich im Forum unter:");
    SendClientMessage(pID,COLOR_DARKRED,"www.nie-reallife.de");
    Spieler[pID][Banned] = 1;
    Kick(pID);
    return 1;
    }


    ocmd:kick(playerid,params[])
    {
    if(Spieler[playerid][Admin] <= 1)return SendClientMessage(playerid,COLOR_GREY,"Du brauchst Admin Rank 1 um den Befehl auszuführen zu können!");
    new pID, reason, string[256];
    if(sscanf(params,"us",pID,reason))return SendClientMessage(playerid,COLOR_GREY,"FEHLER: /kick [SpielerID/TeildesNamens] [Grund]");
    format(string,sizeof(string),"INFO: %s wurde von Admin %s gekickt, Grund: %s",pID,playerid,reason);
    SendClientMessageToAll(COLOR_DARKRED,string);
    format(string,sizeof(string),"Du wurdest von Admin %s gekickt, aus folgendem Grund: %s", playerid, reason);
    SendClientMessage(pID,COLOR_DARKRED,string);
    SendClientMessage(pID,COLOR_DARKRED,"Wenn du zu unrecht gekickt wurdest, melde dich im Forum unter:");
    SendClientMessage(pID,COLOR_DARKRED,"www.nie-reallife.de");
    Kick(pID);
    return 1;
    }


    ocmd:sethp(playerid,params[])
    {
    if(Spieler[playerid][Admin] <= 4)return SendClientMessage(playerid,COLOR_GREY,"Du brauchst Admin Rank 4 um den Befehl auszuführen zu können!");
    new pID, leben, string[256];
    if(sscanf(params,"ui",pID,leben))return SendClientMessage(playerid,COLOR_GREY,"FEHLER: /sethp [SpielerID/TeildesNamens] [Leben]");
    format(string,sizeof(string),"Deine Leben wurden von Admin %s auf %d gesetzt.",playerid,leben);
    SendClientMessage(pID,COLOR_DARKRED,string);
    format(string,sizeof(string),"Du hast die Leben von %s auf %d gesetzt.",pID, leben);
    SendClientMessage(playerid,COLOR_LIGHTBLUE,string);
    SetPlayerHealth(pID,leben);
    return 1;
    }



    Bitte helft mir. :(

  • Versuch's mal so:


    ocmd:kick(playerid,params[])
    {
    if(Spieler[playerid][Admin] <= 1)return SendClientMessage(playerid,COLOR_GREY,"Du brauchst Admin Rank 1 um den Befehl auszuführen zu können!");
    new pID, str[256], str2[256];
    if(sscanf(params,"us",pID,str))return SendClientMessage(playerid,COLOR_GREY,"FEHLER: /kick [SpielerID/TeildesNamens] [Grund]");
    format(str,sizeof(str),"INFO: %s wurde von Admin %s gekickt, Grund: %s",SpielerName[pID],SpielerName[playerid],str);
    SendClientMessageToAll(COLOR_DARKRED,str);
    format(str2,sizeof(str2),"Du wurdest von Admin %s gekickt, aus folgendem Grund: %s",SpielerName[playerid],str);
    SendClientMessage(pID,COLOR_DARKRED,str2);
    SendClientMessage(pID,COLOR_DARKRED,"Wenn du zu unrecht gekickt wurdest, melde dich im Forum unter:");
    SendClientMessage(pID,COLOR_DARKRED,"www.nie-reallife.de");
    Kick(pID);
    return 1;
    }


    Und oben ins Script


    new SpielerName[MAX_PLAYERS][MAX_PLAYER_NAME];

  • Wenn ich jetzt /kick eingebe werde ich zwar gekickt, aber dann steht da:
    INFO: wurde von Admin gekickt, Grund: Dies ist nichts für Dich
    Du wurdest von Admin gekickt, aus folgendem Grund: INFO: wurde von Admin gekickt, Grund: Dies ist nichts für dich
    Wenn du zu unrecht gekickt wurdest, melde dich im Forum unter:
    http://www.nie-reallife.de


    PS: Die URL gibts nicht, deswegen: Ist keine Werbung ^^

  • do.de - Domain-Offensive - Domains für alle und zu super Preisen
  • Hmm, warte kurz, mache mich nochmal ran.
    Dannach editiere ich es hier rein. ;)


    Edit:
    Ok, hab da Müll gescriptet :pinch:


    Das sollte stimmen.


    ocmd:kick(playerid,params[])
    {
    new pID, str[256], str2[256],str3[24];
    if(Spieler[playerid][Admin] <= 1)return SendClientMessage(playerid,COLOR_GREY,"Du brauchst Admin Rank 1 um den Befehl auszuführen zu können!");
    if(sscanf(params,"us",pID,str3))return SendClientMessage(playerid,COLOR_GREY,"FEHLER: /kick [SpielerID/TeildesNamens] [Grund]");
    format(str,sizeof(str),"INFO: %s wurde von Admin %s gekickt, Grund: %s",SpielerName[pID],SpielerName[playerid],str3);
    format(str2,sizeof(str2),"Du wurdest von Admin %s gekickt, aus folgendem Grund: %s",SpielerName[playerid],str3);
    SendClientMessage(pID,COLOR_DARKRED,str2);
    SendClientMessage(pID,COLOR_DARKRED,"Wenn du zu unrecht gekickt wurdest, melde dich im Forum unter:");
    SendClientMessage(pID,COLOR_DARKRED,"www.nie-reallife.de");
    SendClientMessageToAll(COLOR_DARKRED,str);
    Kick(pID);
    return 1;
    }

  • Uff, ne. Geht immernoch nicht. :S


    Damits einfacher geht, einfach den chatlog hier:



    [15:50:23] Du wurdest von Admin gekickt, aus folgendem Grund: Du bist doof


    [15:50:23] Wenn du zu unrecht gekickt wurdest, melde dich im Forum unter:


    [15:50:23] www.nie-reallife.de


    [15:50:23] INFO: wurde von Admin gekickt, Grund: Du bist doof


    [15:50:23] Server closed the connection.



  • Mal von oben bis "main()"



    //=============== Besitz des Script ============== //
    // Dieses Script ist von Mirko97 erstellt wurden. //
    // Weitergabe & Verkauf ist verboten!! //
    // =============================================== //





    #include <a_samp>
    #include <dini>
    #include <ocmd>


    #define COLOR_WHITE 0xFEFEFEFF
    #define COLOR_RED 0xFF2800FF
    #define COLOR_BLUE 0x1E007FFF
    #define COLOR_YELLOW 0xF5FF00FF
    #define COLOR_GREY 0xBEBEBEFF
    #define COLOR_DARKGREY 0x646464FF
    #define COLOR_LIGHTGREY 0xC8C8C8FF
    #define COLOR_LIGHTGREEN 0x00FF14FF
    #define COLOR_DARKGREEN 0x006A14FF
    #define COLOR_DARKRED 0x6A0000FF
    #define COLOR_LIGHTBLUE 0x00C3FFFF
    #define COLOR_LIGHTPINK 0xFF00B93E



    #define DIALOG_REG 1
    #define DIALOG_LOGIN 2
    #define DIALOG_TUT1 3
    #define DIALOG_TUT2 4
    #define DIALOG_TUT3 5
    #define DIALOG_JOBS 6
    #define DIALOG_BUSF 7
    #define DIALOG_FARMER 8
    #define DIALOG_TRUCK 9
    #define DIALOG_JOBAUSW 10
    #define DIALOG_SEX 11
    #define DIALOG_SEX1 12
    #define DIALOG_SEX2 13
    #define DIALOG_AGE 14
    #define DIALOG_STATS 15


    forward ShowStats(playerid,targetid);


    enum spieler_daten
    {
    Admin,
    Premium,
    Level,
    skin,
    eingeloggt,
    Geld,
    Banned,
    Leader,
    Member,
    Perso,
    Job,
    Sex,
    Alter,
    AFK,
    SupDuty
    }
    new Spieler[MAX_PLAYERS][spieler_daten];


    new Text3D:Adminlabel[MAX_PLAYERS];
    new Text:txtTimeDisp;
    new hour, minute;
    new timestr[32];
    new SpielerName[MAX_PLAYERS][MAX_PLAYER_NAME];


    forward UpdateTime();





    main()
    {
    print("\n----------------------------------");
    print(" German Reallife");
    print("----------------------------------\n");
    }


  • oder einfach eine Funktion



    PlayerName(playerid)
    {
    new n[MAX_PLAYER_NAME];
    GetPlayerName(playerid,n, sizeof n);
    return n;
    }


    und weil man ja oft den playerid-Namen braucht oben noch ein
    #define pName PlayerName(playerid)// returnt automatisch Playernamen


    fertig