Probleme mit Komandos

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
  • ich habe folgende probleme


    1 Problem
    wenn ich jemand kicken will "/kick ID" egal welche ID ich nehme er wird nicht gekickt sonder ich


    if(strcmp(strget(cmdtext,0),"/kick",true)==0)
    {
    if(!strlen(strget(cmdtext,1))) return SendClientMessage(playerid,BLAU,"Benutze /kick [ID]");
    SendClientMessage(playerid,ROT,"Du wurdest gekickt");
    Kick(playerid);
    return 1;
    }
    2 Problem
    fast das selbe nur bei "/ban id"


    if(strcmp(strget(cmdtext,0),"/ban",true)==0)
    {
    if(!strlen(strget(cmdtext,1))) return SendClientMessage(playerid,BLAU,"Benutze /ban [ID]");
    SendClientMessage(playerid,ROT,"Du wurdest gebant");
    Ban(playerid);
    return 1;
    }


    3 Problem
    wenn ich jemanden geld geben will bekommt er kein geld sonder ich "/money ID Geld"


    if(strcmp(strget(cmdtext,0),"/money",true)==0)
    {
    if(!strlen(strget(cmdtext,2))) return SendClientMessage(playerid,BLAU,"Benutze /money [ID] [Geld]");
    {
    new zielname[512];
    new playername[512];
    new geld=strval(strget(cmdtext,2));
    new ziel=strval(strget(cmdtext,1));
    new msg[512];
    new msg2[512];


    GivePlayerMoney(playerid,geld);


    GetPlayerName(ziel,zielname,sizeof(zielname));
    GetPlayerName(playerid,playername,sizeof(playername));


    format(msg,sizeof(msg),"Du hast %s $% gegeben",zielname,geld);
    format(msg2,sizeof(msg2),"Du hast von %s $% bekommen",playername,geld);


    SendClientMessage(ziel,BLAU,msg2);
    SendClientMessage(playerid,BLAU,msg);
    return 1;
    }
    }
    return 0;

  • ^^


    // ===== [Kick] =====
    if(strcmp(cmd, "/kick", true) == 0)
    {
    if(IsPlayerConnected(playerid))
    {
    tmp = strtok(cmdtext, idx);
    if(!strlen(tmp))
    {
    SendClientMessage(playerid, Weiß, "Benutze: /kick [ID] [Grund]");
    return 1;
    }
    new id3 = strval(strget(cmdtext,1));
    if (Spieler[playerid][admin] >= 1)
    {
    if(IsPlayerConnected(id3))
    {
    if(id3 != INVALID_PLAYER_ID)
    {
    GetPlayerName(id3, giveplayer, sizeof(giveplayer));
    GetPlayerName(playerid, sendername, sizeof(sendername));
    new length = strlen(cmdtext);
    while ((idx < length) && (cmdtext[idx] <= ' '))
    {
    idx++;
    }
    new offset = idx;
    new result[64];
    while ((idx < length) && ((idx - offset) < (sizeof(result) - 1)))
    {
    result[idx - offset] = cmdtext[idx];
    idx++;
    }
    result[idx - offset] = EOS;
    if(!strlen(result))
    {
    SendClientMessage(playerid, Weiß, "Benutze: /kick [ID] [Grund]");
    return 1;
    }


    format(string, sizeof(string), "%s wurde von %s gekickt. Grund: %s",giveplayer,sendername, (result));
    SendClientMessageToAll(0xFF0005FF, string);
    Kick(id3);
    return 1;
    }
    }
    }
    else
    {
    format(string, sizeof(string), " %d is not Online.", giveplayerid);
    SendClientMessage(playerid, Weiß, string);
    }
    }
    return 1;
    }


    Du musst schon machen das er denn User kickt playerid = das er denn kickt der denn befehl macht :D
    und dann noch das das nur admins machen dürfen gründe usw...

  • if(strcmp(cmd, "/gebegeld", true) == 0)
    {
    if(IsPlayerConnected(playerid))
    {
    tmp = strtok(cmdtext, idx);
    if(!strlen(tmp))
    {
    SendClientMessage(playerid, Weiß, "Benutze: /gebegeld [ID] [Summe]");
    return 1;
    }
    new playa;
    new money;
    playa = strval(tmp);
    tmp = strtok(cmdtext, idx);
    money = strval(tmp);
    if (Spieler[playerid][admin] >= 5)
    {
    if(IsPlayerConnected(playa))
    {
    if(playa != INVALID_PLAYER_ID)
    {
    GivePlayerMoney(playa, money);
    }
    }
    }
    }
    return 1;
    }


    Wenn du beim Geldgeben noch nen text willst schreib mir ne Pn :D