Weiß nicht wie ich das definieren soll ...

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
  • ALoha!
    Nunja habe mir mal das Admin Panel außem Wiki angeschaut ..
    Wenn ich es jet rein gescriptet hat und ich Compilen will sagt er mir :

    C:\Dokumente und Einstellungen\Joker\Desktop\tpp.pwn(2079) : error 017: undefined symbol "dcmd_login"
    C:\Dokumente und Einstellungen\Joker\Desktop\tpp.pwn(2086) : error 017: undefined symbol "params"
    C:\Dokumente und Einstellungen\Joker\Desktop\tpp.pwn(2091) : error 017: undefined symbol "params"

    ich weiß nicht wie ich die definieren soll also mit new ...

    Zeile 2079: dcmd_login(playerid, params[])
    Zeile 2086: else if(strlen(params) == 0)
    Zeile:2091: else if(adler32_hash(params) != dini_Int(USERFILE,player_names[playerid]))


    Wäre gut wenn ich Hilfe bekommen würde;)

  • ich glaub nicht dass es new dcmd_login(params) oder soo ist xD

  • Danke schonma für Antwort doch es kommt der Error:



    C:\Dokumente und Einstellungen\Joker\Desktop\tpp.pwn(129) : error 001: expected token: ";", but found "("

    das heißt ja das ich ; genommen habe doch er hat ( gefunden.. sprich das muss ohne Klammer oder nicht ??



    dcmd_login(playerid, params[]) {
    if(player_level[playerid] != 0) { // User is logged in
    SendClientMessage(playerid, 0xFFFFFFFF, "You are already logged in.");
    return 1; // We dont need to execute the rest of the function, do we?
    }
    else if(strlen(params) == 0) { // There is no password specified, only /login
    SendClientMessage(playerid, 0xFFFFFFFF, "Please use /login [password]");
    return 1;
    }
    else if(adler32_hash(params) != dini_Int(USERFILE,player_names[playerid])) {
    // There's a password '''hash''' generated and compared to the one from the config file
    SendClientMessage(playerid, 0xFFFFFFFF, "Password mismatch.");
    return 1;
    }
    player_level[playerid] = 1; // Logged in successfully
    SendClientMessage(playerid, 0xFFFFFFFF, "You are now logged in. Have a nice day.");
    return 1;
    }



    das muss ja bei OnPlayerLogin hin oder ?

  • Les dir am besten eine Anleitung zu dmcd durch und am besten auch gleich von sscanf (-> wiki).


    http://wiki.sa-mp.com/wiki/Fast_Commands


    die dcmd_BEFEHL(playerid,params[]) kommen in keinen public sondern einfach so außerhalb eines publics.


    Du musst diese dcmd Befehle allerdings unter OnPlayerCommandText definieren:


    dcmd(login,5,cmdtext); /* Name des Befehls (gleich wie beim dcmd_login), Länge des Befehls (login hat 5 Buchstaben), cmdtext (Eingabe des Spielers) */

  • 1.die dcmd_BEFEHL(playerid,params[]) kommen in keinen public sondern einfach so außerhalb eines publics.


    2.Du musst diese dcmd Befehle allerdings unter OnPlayerCommandText definieren:

    Hey also hab jet nur noch einen Error:

    C:\Dokumente und Einstellungen\Joker\Desktop\tpp.pwn(2434) : error 017: undefined symbol "dini_Int"


    was meinst du mit 2 ??
    meinst du ich muss die /login und /register befehle unter OnPlayerComm ... schreiben?

  • Nein, sie müssen darüber sein.
    Da der Server den Code von oben nach unten arbeitet, oderso. Wenn dcmd dann unter OnPlayerCommandText ist, dann findet dcmd(); den dcmd_cmd(..) nicht.
    Habs schonmal ausprobiert...mach die dcmd über OnPlayerCommandText ;D

  • Wo du die dcmd Befehle hinmachst spielt keine Rolle, solange sie außerhalb eines publics sind. Mach dir keine Sorgen, das Script weis schon wo was steht, da du ja IN OnPlayerCommandText daruf hinweist, wie der Befehl heisst, wie lang er ist usw.


    Zitat

    Habs schonmal ausprobiert...mach die dcmd über OnPlayerCommandText ;D

    Wenn es bei dir nur oberhalb ging hattest du an anderer Stelle deines Scipts einen Fehler, bzw. hast im OnPlayerCommandText den Befehl falsch definiert ( dcmd(cmd,3,cmdtext); )
    Bei mir funktioniert auf jeden Fall ohn Probleme und meine stehn am Ende des Scripts...


    Zitat

    Hey also hab jet nur noch einen Error:


    C:\Dokumente und Einstellungen\Joker\Desktop\tpp.pwn(2434) : error 017: undefined symbol "dini_Int"


    was meinst du mit 2 ??


    Wo hab ich was von 2 erwähnt?
    Dein Error hat außerdem nicht mit deinem dcmd zu tun. Er liegt wie die Beschreibung schon sagt an "dini".