Invite System Fehler :S

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
  • Guten Tag,




    In meinem Invite System ist ein Fehler: ocmd:invite(playerid,params[])


    {


    if(!isPlayerInFrakt(playerid,"Fraktion"))return SendClientMessage(playerid,Grau,"Du bist nicht der Leader der Fraktion!");


    new pID;


    if(sscanf(params,"u",pID))return SendClientMessage(playerid,Grau,"Nutze: /invite [ID]");


    SetPVarInt(pID,"Fraktion");


    SetPVarInt(pID,"Fraktionsrang",1);


    return 1;


    }




    Error:[C:\Users\Alex\Desktop\Neuer Ordner\gamemodes\Selfmade.pwn(1208) : error 035: argument type mismatch (argument 2)
    C:\Users\Alex\Desktop\Neuer Ordner\gamemodes\Selfmade.pwn(1211) : warning 202: number of arguments does not match definition


    Pawn compiler 3.2.3664 Copyright (c) 1997-2006, ITB CompuPhase






    1 Error.


  • Du hast da:


    SetPVarInt(pID,"Fraktion");


    SetPVarInt hat aber 3 Argumente


    Argument 1 (in deinem Fall pID): Der Spieler
    Argument 2 (in deinem Fall "Fraktion"): Die Variable
    Argument 3 (in deinem Fall nicht vorhanden): Der Wert der in der Variable (Argument 2) gespeichert werden soll.


    In deinem Falle sollte da ne Fraktionsid hin o.ä


    SetPVarInt(pID,"Fraktion", GetPVarInt(playerid, "Fraktion"));


    Siehe http://wiki.sa-mp.com/wiki/SetPVarInt

    Wer ist der Mensch hinter der Uniform? Ist euch das bekannt?
    Es ist der selbe der noch eben in Zivil neben euch stand.
    Warum wird er gehasst und so selten respektiert?
    Warum ist er derjenige der seinen Hals für euch riskiert?
    Trägt der Bulle eine Weste, das hat er früher nie gemacht,
    die Zeiten haben sich geändert und jeder Dienst ist ein Kampf!
    Warum gibt’s das SEK und warum sind sie so brutal?
    Und wieso hat wieder einer mit seinem Leben bezahlt?

  • Ich habe es doch bei Laden und Speichern Account


    stock LoadAccount(playerid)
    {
    new Spielerdatei[64];
    new name[MAX_PLAYER_NAME];
    GetPlayerName(playerid,name,sizeof(name));
    format(Spielerdatei,sizeof(Spielerdatei),"/Accounts/%s.txt",name);
    SetPlayerScore(playerid,dini_Int(Spielerdatei,"Level"));
    GivePlayerMoney(playerid,dini_Int(Spielerdatei,"Geld"));
    SetPVarInt(playerid,"Adminlevel",dini_Int(Spielerdatei,"Adminlevel"));
    SetPVarInt(playerid,"Fraktion",dini_Int(Spielerdatei,"Fraktion"));
    SetPVarInt(playerid,"Baned",dini_Int(Spielerdatei,"Baned"));
    SetPVarInt(playerid,"PlayerRang",dini_Int(Spielerdatei,"PlayerRang"));
    if(GetPVarInt(playerid,"Baned")==1)
    {
    SendClientMessage(playerid,ROT,"Du bist vom Server gebannt.");
    Kick(playerid);
    }
    SetPVarInt(playerid,"loggedin",1);
    return 1;
    }


    stock SpielerSpeichern(playerid)
    {
    if(GetPVarInt(playerid,"loggedin")==1)
    {
    new Spielerdatei[64];
    new name[MAX_PLAYER_NAME];
    GetPlayerName(playerid,name,sizeof(name));
    format(Spielerdatei,sizeof(Spielerdatei),"/Accounts/%s.txt",name);
    dini_IntSet(Spielerdatei,"Level",GetPlayerScore(playerid));
    dini_IntSet(Spielerdatei,"Geld",GetPlayerMoney(playerid));
    dini_IntSet(Spielerdatei,"Adminlevel",GetPVarInt(playerid,"Adminlevel"));
    dini_IntSet(Spielerdatei,"Fraktion",GetPVarInt(playerid,"Fraktion"));
    dini_IntSet(Spielerdatei,"Baned",GetPVarInt(playerid,"Baned"));
    dini_IntSet(Spielerdatei,"timeban",GetPVarInt(playerid,"timeban"));
    dini_IntSet(Spielerdatei,"PlayerRang",GetPVarInt(playerid,"PlayerRang"));
    }
    return 1;
    }

  • Ja Klar, aber du musst beim invite Befehl ja die Fraktion des Inviteten auf die Fraktionsid des Spielers setzten der invitet hat.


    Also:


    SetPVarInt(pID,"Fraktion", GetPVarInt(playerid, "Fraktion"));

    Wer ist der Mensch hinter der Uniform? Ist euch das bekannt?
    Es ist der selbe der noch eben in Zivil neben euch stand.
    Warum wird er gehasst und so selten respektiert?
    Warum ist er derjenige der seinen Hals für euch riskiert?
    Trägt der Bulle eine Weste, das hat er früher nie gemacht,
    die Zeiten haben sich geändert und jeder Dienst ist ein Kampf!
    Warum gibt’s das SEK und warum sind sie so brutal?
    Und wieso hat wieder einer mit seinem Leben bezahlt?

  • Ist doch ganz einfach...


    Du hast einen Fraktionsleader der den Befehl /invite ausführt. Den der invitet wird Bekommt die Selbe Fraktion wie der Leader der ihn erweitet hat.


    Verstanden?

    Wer ist der Mensch hinter der Uniform? Ist euch das bekannt?
    Es ist der selbe der noch eben in Zivil neben euch stand.
    Warum wird er gehasst und so selten respektiert?
    Warum ist er derjenige der seinen Hals für euch riskiert?
    Trägt der Bulle eine Weste, das hat er früher nie gemacht,
    die Zeiten haben sich geändert und jeder Dienst ist ein Kampf!
    Warum gibt’s das SEK und warum sind sie so brutal?
    Und wieso hat wieder einer mit seinem Leben bezahlt?

  • Ja das habe ich verstanden aber wo soll ich das einfügen?

  • Du hast bei deinem invite Befehl das hier stehen:


    SetPVarInt(pID,"Fraktion");


    Ersetz es einfach durch


    SetPVarInt(pID,"Fraktion", GetPVarInt(playerid, "Fraktion"));

    Wer ist der Mensch hinter der Uniform? Ist euch das bekannt?
    Es ist der selbe der noch eben in Zivil neben euch stand.
    Warum wird er gehasst und so selten respektiert?
    Warum ist er derjenige der seinen Hals für euch riskiert?
    Trägt der Bulle eine Weste, das hat er früher nie gemacht,
    die Zeiten haben sich geändert und jeder Dienst ist ein Kampf!
    Warum gibt’s das SEK und warum sind sie so brutal?
    Und wieso hat wieder einer mit seinem Leben bezahlt?

  • 1 Error :S
    C:\Users\Alex\Desktop\Neuer Ordner\gamemodes\Selfmade.pwn(1209) : error 035: argument type mismatch (argument 2)
    Pawn compiler 3.2.3664 Copyright (c) 1997-2006, ITB CompuPhase



    1 Error.


    Zeile: if(!isPlayerInFrakt(playerid,"Fraktion"))return SendClientMessage(playerid,Grau,"Du bist nicht der Leader der Fraktion!");

  • do.de - Domain-Offensive - Domains für alle und zu super Preisen
  • mach aus den hier



    if(!isPlayerInFrakt(playerid,"Fraktion"))return SendClientMessage(playerid,Grau,"Du bist nicht der Leader der Fraktion!");



    zum bsp das



    if(!isPlayerInFrakt(playerid,"Fraktion")==1)return SendClientMessage(playerid,Grau,"Du bist nicht der Leader der Fraktion!"); //das ==1 steht wenn er in der fraktion 1 ist



    Mfg


    Mr_x

  • Das bringt aber nichts da dann nur das SAPD Invite kann.....


    Denken hilft nach -.-

  • if(!isPlayerInFrakt(playerid,"Fraktion"))


    Warum ist das bitte ein string?
    Das sollte doch eher eine Zahl sein oder?


    Mr_x
    Das ist wohl ein Witz oder?
    Wenn er schon ein ! davor hat heißt es gleich wenn nicht.
    bei dir würde das jetzt lauten wenn spieler nicht in der Fraktion 1 ist

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

    Margarete Stokowski

  • Ganz einfach,
    isPlayerInFrakt erwartet, da wo du jetzt "Fraktion" drin stehen hast, eine Zahl.
    Die kommt aber nicht.
    Stattdessen kommt ein string.
    Das heißt du müsstest "Fraktion" in die Zahl ändern die du haben möchtest z.B. 1


    if(!isPlayerInFrakt(playerid,1)) // wenn spieler nicht in Fraktion 1 ist...

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

    Margarete Stokowski

  • Ich hab dir das sogar vorgekaut,
    du musst dir den Unterschied nur bewusst machen


    Deins:
    if(!isPlayerInFrakt(playerid,"Fraktion"))


    Meins:
    if(!isPlayerInFrakt(playerid,1))

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

    Margarete Stokowski

  • Aber dann ist der Invite Befehl nur für das SAPD?

  • do.de - Domain-Offensive - Domains für alle und zu super Preisen