Правила форума Гаранты форума
Размещение рекламы AMX-X компилятор

Здравствуйте, гость Вход | Регистрация

Наши новости:

14-дек
24-апр
10-апр
11-апр

> Правила раздела

Перед созданием новой темы убедитесь, не искал ли кто-нибудь подобный плагин до вас, для этого следует воспользоваться поиском.

Все вновь созданные темы, с названием типа "Помогите найти", "А что это за плагин", "Ищу плагин", "Нужен плагин", "Подскажите пожалуйста название плагина" - будут удалены.
При создании темы постарайтесь максимально понятно сформулировать её заголовок так, чтобы он соответствовал функциям плагина который Вы ищите. В том случае, если Вам не удается сформулировать мысль и правильно расписать всё в теме, воспользуйтесь графическим редактором, к примеру Paint, что бы примерно изобразить функции нужного Вам плагина.

Рандомный Класс Команды

[РЕШЕНО]
Статус пользователя $@NyA
сообщение 28.3.2019, 21:41
Сообщение #1


Иконка группы

Стаж: 18 лет

Сообщений: 987
Благодарностей: 529
Полезность: 1050

Эсть ли такой плагин,что бы после выбора команды,класс из 4 видов давался автоматически случайный(что бы меню классов непоказывалось вовсе).
Спасибо


МультиМод CS
Перейти в начало страницы         Просмотр профиля    Отправить личное сообщение
   Цитировать сообщение
Статус пользователя $@NyA
сообщение 29.3.2019, 22:28
Сообщение #2


Иконка группы

Стаж: 18 лет

Сообщений: 987
Благодарностей: 529
Полезность: 1050

Вот нашел то,что нужно.
Помогите убрать Reapi.

Код:
 #include <amxmodx>
#include <reapi>

#pragma semicolon 1

const MENU_STRLEN = 512;
const TIME_MENU = INVALID_HANDLE;
const MENU_KEYS = MENU_KEY_0|MENU_KEY_1|MENU_KEY_2|MENU_KEY_3|MENU_KEY_4;

new const MENU_TAB[] = "^t^t^t^t";

public plugin_init() {
register_plugin("Team Select Menu", "1.0", "Javekson");
register_message(get_user_msgid("VGUIMenu"), "MsgVGUIMenu");
register_menucmd(register_menuid("_team_select_menu"), MENU_KEYS, "HandleTeamSelectMenu");
}

public MsgVGUIMenu(const iMsgID, const iDest, const iIndex) {
ShowTeamSelectMenu(iIndex);
return PLUGIN_HANDLED;
}

public ShowTeamSelectMenu(const id) {
new sMenu[MENU_STRLEN], iLenMenu = formatex(sMenu, charsmax(sMenu), "%s\yМеню выбора команды^n^n", MENU_TAB);
new bsKeys = MENU_KEY_1|MENU_KEY_2|MENU_KEY_3|MENU_KEY_4;
iLenMenu += formatex(sMenu[iLenMenu], charsmax(sMenu) - iLenMenu, "%s\y1. \wТеррорист^n%s\y2. \wКонтр-террорист^n^n%s\y3. \wАвто-выбор^n%s\y4. \wНаблюдатель^n^n", MENU_TAB, MENU_TAB, MENU_TAB, MENU_TAB);
if(get_member(id, m_iTeam) != TEAM_UNASSIGNED) {
bsKeys |= MENU_KEY_0;
formatex(sMenu[iLenMenu], charsmax(sMenu) - iLenMenu, "%s\y0. \wВыход", MENU_TAB);
}
return show_menu(id, bsKeys, sMenu, TIME_MENU, "_team_select_menu");
}

public HandleTeamSelectMenu(const id, const iKey) {
switch(iKey) {
case 0: {
rg_join_team(id, TEAM_TERRORIST);
rg_set_user_team(id, TEAM_TERRORIST, MODEL_AUTO);
}
case 1: {
rg_join_team(id, TEAM_CT);
rg_set_user_team(id, TEAM_CT, MODEL_AUTO);
}
case 2: {
rg_join_team(id, TeamName:random_num(_:TEAM_TERRORIST, _:TEAM_SPECTATOR));
}
case 3: {
rg_join_team(id, TEAM_SPECTATOR);
}
case 9: {
return PLUGIN_HANDLED;
}
}
return PLUGIN_HANDLED;
}


МультиМод CS
Перейти в начало страницы         Просмотр профиля    Отправить личное сообщение
   + Цитировать сообщение
Статус пользователя adva
сообщение 29.3.2019, 22:33
Сообщение #3


Иконка группы

Стаж: 12 лет

Сообщений: 2543
Благодарностей: 1676
Полезность: 819

Меценат Меценат

ты бы лучше не уходил от прогресса, а наоборот.
Перейти в начало страницы         Просмотр профиля    Отправить личное сообщение
   + Цитировать сообщение
Статус пользователя csparena
сообщение 30.3.2019, 8:23
Сообщение #4


Стаж: 10 лет

Сообщений: 2377
Благодарностей: 541
Полезность: 106

$@NyA,
держи, убрал reapi для тебя
Код
#include <amxmodx>

#pragma semicolon 1

const MENU_STRLEN = 512;
const TIME_MENU = INVALID_HANDLE;
const MENU_KEYS = MENU_KEY_0|MENU_KEY_1|MENU_KEY_2|MENU_KEY_3|MENU_KEY_4;

new const MENU_TAB[] =         "^t^t^t^t";

public plugin_init() {
   register_plugin("Team Select Menu", "1.0", "Javekson");
   register_message(get_user_msgid("VGUIMenu"), "MsgVGUIMenu");
   register_menucmd(register_menuid("_team_select_menu"), MENU_KEYS, "HandleTeamSelectMenu");
}

public MsgVGUIMenu(const iMsgID, const iDest, const iIndex) {
   ShowTeamSelectMenu(iIndex);
   return PLUGIN_HANDLED;
}

public ShowTeamSelectMenu(const id) {
   new sMenu[MENU_STRLEN], iLenMenu = formatex(sMenu, charsmax(sMenu), "%s\yМеню выбора команды^n^n", MENU_TAB);
   new bsKeys = MENU_KEY_1|MENU_KEY_2|MENU_KEY_3|MENU_KEY_4;
   iLenMenu += formatex(sMenu[iLenMenu], charsmax(sMenu) - iLenMenu, "%s\y1. \wТеррорист^n%s\y2. \wКонтр-террорист^n^n%s\y3. \wАвто-выбор^n%s\y4. \wНаблюдатель^n^n", MENU_TAB, MENU_TAB, MENU_TAB, MENU_TAB);
   if(get_member(id, m_iTeam) != TEAM_UNASSIGNED) {
      bsKeys |= MENU_KEY_0;
      formatex(sMenu[iLenMenu], charsmax(sMenu) - iLenMenu, "%s\y0. \wВыход", MENU_TAB);
   }
   return show_menu(id, bsKeys, sMenu, TIME_MENU, "_team_select_menu");
}

public HandleTeamSelectMenu(const id, const iKey) {
   switch(iKey) {
      case 0: {
         rg_join_team(id, TEAM_TERRORIST);
         rg_set_user_team(id, TEAM_TERRORIST, MODEL_AUTO);
      }
      case 1: {
         rg_join_team(id, TEAM_CT);
         rg_set_user_team(id, TEAM_CT, MODEL_AUTO);
      }
      case 2: {
         rg_join_team(id, TeamName:random_num(_:TEAM_TERRORIST, _:TEAM_SPECTATOR));
      }
      case 3: {
         rg_join_team(id, TEAM_SPECTATOR);
      }
      case 9: {
         return PLUGIN_HANDLED;
      }
   }
   return PLUGIN_HANDLED;
}


Отредактировал: csparena, - 30.3.2019, 8:29
Перейти в начало страницы         Просмотр профиля    Отправить личное сообщение
Поблагодарили 1 раз
   + Цитировать сообщение
Статус пользователя $@NyA
сообщение 30.3.2019, 20:33
Сообщение #5


Иконка группы

Стаж: 18 лет

Сообщений: 987
Благодарностей: 529
Полезность: 1050

csparena,
Ахаха.Ставлю + за такой юмор.
Я так и знал,что ктото так и ответит)


МультиМод CS
Перейти в начало страницы         Просмотр профиля    Отправить личное сообщение
Поблагодарили 1 раз
   + Цитировать сообщение
Статус пользователя csparena
сообщение 30.3.2019, 20:46
Сообщение #6


Стаж: 10 лет

Сообщений: 2377
Благодарностей: 541
Полезность: 106

Цитата($@NyA @ 30.3.2019, 22:33) *
csparena,
Ахаха.Ставлю + за такой юмор.
Я так и знал,что ктото так и ответит)

pardon.gif
Перейти в начало страницы         Просмотр профиля    Отправить личное сообщение
   + Цитировать сообщение
Статус пользователя Legenda
сообщение 31.3.2019, 21:31
Сообщение #7


Иконка группы

Стаж: 16 лет

Сообщений: 3619
Благодарностей: 1706
Полезность: 1010

Меценат Меценат

Цитата($@NyA @ 28.3.2019, 22:41) *
Эсть ли такой плагин,что бы после выбора команды,класс из 4 видов давался автоматически случайный(что бы меню классов непоказывалось вовсе).
Спасибо


https://forums.alliedmods.net/showthread.php?t=250724
не ?
Перейти в начало страницы         Просмотр профиля    Отправить личное сообщение
   + Цитировать сообщение
Статус пользователя $@NyA
сообщение 31.3.2019, 22:44
Сообщение #8


Иконка группы

Стаж: 18 лет

Сообщений: 987
Благодарностей: 529
Полезность: 1050

Legenda,
Не,там только работает рандом класса,если включен рандом команды.


МультиМод CS
Перейти в начало страницы         Просмотр профиля    Отправить личное сообщение
   + Цитировать сообщение
Статус пользователя BaHeK
сообщение 1.4.2019, 8:10
Сообщение #9


Стаж: 17 лет

Сообщений: 571
Благодарностей: 505
Полезность: 651

Код:
#include <amxmodx>
#include <cstrike>

#pragma semicolon 1

const MENU_STRLEN = 512;
const TIME_MENU = INVALID_HANDLE;
const MENU_KEYS = MENU_KEY_0|MENU_KEY_1|MENU_KEY_2|MENU_KEY_3|MENU_KEY_4;

new const MENU_TAB[] = "^t^t^t^t";

public plugin_init() {
register_plugin("Team Select Menu", "1.0", "Javekson");
register_message(get_user_msgid("VGUIMenu"), "MsgVGUIMenu");
register_menucmd(register_menuid("_team_select_menu"), MENU_KEYS, "HandleTeamSelectMenu");
}

public MsgVGUIMenu(const iMsgID, const iDest, const iIndex) {
ShowTeamSelectMenu(iIndex);
return PLUGIN_HANDLED;
}

public ShowTeamSelectMenu(const id) {
new sMenu[MENU_STRLEN], iLenMenu = formatex(sMenu, charsmax(sMenu), "%s\yМеню выбора команды^n^n", MENU_TAB);
new bsKeys = MENU_KEY_1|MENU_KEY_2|MENU_KEY_3|MENU_KEY_4;
iLenMenu += formatex(sMenu[iLenMenu], charsmax(sMenu) - iLenMenu, "%s\y1. \wТеррорист^n%s\y2. \wКонтр-террорист^n^n%s\y3. \wАвто-выбор^n%s\y4. \wНаблюдатель^n^n", MENU_TAB, MENU_TAB, MENU_TAB, MENU_TAB);
if(is_user_connected(id) && cs_get_user_team(id) != CS_TEAM_UNASSIGNED) {
bsKeys |= MENU_KEY_0;
formatex(sMenu[iLenMenu], charsmax(sMenu) - iLenMenu, "%s\y0. \wВыход", MENU_TAB);
}
return show_menu(id, bsKeys, sMenu, TIME_MENU, "_team_select_menu");
}

public HandleTeamSelectMenu(const id, const iKey) {
switch(iKey) {
case 0: {
engclient_cmd(id, "jointeam", "1");
engclient_cmd(id, "joinclass", "5");
}
case 1: {
engclient_cmd(id, "jointeam", "2");
engclient_cmd(id, "joinclass", "5");
}
case 2: {
engclient_cmd(id, "jointeam", "5");
engclient_cmd(id, "joinclass", "5");
}
case 3: {
engclient_cmd(id, "jointeam", "6");
}
case 9: {
return PLUGIN_HANDLED;
}
}
return PLUGIN_HANDLED;
}

Пробуй


Чуть-чуть нарушаю
http://img-host.su/aoN1.png
Перейти в начало страницы         Просмотр профиля    Отправить личное сообщение
Поблагодарили 2 раз
   + Цитировать сообщение
Статус пользователя $@NyA
сообщение 27.7.2019, 17:47
Сообщение #10


Иконка группы

Стаж: 18 лет

Сообщений: 987
Благодарностей: 529
Полезность: 1050

BaHeK
Не работает вовсе.
Вот пример ещё такой от Артиста666 - работает.
Код:
#include <amxmodx>

public plugin_init()
{
register_message(get_user_msgid("VGUIMenu"), "message_vgui_menu")
register_message(get_user_msgid("ShowMenu"), "message_show_menu")
}
public message_vgui_menu(msgid, dest, id)
{
switch(get_msg_arg_int(1))
{
case 26, 27:
{
set_task(0.0, "random_class", id, _, _, "a", 1)
return PLUGIN_HANDLED
}
}
return PLUGIN_CONTINUE
}
public message_show_menu(msgid, dest, id)
{
static text[6]; get_msg_arg_string(4, text, charsmax(text))
switch(text[4])
{
case 'r', 'S':
{
set_task(0.0, "random_class", id, _, _, "a", 1)
return PLUGIN_HANDLED
}
}
return PLUGIN_CONTINUE
}
public random_class(id)
{
switch(random_num(1, 4))
{
case 1: engclient_cmd(id, "joinclass", "1")
case 2: engclient_cmd(id, "joinclass", "2")
case 3: engclient_cmd(id, "joinclass", "3")
case 4: engclient_cmd(id, "joinclass", "4")
}
}

Но заметил,что с им тупо неработает выбор меню дробовиков.

Тоисть нажимаешь B 2 - и сразу пишет по центру екрана - Сейчас данное сообщение недоступно

Что за дела



МультиМод CS
Перейти в начало страницы         Просмотр профиля    Отправить личное сообщение
   + Цитировать сообщение
Статус пользователя $@NyA
сообщение 21.12.2019, 0:42
Сообщение #11


Иконка группы

Стаж: 18 лет

Сообщений: 987
Благодарностей: 529
Полезность: 1050

Хм.Помог такой метод с arg от ВаНеК
На этом уже твердо Решено
Код:
public message_show_menu(msgid, dest, id)
{
new arg[32]
get_msg_arg_string(4, arg, charsmax(arg))

if(equali(arg, "#Terrorist_Select") || equali(arg, "#CT_Select"))
{
set_task(0.0, "random_class", id, _, _, "a", 1)
return PLUGIN_HANDLED
}
return PLUGIN_CONTINUE
}


МультиМод CS
Перейти в начало страницы         Просмотр профиля    Отправить личное сообщение
Поблагодарили 1 раз
   + Цитировать сообщение
  Ответить в данную темуНачать новую тему
 
0 пользователей и 1 гостей читают эту тему: