• Страница 1 из 1
  • 1
[Мануал]Пополнение игрового счета (через игру)
Дмитрий Дата: Понедельник, 06.08.2012, 17:00 | Сообщение # 1 | Сообщить о нерабочей теме


Аватар для Дмитрий

Играя на многих серверах, где нет онлайн доната, что бы что то купить донат услугу(например бонусы, деньги, итд..) нужно идти на форум что бы посмотреть реквизиты администраторов и расценки на данные услуги (даже иногда и регистрироваться на сайте.

Я написал команду, которая в какой то мере упростит жизнь игрокам и администраторам игровых серверов.Тем самым можно будет сразу узнать цены на данные услуги и реквизиты на которые нужно будет перечислять финансы.

В данном моменте я прорисовываю услугу покупки бонусов.

[spoiler="Вот скриншоты"]




[/spoiler]

Приступим :

Удобнее всего работать с диалогами с помощью Define"ов

1) Первым делом нужно в самое начало мода вставить : (если нету)


Code
//==============================[Виды диалогов]=================================  
#define DSL DIALOG_STYLE_LIST  
#define DSI DIALOG_STYLE_INPUT  
#define DSM DIALOG_STYLE_MSGBOX  
#define DSP DIALOG_STYLE_PASSWORD  
//==============================================================================  


Добавим цвет :

Code
//====================[цвета]=============================  
#define COLOR_GREY 0xAFAFAFAA  
#define COLOR_WHITE 0xFFFFFFAA  
//=========================================================  


2) Далее создадим Define"ы (в самом начале мода)

Code
//==================================[Пополнение счета]=========================  
#define D_DONATE 1  
#define D_DONATE1 2  
#define D_DONATE2 3  
#define D_DONATE3 4  
#define D_DONATE4 5  
#define D_DONATE5 6  
#define D_DONATE6 7  
#define D_DONATE7 8  
#define D_DONATE8 9  
#define D_DONATE9 10  
//========================================================================  


3) Далее идем в паблик OnPlayerCommandText
и создадим команду, которая будет вызывать нашу форму поплнения баланса.


Code
//==============================================================================  
     if(strcmp(cmdtext, "/donate", true) == 0) {  
     ShowPlayerDialog(playerid,D_DONATE,DSM,"Пополнение баланса [1/5]"," {FFFFFF}Вы зашли в меню пополнение игрового счета\n Мы принемаем:{FFFFFF}  \n - {0000FF}Webmoney - [Webmoney.ru]{ffffff} \n - {0000FF}Yandex money - [Yandex.ru]{ffffff}\n После оплаты деньги будут зачислены на игровой счет в течении {ff0000}24 часов{FFFFFF} \n Если вы согласны то нажмите далее","Далее","Отмена"); return 1; }  
//==============================================================================  


4) После того как создали команду, идем в паблик OnDialogResponse

Code
//==============================================================================  
if(dialogid == D_DONATE)  
         {  
         if(response)  
             {  
                 ShowPlayerDialog(playerid,D_DONATE1,DSL,"Пополнение баланса [2/5]","100 бонусов\n500 бонусов \n1000 бонусов\n1500 бонусов","Выбрать","Отмена");  
             }  
             else  
             {  
                 SendClientMessage(playerid,COLOR_GREY,"Вы вышли!");  
             }  
         }  
//==============================================================================  

//==============================================================================  
if(dialogid == D_DONATE1)  
      {  
      if(response)  
             {  
         if(listitem == 0)  
             {  
                 ShowPlayerDialog(playerid,D_DONATE2,DSM,"Пополнение баланса [3/5]","{FFFFFF}Действительно пополнить баланс на {ff0000}100 бонусов{FFFFFF}\n - Цена: {0000ff}100 рублей{FFFFFF} \nЕсли все верно, нажмите далее","Далее","Назад");  
             }  
         if(listitem == 1)  
             {  
                 ShowPlayerDialog(playerid,D_DONATE3,DSM,"Пополнение баланса [3/5]","{FFFFFF}Действительно пополнить баланс на {ff0000}500 бонусов{FFFFFF}\n - Цена: {0000ff}150 рублей{FFFFFF} \nЕсли все верно, нажмите далее","Далее","Назад");  
             }  
         if(listitem == 2)  
             {  
                 ShowPlayerDialog(playerid,D_DONATE4,DSM,"Пополнение баланса [3/5]","{FFFFFF}Действительно пополнить баланс на {ff0000}1000 бонусов{FFFFFF}\n - Цена: {0000ff}200 рублей{FFFFFF} \nЕсли все верно, нажмите далее","Далее","Назад");  
             }  
         if(listitem == 3)  
             {  
                 ShowPlayerDialog(playerid,D_DONATE5,DSM,"Пополнение баланса [3/5]","{FFFFFF}Действительно пополнить баланс на {ff0000}1500 бонусов{FFFFFF}\n - Цена: {0000ff}250 рублей{FFFFFF} \nЕсли все верно, нажмите далее","Далее","Назад");  
             }  
          }  
          else  
          {  
             ShowPlayerDialog(playerid,D_DONATE,DSM,"Пополнение баланса [1/5]"," Вы зашли в меню пополнение игрового счета:\n Мы принемаем  \n - Webmoney - [Webmoney.ru] \n - Yandex money - [Yandex.ru]\n После оплаты деньги будут зачислены на игровой счет в течении 24 часов \n Если вы согласны то нажмите далее","Далее","Отмена");  
             SendClientMessage(playerid,COLOR_GREY,"Вы были перемещены в основное меню!");  
          }  
      }  
//==============================================================================  

//==============================================================================  
if(dialogid == D_DONATE2)  
         {  
         if(response)  
             {  
                 ShowPlayerDialog(playerid,D_DONATE6,DSL,"Пополнение баланса [4/5]","Webmoney\nYandex money","Выбрать","Отмена");  
             }  
             else  
             {  
                 ShowPlayerDialog(playerid,D_DONATE1,DSL,"Пополнение баланса [2/5]","100 бонусов\n500 бонусов \n1000 бонусов\n1500 бонусов","Выбрать","Отмена");  
                 SendClientMessage(playerid,COLOR_GREY,"Вы были перемещены в основное меню!");  
             }  
         }  
//==============================================================================  

//==============================================================================  
if(dialogid == D_DONATE3)  
         {  
         if(response)  
             {  
                 ShowPlayerDialog(playerid,D_DONATE7,DSL,"Пополнение баланса [4/5]","Webmoney\nYandex money","Выбрать","Отмена");  
             }  
             else  
             {  
                 ShowPlayerDialog(playerid,D_DONATE1,DSL,"Пополнение баланса [2/5]","100 бонусов\n500 бонусов \n1000 бонусов\n1500 бонусов","Выбрать","Отмена");  
                 SendClientMessage(playerid,COLOR_GREY,"Вы были перемещены в основное меню!");  
             }  
         }  
//==============================================================================  

//==============================================================================  
if(dialogid == D_DONATE4)  
         {  
         if(response)  
             {  
                 ShowPlayerDialog(playerid,D_DONATE8,DSL,"Пополнение баланса [4/5]","Webmoney\nYandex money","Выбрать","Отмена");  
             }  
             else  
             {  
                 ShowPlayerDialog(playerid,D_DONATE1,DSL,"Пополнение баланса [2/5]","100 бонусов\n500 бонусов \n1000 бонусов\n1500 бонусов","Выбрать","Отмена");  
                 SendClientMessage(playerid,COLOR_GREY,"Вы были перемещены в основное меню!");  
             }  
         }  
//==============================================================================  

//==============================================================================  
if(dialogid == D_DONATE5)  
         {  
         if(response)  
             {  
                 ShowPlayerDialog(playerid,D_DONATE9,DSL,"Пополнение баланса [4/5]","Webmoney\nYandex money","Выбрать","Отмена");  
             }  
             else  
             {  
                 ShowPlayerDialog(playerid,D_DONATE1,DSL,"Пополнение баланса [2/5]","100 бонусов\n500 бонусов \n1000 бонусов\n1500 бонусов","Выбрать","Отмена");  
                 SendClientMessage(playerid,COLOR_GREY,"Вы были перемещены в основное меню!");  
             }  
         }  
//==============================================================================  

//==============================================================================  
if(dialogid == D_DONATE6)   
      {  
      if(response)  
             {  
         if(listitem == 0)  
             {  
                 SendClientMessage(playerid,COLOR_WHITE,"Чек");  
                 SendClientMessage(playerid,COLOR_WHITE,"****************************************************************");  
                 SendClientMessage(playerid,COLOR_WHITE," - Ваш заказ: {ff0000}100 бонусов{FFFFFF}");  
                 SendClientMessage(playerid,COLOR_WHITE," - Оплатить {ff0000}100 рублей{ffffff}");  
                 SendClientMessage(playerid,COLOR_WHITE," - Кошелек для оплаты (Webmoney) R99999999999");  
                 SendClientMessage(playerid,COLOR_WHITE,"****************************************************************");  
                 ShowPlayerDialog(playerid,123,DSM,"Пополнение баланса [5/5]","{FFFFFF}Чек\n****************************************************************\n - Ваш заказ:{FFFFFF} {ff0000}100 бонусов{FFFFFF}\n - Оплатить: {ff0000}100 рублей{ffffff}\n- Кошелек для оплаты (Webmoney) R99999999999\n****************************************************************\n","Ок","Назад");  
             }  
         if(listitem == 1)  
             {  
                 SendClientMessage(playerid,COLOR_WHITE,"Чек");  
                 SendClientMessage(playerid,COLOR_WHITE,"****************************************************************");  
                 SendClientMessage(playerid,COLOR_WHITE," - Ваш заказ: {ff0000}100 бонусов{FFFFFF}");  
                 SendClientMessage(playerid,COLOR_WHITE," - Оплатить {ff0000}100 рублей{ffffff}");  
                 SendClientMessage(playerid,COLOR_WHITE," - Кошелек для оплаты (Yandex) 41111111111111");  
                 SendClientMessage(playerid,COLOR_WHITE,"****************************************************************");  
                 ShowPlayerDialog(playerid,123,DSM,"Пополнение баланса [5/5]","{FFFFFF}Чек\n****************************************************************\n - Ваш заказ:{FFFFFF} {ff0000}100 бонусов{FFFFFF}\n - Оплатить: {ff0000}100 рублей{ffffff}\n- Кошелек для оплаты (Yandex) 41111111111111\n****************************************************************\n","Ок","Назад");  
             }  
          }  
          else  
          {  
             ShowPlayerDialog(playerid,D_DONATE2,DSM,"Пополнение баланса [3/5]","Действительно пополнить баланс на {ff0000}100 бонусов{FFFFFF}\n - Цена: {0000ff}100 рублей{FFFFFF} \nЕсли все верно, нажмите далее","Далее","Назад");  
             SendClientMessage(playerid,COLOR_GREY,"Вы были перемещены в основное меню!");  
          }  
      }  
//==============================================================================  

//==============================================================================  
if(dialogid == D_DONATE7) //web  
      {  
      if(response)  
             {  
         if(listitem == 0)  
             {  
                 SendClientMessage(playerid,COLOR_WHITE,"Чек");  
                 SendClientMessage(playerid,COLOR_WHITE,"****************************************************************");  
                 SendClientMessage(playerid,COLOR_WHITE," - Ваш заказ: {ff0000}500 бонусов{FFFFFF}");  
                 SendClientMessage(playerid,COLOR_WHITE," - Оплатить {ff0000}150 рублей{ffffff}");  
                 SendClientMessage(playerid,COLOR_WHITE," - Кошелек для оплаты (Webmoney) R99999999999");  
                 SendClientMessage(playerid,COLOR_WHITE,"****************************************************************");  
                 ShowPlayerDialog(playerid,123,DSM,"Пополнение баланса [5/5]","{FFFFFF}Чек\n****************************************************************\n - Ваш заказ:{FFFFFF} {ff0000}500 бонусов{FFFFFF}\n - Оплатить: {ff0000}150 рублей{ffffff}\n- Кошелек для оплаты (Webmoney) R99999999999\n****************************************************************\n","Ок","Назад");  
             }  
         if(listitem == 1)  
             {  
                 SendClientMessage(playerid,COLOR_WHITE,"Чек");  
                 SendClientMessage(playerid,COLOR_WHITE,"****************************************************************");  
                 SendClientMessage(playerid,COLOR_WHITE," - Ваш заказ: {ff0000}500 бонусов{FFFFFF}");  
                 SendClientMessage(playerid,COLOR_WHITE," - Оплатить {ff0000}150 рублей{ffffff}");  
                 SendClientMessage(playerid,COLOR_WHITE," - Кошелек для оплаты (Yandex) 41111111111111");  
                 SendClientMessage(playerid,COLOR_WHITE,"****************************************************************");  
                 ShowPlayerDialog(playerid,123,DSM,"Пополнение баланса [5/5]","{FFFFFF}Чек\n****************************************************************\n - Ваш заказ:{FFFFFF} {ff0000}500 бонусов{FFFFFF}\n - Оплатить: {ff0000}150 рублей{ffffff}\n- Кошелек для оплаты (Yandex) 41111111111111\n****************************************************************\n","Ок","Назад");  
             }  
          }  
          else  
          {  
             ShowPlayerDialog(playerid,D_DONATE3,DSM,"Пополнение баланса [3/5]","Действительно пополнить баланс на {ff0000}500 бонусов{FFFFFF}\n - Цена: {0000ff}150 рублей{FFFFFF} \nЕсли все верно, нажмите далее","Далее","Назад");  
             SendClientMessage(playerid,COLOR_GREY,"Вы были перемещены в основное меню!");  
          }  
      }  
//==============================================================================  

//==============================================================================  
if(dialogid == D_DONATE8) //web  
      {  
      if(response)  
             {  
         if(listitem == 0)  
             {  
                 SendClientMessage(playerid,COLOR_WHITE,"Чек");  
                 SendClientMessage(playerid,COLOR_WHITE,"****************************************************************");  
                 SendClientMessage(playerid,COLOR_WHITE," - Ваш заказ: {ff0000}1000 бонусов{FFFFFF}");  
                 SendClientMessage(playerid,COLOR_WHITE," - Оплатить {ff0000}200 рублей{ffffff}");  
                 SendClientMessage(playerid,COLOR_WHITE," - Кошелек для оплаты (Webmoney) R99999999999");  
                 SendClientMessage(playerid,COLOR_WHITE,"****************************************************************");  
                 ShowPlayerDialog(playerid,123,DSM,"Пополнение баланса [5/5]","{FFFFFF}Чек\n****************************************************************\n - Ваш заказ:{FFFFFF} {ff0000}1000 бонусов{FFFFFF}\n - Оплатить: {ff0000}200 рублей{ffffff}\n- Кошелек для оплаты (Webmoney) R99999999999\n****************************************************************\n","Ок","Назад");  
             }  
         if(listitem == 1)  
             {  
                 SendClientMessage(playerid,COLOR_WHITE,"Чек");  
                 SendClientMessage(playerid,COLOR_WHITE,"****************************************************************");  
                 SendClientMessage(playerid,COLOR_WHITE," - Ваш заказ: {ff0000}1000 бонусов{FFFFFF}");  
                 SendClientMessage(playerid,COLOR_WHITE," - Оплатить {ff0000}200 рублей{ffffff}");  
                 SendClientMessage(playerid,COLOR_WHITE," - Кошелек для оплаты (Yandex) 41111111111111");  
                 SendClientMessage(playerid,COLOR_WHITE,"****************************************************************");  
                 ShowPlayerDialog(playerid,123,DSM,"Пополнение баланса [5/5]","{FFFFFF}Чек\n****************************************************************\n - Ваш заказ:{FFFFFF} {ff0000}1000 бонусов{FFFFFF}\n - Оплатить: {ff0000}200 рублей{ffffff}\n- Кошелек для оплаты (Yandex) 41111111111111\n****************************************************************\n","Ок","Назад");  
             }  
          }  
          else  
          {  
             ShowPlayerDialog(playerid,D_DONATE4,DSM,"Пополнение баланса [3/5]","Действительно пополнить баланс на {ff0000}1000 бонусов{FFFFFF}\n - Цена: {0000ff}200 рублей{FFFFFF} \nЕсли все верно, нажмите далее","Далее","Назад");  
             SendClientMessage(playerid,COLOR_GREY,"Вы были перемещены в основное меню!");  
          }  
      }  
