[ Новые сообщения · Участники · Правила форума · Поиск · RSS ]
  • Страница 1 из 1
  • 1
Модератор форума: Stepan23  
Урок Pawno 15 (Создание Оружейного магазина)
Stepan23Дата: Воскресенье, 19.12.2010, 23:17 | Сообщение # 1
Майор
Группа: Администраторы
Сообщений: 91
Репутация: 6
Статус: Offline
Сейчас покажу, как создать ветвистый диалог с покупкой оружия...
Для начала забиваем переменную:
Code
new GunShop;

Далее создаём пикап в OnGamemodeInit
Code
GunShop = CreatePickup(1274, 1, 312.4039,-165.5755,999.6010, -1); //Координаты можете поставить свой

Затем создаём диалог к пикапу...в OnPlayerPickupPickup
Code
if (pickupid == GunShop)// Оружейный Магазин  
{  
    if(PlayerInfo[playerid][pGunLic] != 1)  
    {  
       SendClientMessage(playerid, COLOR_GREY, "У Вас нет лицензии на оружие, чтобы сделать покупку.");  
       return 1;  
    }  
       new listitems[] = "Пистолеты\nДробовики\nПолу-Автоматы\nАвтоматы\nВинтовки\nПиротехника";  
       ShowPlayerDialog(playerid,60,DIALOG_STYLE_LIST,"Оружейный Магазин",listitems,"Принять","Отмена");  
}

И в конце находим: OnDialogResponse и вставляем туда:
Code
else if(dialogid == 60)  
     {  
         if(response)  
          {  
              if(listitem == 0)  
              {  
                 new listitems[] = "Пистолет [$350]\nПистолет с Глушителем [$450]\nПустынный Орёл [$850]";  
                 ShowPlayerDialog(playerid,65,DIALOG_STYLE_LIST,"Оружейный Магазин - Пистолеты",listitems,"Принять","Назад");  
                 return 0;  
                }  
                if(listitem == 1)  
                {  
                    new listitems[] = "Помповое Ружьё [$1000]\nОбрез [$1250]\nS.P.A.S.-7 [$1650]";  
                 ShowPlayerDialog(playerid,70,DIALOG_STYLE_LIST,"Оружейный Магазин - Дробовики",listitems,"Принять","Назад");  
                 return 0;  
             }  
             if(listitem == 2)  
                {  
                    new listitems[] = "MP5 [$2000]\nTec-9 [$1950]\nUzi [$1950]";  
                 ShowPlayerDialog(playerid,75,DIALOG_STYLE_LIST,"Оружейный Магазин - Полу-Автоматические Винтовки",listitems,"Принять","Отмена");  
                 return 0;  
             }  
             if(listitem == 3)  
                {  
                    new listitems[] = "M-16 [$3500]\nAK-47 [$3100]";  
                 ShowPlayerDialog(playerid,80,DIALOG_STYLE_LIST,"Оружейный Магазин - Автоматические Винтовки",listitems,"Принять","Отмена");  
                 return 0;  
             }  
             if(listitem == 4)  
                {  
                    new listitems[] = "Карабин [$3500]\nСнайперская Винтовка [$5000]";  
                 ShowPlayerDialog(playerid,85,DIALOG_STYLE_LIST,"Оружейный Магазин - Винтовки",listitems,"Принять","Отмена");  
                 return 0;  
             }  
             if(listitem == 5)  
                {  
                    new listitems[] = "Коктейль Молотова [$4500]\nГраната [$2500]\nДымовая Граната [$2500]\nС-4 [$25000]";  
                 ShowPlayerDialog(playerid,90,DIALOG_STYLE_LIST,"Оружейный Магазин - Пиротехника",listitems,"Принять","Отмена");  
                 return 0;  
             }  
           }  
           else  
           {  
         }  
        }  
        else if(dialogid == 65)  
     {  
         if(response)  
          {  
              if(listitem == 0)  
              {  
                 if(GetPlayerMoney(playerid) < 350) return SendClientMessage(playerid, COLOR_GRAD4, "У вас недостаточно денег.");  
                 GivePlayerWeapon(playerid, 22, 34);  
                 ServerGivePlayerMoney(playerid, -350);  
                 new listitems[] = "Пистолет [$350]\nПистолет с Глушителем [$450]\nПустынный Орёл [$850]";  
                 ShowPlayerDialog(playerid,65,DIALOG_STYLE_LIST,"Оружейный Магазин - Пистолеты",listitems,"Принять","Назад");  
                 return 0;  
                }  
                if(listitem == 1)  
                {  
                 if(GetPlayerMoney(playerid) < 450) return SendClientMessage(playerid, COLOR_GRAD4, "У вас недостаточно денег.");  
                    GivePlayerWeapon(playerid, 23, 34);  
                 ServerGivePlayerMoney(playerid, -450);  
                 new listitems[] = "Пистолет [$350]\nПистолет с Глушителем [$450]\nПустынный Орёл [$850]";  
                 ShowPlayerDialog(playerid,65,DIALOG_STYLE_LIST,"Оружейный Магазин - Пистолеты",listitems,"Принять","Назад");  
                 return 0;  
             }  
             if(listitem == 2)  
                {  
                 if(GetPlayerMoney(playerid) < 850) return SendClientMessage(playerid, COLOR_GRAD4, "У вас недостаточно денег.");  
                    GivePlayerWeapon(playerid, 24, 14);  
                 ServerGivePlayerMoney(playerid, -850);  
                 new listitems[] = "Пистолет [$350]\nПистолет с Глушителем [$450]\nПустынный Орёл [$850]";  
                 ShowPlayerDialog(playerid,65,DIALOG_STYLE_LIST,"Оружейный Магазин - Пистолеты",listitems,"Принять","Назад");  
                 return 0;  
             }  
           }  
           else  
           {  
           new listitems[] = "Пистолеты\nДробовики\nПолу-Автоматы\nАвтоматы\nВинтовки\nПиротехника";  
         ShowPlayerDialog(playerid,60,DIALOG_STYLE_LIST,"Оружейный Магазин",listitems,"Принять","Отмена");  
         }  
        }  
        else if(dialogid == 70)  
     {  
         if(response)  
          {  
              if(listitem == 0)  
              {  
                 if(GetPlayerMoney(playerid) < 1000) return SendClientMessage(playerid, COLOR_GRAD4, "У вас недостаточно денег.");  
                 GivePlayerWeapon(playerid, 25, 15);  
                 ServerGivePlayerMoney(playerid, -1000);  
                 new listitems[] = "Помповое Ружьё [$1000]\nОбрез [$1250]\nS.P.A.S.-7 [$1650]";  
                 ShowPlayerDialog(playerid,70,DIALOG_STYLE_LIST,"Оружейный Магазин - Дробовики",listitems,"Принять","Назад");  
                 return 0;  
                }  
                if(listitem == 1)  
                {  
                 if(GetPlayerMoney(playerid) < 1250) return SendClientMessage(playerid, COLOR_GRAD4, "У вас недостаточно денег.");  
                    GivePlayerWeapon(playerid, 26, 6);  
                 ServerGivePlayerMoney(playerid, -1250);  
                 new listitems[] = "Помповое Ружьё [$1000]\nОбрез [$1250]\nS.P.A.S.-7 [$1650]";  
                 ShowPlayerDialog(playerid,70,DIALOG_STYLE_LIST,"Оружейный Магазин - Дробовики",listitems,"Принять","Назад");  
                 return 0;  
             }  
             if(listitem == 2)  
                {  
                 if(GetPlayerMoney(playerid) < 1650) return SendClientMessage(playerid, COLOR_GRAD4, "У вас недостаточно денег.");  
                    GivePlayerWeapon(playerid, 27, 14);  
                 ServerGivePlayerMoney(playerid, -1650);  
                 new listitems[] = "Помповое Ружьё [$1000]\nОбрез [$1250]\nS.P.A.S.-7 [$1650]";  
                 ShowPlayerDialog(playerid,70,DIALOG_STYLE_LIST,"Оружейный Магазин - Дробовики",listitems,"Принять","Назад");  
                 return 0;  
             }  
           }  
           else  
           {  
           new listitems[] = "Пистолеты\nДробовики\nПолу-Автоматы\nАвтоматы\nВинтовки\nПиротехника";  
         ShowPlayerDialog(playerid,60,DIALOG_STYLE_LIST,"Оружейный Магазин",listitems,"Принять","Отмена");  
         }  
        }  
        else if(dialogid == 75)  
     {  
         if(response)  
          {  
              if(listitem == 0)  
              {  
                 if(GetPlayerMoney(playerid) < 2000) return SendClientMessage(playerid, COLOR_GRAD4, "У вас недостаточно денег.");  
                 GivePlayerWeapon(playerid, 29, 60);  
                 ServerGivePlayerMoney(playerid, -2000);  
                 new listitems[] = "MP5 [$2000]\nTec-9 [$1950]\nUzi [$1950]";  
                 ShowPlayerDialog(playerid,75,DIALOG_STYLE_LIST,"Оружейный Магазин - Полу-Автоматические Винтовки",listitems,"Принять","Отмена");  
                 return 0;  
                }  
                if(listitem == 1)  
                {  
                 if(GetPlayerMoney(playerid) < 1950) return SendClientMessage(playerid, COLOR_GRAD4, "У вас недостаточно денег.");  
                    GivePlayerWeapon(playerid, 32, 60);  
                 ServerGivePlayerMoney(playerid, -1950);  
                 new listitems[] = "MP5 [$2000]\nTec-9 [$1950]\nUzi [$1950]";  
                 ShowPlayerDialog(playerid,75,DIALOG_STYLE_LIST,"Оружейный Магазин - Полу-Автоматические Винтовки",listitems,"Принять","Отмена");  
                 return 0;  
             }  
             if(listitem == 2)  
                {  
                 if(GetPlayerMoney(playerid) < 1950) return SendClientMessage(playerid, COLOR_GRAD4, "У вас недостаточно денег.");  
                    GivePlayerWeapon(playerid, 28, 60);  
                 ServerGivePlayerMoney(playerid, -1950);  
                 new listitems[] = "MP5 [$2000]\nTec-9 [$1950]\nUzi [$1950]";  
                 ShowPlayerDialog(playerid,75,DIALOG_STYLE_LIST,"Оружейный Магазин - Полу-Автоматические Винтовки",listitems,"Принять","Отмена");  
                 return 0;  
             }  
           }  
           else  
           {  
           new listitems[] = "Пистолеты\nДробовики\nПолу-Автоматы\nАвтоматы\nВинтовки\nПиротехника";  
         ShowPlayerDialog(playerid,60,DIALOG_STYLE_LIST,"Оружейный Магазин",listitems,"Принять","Отмена");  
         }  
        }  
        else if(dialogid == 80)  
     {  
         if(response)  
          {  
              if(listitem == 0)  
              {  
                 if(GetPlayerMoney(playerid) < 3500) return SendClientMessage(playerid, COLOR_GRAD4, "У вас недостаточно денег.");  
                 GivePlayerWeapon(playerid, 31, 60);  
                 ServerGivePlayerMoney(playerid, -3500);  
                 new listitems[] = "M-16 [$3500]\nAK-47 [$3100]";  
                 ShowPlayerDialog(playerid,80,DIALOG_STYLE_LIST,"Оружейный Магазин - Автоматические Винтовки",listitems,"Принять","Отмена");  
                 return 0;  
                }  
                if(listitem == 1)  
                {  
                 if(GetPlayerMoney(playerid) < 3100) return SendClientMessage(playerid, COLOR_GRAD4, "У вас недостаточно денег.");  
                    GivePlayerWeapon(playerid, 30, 60);  
                 ServerGivePlayerMoney(playerid, -3100);  
                 new listitems[] = "M-16 [$3500]\nAK-47 [$3100]";  
                 ShowPlayerDialog(playerid,80,DIALOG_STYLE_LIST,"Оружейный Магазин - Автоматические Винтовки",listitems,"Принять","Отмена");  
                 return 0;  
             }  
           }  
           else  
           {  
           new listitems[] = "Пистолеты\nДробовики\nПолу-Автоматы\nАвтоматы\nВинтовки\nПиротехника";  
         ShowPlayerDialog(playerid,60,DIALOG_STYLE_LIST,"Оружейный Магазин",listitems,"Принять","Отмена");  
         }  
        }

Конец..
 
  • Страница 1 из 1
  • 1
Поиск: