PayDay Abfrage

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, ich hab eine generelle Frage eigentlich, das Problem habe ich derzeit aber bei meinem PayDay System.
    Ich hab eben verschiedene Variablen, zum Beispiel habe ich drinnen:


    Einen Obdachlosen Spawn: Kosten 200 Doller pro PayDay
    Admin Gehalt: Mit jedem Admin Level unterschiedlich
    Fraktion Gehälter: individuell einstellbar


    Das ist mein Public:
    public PayDay(playerid)
    {
    new str[128];
    if(ObdachlosenSpawn[playerid] == 1)
    {
    format(str,sizeof(str),"Gehalt(Brutto): %d Gehalt(Netto): \n%d Steuern: %d%% Obdachlosen Heim: 200$",FGehalt(playerid),earn[playerid],Steuern(playerid));
    PlayerInfo[playerid][pAccount]=- 200;
    }
    switch(PlayerInfo[playerid][pAdmin])
    {
    case 1:{ format(str,sizeof(str),"Gehalt(Brutto): %d Gehalt(Netto): \n%d Steuern: %d%% Supporter Gehalt: 1.000$",FGehalt(playerid),earn[playerid],Steuern(playerid)); PlayerInfo[playerid][pAccount]+= 1000;}
    case 2:{ format(str,sizeof(str),"Gehalt(Brutto): %d Gehalt(Netto): \n%d Steuern: %d%% Moderator Gehalt: 2.000 ",FGehalt(playerid),earn[playerid],Steuern(playerid)); PlayerInfo[playerid][pAccount]+= 2000;}
    case 3:{ format(str,sizeof(str),"Gehalt(Brutto): %d Gehalt(Netto): \n%d Steuern: %d%% Administrator Gehalt: 4.000$",FGehalt(playerid),earn[playerid],Steuern(playerid)); PlayerInfo[playerid][pAccount]+= 4000;}
    case 4:{ format(str,sizeof(str),"Gehalt(Brutto): %d Gehalt(Netto): \n%d Steuern: %d%% Head Administrator Gehalt: 8.000$",FGehalt(playerid),earn[playerid],Steuern(playerid)); PlayerInfo[playerid][pAccount]+= 8000;}
    case 5:{ format(str,sizeof(str),"Gehalt(Brutto): %d Gehalt(Netto): \n%d Steuern: %d%% Server Owner Gehalt: 16.000$",FGehalt(playerid),earn[playerid],Steuern(playerid)); PlayerInfo[playerid][pAccount]+= 16000;}
    }
    earn[playerid] = FGehalt(playerid)*Steuern(playerid);
    PlayerInfo[playerid][pAccount]+= earn[playerid];
    ShowPlayerDialog(playerid,DIALOG_PAYDAY,DIALOG_STYLE_MSGBOX,"Payday",str,"Schließen","Schließen");
    return 1;
    }


    Ich will jetzt meinen str formatieren, dass nur das Angezeigt was man auch wirklich hat.
    Zum Beispiel, wenn er einen Obdachlosen Spawn hat, dass das im String angezeigt wird und wenn nicht eben nicht :/
    Ansich natürlich mit If abfragen, aber das werden dann ja sehr viele Abfragen.. Er kann ja gleichzeitig admin sein und in einer Frak, oder nur admin, Frak und den Obdachlosen Spawn, ich glaube ihr versteht was ich meine..


    Danke für die Antworten, wenn welche kommen.

  • Musst die anderen strings halt immer dran hängen bzw. in den laufenden Abfragen editieren.

    ▬|██████|▬
    This is Nudelholz.
    Copy Nudelholz in your Signatur
    to make better Kuchens
    and other Teigprodukte!

  • Könnte ich das so machen? oder habe ich den einsatz von strcat falsch verstanden?


    public PayDay(playerid)
    {
    new str[128],string[128],stri[128];
    if(ObdachlosenSpawn[playerid] == 1)
    {
    strcat(str,"Obdachlosen Spawn: 200$");
    }
    switch(PlayerInfo[playerid][pAdmin])
    {
    case 1:{ strcat(str,"Supporter Gehalt: 1.000$"); PlayerInfo[playerid][pAccount]+= 1000;}
    case 2:{ strcat(str,"Moderator Gehalt: 2.000$"); PlayerInfo[playerid][pAccount]+= 2000;}
    case 3:{ strcat(str,"Administrator Gehalt: 4.000$"); PlayerInfo[playerid][pAccount]+= 4000;}
    case 4:{ strcat(str,"Head Administrator Gehalt: 8.000$"); PlayerInfo[playerid][pAccount]+= 8000;}
    case 5:{ strcat(str,"Server Owner Gehalt: 16.000$"); PlayerInfo[playerid][pAccount]+= 16000;}
    }
    if(PlayerInfo[playerid][pMember] >= 1)
    {
    format(string,sizeof(string),"Fraktions Gehalt: %d",FGehalt(playerid));
    strcat(str,string);
    }
    if(PlayerInfo[playerid][pDonateRank] == 1)
    {
    format(stri,sizeof(stri),"Steuer: %d%%",Steuern(playerid));
    strcat(str,stri);
    }
    earn[playerid] = FGehalt(playerid)*Steuern(playerid);
    PlayerInfo[playerid][pAccount]+= earn[playerid];
    ShowPlayerDialog(playerid,DIALOG_PAYDAY,DIALOG_STYLE_MSGBOX,"Payday",str,"Schließen","Schließen");
    return 1;
    }

    Einmal editiert, zuletzt von [MVS]Simon ()