Форум Pawn-Wiki.Ru - Воплоти мечту в реальность!: Банк На Диалоге - Форум Pawn-Wiki.Ru - Воплоти мечту в реальность!

Перейти к содержимому

  • (2 Страниц) +
  • 1
  • 2
  • Вы не можете создать новую тему
  • Вы не можете ответить в тему

[ Scr ][ GF ]
Банк На Диалоге
Оценка: -----

#1
Пользователь офлайн   fakeN 

  • Эксперт
  • Вставить ник
  • Раскрыть информацию
Как все знают в стандартном моде GodFather есть не очень удобная система банка , все потому что она на командах, и уже не в 1ый раз видел вопросы - "Помогите сделать сис-му банка на диалогах" , ну вот решил сделать, может пригодится кому-нибудь :D

Предварительно удалите команды

Теперь добавьте в начало мода переменную

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


Собственно это все , еще раз это для стандартного GF :D , удачи....
8

#2
Пользователь офлайн   Romzes 

  • © Pawn-Wiki.Ru
  • Вставить ник
  • Раскрыть информацию
Хорошая вешь. Лови +
2

#3
Пользователь офлайн   Cris_Pro 

  • Хочу создать серверок..
  • Вставить ник
  • Раскрыть информацию
класно лови +
1

#4
Пользователь офлайн   Пашка 

  • Знаток
  • Вставить ник
  • Раскрыть информацию
Лови +.

Ёп не специально минус нажал..... :unsure: :unsure: :unsure: :unsure:
0

#5
Пользователь офлайн   Jeka 

  • Прохожий
  • Вставить ник
  • Раскрыть информацию
D:\?????? 0.3d SAMP\Сервер\pawno\include\streamer.inc(268) : warning 201: redefinition of constant/macro (symbol "OnGameModeInit")
D:\?????? 0.3d SAMP\Сервер\pawno\include\streamer.inc(290) : warning 201: redefinition of constant/macro (symbol "OnPlayerConnect")
D:\?????? 0.3d SAMP\Сервер\gamemodes\cl2.pwn(48263) : error 021: symbol already defined: "string"
D:\?????? 0.3d SAMP\Сервер\gamemodes\cl2.pwn(48328) : warning 219: local variable "sen" shadows a variable at a preceding level
D:\?????? 0.3d SAMP\Сервер\gamemodes\cl2.pwn(48329) : warning 219: local variable "ol" shadows a variable at a preceding level
D:\?????? 0.3d SAMP\Сервер\gamemodes\cl2.pwn(48263) : warning 204: symbol is assigned a value that is never used: "ol"
D:\?????? 0.3d SAMP\Сервер\gamemodes\cl2.pwn(48263) : warning 204: symbol is assigned a value that is never used: "sen"
Pawn compiler 3.2.3664 Copyright © 1997-2006, ITB CompuPhase


1 Error.

Help...
1

#6
Пользователь офлайн   Karandash 

  • Пользователь
  • Вставить ник
  • Раскрыть информацию
Через команду лушче....чем через пикапы
0

#7
Пользователь офлайн   McLean 

  • Знаток
  • Вставить ник
  • Раскрыть информацию
Через пикап по лучше, лови +
0

#8
Пользователь офлайн   Noel_Clarke 

  • Прохожий
  • Вставить ник
  • Раскрыть информацию
ёп табуляция гдеееееееееее?
0

#9
Пользователь офлайн   Antoxa_Wilson 

  • Banned
  • Вставить ник
  • Раскрыть информацию
1) автора укажи (копи паст)
2) скрин
-_-

#10
Пользователь офлайн   -=sergey=- 

  • Местный
  • Вставить ник
  • Раскрыть информацию
C:\Documents and Settings\ы\Рабочий стол\mod_DJ.pwn(112) : warning 217: loose indentation
C:\Documents and Settings\ы\Рабочий стол\mod_DJ.pwn(288) : warning 217: loose indentation
C:\Documents and Settings\ы\Рабочий стол\mod_DJ.pwn(290) : warning 217: loose indentation
C:\Documents and Settings\ы\Рабочий стол\mod_DJ.pwn(346) : warning 217: loose indentation
C:\Documents and Settings\ы\Рабочий стол\mod_DJ.pwn(351) : warning 217: loose indentation
C:\Documents and Settings\ы\Рабочий стол\mod_DJ.pwn(392) : warning 217: loose indentation
C:\Documents and Settings\ы\Рабочий стол\mod_DJ.pwn(483) : error 017: undefined symbol "PlayerInfo"
C:\Documents and Settings\ы\Рабочий стол\mod_DJ.pwn(483) : warning 215: expression has no effect
C:\Documents and Settings\ы\Рабочий стол\mod_DJ.pwn(483) : error 001: expected token: ";", but found "]"
C:\Documents and Settings\ы\Рабочий стол\mod_DJ.pwn(483) : error 029: invalid expression, assumed zero
C:\Documents and Settings\ы\Рабочий стол\mod_DJ.pwn(483) : fatal error 107: too many error messages on one line

Compilation aborted.Pawn compiler 3.2.3664 Copyright © 1997-2006, ITB CompuPhase


4 Errors.

Поделиться темой:


  • (2 Страниц) +
  • 1
  • 2
  • Вы не можете создать новую тему
  • Вы не можете ответить в тему

1 человек читают эту тему
0 пользователей, 1 гостей, 0 скрытых пользователей


Яндекс.Метрика