//==============================================================================  

//==============================================================================  
if(dialogid == D_DONATE9) //web  
      {  
      if(response)  
             {  
         if(listitem == 0)  
             {  
                 SendClientMessage(playerid,COLOR_WHITE,"Чек");  
                 SendClientMessage(playerid,COLOR_WHITE,"****************************************************************");  
                 SendClientMessage(playerid,COLOR_WHITE," - Ваш заказ: {ff0000}1500 бонусов{FFFFFF}");  
                 SendClientMessage(playerid,COLOR_WHITE," - Оплатить {ff0000}250 рублей{ffffff}");  
                 SendClientMessage(playerid,COLOR_WHITE," - Кошелек для оплаты (Webmoney) R99999999999");  
                 SendClientMessage(playerid,COLOR_WHITE,"****************************************************************");  
                 ShowPlayerDialog(playerid,123,DSM,"Пополнение баланса [5/5]","{FFFFFF}Чек\n****************************************************************\n - Ваш заказ:{FFFFFF} {ff0000}1500 бонусов{FFFFFF}\n - Оплатить: {ff0000}250 рублей{ffffff}\n- Кошелек для оплаты (Webmoney) R99999999999\n****************************************************************\n","Ок","Назад");  
             }  
         if(listitem == 1)  
             {  
                 SendClientMessage(playerid,COLOR_WHITE,"Чек");  
                 SendClientMessage(playerid,COLOR_WHITE,"****************************************************************");  
                 SendClientMessage(playerid,COLOR_WHITE," - Ваш заказ: {ff0000}1500 бонусов{FFFFFF}");  
                 SendClientMessage(playerid,COLOR_WHITE," - Оплатить {ff0000}250 рублей{ffffff}");  
                 SendClientMessage(playerid,COLOR_WHITE," - Кошелек для оплаты (Yandex) 41111111111111");  
                 SendClientMessage(playerid,COLOR_WHITE,"****************************************************************");  
                 ShowPlayerDialog(playerid,123,DSM,"Пополнение баланса [5/5]","{FFFFFF}Чек\n****************************************************************\n - Ваш заказ:{FFFFFF} {ff0000}1500 бонусов{FFFFFF}\n - Оплатить: {ff0000}250 рублей{ffffff}\n- Кошелек для оплаты (Yandex) 41111111111111\n****************************************************************\n","Ок","Назад");  
             }  
          }  
          else  
          {  
             ShowPlayerDialog(playerid,D_DONATE5,DSM,"Пополнение баланса [3/5]","Действительно пополнить баланс на {ff0000}1500 бонусов{FFFFFF}\n - Цена: {0000ff}300 рублей{FFFFFF} \nЕсли все верно, нажмите далее","Далее","Назад");  
             SendClientMessage(playerid,COLOR_GREY,"Вы были перемещены в основное меню!");  
          }  
      }  
//==============================================================================  


Ну вот и все
Автор neja


From Russia With Love!
  • Страница 1 из 1
  • 1
Поиск: