Guten Tag, ich mache gerade ein Kassensystem via. Dialog.
Ich fange mal an und zeige die Codes.
Hier wird der Dialog der Staatskasse aufgerufen, der aktuelle Kassenstand sowie eine Frage aufgerufen.
ocmd:staatskasse(playerid,params[])
{
new string[128];
format(string,sizeof(string),"In der Staatskasse sind %i$. Möchtest du was einzahlen?",Staat);
ShowPlayerDialog(playerid,DIALOG_STAATSKASSE,DIALOG_STYLE_MSGBOX,"Staatskasse",string,"Einzahlen","Abbrechen");
return 1;
}
Nun unter OnDialogResponse gehts weiter.
Hier wird der Sinn des Dialoges aufgerufen. ~> response==0 ~> Abbrechen ~> Folgt nichts, dies ist soweit richtig.
Dann bei response==1 wird in der nächste Dialog gezeigt, nur als DIALOG_STYLE_INPUT, damit er den Betrag eingeben kann denn er spenden möchte.
if(dialogid==DIALOG_STAATSKASSE)
{
if(response==0)
{
return 1;
}
if(response==1)
{
new string[500];
format(string,sizeof(string),"Du willst also in die Staatskasse was einzahlen.\nDerzeit befinden sich in der Staatskasse %i$.\nWie viel möchtest du einzahlen?",Staat);
ShowPlayerDialog(playerid,DIALOG_STAATEINZAHLEN,DIALOG_STYLE_INPUT,"Staatskasse",string,"Einzahlen","Abbrechen");
return 1;
}
}
Hier die Funktion vom DIALOG_STYLE_INPUT
Drückt er response==0 passiert nichts, das ist richtig.
Drückt er response==1 und gibt keinen inputtext ein, wird der Dialog erneut aufgerufen auch richtig.
Nun zu meinem Problem, ich habe es derzeit so: new money;
if(GetPlayerMoney(playerid) < money) return SendClientMessage(playerid,Grau,"So viel Geld hast du nicht.");
Staat +=(inputtext);
Nur inputtext kann ich nicht verwenden?
if(dialogid==DIALOG_STAATEINZAHLEN)
{
if(response==0)
{
return 1;
}
if(response==1)
{
if(!strlen(inputtext))
{
new string[500];
format(string,sizeof(string),"Du willst also in die Staatskasse was einzahlen.\nDerzeit befinden sich in der Staatskasse %i$.\nWie viel möchtest du einzahlen?",Staat);
ShowPlayerDialog(playerid,DIALOG_STAATEINZAHLEN,DIALOG_STYLE_INPUT,"Staatskasse",string,"Einzahlen","Abbrechen");
}
else
{
new money;
if(GetPlayerMoney(playerid) < money) return SendClientMessage(playerid,Grau,"So viel Geld hast du nicht.");
Staat +=(inputtext);
}
}
}
Die Errors: C:\Users\John_Jones\Desktop\Plugins\Binary-Life\gamemodes\Selfmade.pwn(405) : error 022: must be lvalue (non-constant)
C:\Users\John_Jones\Desktop\Plugins\Binary-Life\gamemodes\Selfmade.pwn(405) : warning 215: expression has no effect
Die Error Zeile: Staat +=(inputtext);
Brauche unbedingt Hilfe.
MFG