PVar in "OnDialogResponse" ändern

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 Abend Forum.


    Ich melde mich mal wieder mit nem Problem welches sich auf meinen letzten Thread bezieht.


    Quelltext :

    if(dialogid==DIALOG_FRAKJOIN)
    {
    if(response==0)
    {
    SCM(playerid,Rot,"Du hast die Einladung abgelehnt!");
    return 1;
    }
    if(response==1)
    {
    //SetPVarInt(playerid,"Fraktion",fID);
    //#error
    SCM(playerid,Gelb,"Wilkommen in der Fraktion!");
    return 1;
    }
    }




    Die fID ist natürlich nicht definiert. Aber wie krieg ich es hin das die Fraktions ID eingesetzt wird?

  • Ich will das ein Fraktionsleader jemandem eine Einladung schicken kann welche bei dem Eingeladenen einen Dialog aufruft den er bestätigen kann.


    /invitemember Befehl :



    ocmd:invitemember(playerid,params[])
    {
    new pID,fID;
    if(GetPVarInt(playerid,"Fraktion") == 0) return 1; //Wenn Zivilist soll nichts passieren.
    if(!IsPlayerLeader(playerid,fID)) return ERROR_LEADER
    if(sscanf(params,"u",pID)) return SCM(playerid,Rot,"Verwendung : /invitemember [ID]");
    new string[128];
    new LeaderFrak = GetPVarInt(playerid,"Fraktion");
    format(string,sizeof(string),"Du wurdest zur %s Fraktion eingeladen!",GetFracNameByID(LeaderFrak));
    ShowPlayerDialog(pID,DIALOG_FRAKJOIN,DIALOG_STYLE_MSGBOX,"Fraktionseinladung",string,"Beitreten","Ablehnen");
    return 1;
    }


  • ocmd:invitemember(playerid,params[])
    {
    new pID,fID;
    if(GetPVarInt(playerid,"Fraktion") == 0) return 1; //Wenn Zivilist soll nichts passieren.
    if(!IsPlayerLeader(playerid,fID)) return ERROR_LEADER
    if(sscanf(params,"u",pID)) return SCM(playerid,Rot,"Verwendung : /invitemember [ID]");
    new string[128];
    new LeaderFrak = GetPVarInt(playerid,"Fraktion");
    SetPVarInt(pID, "Fraktion", fID);
    format(string,sizeof(string),"Du wurdest zur %s Fraktion eingeladen!",GetFracNameByID(LeaderFrak));
    ShowPlayerDialog(pID,DIALOG_FRAKJOIN,DIALOG_STYLE_MSGBOX,"Fraktionseinladung",string,"Beitreten","Ablehnen");
    return 1;
    }

    Dort wird das ganze dann gesetzt. ;)

  • So ich habs gerade mal ausprobiert und im /status Befehl wird die Fraktion nicht angezeigt...


    //edit : Ich denke du hast nicht verstanden wie ich das haben wollte. Man sollte die Einladung ablehnen können...