/setfraktion?

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 ihr lieben Brotfische ;)


    Ich habe die fraktionen mit gTeam geschrieben und so geschrieben dass beim start die Fraktion per Skinauswahl gegeben wird..
    Wie kann ich nun scripten dass die Fraktion per adminbefehl vergeben wird?


    Mit freundlichen Grüßen

    Mit freundlichen Grüßen
    Siepac

  • warum denn nicht? :D
    Teams kommen evnt später ner :D


    ich habe den befehl nun etwas umgeschmückt


    CMD:setfraktion(playerid,params[])
    {
    if(!IstSpielerAdmin(playerid,2))return SendClientMessage(playerid,Rot,"Du bist kein Admin");
    {
    new pID,frak;
    if(!sscanf(params,"ui",pID,frak))return SCM(playerid,Blau,"Benutze: /setfraktion [playerid] [Fraktion]!");
    {
    sSpieler[pID][Fraktion] = frak;
    SCM(playerid,Blau,"Du wurdest einer Fraktion zugewiesen!");
    }
    }
    return 1;
    }


    Müsste nicht bei frak eine zahl hinein?

    Mit freundlichen Grüßen
    Siepac


  • CMD:setfraktion(playerid,params[])
    {
    if(IstSpielerAdmin(playerid,2))
    {
    new pID,frak;
    if(!sscanf(params,"ui",pID,frak))
    {
    sSpieler[pID][Fraktion] = frak;
    SCM(playerid,Blau,"Du wurdest einer Fraktion zugewiesen!");
    }
    else
    {
    SCM(playerid,Blau,"Benutze: /setfraktion [playerid] [Fraktion]!");
    }
    }
    else
    {
    SendClientMessage(playerid,Rot,"Du bist kein Admin");
    }
    return 1;
    }


    So musst du es machen, oder du lässt deins, machst aber die Klammern weg.


    In frak ist der zweite Parameter des Befehls.
    /setfraktion 2 5


    Setzt den Spieler mit der ID 2 in die Fraktion 5.

  • es gibt ein problem..


    und zwar wenn ich den befehl eingebe setzt es mich ja sofort in eine frak
    doch ich möchte ja dass m an nach ID auswehlen kann 0,1,2,3 usw
    so dass ich /setfraktion 0 3 eingeben müsste


    CMD:setfraktion(playerid,params[])
    {
    if(!IstSpielerAdmin(playerid,2))return SendClientMessage(playerid,Rot,"Du bist kein Admin");
    new pID,frak;
    if(!sscanf(params,"ui",pID,frak))return SCM(playerid,Blau,"Benutze: /setfraktion [playerid] [Fraktion]!");
    sSpieler[pID][Fraktion] = frak;
    SCM(playerid,Blau,"Du wurdest einer Fraktion zugewiesen!");
    return 1;
    }

    Mit freundlichen Grüßen
    Siepac

  • So funktioniert es doch.



    CMD:setfraktion(playerid,params[])
    {
    if(!IstSpielerAdmin(playerid,2))return SendClientMessage(playerid,Rot,"Du bist kein Admin");
    new pID,frak;
    if(sscanf(params,"ui",pID,frak))return SCM(playerid,Blau,"Benutze: /setfraktion [playerid] [Fraktion]!");
    sSpieler[pID][Fraktion] = frak;
    SCM(playerid,Blau,"Du wurdest einer Fraktion zugewiesen!");
    return 1;
    }


    €: Jo da ist n Fehler in deinem Befehl

  • nein leider nicht


    wenn ich den befehl ohne irgendetwas also /setfraktion sollte normal die SCM kommen gebe /setfraktion [pID] [Fraktion] kommen
    doch es kommt du wurdest einer Fraktion zugewiesen..


    und wenn ich eingebe /setfraktion 0 2 zB
    kommt Benutze: /setfraktion [playerid] [Fraktion]


    #edit
    ahh das !..
    Jetzt funktioniert er eigentlich gut doch es speichert es nicht in der Spielerdatei unter Fraktion..

    Mit freundlichen Grüßen
    Siepac

  • Hast du deinen Befehl durch meinen verbesserten schon ersetzt?



    CMD:setfraktion(playerid,params[])
    {
    if(!IstSpielerAdmin(playerid,2))return SendClientMessage(playerid,Rot,"Du bist kein Admin");
    new pID,frak;
    if(sscanf(params,"ui",pID,frak))return SCM(playerid,Blau,"Benutze: /setfraktion [playerid] [Fraktion]!");
    sSpieler[pID][Fraktion] = frak;
    SCM(playerid,Blau,"Du wurdest einer Fraktion zugewiesen!");
    return 1;
    }