Neuste OCMD Version: Groß/Kleinschreibung nicht beachten?

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,


    bevor ich eins auf den Deckel kriege, dass es dazu ja bereits 1054242 Themen vor mir gibt: ich hab sämtliche Themen durchsucht und mehrere "angeblich" neurere OCMD Versionen ausprobiert, aber er ignoriert bei mir die Groß/Kleinschreibung einfach nicht.


    Beispiel für einen meiner OCMD Commands:


    ocmd:makeleader(playerid,params[])
    {
    if(!isPlayerAnAdmin(playerid,3))return SendClientMessage(playerid,ROT,"Du bist kein Admin.");
    new pID,fID;
    if(sscanf(params,"ui",pID,fID))return SendClientMessage(playerid,GRAU,"Verwendung: /makeleader [Spieler ID] [Fraktions ID]");
    SetPVarInt(pID,"Fraktion",fID);
    SendClientMessage(playerid,GRÜN,"Spieler erfolgreich zum Leader erklärt.");
    return 1;
    }


    /makeleader -> funktioniert
    /Makeleader oder /MAKELEADER -> funtkioniert nicht. (Server Unknown Command)


    Angeblich solls mit der "neusten" OCMD Version ja egal sein, wie der CMD geschrieben wird. WO finde ich die denn nun endlich? Oder was kann ich tun ..


    Danke.

  • Die stimmen jedoch auch nicht mit der neusten Version überein. Das geht nur bis 1.6.1. Die
    neuste ist jedoch 2.0.
    Hier:

    /*---------------------------------------


    /--------\ /--------\ /\
    | | | | / \
    | | | | / \ |-----
    | | |--------/ / \ |
    | | | |--------| \----\
    | | | | | |
    \--------/ | | | -----/


    OBJECTSTREAMER & MAPEDITOR
    VERSION 5.1.1
    OCMD MODULE


    ---------------------------------------*/


    /*
    OCMD 2.0.0
    by kleinerOpa
    best command-solution for sa:mp
    supports samp 0.2X, 0.3a without OCMD_CHECK_UPDATE function
    supports samp 0.3b, 0.3c
    WEB: www.kleiner-opa.de
    ICQ: 611064955
    */


    #include <a_samp>
    #if defined OCMD_CHECK_UPDATE
    #tryinclude <a_http>
    #if !defined HTTP
    #error OCMD_CHECK_UPDATE only works with a_http.inc
    #undef OCMD_CHECK_UPDATE
    #endif
    #endif


    forward ocmdOnPlayerCommandText(playerid,cmdtext[]);
    #if defined OCMD_BEFORE_CALLBACK
    forward BeforePlayerCommandText(playerid,cmdtext[]);
    #endif
    #if defined OCMD_CHECK_UPDATE
    forward ocmdCheckUpdate();
    forward ocmdCheckUpdate2(index,response_code,data[]);
    #endif


    #if defined OCMD_BEFORE_CALLBACK
    new bool:ocmdBeforeCallback;
    #endif
    #if defined OCMD_BEFORE_CALLBACK || defined OCMD_CHECK_UPDATE
    new bool:ocmdInit;
    #endif


    #define ocmd:%1(%2) forward ocmd_%1(%2);\
    public ocmd_%1(%2)


    #define OCMD_VERSION "2.0.0"


    public OnPlayerCommandText(playerid,cmdtext[])
    {
    #if defined OCMD_BEFORE_CALLBACK || defined OCMD_CHECK_UPDATE
    if(!ocmdInit)
    {
    #if defined OCMD_BEFORE_CALLBACK
    if(funcidx("BeforePlayerCommandText")!=-1)ocmdBeforeCallback=true;
    #endif
    #if defined OCMD_CHECK_UPDATE
    SetTimer("ocmdCheckUpdate",(60*1000),false);
    SetTimer("ocmdCheckUpdate",(60*60*1000),true);
    #endif
    ocmdInit=true;
    }
    #endif
    new ocmdStr[32]="ocmd_",
    i=1,
    #if defined OCMD_COMMAND_LOG
    ocmdName[MAX_PLAYER_NAME],
    #endif
    bool:ocmdNoParams;
    #if defined OCMD_COMMAND_LOG
    GetPlayerName(playerid,ocmdName,sizeof ocmdName);
    printf("[cmd] [%s]: %s",ocmdName,cmdtext);
    #endif
    #if defined OCMD_BEFORE_CALLBACK
    if(ocmdBeforeCallback&&!CallLocalFunction("BeforePlayerCommandText","ds",playerid,cmdtext))return 1;
    #endif
    for(;i<128;i++)
    {
    if(!cmdtext[i]||cmdtext[i]==' ')
    {
    if(!cmdtext[i]||!cmdtext[i+1])ocmdNoParams=true;
    break;
    }
    ocmdStr[i+4]=tolower(cmdtext[i]);
    }
    if(!ocmdNoParams&&CallLocalFunction(ocmdStr,"ds",playerid,cmdtext[i+1]))return 1;
    if(ocmdNoParams&&CallLocalFunction(ocmdStr,"ds",playerid," "))return 1;
    return CallLocalFunction("ocmdOnPlayerCommandText","ds",playerid,cmdtext);
    }


    #if defined OCMD_CHECK_UPDATE
    public ocmdCheckUpdate()
    {
    HTTP(1,HTTP_GET,"www.kleiner-opa.de/sc/ocmd.txt","","ocmdCheckUpdate2");
    }
    public ocmdCheckUpdate2(index,response_code,data[])
    {
    if(strlen(data)&&strcmp(OCMD_VERSION,data)!=0)
    {
    new ocmdStr[128];
    format(ocmdStr,sizeof ocmdStr,"An update for OCMD is available (version %s) - www.kleiner-opa.de",data);
    print(ocmdStr);
    for(new i;i<MAX_PLAYERS;i++)if(IsPlayerAdmin(i))SendClientMessage(i,0xD3D3FFFF,ocmdStr);
    }
    }
    #endif


    #define OnPlayerCommandText ocmdOnPlayerCommandText


    Main: CPU: Intel Core i5-4440 @ 3,10 GHz | CPU-Cooling: Matterhorn -PURE- | RAM: 16GB Crucial Ballistix Sport DDR3-1600 DIMM CL9-9-9-24 |
    Motherboard: ASRock B85M Pro4 | GPU: Sapphire Radeon R9 390X Nitro 8GB GDDR5 |

    SSD: Samsung SSD 840 Evo 500GB | Power Supply: 550 Watt Corsair CS Series Modular 80+ Gold | Case: beQuiet! Silent Base 800


    As I walk through the valley of the shadow of death
    I take a look at my life and realize there's nothin' left.

  • @ Logan Adams: Danke, habe jetzt deinen Code übernommen, aber es funktioniert immer noch nicht! ôo


    Es kommt immer noch Server Unknown Command. Muss ich die Befehle umschreiben? Gehts denn bei dir mit Groß/Kleinschreibung?

  • Ja bei mir funktioniert alles. Also nicht case sensitive. Bei Unknown Command wahrscheinlich das Return vergessen oder ?


    MFG

    Main: CPU: Intel Core i5-4440 @ 3,10 GHz | CPU-Cooling: Matterhorn -PURE- | RAM: 16GB Crucial Ballistix Sport DDR3-1600 DIMM CL9-9-9-24 |
    Motherboard: ASRock B85M Pro4 | GPU: Sapphire Radeon R9 390X Nitro 8GB GDDR5 |

    SSD: Samsung SSD 840 Evo 500GB | Power Supply: 550 Watt Corsair CS Series Modular 80+ Gold | Case: beQuiet! Silent Base 800


    As I walk through the valley of the shadow of death
    I take a look at my life and realize there's nothin' left.

  • Meinst du das return im Command? Mein Command sieht wie gesagt zum Beispiel so aus:


    ocmd:makeleader(playerid,params[])
    {
    if(!isPlayerAnAdmin(playerid,3))return SendClientMessage(playerid,ROT,"Du bist kein Admin.");
    new pID,fID;
    if(sscanf(params,"ui",pID,fID))return SendClientMessage(playerid,GRAU,"Verwendung: /makeleader [Spieler ID] [Fraktions ID]");
    SetPVarInt(pID,"Fraktion",fID);
    SendClientMessage(playerid,GRÜN,"Spieler erfolgreich zum Leader erklärt.");
    return 1;
    }


    Kann doch nicht angehen, habe doch exakt das dann in meiner ocmd.inc drinstehen, was du eben gepostet hast. Wieso gehts denn bei mir nicht? Könntest du vielleicht die komplette .inc hochladen?

  • Meinetwegen im Anhang ist die Include.
    Wenns dann immer noch nicht geht dann schau mal in dein OnPlayerCommandText Callback und poste was da drin steht.
    P.S: ocmd Commands auch in keinem Callback ?



    MFG

    Main: CPU: Intel Core i5-4440 @ 3,10 GHz | CPU-Cooling: Matterhorn -PURE- | RAM: 16GB Crucial Ballistix Sport DDR3-1600 DIMM CL9-9-9-24 |
    Motherboard: ASRock B85M Pro4 | GPU: Sapphire Radeon R9 390X Nitro 8GB GDDR5 |

    SSD: Samsung SSD 840 Evo 500GB | Power Supply: 550 Watt Corsair CS Series Modular 80+ Gold | Case: beQuiet! Silent Base 800


    As I walk through the valley of the shadow of death
    I take a look at my life and realize there's nothin' left.

  • Ich kann deine Datei nicht runterladen, irgendwie .. tut sich nichts, Ladebalken bleibt bei Null. Cache gelöscht, verschiedene Browser ausprobiert, PC neugestartet, geht nicht. Neu hochladen bitte?


    Nein, Commands stehen in keinem Callback.


    In meinem OnPlayerCommandText Callback steht aber ne ganze Menge anderer kram. Ich lade einfach mal mein Gamemode hoch. Ist nur ein Testgamemode, also nicht wundern wies da drin aussieht. ^^


    // EDIT: Download deiner ocmd Datei hat doch geklappt - aber es geht immer noch nicht! Hilfe!


    // EDIT 2: ENDLICH, es funktioniert. Ich Horst hab vergessen neu zu compilen. Wusste nicht, dass man das nach nem .inc update machen muss. Wie gesagt, Scriptingnoob. Danke für eure Hilfe. :)

    2 Mal editiert, zuletzt von Jhelno ()