Problem mit "/invite"

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 Breadfish,
    Ich habe ein Problem mit meinem "/invite" befehl undzwar .. wen der Leader einen User in seine Frak einläd...
    Kommt halt.. Leader %s hat dich in die Fraktion %s eingeladen.
    Aber bei der Fraktion wird kein Name angezeigt -.-


    Aber wieso??


    Hier der befehl..


    ocmd:invite(playerid,params[])
    {
    new text[128],pName[MAX_PLAYER_NAME];
    GetPlayerName(playerid,pName,sizeof(pName));
    if(isPlayerInFrak(playerid,0))
    {
    SendClientMessage(playerid,ROT,"Du gehörst keiner Fraktion an.");
    return 1;
    }
    if(sscanf(params, "s", text))return SendClientMessage(playerid, BLAU, "Verwendung: /invite [Spieler/ID]");
    //if(GetPVarInt(playerid,"FLeader") == 1 || GetPVarInt(playerid,"FLeader") == 2 || GetPVarInt(playerid,"FLeader") == 3 || GetPVarInt(playerid,"FLeader") == 4 || GetPVarInt(playerid,"FLeader") == 5)
    if(GetPVarInt(playerid,"FRank") == 6)
    {
    new pID,string[280],fID,fraktname[64];
    if(sscanf(params,"u",pID))return SendClientMessage(playerid,ROT,"Benutze: /invite [Spieler/ID]");
    format(string,sizeof(string),"Du wurdest von Leader %s in die Fraktion %s eingeladen",SpielerName(playerid),fraktname);
    ShowPlayerDialog(pID,DIALOG_INVITE,DIALOG_STYLE_MSGBOX,"Invite",string,"Beitreten","Abbrechen");
    //SendClientMessage(pID,GRÜN,string);
    switch(fID)
    {
    case 1:{fraktname=fraktname1;}
    case 2:{fraktname=fraktname2;}
    case 3:{fraktname=fraktname3;}
    case 4:{fraktname=fraktname4;}
    case 5:{fraktname=fraktname5;}
    case 6:{fraktname=fraktname6;}
    case 7:{fraktname=fraktname7;}
    case 8:{fraktname=fraktname8;}
    case 9:{fraktname=fraktname9;}
    case 10:{fraktname=fraktname10;}
    }
    format(string,sizeof(string),"Du hast %s in die Fraktion %s eingeladen",SpielerName(pID),fraktname);
    SendClientMessage(playerid,TÜRKIS,string);
    //ShowPlayerDialog(pID,DIALOG_INVITE,DIALOG_STYLE_MSGBOX,"Invite","Du wurdest in die Fraktion %s eingeladen.","Beitreten","Abbrechen");
    }
    else
    {
    SendClientMessage(playerid,ROT,"Du bist kein Leader!");
    }
    return 1;
    }


    Ich hoffe ihr könnt mir helfen..
    Vielen Dank im vorraus.


    Mfg.

  • Ja also jetzt habe ich es so...


    ocmd:invite(playerid,params[])
    {
    new text[128],pName[MAX_PLAYER_NAME];
    GetPlayerName(playerid,pName,sizeof(pName));
    if(isPlayerInFrak(playerid,0))
    {
    SendClientMessage(playerid,ROT,"Du gehörst keiner Fraktion an.");
    return 1;
    }
    if(sscanf(params, "s", text))return SendClientMessage(playerid, BLAU, "Verwendung: /invite [Spieler/ID]");
    if(GetPVarInt(playerid,"FRank") == 6)
    {
    new pID,string[280],fID,fraktname[64];
    if(sscanf(params,"u",pID))return SendClientMessage(playerid,ROT,"Benutze: /invite [Spieler/ID]");
    switch(fID)
    {
    case 1:{fraktname=fraktname1;}
    case 2:{fraktname=fraktname2;}
    case 3:{fraktname=fraktname3;}
    case 4:{fraktname=fraktname4;}
    case 5:{fraktname=fraktname5;}
    case 6:{fraktname=fraktname6;}
    case 7:{fraktname=fraktname7;}
    case 8:{fraktname=fraktname8;}
    case 9:{fraktname=fraktname9;}
    case 10:{fraktname=fraktname10;}
    }
    format(string,sizeof(string),"Du wurdest von Leader %s in die Fraktion %s eingeladen",SpielerName(playerid),fraktname);
    ShowPlayerDialog(pID,DIALOG_INVITE,DIALOG_STYLE_MSGBOX,"Invite",string,"Beitreten","Abbrechen");
    //SendClientMessage(pID,GRÜN,string);
    format(string,sizeof(string),"Du hast %s in die Fraktion %s eingeladen",SpielerName(pID),fraktname);
    SendClientMessage(playerid,TÜRKIS,string);
    //ShowPlayerDialog(pID,DIALOG_INVITE,DIALOG_STYLE_MSGBOX,"Invite","Du wurdest in die Fraktion %s eingeladen.","Beitreten","Abbrechen");
    }
    else
    {
    SendClientMessage(playerid,ROT,"Du bist kein Leader!");
    }
    return 1;
    }


    Nur es klappt immer noch nicht. :/
    Pls Help me.
    Mfg.

  • Weil du die Strings mit einer anderen Variable füllen willst (Welche aber nicht vorhanden ist), also musst du diese definieren.


    "case 1:{fraktname=fraktname1;}" (Nur ein Beispiel) würde so funktionieren:
    "case 1:{fraktname="FraktionName";}"


    Das musst du mit allen fraktname="Blabla" machen.