Problem...Ein Invite Befehl für alle Fraktionen

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
  • Mein Problem ist das dieses ==1) nur für Fraktion 1 ist wie kann ich das machen das es alle nutzen können aber das der eingeladene in die richtige fraktion kommt?.



    ocmd:invite(playerid,params[])
    {
    if(GetPVarInt(playerid,"Leader") == 1)
    {
    new fraktname[64];
    new pID,string[280];
    if(sscanf(params,"u",pID))return SendClientMessage(playerid,COLOR_GREY,"Benutze: /invite [Spieler/ID]");
    format(string,sizeof(string),"Du wurdest von Leader %s in die Fraktion: %s eingeladen",SpielerName(playerid),fraktname);
    SendClientMessage(pID,COLOR_GREY,string);
    format(string,sizeof(string),"Du hast %s in deine Fraktion: %s eingeladen",SpielerName(pID),fraktname);
    SendClientMessage(playerid,COLOR_YELLOW,string);
    ShowPlayerDialog(pID,DIALOG_LSPDINVITE,DIALOG_STYLE_MSGBOX,"Invite","Du wurdest in eine Fraktion eingeladen.\nUm beizutreten dürcke *Beitreten* wenn nicht *Abbrechen*","Beitreten","Abbrechen");
    }
    else
    {
    SendClientMessage(playerid,COLOR_RED,"Du bist kein Leader!");
    }
    return 1;
    }


    hier bei OnDialogResponse..
    .



    if(dialogid==DIALOG_LSPDINVITE)
    {
    if(response==0)
    {
    SendClientMessage(playerid,COLOR_RED,"Vorgang Abgebrochen");
    return 1;
    }
    if(response==1)
    {
    //SetPVarInt(playerid,"Member",Fraktion);
    SetPVarInt(playerid,"Fraktion",1);
    TogglePlayerControllable(playerid,0);
    SetPlayerPos(playerid,1481.1232,-1758.7006,33.4297);
    SetPlayerFacingAngle(playerid,356.2188);
    SetPlayerCameraPos(playerid,1481.0474,-1751.8887,33.4297);
    SetPlayerCameraLookAt(playerid,1481.1232,-1758.7006,33.4297);
    return 1;
    }
    }
    Habe den Dialog jetzt mal LSPDINVITE genannt...


    und wenn ich dann oben stehe und weiter machen will funkt das auch net... will nichts mit Parameter machen also bei dem Weiter



    ocmd:weiter(playerid,params[])
    {
    if(GetPVarInt(playerid,"invite") == 1)
    {
    {
    if(isPlayerInFrakt(playerid,3))
    switch(GetPVarInt(playerid, "Skin"))//Medic
    {
    case 1: { SetPlayerSkin(playerid,288); SetPVarInt(playerid, "Skin", 2); }//irgendeinskin genommen
    case 2: { SetPlayerSkin(playerid,283); SetPVarInt(playerid, "Skin", 3); }//irgendeinskin genommen
    case 3: { SetPlayerSkin(playerid,282); SetPVarInt(playerid, "Skin", 4); }//irgendeinskin genommen
    case 4: { SetPlayerSkin(playerid,281); SetPVarInt(playerid, "Skin", 5); }//irgendeinskin genommen
    case 5: { SetPlayerSkin(playerid,280); SetPVarInt(playerid, "Skin", 6); }//irgendeinskin genommen
    case 6: { SetPlayerSkin(playerid,284); SetPVarInt(playerid, "Skin", 1); }//irgendeinskin genommen
    }
    }
    else
    {
    SendClientMessage(playerid, COLOR_RED, "Du wurdest nicht eingeladen!");
    }
    return 1;
    }

    Ich hoffe mir kann jemand helfen :)


    //EDIT PWN hinzugefügt

    5 Mal editiert, zuletzt von [Markus] ()