Problem mit DCMD

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 Breadfisher,


    ich hoffe ihr könnt mir bei folgendem Problem helfen ^^Ich arbeite grade an meinem Login+Admin System für meinen Server.Ich habe es jetzt mal versucht einen simplen Kick Command zu machen aber es kommt ein Error hier mal der Script + Error:



    der error:
    C:\Dokumente und Einstellungen\Bjoern\Eigene Dateien\logadm.pwn(307) : error 033: array must be indexed (variable "admin")


    hier ist er als new erstellt :


    new admin[MAX_PLAYERS];




    Eigener DM/Stunt Server[99% Selfmade] zu 77% fertig :D

  • du kannst wie erwähnt sscanf verwenden


    sscanf(params,"d",variable);


    Diese Funktion sucht die nächste Zahl & kopiert diese in eine Variable & das geht immer so weiter


    sscanf(params,"ds",variable,textvar);


    Erst Zahl dann String = Text


    sprich es trennt das zeug & kopiert es in einzelne Variablen so das du es mit einem festen Wert verwenden kannst zudem würde ich dir zcmd empfehlen, ist um einiges schneller als dcmd zudem
    auch viel leichter in der Verwendung

    Mfg. BlackFoX_UD_ alias [BFX]Explosion


  • Für zcmd gibt es eine Erklärung im Englischen Forum vom Macher jedoch nichts Deutsches aber ich denke ich werde gleich eines verfassen ist ja nicht besonders schwer
    & der Umstieg von zcmd auf dcmd ist auch keine Große Sache

    Mfg. BlackFoX_UD_ alias [BFX]Explosion


  • aso blackfox^^ähm wär doch trotzdemm jmd so nett meine frage von ganz oben zu beantworten da ich vorerst nur bei dcmd und sscanf bleiben möchte und zcmd später vllt noch dazu lernen^^




    Eigener DM/Stunt Server[99% Selfmade] zu 77% fertig :D

  • entweder ich bin blind oder mein hirn packt grade keine leistung^^wie sscanf funktioniert weiß ich ja ^^aber wie soll mir das erklären wie ich den error bei dcmd wegkrieg?




    Eigener DM/Stunt Server[99% Selfmade] zu 77% fertig :D

  • Du musst einen Zugriffs Index festlegen so das der Code weißt auf welchen er Zugreifen soll sprich in einem Datenfeld ist eine Nummer,Zeichen oder Hexwert was auch immer gespeichert
    aber der Code weiß nicht wo er drauf Zugreifen soll sprich aus welchen Datenfeld abgerufen werden soll


    admin[playerid] , playerid = eine Nummer = der Index
    admin = die Variable mit mehren Feldern = MAX_PLAYERS ( Beispiel ) = 500 Maximale Felder

    Mfg. BlackFoX_UD_ alias [BFX]Explosion


  • dcmd_kick(playerid,params[])
    {
    if(admin[playerid] < 1)return SendClientMessage(playerid,0x0000ff8e,"Du bist kein Admin");
    if(!strlen(params))return SendClientMessage(playerid,0x0000ff8e,"/kick [ID]");
    new pID = strval(params);
    if(!IsPlayerConnected(pID))return SendClientMessage(playerid,0x0000ff8e,"Kein Spieler mit angegebener ID Online");
    SendClientMessage(playerid,0x0000ff8e,"Erfolgreich Spieler vom Server gekickt!");
    new name[MAX_PLAYER_NAME],string[128];
    GetPlayerName(pID,name, sizeof name);
    format(string,sizeof string,"INFO: %s wurde vom Server gekickt",name);
    SendClientMessageToAll(0xff0000ff,string);
    Kick(pID);
    return 1;
    }


    Bisher habe ich keinen Code entdeckt der diesen Fehler auslösen könnte

    Mfg. BlackFoX_UD_ alias [BFX]Explosion


  • Such mal nach der Fehler Linie, eventuell liegt es an einem anderen Code Abschnitt bzw. such mal nach der Fehler Linie


    C:\Dokumente und Einstellungen\Bjoern\Eigene Dateien\logadm.pwn(307) : error 033: array must be indexed (variable "admin")

    Mfg. BlackFoX_UD_ alias [BFX]Explosion


  • ich bin sowas von behindert xD der fehler liegt nich am command^^ das hab ich wahrscheinlich einfach so vermutet weil ich das als letztes reingesetzt hab^^aber der fehler liegt an einem abschnitt vom login system-.-ihr dürft mich mit gemüse bewerfen-.-


    Spieler[playerid][admin] = dini_Int(accFormat,"admin");




    Eigener DM/Stunt Server[99% Selfmade] zu 77% fertig :D