/giverank und /einladen Befehl..

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 Community,
    sitze grade an meinem Script und versuche vergeblich einen "/giverank" und einen "/einladen" Befehl zu scripten.. Denn immer wenn ich z. B. im LSPD bin, kann ich andere in z. B. Grove Street einladen.
    /giverank genau so.


    Nun wollte ich fragen ob mir jemand so einen Befehl in OCMD Format scripten kann.


    Informationen:
    Ich arbeite mit PVars.
    if(!isPlayerInFrakt(playerid,1)) // Fraktions Abfrage



    Mfg

    Mit unfreundlichen Grüßen
    Buschmensch

  • Diese Befehle habe ich bereits gelöscht.


    Hier ist der /makeleader Befehl
    ocmd:makeleader(playerid,params[])
    {
    new userid, frak, string[128], fraktname[20];
    if(!isPlayerAnAdmin(playerid,1337))return SendClientMessage(playerid,Rot,"Du bist kein Administrator Rank 1339.");
    if(sscanf(params,"ud",userid,frak))return SendClientMessage(playerid,Hellblau,"Benutzung: /makeleader [ID] [Fraktion(1-20)]");
    if(frak < 0 || frak > 20)return SendClientMessage(playerid,Orange,"Gib bitte eine gültige Fraktion ein.");
    SetPVarInt(userid,"Leader",frak);
    switch(GetPVarInt(playerid,"Fraktion"))
    {
    case 0:{fraktname="Bürger";}
    case 1:{fraktname=fraktname1;}
    case 2:{fraktname=fraktname2;}
    case 3:{fraktname=fraktname3;}
    case 4:{fraktname=fraktname4;}
    case 5:{fraktname=fraktname5;}
    case 6:{fraktname=fraktname6;}
    case 7:{fraktname=fraktname7;}
    case 8:{fraktname=fraktname8;}
    case 9:{fraktname=fraktname9;}
    case 10:{fraktname=fraktname10;}
    case 11:{fraktname=fraktname11;}
    case 12:{fraktname=fraktname12;}
    case 13:{fraktname=fraktname13;}
    case 14:{fraktname=fraktname14;}
    case 15:{fraktname=fraktname15;}
    case 16:{fraktname=fraktname16;}
    case 17:{fraktname=fraktname17;}
    case 18:{fraktname=fraktname18;}
    case 19:{fraktname=fraktname19;}
    case 20:{fraktname=fraktname20;}
    }
    format(string,sizeof(string),"Administrator %s hat dich zum Leader der Fraktion %s ernannt.",SpielerName(playerid),fraktname);
    SendClientMessage(userid,Gruen,string);
    SendClientMessage(userid,Weiß,"__________________________________________________________________");
    SendClientMessage(userid,Gruen,"Du hast nun Pflicht als Leader mindestens 2 Wochen in dieser Fraktion zu bleiben.");
    SendClientMessage(userid,Gruen,"Solltest du diese Regel verstoßen, wird es eine Frak Sperre nachsichziehen.");
    SendClientMessage(userid,Gruen,"Die Leaderhilfe und die Frakhilfe kannst du mit /leaderhelp und /frakhelp aufrufen.");
    SendClientMessage(userid,Rosa,"Viel Spaß & Viel Glück wünscht dir die [NYCR] - Projektleitung.");
    format(string,sizeof(string),"Du hast den Spieler %s zu einem Leader der Fraktion %s ernannt.",SpielerName(userid),fraktname);
    return 1;
    }

    Mit unfreundlichen Grüßen
    Buschmensch

  • ocmd:makeleader(playerid,params[])
    {
    new userid, frak, string[128], fraktname[20];
    if(!isPlayerAnAdmin(playerid,1337))return SendClientMessage(playerid,Rot,"Du bist kein Administrator Rank 1339.");
    if(sscanf(params,"ud",userid,frak))return SendClientMessage(playerid,Hellblau,"Benutzung: /makeleader [ID] [Fraktion(1-20)]");
    if(frak < 0 || frak > 20)return SendClientMessage(playerid,Orange,"Gib bitte eine gültige Fraktion ein.");
    SetPVarInt(userid,"Leader",frak);
    switch(GetPVarInt(playerid,"Fraktion"))
    {
    case 0:{format(fraktname,20,"Bürger");}
    case 1:{format(fraktname,20,"%s",fraktname1);}
    case 2:{format(fraktname,20,"%s",fraktname2);}
    case 3:{format(fraktname,20,"%s",fraktname3);}
    case 4:{format(fraktname,20,"%s",fraktname4);}
    case 5:{format(fraktname,20,"%s",fraktname5);}
    case 6:{format(fraktname,20,"%s",fraktname6);}
    case 7:{format(fraktname,20,"%s",fraktname7);}
    case 8:{format(fraktname,20,"%s",fraktname8);}
    case 9:{format(fraktname,20,"%s",fraktname9);}
    case 10:{format(fraktname,20,"%s",fraktname10);}
    case 11:{format(fraktname,20,"%s",fraktname11);}
    case 12:{format(fraktname,20,"%s",fraktname12);}
    case 13:{format(fraktname,20,"%s",fraktname13);}
    case 14:{format(fraktname,20,"%s",fraktname14);}
    case 15:{format(fraktname,20,"%s",fraktname15);}
    case 16:{format(fraktname,20,"%s",fraktname16);}
    case 17:{format(fraktname,20,"%s",fraktname17);}
    case 18:{format(fraktname,20,"%s",fraktname18);}
    case 19:{format(fraktname,20,"%s",fraktname19);}
    case 20:{format(fraktname,20,"%s",fraktname20);}
    }
    format(string,sizeof(string),"Administrator %s hat dich zum Leader der Fraktion %s ernannt.",SpielerName(playerid),fraktname);
    SendClientMessage(userid,Gruen,string);
    SendClientMessage(userid,Weiß,"__________________________________________________________________");
    SendClientMessage(userid,Gruen,"Du hast nun Pflicht als Leader mindestens 2 Wochen in dieser Fraktion zu bleiben.");
    SendClientMessage(userid,Gruen,"Solltest du diese Regel verstoßen, wird es eine Frak Sperre nachsichziehen.");
    SendClientMessage(userid,Gruen,"Die Leaderhilfe und die Frakhilfe kannst du mit /leaderhelp und /frakhelp aufrufen.");
    SendClientMessage(userid,Rosa,"Viel Spaß & Viel Glück wünscht dir die [NYCR] - Projektleitung.");
    format(string,sizeof(string),"Du hast den Spieler %s zu einem Leader der Fraktion %s ernannt.",SpielerName(userid),fraktname);
    SendClientMessage(playerid,Gruen,string);
    return 1;
    }


    Habe bisschen was geändert.
    Was genau ging noch nicht?

  • dcmd_giverank(playerid,params[])
    {
    if(GetPVarInt(playerid,"Leader") == 0) return SendClientMessage(playerid,COLOR,"Du bist kein Leader!");
    new _pid,_r,_s[128];
    if(sscanf(params,"dd",_pid,_r)) return SendClientMessage(playerid,COLOR,"Benutze: /giverank [PlayerID][RankID]");
    if(!IsPlayerConnecte(_pid)) return SendClientMessage(playerid,COLOR,"Spieler ist nicht online!");
    if(GetPVarInt(playerid,"FraktionLeader") != GetPVarInt(_pid,"Fraktion")) return SendClientMessage(playerid,COLOR,"Dieser Spieler ist nicht in deiner Fraktion");
    else
    {
    SetPVarInt(playerid,"FraktionRang",_r);
    format(_s,sizeof(_s),"Du hast %s Rank %d gegeben!",PlayerName(_pid),_r);
    SendClientMessage(playerid,COLOR,_s);
    format(_s,sizeof(_s),"Du hast von %s den Rank %d bekommen",PlayerName(playerid),_r);
    SendClientMessage(_pid,_s);
    }
    return 1;
    }


    Ohne gewähr alles ohne compiled geschrieben.

  • ocmd:giverank(playerid,params[])
    {
    new gID,rank;
    if(sscanf(params,"ud",gID,rank))return SendClientMessage(playerid,FARBE,"USAGE: /giverank [id] [rank]");


    new s1[128],s2[128];
    format(s1,sizeof(s1),"Du hast %s(ID:%d) den Rank %d gegeben",SpielerName(gID),gID,rank);
    format(s2,sizeof(s2),"%s(ID:%d) hat dir den Rank %d gegeben",SpielerName(playerid),playerid,rank);


    SendClientMessage(gID,FARBE,s1);
    SendClientMessage(playerid,FARBE,s2);


    // Hier dein Rank Command z.b mit Enums
    EnumName[gID] [pRank] = rank;


    // oder PVars,obwohl ich mich damit nicht richtig auskenne
    SetPVarInt(gID,"Rank",rank);
    }


    PS: strcmp ist besser :P