Beiträge von Logan


    Aber wir sollen es für dich machen?
    Hör mir zu mein Freund, du hast jetzt insgesamt 193 Beiträge. Langsam solltest du wissen, dass wir helfen/ratschläge geben/usw.
    nicht dein Script durchforsten. Wir haben dir den Tipp gegeben, dass du nach "SetPlayerHealth" beziehungsweise nach irrgendwelchen Publics ausschau zu halten, die etwas mit Leben zutun haben könnten. Mehr können wir nicht für dich tun. ;)


    Nur mal so.
    Es würde nicht funzen da GetPlayerHealth 2 Parameter verlangt.
    Einmal playerid - von wem du das Health "getten" willst
    und dannoch eine Float in der du das aktuelle Leben speicherst.


    MFG


    Desweiteren würde dads hier nicht mal funktionieren. ^^ :pinch:
    Such einfach im Script nach nem Timer und schau im entsprechenden Timer Callback nach unds machs einfach raus.


    MFG


    Du weißt aber, dass kleinerOpa (der schreiber von OCMD) so ziemlich viel bei ZCMD abgeschaut hat und nur das "COMMAND" zu "ocmd" geändert hat :D
    und ich finde ZCMD besser, da es zwei nützliche Callbacks anstelle von OnPlayerCommandText hat und man so nicht auf Gross-/Kleinschreibung achten muss !


    mfg. :thumbup:


    Es lebe hoch die Propaganda -.- .
    Und zum teufel... bei OCMD ist auch nicht Case sensitive. Es war bloß case sensitive bei der 1.0 Version, die hier immer noch so viele haben.
    Bei der 2.0 Ist es nicht mehr so.
    Außerdem ich weiß , dass der "Begründer" von OCMD Kleiner_Opa heißt. Er war schließlich lange genug Scripter von WC -.-


    Hier mal die 2.0 für alle die noch die 1.0 haben



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


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


    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



    *hust*
    Wieso zum Teufel ist OCMD das langsamste ?
    Es ist schneller als DCMD und ZCMD keine Ahnung.


    Jedoch ist es NICHT das langsamste und OCMD ist auch sehr übersichtlich ;)


    MFG

    nein eine schleife machen
    und abfragen ob sich die tore nicht bewegen


    Wozu braucht er jetzt hier ne Schleife ?
    Wenn er SetTimerEx benutzt hat er doch bereits den Parameter playerid zur Verfügung :pinch:
    Wozu auch noch die Abfrage ob sich die Tore "bewegen" 8|

    Ich denke mal schon, du nutzt Variablen als "Zwischenspeicher" und dann wenn der Spieler disconnectet lässt
    du den SpielerSpeichern Stock ausführen und speicherst dann die Variable in deiner SPielerdatei.


    MFG

    Füge erstmal den .pwn Code gescheit ein.
    Du fügst dein Code einfach ins Textfeld im Editor ein.
    Dann switchst du auf Editor markierst den Code und drückst auf den Button oben pwn.
    Dann abchicken!
    Weil so koenen wir dir nicht helfen!



    MFG


    Danke für die Nachfrage.
    Aber: Das Problem wurde mittlerweile gelöst.


    einfach [LAENGE] hinzugefügt.


    //close


    //Edit:
    Wie es aussieht liegt es an sscanf.
    Hier bekommen wir ein Warning in der Server Konsole:
    [09/08/2012 18:28:05] sscanf error: System not initialised.
    Und ja: Plugins eingetragen und .inc drinne ;)

    OK hier z.B der O-Befehl.
    Ist nichts außergewöhnliches , die String Länge stimmt ja.



    ocmd:o(playerid,params[])
    {
    new msg[128];
    if(sscanf(params,"s",msg))return SendClientMessage(playerid,ROT,"Benutzung: /o(oc) [Nachricht]");
    if(ochat == true) {
    format(msg,sizeof msg,"(( %s: %s ))",SpielerName(playerid),msg);
    SendClientMessageToAll(WEISS,msg);
    }
    else {
    if(IstSpielerAdmin(playerid,1)) {
    format(msg,sizeof msg,"(( %s: %s ))",SpielerName(playerid),msg);
    SendClientMessageToAll(WEISS,msg);
    }
    else {
    SendClientMessage(playerid,ROT,"Der O-Chat ist derzeit geschlossen. Nur Leute aus dem Adminteam können ihn benutzen.");
    }
    }
    return true;
    }

    Hey Leute,


    wir arbeiten derzeit an einem Script.
    Jedoch gibt es Probleme wenn man z.B Befehle mit Stringparametern macht.
    Wenn ich z.B per /o [Text] Ingame schreibe werden nur ca. 14 Zeichen zugelassen, wenns länger ist wirds einfach weggelassen.


    Die Stringlänge ist auch auf 128, so viel unterstützt ja nur die SAMP Chatbox, also weiß ich nicht wo das Problem sein könnte.




    Bitte um Hilfe!



    Danke im Voraus




    MFG