Befehl fehler

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
  • Hey,


    nun ich nutze diesen befehl


    ocmd:makeleader (playerid,params[])
    {
    new TargetID, FrakID,FrakName[20], MSG[80], AdminMSG[100];
    if(!isPlayerAdmin(playerid,10))return SendClientMessage(playerid, COLOR_RED, "Du bist kein Vorstandsmitglied !");
    if(sscanf(params,"ui",TargetID, FrakID))return SendClientMessage(playerid, COLOR_GRAY, "Fehler: /makeleader [Username/ID] [FraktionsID]");
    switch(GetPVarInt(TargetID,SpielerInfo[TargetID][pLeader]))
    {
    case 0: (FrakName="None");
    case 1: (FrakName="Test");
    }
    SetPVarInt(TargetID,SpielerInfo[TargetID][pLeader],FrakID);
    format(MSG,sizeof(MSG),"Du wurdest von %s geleadert ! Fraktion: %s " , SpielerName(playerid),FrakName);
    SendClientMessage(TargetID, COLOR_BLUE, MSG);
    format(AdminMSG,sizeof(AdminMSG),"SERVER: %s wurde geleadert ! Fraktion: %s ", SpielerName (TargetID), FrakName);
    for(new i=0; i<GetMaxPlayers(); i++)
    {
    if(isPlayerAdmin(i,1))
    {
    SendClientMessage(i,COLOR_RED,AdminMSG);
    }
    }
    return 1;
    }


    Alles gut, kein Error, doch ingame wenn ich mich z.B. /makeleader iAIR 1 mache, steht trztodem None bei Fraktion.


    Gruß

  • Na guck mal,
    GetPVarInt
    erfordert die spielerid und einen "Varnamen"


    Aber wenn SpielerInfo[TargetID][pLeader] in deinem Fall ein String wäre,
    wäre eine Abfrage bzw eine switch case abfrage total nutz- sinnlos da du den Namen einfach in der Variable speichern könntest.
    Somit brauchst du kein GetPVar wenn du bereits eine Variable hast in der du die Fraktion, oder was auch immer, speicherst

    "Bevor ich mir Informationen aus der "Bild" hole,
    werde ich anfangen, Wahlergebnisse danach vorauszusagen,
    neben welchen Busch unsere Katze gepinkelt hat."

    Margarete Stokowski

  • Alles versucht was in meiner Macht steht,


    geht trotzdem nicht, könnte mir jmd. zeigen wie der befehl lauten würde ?

  • switch(SpielerInfo[playerid][pLeader])
    {
    case 0: (FrakName="None");
    case 1: (FrakName="Test");
    }
    SpielerInfo[TargetID][pLeader] = SpielerINfo[playerid][pLeader];


    So müsste das richtig sein ;)

    "Bevor ich mir Informationen aus der "Bild" hole,
    werde ich anfangen, Wahlergebnisse danach vorauszusagen,
    neben welchen Busch unsere Katze gepinkelt hat."

    Margarete Stokowski

  • klappt trotzdem nicht, egal ob ich mich jetzt zur frraktion 1 o. 0 leadere,


    steht immer da Fraktion: None

  • switch(FrakID)
    {
    case 0: (FrakName="None");
    case 1: (FrakName="Test");
    }
    SpielerInfo[TargetID][pLeader] = FrakID;
    Und so?

    "Bevor ich mir Informationen aus der "Bild" hole,
    werde ich anfangen, Wahlergebnisse danach vorauszusagen,
    neben welchen Busch unsere Katze gepinkelt hat."

    Margarete Stokowski

  • ocmd:makeleader (playerid,params[])
    {
    new TargetID, FrakID,FrakName[20], MSG[80], AdminMSG[100];
    if(!isPlayerAdmin(playerid,10))return SendClientMessage(playerid, COLOR_RED, "Du bist kein Vorstandsmitglied !");
    if(sscanf(params,"ui",TargetID, FrakID))return SendClientMessage(playerid, COLOR_GRAY, "Fehler: /makeleader [Username/ID] [FraktionsID]");
    switch(FrakID)
    {
    case 0: (FrakName="None");
    case 1: (FrakName="Test");
    }
    SpielerInfo[TargetID][pLeader] = FrakID;
    format(MSG,sizeof(MSG),"Du wurdest von %s geleadert ! Fraktion: %s " , SpielerName(playerid),FrakName);
    SendClientMessage(TargetID, COLOR_BLUE, MSG);
    format(AdminMSG,sizeof(AdminMSG),"SERVER: %s wurde geleadert ! Fraktion: %s ", SpielerName (TargetID), FrakName);
    for(new i=0; i<GetMaxPlayers(); i++)
    {
    if(isPlayerAdmin(i,1))
    {
    SendClientMessage(i,COLOR_RED,AdminMSG);
    }
    }
    return 1;
    }


    Hier der gesamte befehl, aber klappt trotzdem noch nicht :(


    Vllt. hast noch paar Tipps ;D

  • Selbes problem.


    Noch paar Möglichkeiten ?


    Hier der befehl:


    ocmd:makeleader (playerid,params[])
    {
    new TargetID, FrakID,FrakName[20], MSG[80], AdminMSG[100];
    if(!isPlayerAdmin(playerid,10))return SendClientMessage(playerid, COLOR_RED, "Du bist kein Vorstandsmitglied !");
    if(sscanf(params,"ui",TargetID, FrakID))return SendClientMessage(playerid, COLOR_GRAY, "Fehler: /makeleader [Username/ID] [FraktionsID]");
    switch(FrakID)
    {
    case 0: (FrakName="None");
    case 1: (FrakName="Test");
    }
    SpielerInfo[TargetID][pLeader] = FrakID;
    format(MSG,sizeof(MSG),"Du wurdest von %s geleadert ! Fraktion: %s " , SpielerName(playerid),FrakName);
    SendClientMessage(TargetID, COLOR_BLUE, MSG);
    format(AdminMSG,sizeof(AdminMSG),"SERVER: %s wurde geleadert ! Fraktion: %s ", SpielerName (TargetID), FrakName);
    for(new i=0; i<GetMaxPlayers(); i++)
    {
    if(isPlayerAdmin(i,1))
    {
    SendClientMessage(i,COLOR_RED,AdminMSG);
    }
    }
    return 1;
    }


    ein kleines nebenproblem, ich kann nicht /makeleader iAIR [FraktionsID] machen,


    sondern muss immer meine ID anstatt meinen Namen eingeben ;(


    Gruß

  • versuch mal so
    ocmd:makeleader (playerid,params[])
    {
    new TargetID, FrakID,FrakName[20], MSG[80], AdminMSG[100];
    if(!isPlayerAdmin(playerid,10))return SendClientMessage(playerid, COLOR_RED, "Du bist kein Vorstandsmitglied !");
    if(sscanf(params,"ui",TargetID, FrakID))return SendClientMessage(playerid, COLOR_GRAY, "Fehler: /makeleader [Username/ID] [FraktionsID]");
    switch(GetPVarInt(playerid,"Deine GetPVarInt"))
    {
    case 0:{Leader="Arbeitslos";}
    case 1:{Leader="Polizihst";}
    }
    format(MSG,sizeof(MSG),"Du wurdest von %s geleadert ! Fraktion: %s " , SpielerName(playerid),FrakName);
    SendClientMessage(TargetID, COLOR_BLUE, MSG);
    format(AdminMSG,sizeof(AdminMSG),"SERVER: %s wurde geleadert ! Fraktion: %s ", SpielerName (TargetID), FrakName);
    for(new i=0; i<GetMaxPlayers(); i++)
    {
    if(isPlayerAdmin(i,1))
    {
    SendClientMessage(i,COLOR_RED,AdminMSG);
    }
    }
    return 1;
    }

  • was gibst du ingame ein?


    //Edit


    Versuch mall mein Befehl
    ocmd:makeleader(playerid,params[])
    {
    if(isPlayerAdmin(playerid,10))
    {
    new pID,frak;
    new String[128];
    new String2[128];
    new Leader[64];
    if(sscanf(params,"ui",pID,frak))return SendClientMessage(playerid,ROT,"Benutez /makeleader [ID] [fraktionsID]");
    {
    switch(GetPVarInt(playerid,"Fraktion"))
    {
    case 0:{Leader="Arbeitslos";}
    case 1:{Leader="Polizihst";}
    case 2:{Leader="Retunngsanitaeter";}
    case 3:{Leader="Ordnungsamt";}
    case 4:{Leader="Feuerwehr";}
    }
    format(String,sizeof(String),"Du hast %s in der Fraktion: %s zum Chef gemacht.",SpielerName(pID),Leader);
    format(String2,sizeof(String2),"%s hat dich zum Chef der Fraktion: %s ernant",SpielerName(playerid),Leader);
    SetPVarInt(pID,"Fraktion",frak);
    SendClientMessage(playerid,BLAU,String);
    SendClientMessage(pID,BLAU,String2);
    }
    }
    else
    {
    SendClientMessage(playerid,ROT,"Du Bist nicht Berechtigt den Befehl zu Nutzen!");
    }
    return 1;
    }

  • In meinen Augen macht
    switch(FraKID)
    mehr sinn als
    switch(GetPVarInt(playerid,"Deine GetPVarInt"))

    "Bevor ich mir Informationen aus der "Bild" hole,
    werde ich anfangen, Wahlergebnisse danach vorauszusagen,
    neben welchen Busch unsere Katze gepinkelt hat."

    Margarete Stokowski

  • Ja schon, aber die Warscheinlichkeit ist nicht sehr hoch das der Admin den Spieler in der gleichen Fraktion ist, in die der Spieler soll
    Bsp:
    Admin ist in Fraktion 0
    und der Spieler soll in die Fraktion 1


    dann wird immer Arbeitslos kommen

    "Bevor ich mir Informationen aus der "Bild" hole,
    werde ich anfangen, Wahlergebnisse danach vorauszusagen,
    neben welchen Busch unsere Katze gepinkelt hat."

    Margarete Stokowski

  • ich vertraue auch eher die version von blackace, aber leider funkioniert es nicht


    plz help

  • geht immer noch nicht, mit diesem befehl,


    keiner der sich mit ocmd auskennt da ? ;(