Was ist da falsch?

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
  • Was ist da falsch?


    ocmd:kick(playerid,params[])
    {
    new pID;
    if(isPlayerAnAdmin(playerid,1)) return SendClientMessage(playerid,0xE10000FF,"Du bist kein Admin/Rang zu niedrig!");
    new reason[64], string[64];
    if(sscanf(params,"us",pID,reason)) return SendClientMessage(playerid,Rot,"Nutze /kick [Playerid] [Grund]");
    format(string,sizeof(string),"AdmCmd: %s wurde von %s gekickt. Grund: %s.",PlayerName(pID),PlayerName(playerid),reason);
    SendClientMessageToAll(dunkelrot,string);
    Kick(pID);
    return 1;
    }


    Danke im Vorraus

  • Dann zeig uns mal dein stock isPlayerAnAdmin.


    Spare es dir, mach ein "!" vor isPlayerAnAdmin ...



    stock isPlayerAnAdmin(id, rang)
    {
    if(PlayerInfo[id][pAdmin] >= rang)return 1; //gibt 1 raus, wenn dein Adminlevel größer/gleich dem Gegebenen ist. (if(isPlayerAnAdmin(playerid, 1)) --> Wenn Adminlevel von playerid größer/gleich 1, dann SendClientMessage ...
    return 0;
    }

  • stock isPlayerAnAdmin(playerid,rang)
    {
    if(mysql_GetInt("accounts","Adminlevel","Name",SpielerInfo[playerid][pName])>=rang)return 1;
    #pragma unused playerid
    SavePlayer(playerid);
    return 0;
    }

  • ocmd:kick(playerid,params[])
    {
    new pID;
    if(!isPlayerAnAdmin(playerid,==0) return SendClientMessage(playerid,0xE10000FF,"Du bist kein Admin/Rang zu niedrig!");
    new reason[64], string[64];
    if(sscanf(params,"us",pID,reason)) return SendClientMessage(playerid,Rot,"Nutze /kick [Playerid] [Grund]");
    format(string,sizeof(string),"AdmCmd: %s wurde von %s gekickt. Grund: %s.",PlayerName(pID),PlayerName(playerid),reason);
    SendClientMessageToAll(dunkelrot,string);
    Kick(pID);
    return 1;
    }


    so würde ich das machen

    ↓Das ist der Youtube Channel von mir und meinen Kollegen↓



    Sa-Mp Server [Im Aufbau/Beta]
    128.65.216.200:7777

  • Danke Eliot es hat geklappt :D


    //edit noch ne frage


    Noch eine Frage:


    Was ist hier falsch?


    ocmd:ban(playerid,params[])
    {
    new pID;
    if(!isPlayerAnAdmin(playerid,2)) return SendClientMessage(playerid,Rot,"Du bist kein Admin/Rang zu niedrig!");
    new reason[16], string[64];
    if(sscanf(params,"us",pID,reason)) return SendClientMessage(playerid,Rot,"Nutze /ban [playerid] [Grund");
    //138format(string,sizeof(string),"AdmCmd: %s wurde von %s gebannt. Grund: %s",PlayerName(pID,PlayerName(playerid,reason);
    //140SendClientMessageToAll(dunkelrot,string);
    //141ban(pID);
    }


    Errors:


    C:\Users\kevin\Desktop\gserver\gamemodes\self.pwn(138) : warning 202: number of arguments does not match definition
    C:\Users\kevin\Desktop\gserver\gamemodes\self.pwn(138) : warning 202: number of arguments does not match definition
    C:\Users\kevin\Desktop\gserver\gamemodes\self.pwn(138) : error 001: expected token: ",", but found ";"
    C:\Users\kevin\Desktop\gserver\gamemodes\self.pwn(140) : error 017: undefined symbol "ban"
    C:\Users\kevin\Desktop\gserver\gamemodes\self.pwn(141) : warning 209: function "ocmd_ban" should return a value
    Pawn compiler 3.2.3664 Copyright (c) 1997-2006, ITB CompuPhase


    2 Errors.


    Einmal editiert, zuletzt von BalYouLps ()

  • Schwachsinn Elite ... Allein schon deshalb, dass da ein totaler Syntaxfehler drin ist kann das niemals klappen ^^


    Achja, btw: Kein Thema :D

  • do.de - Domain-Offensive - Domains für alle und zu super Preisen
  • Hallo


    Als Kleiner Hinweis:

    • Hier fehlen am Schluss 2 geschlossene Klammern
      format(string,sizeof(string),"AdmCmd: %s wurde von %s gebannt. Grund: %s",PlayerName(pID,PlayerName(playerid,reason);
    • string und reason haben die gleiche Grösse
    • Wenn Du sscanf2(.6) verwendest, also die Version mit Plugin und nicht als Code im Gamemode, muss bei einem String die Stringlänge angegeben werden, also zB:
    Code
    if(sscanf(params, "us[30]", id, randomstring)) ...


    Gruss Simon


  • Danke jetzt kommen diese Errors:


    C:\Users\kevin\Desktop\gserver\gamemodes\self.pwn(140) : error 017: undefined symbol "ban"
    C:\Users\kevin\Desktop\gserver\gamemodes\self.pwn(141) : warning 209: function "ocmd_ban" should return a value
    Pawn compiler 3.2.3664 Copyright (c) 1997-2006, ITB CompuPhase


    1 Error.

  • Hallo


    • Return Wert: Schau dir den Link ( [Include] OCMD ) mal an, dann siehste, dass ans Ende der Funktion eine return 1; gehört
    • Ban: Ich denke Du möchtest eher die Ban() oder BanEx() Funktion verwenden, siehe hier:


    http://wiki.sa-mp.com/wiki/Ban
    http://wiki.sa-mp.com/wiki/BanEx


    Gruss Simon