Заказать Сервер Заказать Плагин Контакты Поиск

[ вход ]
[ последние сообщения ]

Страница 1 из 512345»
Форум » SourceMod - Counter Strike Source && CS GO » Обсуждение » MENU
MENU
Nahal Дата: Среда, 17.06.2015, 16:48:52 | Сообщение # 1
Сообщений: 205
Репутация: 8 [ +/- ]
Добрый день всем!!!
Пишу плагин VIP. Но я еще не многу разобраться как сделать к каждому пункту отдельную проверку и свой код, УЖЕ МОЗГИ КИПЯТ... zloy


Сообщение отредактировал Nahal - Среда, 17.06.2015, 18:27:33
 
Scarface_slv Дата: Среда, 17.06.2015, 18:29:23 | Сообщение # 2
Сообщений: 749
Репутация: 61 [ +/- ]
Ну есть для этого глобальная переменная типа bool. new bool:a[MAXPLAYERS+1]

При нажатие в меню на брызги воды проверяем включена ли она или нет у игрока
if(a[client] == true) a[client] = false-выключаем если включен
else a[client] = true; - включаем если выключен

Там где пункты с меню тоже создаем проверку:
if(a[client] == true) DrawPanelItem(panel, "Брызги воды [+]");
else DrawPanelItem(panel, "Брызги воды [-]");

И наверно надо в player_spawn проверить if(a[client] = true) - то включаем брызги снова.
Мне было проще показать на примере. Но лучше сам gut
 
Nahal Дата: Среда, 17.06.2015, 18:35:37 | Сообщение # 3
Сообщений: 205
Репутация: 8 [ +/- ]
Scarface_slv, Но я еще не многу разобраться как сделать к каждому пункту отдельную проверку и свой код,
 
Scarface_slv Дата: Среда, 17.06.2015, 18:38:40 | Сообщение # 4
Сообщений: 749
Репутация: 61 [ +/- ]
Есть такая вещь как option в твоем примере - смотри что он получает при нажатие на какой либо пункт Print
 
Nahal Дата: Среда, 17.06.2015, 18:43:04 | Сообщение # 5
Сообщений: 205
Репутация: 8 [ +/- ]
Scarface_slv, Я вообще не понимаю если честно, Геморой какойто(


Сообщение отредактировал Nahal - Среда, 17.06.2015, 18:43:36
 
«SeReGa»☆ Дата: Среда, 17.06.2015, 18:48:48 | Сообщение # 6
Сообщений: 395
Репутация: 37 [ +/- ]
Nahal, накидал грязи!
 
Nahal Дата: Среда, 17.06.2015, 18:55:01 | Сообщение # 7
Сообщений: 205
Репутация: 8 [ +/- ]
Тк, подскажите я вообще не вникаю(
 
Scarface_slv Дата: Среда, 17.06.2015, 18:55:09 | Сообщение # 8
Сообщений: 749
Репутация: 61 [ +/- ]
Код

public Select_Panel(Handle:panel, MenuAction:action, client, option)
{
           if (action == MenuAction_Select)
           {
                   if(option == 1)
                   {
                          PrintToChat(client, "Еффект воды %d", option);
                          SetVariantString("WaterSurfaceExplosion");
                          AcceptEntityInput( client, "DispatchEffect");
                   }
                   if (option < 5) ShowMyPanel(client);
           }
}


Сообщение отредактировал Scarface_slv - Среда, 17.06.2015, 18:56:10
 
Nahal Дата: Среда, 17.06.2015, 18:58:58 | Сообщение # 9
Сообщений: 205
Репутация: 8 [ +/- ]
Scarface_slv, А что вообще за проверку ты скинул непонятную?
Цитата Scarface_slv ()
При нажатие в меню на брызги воды проверяем включена ли она или нет у игрока
if(a[client] == true) a[client] = false-выключаем если включен
else a[client] = true; - включаем если выключен

Там где пункты с меню тоже создаем проверку:
if(a[client] == true) DrawPanelItem(panel, "Брызги воды [+]");
else DrawPanelItem(panel, "Брызги воды [-]");

И наверно надо в player_spawn проверить if(a[client] = true) - то включаем брызги снова.
Мне было проще показать на примере. Но лучше сам
 
Scarface_slv Дата: Среда, 17.06.2015, 18:59:47 | Сообщение # 10
Сообщений: 749
Репутация: 61 [ +/- ]
Это ладно, ты забей, рановато видимо тебе
 
Nahal Дата: Среда, 17.06.2015, 19:01:28 | Сообщение # 11
Сообщений: 205
Репутация: 8 [ +/- ]
Scarface_slv, Ну блин уж сказал договаривай как правильно это проверку сделать?
 
«SeReGa»☆ Дата: Среда, 17.06.2015, 19:06:13 | Сообщение # 12
Сообщений: 395
Репутация: 37 [ +/- ]
как то так >Удачи!



Сообщение отредактировал «SeReGa»☆ - Среда, 17.06.2015, 19:14:35
 
Scarface_slv Дата: Среда, 17.06.2015, 19:12:06 | Сообщение # 13
Сообщений: 749
Репутация: 61 [ +/- ]
Код

new bool:a[MAXPLAYERS+1]

public Select_Panel(Handle:panel, MenuAction:action, client, option)  
{  
            if (action == MenuAction_Select)  
            {  
                    if(option == 1)  
                    {  
                           if(a[client] == true)  
                           {
                    PrintToChat(client, "Еффект воды выключен");  
                    a[client] = false;
                           }
                           else
                           {
                    PrintToChat(client, "Еффект воды включен");  
                    a[client] = true;
                           }
                    }  
                    if (option < 5) ShowMyPanel(client);  
            }  
}

Далее в player_hurt -> if(a[client] == true) SetVariantString("WaterSurfaceExplosion"); AcceptEntityInput( client, "DispatchEffect");
 
«SeReGa»☆ Дата: Среда, 17.06.2015, 19:18:19 | Сообщение # 14
Сообщений: 395
Репутация: 37 [ +/- ]
2 готовых к работе примера Думаю Справишся!
 
Nahal Дата: Среда, 17.06.2015, 19:27:34 | Сообщение # 15
Сообщений: 205
Репутация: 8 [ +/- ]
Суда то что? public player_hurt(Handle:event, const String:name[], bool:silent)

if(a[client] == true)
{
SetVariantString("WaterSurfaceExplosion");
AcceptEntityInput( client, "DispatchEffect");
}
 
Форум » SourceMod - Counter Strike Source && CS GO » Обсуждение » MENU
Страница 1 из 512345»
Поиск: