Was ist da falsch? =O (/makeleader)

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 meinen /makeleader Befehl etwas verbessert, aber ich bekomme einen Warn den ich nicht verstehe und ihn deswegen auch nicht lösen kann.
    Vielleicht könnt ihr mir weiterhelfen.



    /makeleader:
    ocmd:makeleader(playerid,params[])
    {
    if(!isPlayerAnAdmin(playerid,1337))
    {
    SendClientMessage(playerid,Rot,"============ERROR===========");
    SendClientMessage(playerid,Rot,"Du bist kein Admin Rank 1337!");
    SendClientMessage(playerid,Rot,"============================");
    }
    new pID, frakktion, fraktname[64];
    if(sscanf(params,"ui",pID,frakktion))return SendClientMessage(playerid,Hellblau,"/makeleader [ID] [Fraktion]");
    if(frakktion<1||frakktion>24)return SendClientMessage(playerid,Rot,"Bitte gebe eine gültige Frakktions ID ein, es gibt nur 25 Frakktionen!");
    SetPVarInt(pID,"Fraktion",frakktion);
    SpielerSpeichern(pID);
    SendClientMessage(pID,Tuerkis,"Du wurdest von %s zum Leader der Frakktion %s gemacht!",SpielerName(playerid),fraktname);// Error Zeile
    return 1;
    }



    Errors:
    C:\Users\Richard\Desktop\NYCR\gamemodes\NYCR.pwn(2022) : warning 202: number of arguments does not match definition
    C:\Users\Richard\Desktop\NYCR\gamemodes\NYCR.pwn(2022) : warning 202: number of arguments does not match definition
    Pawn compiler 3.2.3664 Copyright (c) 1997-2006, ITB CompuPhase



    2 Warnings.


    Mfg

    Mit unfreundlichen Grüßen
    Buschmensch

  • Ich glaube das hier geht nicht :SetPVarInt(pID,"Fraktion",frakktion);

    Wenn dann SetPVarString oder anstatt frakktion ne 1


    Außerdem musst du die Nachricht formatieren, so:


    new text[128]
    format(text,sizeof(text),"Dein Text",SpielerName(playerid),fraktname);
    /pwn]
    Und dann
    [pwn]SendClientMessage(playerid,Farbe,text);

  • // edit. vllt hilft dir ja das hier. so sieht mein makeleader befehl aus^^


    dcmd_setleader(playerid,params[])
    {
    if(!IsPlayerAnAdmin(playerid,5))return SendClientMessage(playerid,COLOR_RED,"* Du bist kein Super-Admin.");
    {
    new pID,fID;
    new text[128],text2[128];
    new GivePlayer[MAX_PLAYER_NAME];
    new ThePlayer[MAX_PLAYER_NAME];
    if(sscanf(params,"ui",pID,fID))return SendClientMessage(playerid,COLOR_WHITE,"Benutze: /setleader [ID] [FraktionsID]");
    GetPlayerName(pID,GivePlayer,sizeof(GivePlayer));
    GetPlayerName(playerid,ThePlayer,sizeof(ThePlayer));
    if(!IsPlayerConnected(pID))return SendClientMessage(playerid,COLOR_RED,"* Es ist kein Spieler mit der angegebenen ID online.");
    {
    SetPVarInt(pID,"Fraktion",fID);
    SetPVarInt(pID,"Leader",1);
    SetPVarInt(pID,"FraktRang",6);
    SpielerSpeichern(pID);
    format(text,sizeof(text),"%s hat dir Leaderrechte gegeben. (Fraktion:%i)",ThePlayer,fID);
    format(text2,sizeof(text2),"Du hast %s Leaderrechte gegeben. (Fraktion:%i)",GivePlayer,fID);
    SendClientMessage(pID,COLOR_LBLUE,text);
    SendClientMessage(playerid,COLOR_LBLUE,text2);
    SpawnPlayer(pID);
    }
    }
    return 1;
    }


    MfG
    Cr4sh

    Mit freundlichen Grüßen,
    Cr4sh


  • ocmd:makeleader(playerid,params[])
    {
    if(!isPlayerAnAdmin(playerid,1337))
    {
    SendClientMessage(playerid,Rot,"============ERROR===========");
    SendClientMessage(playerid,Rot,"Du bist kein Admin Rank 1337!");
    SendClientMessage(playerid,Rot,"============================");
    }
    new pID, frakktion, fraktname[64], text[128];
    if(sscanf(params,"ui",pID,frakktion))return SendClientMessage(playerid,Hellblau,"/makeleader [ID] [Fraktion]");
    if(frakktion<1||frakktion>24)return SendClientMessage(playerid,Rot,"Bitte gebe eine gültige Frakktions ID ein, es gibt nur 25 Frakktionen!");
    SetPVarInt(pID,"Fraktion",frakktion);
    SpielerSpeichern(pID);
    format(text,sizeof(text),"{0x00FFB4FF}%s hat dir die Leader Rechte der Frakktion %s gegeben!\n{0xFEFEFEFF}Du hast nun 1 Woche PFLICHT in dieser Frakktion Leader zu sein.\nFalls du dies missachtest,\nbekommst du eine Frakktionssperre!\nViel Spaß wünscht dir das NYCR-Team!",SpielerName(playerid),fraktname);
    SendClientMessage(pID,0x00FFBEFF,text);
    return 1;
    }


    Habe das jetzt so gemacht,
    ist das richtig?

    Mit unfreundlichen Grüßen
    Buschmensch