Vocк cometeu alguns erros no seu cуdigo...
O primeiro й que vocк colocou vбrias chaves desnecessбrias...
O segundo й que na parte do dialog 3 vocк teria que chamar um outro dialog para o player inserir o valor a ser sacado/depositado, mas vocк colocou tudo em um unico dialog, o que nгo iria funcionar...
Veja bem como fiz:
pawn Код:
public OnDialogResponse(playerid, dialogid, response, listitem, inputtext[])
{
new mensagem[128], IP[25];
GetPlayerIp(playerid, IP, sizeof(IP));
if(dialogid == 2)
{
if(response == 1)
{
new msg[128];
format(msg, sizeof(msg), "O seu saldo й de %d.", dini_Int(PlayerName(playerid),"Banco"));
SendClientMessage(playerid, COLOR_JUIZ, msg);
format(msg,sizeof(msg),"SERVIDOR: %s checou seu saldo.",PlayerName(playerid));
writelog(msg);
}
if(response == 0)
{
ShowPlayerDialog(playerid, 3, DIALOG_STYLE_MSGBOX, "Banco Destroyer'RPG", "Selecione a opзгo desejada", "Sacar", "Depositar");
}
}
if(dialogid == 3)
{
if(response == 1) ShowPlayerDialog(playerid, 4, DIALOG_STYLE_INPUT, "Banco Destroyer'RPG", "", "Sacar", "Cancelar");
if(response == 0) ShowPlayerDialog(playerid, 5, DIALOG_STYLE_INPUT, "Banco Destroyer'RPG", "", "Depositar", "Cancelar");
}
if(dialogid == 4)
{
new string[128];
new quantidade = strval(inputtext);
if(quantidade > dini_Int(PlayerName(playerid),"Banco")) return SendClientMessage(playerid, COLOR_RED, "Vocк nгo tem essa quantidade toda no banco!");
if(PlayerArea[playerid] != AREA_BANCO)
{
GivePlayerMoney(playerid, quantidade);
DiminuirBankMoney(playerid, quantidade);
format(string, sizeof(string), "Vocк sacou $%d de sua conta, seu saldo atual й de $%d", quantidade, dini_Int(PlayerName(playerid),"Banco"));
SendClientMessage(playerid, COLOR_AMARELOCLARO, string);
format(string,sizeof(string),"SERVIDOR: %s sacou %d de sua conta seu saldo atual й $%d.",PlayerName(playerid),quantidade, dini_Int(PlayerName(playerid),"Banco"));
writelog(string);
return 1;
}
}
if(dialogid == 5)
{
new string[128];
new Quantidade = strval(inputtext);
if(Quantidade <= 0 || Quantidade > GetPlayerMoney(playerid)) return SendClientMessage(playerid, COLOR_RED, "Vocк nгo possui esse dinheiro.");
if(PlayerArea[playerid] != AREA_BANCO)
{
GivePlayerMoney(playerid, 0 - Quantidade);
AcrescentarBankMoney(playerid,Quantidade);
format(string, sizeof(string), "Vocк depositou $%d de sua conta, seu saldo atual й de $%d", Quantidade, dini_Int(PlayerName(playerid),"Banco"));
SendClientMessage(playerid, COLOR_AMARELOCLARO, string);
format(string,sizeof(string),"SERVIDOR: %s depositou %d de sua conta seu saldo atual й $%d.",PlayerName(playerid),Quantidade, dini_Int(PlayerName(playerid),"Banco"));
writelog(string);
return 1;
}
}
return 1;
}
e mais alguns errinhos de desatenзгo que vocк teve,em certos locais havia '$d' mas era para ser '$%d'
//Atualizado