Сайт переехал на новый домен. НАЖМИТЕ НА ЭТО СООБЩЕНИЕ ЧТОБЫ ПЕРЕЙТИ
arxiv.bicbai.ru
  • Страница 1 из 1
  • 1
Форум » Программирование в Pawno » Готовые решения » Банк на диалоге
Банк на диалоге
Добавлено 31.03.2016 в 05:59 | Сообщение №1
Сообщений: 265 Репутация: 0
Администраторы
Добавьте в начало мода переменную
Код
new BankW[2];//Ну для пикапов

Ну и создадим сами пикапы (В OnGameModeInit)
Код
BankW[0] = CreatePickup(1239,2,2316.6199,-12.7300,26.7422);
BankW[1] = CreatePickup(1239,2,2316.6174,-7.3636,26.7422);

Теперь создадим действие на пикапы (В OnPlayerPickupPickup)
Код
if(pickupid == BankW[0] || pickupid == BankW[1];) ShowPlayerDialog(playerid,7594,DIALOG_STYLE_LIST,"Банк","Положить сумму на счет\nСнять сумму с счета\nПеревести сумма на счет\nБаланс счета","Выбрать","Отмена");

Теперь добавим пару диалогов (B OnDialogResponse)
Код
new string[100];
if(dialogid == 7594 && response)
{
switch(listitem)
{
case 0: ShowPlayerDialog(playerid,7595,DIALOG_STYLE_INPUT,"Система хранения","Введите ту сумму , которую\nвы хотите положить на счет","Положить","Отмена");
case 1: ShowPlayerDialog(playerid,7596,DIALOG_STYLE_INPUT,"Взять деньги","Введите ту сумму , которую\nвы хотите снять со счета","Снять","Отмена");
case 2: ShowPlayerDialog(playerid,7597,DIALOG_STYLE_INPUT,"Система перевода","Введите id того игрока , которому вы хотите перевести\nденьги, затем сумму денег, пример 3,10000","Перевести","Отмена");
case 3:
{
format(string, sizeof(string), "Вы имеете $%d на вашем счету",PlayerInfo[playerid][pAccount]);
ShowPlayerDialog(playerid,7598,DIALOG_STYLE_MSGBOX,"Сумма денег на счете",string,"Ок","");
}
}
return 1;
}

Код
if(dialogid == 7595 && response)
{
if(strval(inputtext)> GetPlayerMoney(playerid) || strval(inputtext)< 1)
{
SendClientMessage(playerid, COLOR_RED, "* У вас нет такой суммы!");
return ShowPlayerDialog(playerid,7595,DIALOG_STYLE_INPUT,"Система хранеия","Введите ту сумму , которую\nвы хотите положить на счет","Положить","Отмена");
}
GivePlayerMoney(playerid,-strval(inputtext));
PlayerInfo[playerid][pAccount]=strval(inputtext)+PlayerInfo[playerid][pAccount];
format(string, sizeof(string), "Старая сумма вашего счета: $%d\nНовая сумма вашего счета: $%d\nДепозит счета: $%d\n\nБлагодарим вас за использование\nбанковской системы",PlayerInfo[playerid][pAccount]-strval(inputtext),PlayerInfo[playerid][pAccount],strval(inputtext));
return ShowPlayerDialog(playerid,7598,DIALOG_STYLE_MSGBOX,"Банковский Чек",string,"Ок","");
}
//------------------------------------------------------------------------------
if(dialogid == 7596 && response)
{
if(strval(inputtext)> PlayerInfo [playerid][pAccount]|| strval(inputtext)< 1)
{
SendClientMessage(playerid, COLOR_RED, "* У вас нет такой суммы на счету!");
return ShowPlayerDialog(playerid,7596,DIALOG_STYLE_INPUT,"Взять деньги","Введите ту сумму , которую\nвы хотите снять со счета","Снять","Отмена");
}
GivePlayerMoney(playerid,strval(inputtext));
PlayerInfo[playerid][pAccount]=PlayerInfo[playerid][pAccount]-strval(inputtext);
format(string, sizeof(string), "Вы сняли: $%d денег с вашего счет\nОсталось: $%d денег на счету",strval(inputtext),PlayerInfo[playerid][pAccount]);
return ShowPlayerDialog(playerid,7598,DIALOG_STYLE_MSGBOX,"Банковский Чек",string,"Ок","");
}
//------------------------------------------------------------------------------
if(dialogid == 7597 && response)
{
new textm[2][6],id = strval(textm[0]),cash = strval(textm[1]);
split(inputtext, textm, ',');
if(!IsPlayerConnected(id))
{
SendClientMessage(playerid, COLOR_RED, "* Этого игрока нет на сервере!");
return ShowPlayerDialog(playerid,7597,DIALOG_STYLE_INPUT,"Система перевода","Введите id того игрока , которому вы хотите перевести\nденьги, затем сумму денег, пример 3,10000","Перевести","Отмена");
}
if(cash > PlayerInfo [playerid][pAccount]|| cash < 1)
{
SendClientMessage(playerid, COLOR_RED, "* У вас нет такой суммы на счету , либо укажите точную сумму!");
return ShowPlayerDialog(playerid,7597,DIALOG_STYLE_INPUT,"Система перевода","Введите id того игрока , которому вы хотите перевести\nденьги, затем сумму денег, пример 3,10000","Перевести","Отмена");
}
if(id == playerid)
{
SendClientMessage(playerid, COLOR_RED, "* Вы не можете перевести деньги самому себе!");
return ShowPlayerDialog(playerid,7597,DIALOG_STYLE_INPUT,"Система перевода","Введите id того игрока , которому вы хотите перевести\nденьги, затем сумму денег, пример 3,10000","Перевести","Отмена");
}
PlayerInfo [playerid][pAccount]-= cash;
PlayerInfo [id][pAccount]+= cash;
PlayerPlaySound(playerid, 1052, 0.0, 0.0, 0.0);
format(string, sizeof(string), "Вы перевели: $%d , на счет: %s\nНа вашем счету осталось: $%d", cash,PlayerName(id),PlayerInfo[playerid][pAccount]);
ShowPlayerDialog(playerid,7598,DIALOG_STYLE_MSGBOX,"Банковский Чек",string,"Ок","");
format(string, sizeof(string), "%s только что  перевел $%d денег на ваш счет\nСейчас на вашем счету: $%d",PlayerName(playerid),cash,PlayerInfo[id][pAccount]);
return ShowPlayerDialog(id,7598,DIALOG_STYLE_MSGBOX,"Банковский Чек",string,"Ок","");
}

И в конец мода функцию имени запихните
Код
stock PlayerName(playerid)
{
new name[25];
GetPlayerName(playerid,name,25);
return name;
}

Автор: Неизвестен


Программист любитель :)
Форум » Программирование в Pawno » Готовые решения » Банк на диалоге
  • Страница 1 из 1
  • 1
Поиск: