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

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

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

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

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

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

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

Блокировка иконки "зона закупа"

Статус пользователя r1nk0
сообщение 13.4.2015, 13:17
Сообщение #1


Стаж: 12 лет

Сообщений: 1417
Благодарностей: 705
Полезность: 349

Ищу плагин который блокирует иконку закупа на базе - она же тележка.


Создание и редактирование карт ($) - vk.com/id476857873
Настройка и техническое обслуживание ваших игровых серверов - vk.com/id476857873
Перейти в начало страницы         Просмотр профиля    Отправить личное сообщение
   Цитировать сообщение
Статус пользователя stardock
сообщение 13.4.2015, 13:17
Сообщение #2


Стаж: 13 лет

Сообщений: 222
Благодарностей: 94
Полезность: 78

А для чего?
Перейти в начало страницы         Просмотр профиля    Отправить личное сообщение
   + Цитировать сообщение
Статус пользователя r1nk0
сообщение 13.4.2015, 13:19
Сообщение #3


Стаж: 12 лет

Сообщений: 1417
Благодарностей: 705
Полезность: 349

Цитата(stardock @ 13.4.2015, 14:17) *
А для чего?


заблокировать иконку зоны покупки,очевидно же.


Создание и редактирование карт ($) - vk.com/id476857873
Настройка и техническое обслуживание ваших игровых серверов - vk.com/id476857873
Перейти в начало страницы         Просмотр профиля    Отправить личное сообщение
   + Цитировать сообщение
Статус пользователя Bloo
сообщение 13.4.2015, 13:20
Сообщение #4


Стаж: 12 лет

Сообщений: 15547
Благодарностей: 6971
Полезность: 1206

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

new g_msgStatusIcon;

// Define the Plugin Version
new const VERSION[] = "1.0";

public plugin_init()
{
register_plugin("Block Buy Menu", VERSION, "Shuttle_Wave/ConnorMcleod")

// Block BuyZone
g_msgStatusIcon = get_user_msgid("StatusIcon");
register_message(g_msgStatusIcon, "msgStatusIcon");
}

// Block buyzone (by ConnorMcLeod)
public msgStatusIcon(msgid, msgdest, id)
{
static szIcon[8];
get_msg_arg_string(2, szIcon, 7);

if(equal(szIcon, "buyzone") && get_msg_arg_int(1))
{
set_pdata_int(id, 235, get_pdata_int(id, 235) & ~(1<<0));
return PLUGIN_HANDLED;
}

return PLUGIN_CONTINUE;
}
Перейти в начало страницы         Просмотр профиля    Отправить личное сообщение
Поблагодарили 2 раз
   + Цитировать сообщение
Radius
сообщение 13.4.2015, 13:23
Сообщение #5
Стаж: 12 лет

Сообщений: 454
Благодарностей: 418
Полезность: 330

Тут действительно нужно знать для чего это делается и нужно ли блокировать саму покупку. Код приведенный постом выше адски спамит. То есть заблокировали иконку и пока находимся в зоне покупки сервер будет пытаться ее слать и слать.
Перейти в начало страницы         Просмотр профиля    Отправить личное сообщение
   + Цитировать сообщение
Статус пользователя r1nk0
сообщение 13.4.2015, 13:27
Сообщение #6


Стаж: 12 лет

Сообщений: 1417
Благодарностей: 705
Полезность: 349

Цитата(Bloo @ 13.4.2015, 14:20) *
Код:
#include <amxmodx>
#include <fakemeta>

new g_msgStatusIcon;

// Define the Plugin Version
new const VERSION[] = "1.0";

public plugin_init()
{
register_plugin("Block Buy Menu", VERSION, "Shuttle_Wave/ConnorMcleod")

// Block BuyZone
g_msgStatusIcon = get_user_msgid("StatusIcon");
register_message(g_msgStatusIcon, "msgStatusIcon");
}

// Block buyzone (by ConnorMcLeod)
public msgStatusIcon(msgid, msgdest, id)
{
static szIcon[8];
get_msg_arg_string(2, szIcon, 7);

if(equal(szIcon, "buyzone") && get_msg_arg_int(1))
{
set_pdata_int(id, 235, get_pdata_int(id, 235) & ~(1<<0));
return PLUGIN_HANDLED;
}

return PLUGIN_CONTINUE;
}


не совсем то,он блокирует и саму закупки вообще,а мне нужно просто инконку

Цитата(Radius @ 13.4.2015, 14:23) *
Тут действительно нужно знать для чего это делается и нужно ли блокировать саму покупку. Код приведенный постом выше адски спамит. То есть заблокировали иконку и пока находимся в зоне покупки сервер будет пытаться ее слать и слать.


освободить место для HUD'а нужно просто блокировать иконку.



Отредактировал: r1nk0, - 13.4.2015, 13:27


Создание и редактирование карт ($) - vk.com/id476857873
Настройка и техническое обслуживание ваших игровых серверов - vk.com/id476857873
Перейти в начало страницы         Просмотр профиля    Отправить личное сообщение
   + Цитировать сообщение
Radius
сообщение 13.4.2015, 13:28
Сообщение #7
Стаж: 12 лет

Сообщений: 454
Благодарностей: 418
Полезность: 330

r1nk0, удалите 26 строку.
Перейти в начало страницы         Просмотр профиля    Отправить личное сообщение
   + Цитировать сообщение
Статус пользователя r1nk0
сообщение 13.4.2015, 13:30
Сообщение #8


Стаж: 12 лет

Сообщений: 1417
Благодарностей: 705
Полезность: 349

Цитата(Radius @ 13.4.2015, 14:28) *
r1nk0, удалите 26 строку.


не помогло


Создание и редактирование карт ($) - vk.com/id476857873
Настройка и техническое обслуживание ваших игровых серверов - vk.com/id476857873
Перейти в начало страницы         Просмотр профиля    Отправить личное сообщение
   + Цитировать сообщение
Radius
сообщение 13.4.2015, 13:55
Сообщение #9
Стаж: 12 лет

Сообщений: 454
Благодарностей: 418
Полезность: 330

Да видимо жестко привязано к сообщению. Все команды покупки проходят кроме buy. Тогда это проблема :)
Перейти в начало страницы         Просмотр профиля    Отправить личное сообщение
   + Цитировать сообщение
Статус пользователя r1nk0
сообщение 13.4.2015, 14:00
Сообщение #10


Стаж: 12 лет

Сообщений: 1417
Благодарностей: 705
Полезность: 349

Цитата(Radius @ 13.4.2015, 14:55) *
Да видимо жестко привязано к сообщению. Все команды покупки проходят кроме buy. Тогда это проблема :)


ну я че то порыскал,есть плагин который меняет цвета этих иконок если у иконки закупа поставить цвета 0 0 0 то ее видно небудет,но по сути она рисоваться будет и HUD Будет накладываться на HUD что не гуд. Да и вроде это не реализуемо...


Создание и редактирование карт ($) - vk.com/id476857873
Настройка и техническое обслуживание ваших игровых серверов - vk.com/id476857873
Перейти в начало страницы         Просмотр профиля    Отправить личное сообщение
   + Цитировать сообщение
Статус пользователя GOOD FELLOW
сообщение 13.4.2015, 14:52
Сообщение #11


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

Стаж: 13 лет

Сообщений: 2294
Благодарностей: 1187
Полезность: 890

r1nk0, 0, 0, 0 в run - это черный цвет
Перейти в начало страницы         Просмотр профиля    Отправить личное сообщение
   + Цитировать сообщение
Статус пользователя Nixon
сообщение 13.4.2015, 14:54
Сообщение #12


Стаж: 12 лет

Сообщений: 399
Благодарностей: 192
Полезность: 589

Можно попробовать сделать блок мессаги так.
set_msg_block(get_user_msgid("StatusIcon"), BLOCK_SET) - это в плюгин инит
Перейти в начало страницы         Просмотр профиля    Отправить личное сообщение
   + Цитировать сообщение
Radius
сообщение 13.4.2015, 15:02
Сообщение #13
Стаж: 12 лет

Сообщений: 454
Благодарностей: 418
Полезность: 330

Nixon, это не поможет, чтобы кнопка B (команда buy) работала клиент обязательно должен получить это сообщение.
Перейти в начало страницы         Просмотр профиля    Отправить личное сообщение
   + Цитировать сообщение
Статус пользователя Nixon
сообщение 13.4.2015, 15:05
Сообщение #14


Стаж: 12 лет

Сообщений: 399
Благодарностей: 192
Полезность: 589

Цитата(Radius @ 13.4.2015, 17:02) *
Nixon, это не поможет, чтобы кнопка B (команда buy) работала клиент обязательно должен получить это сообщение.

Ну игроку же нужно только один раз получить это сообщение? Или к примеру каждый спавн?
Перейти в начало страницы         Просмотр профиля    Отправить личное сообщение
   + Цитировать сообщение
Radius
сообщение 13.4.2015, 15:16
Сообщение #15
Стаж: 12 лет

Сообщений: 454
Благодарностей: 418
Полезность: 330

Nixon, неа каждый раз при touch func_buyzone. Залогируйте оригинал плагина выше, и увидите какой спам идет в зоне покупки.
Перейти в начало страницы         Просмотр профиля    Отправить личное сообщение
   + Цитировать сообщение
Статус пользователя GOOD FELLOW
сообщение 13.4.2015, 15:21
Сообщение #16


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

Стаж: 13 лет

Сообщений: 2294
Благодарностей: 1187
Полезность: 890

Мне кажется, что этого не сделать, не задействовав байзону.
Перейти в начало страницы         Просмотр профиля    Отправить личное сообщение
   + Цитировать сообщение
Radius
сообщение 13.4.2015, 15:24
Сообщение #17
Стаж: 12 лет

Сообщений: 454
Благодарностей: 418
Полезность: 330

GOOD FELLOW, да. Поэтому я написал, что вроде простая вещь, по факту проблема :)
Перейти в начало страницы         Просмотр профиля    Отправить личное сообщение
   + Цитировать сообщение
Статус пользователя GOOD FELLOW
сообщение 13.4.2015, 15:25
Сообщение #18


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

Стаж: 13 лет

Сообщений: 2294
Благодарностей: 1187
Полезность: 890

Единственный вариант - это удалить/заблокировать зону закупки, тогда и иконки не будет
Перейти в начало страницы         Просмотр профиля    Отправить личное сообщение
   + Цитировать сообщение
Статус пользователя Fintok
сообщение 13.4.2015, 18:22
Сообщение #19


Стаж: 16 лет

Сообщений: 756
Благодарностей: 294
Полезность: 638

Цитата(r1nk0 @ 13.4.2015, 15:00) *
ну я че то порыскал,есть плагин который меняет цвета этих иконок если у иконки закупа поставить цвета 0 0 0 то ее видно небудет,но по сути она рисоваться будет и HUD Будет накладываться на HUD что не гуд. Да и вроде это не реализуемо...

Ну почему сразу нереализуемо? Вполне даже возможно, к примеру можно пробовать перекрыть иконку PreThin'ом, он вызывается каждый кадр игрока, а StatusIcon всего лиж раз в ~0.4 сек.
Код:
#include <amxmodx>
#include <fakemeta>

new g_bBuyZone[33]
new g_msgStatusIcon

public plugin_init()
{
register_plugin("Hide buyzone icon", "0.1", "Player")

g_msgStatusIcon = get_user_msgid("StatusIcon")

register_message(g_msgStatusIcon, "msgStatusIcon")

register_forward(FM_PlayerPreThink, "fw_PlayerPreThink")
}

public msgStatusIcon(msgid, msgdest, id)
{
static szIcon[8]
get_msg_arg_string(2, szIcon, 7)

g_bBuyZone[id] = bool:(equal(szIcon, "buyzone") && get_msg_arg_int(1))
}

public fw_PlayerPreThink(id)
{
if(!g_bBuyZone[id])
return

message_begin(MSG_ONE, g_msgStatusIcon, _, id)
write_byte(1)
write_string("buyzone")
write_byte(0)
write_byte(0)
write_byte(0)
message_end()
}
Перейти в начало страницы         Просмотр профиля    Отправить личное сообщение
   + Цитировать сообщение
Статус пользователя SISA
сообщение 13.4.2015, 18:27
Сообщение #20
Стаж: 15 лет

Сообщений: 2774
Благодарностей: 2956
Полезность: 994

Господа, ну что вы пишите ? Какие ещё FM_PlayerPreThink ? Иконка байзоны - это и есть сама байзона. Удалить её, не удалив байзону невозможно.

Есть хитрость. Иконку можно сделать прозрачной. т.е. поменять ей цвет. Для этого, надо хукнуть мессагу иконки:

register_message(get_user_msgid("StatusIcon"), "msgStatusIcon");


public msgStatusIcon(const iMsgId, const iMsgDest, const iClient)
{

new szIcon[5]; get_msg_arg_string(2, szIcon, charsmax(szIcon));

if(szIcon[0] == 'b' && szIcon[2] == 'y' && szIcon[3] == 'z' && get_msg_arg_int(1))
{
Здесь меняем цвет на 0.0.0

set_msg_arg_int(3, ARG_BYTE, 0);
set_msg_arg_int(4, ARG_BYTE, 0);
set_msg_arg_int(5, ARG_BYTE, 0);
}

return PLUGIN_CONTINUE;
}

Отредактировал: SISA, - 13.4.2015, 18:29
Перейти в начало страницы         Просмотр профиля    Отправить личное сообщение
Поблагодарили 3 раз
   + Цитировать сообщение
2 страниц V   1 2
 
Ответить в данную темуНачать новую тему
 
0 пользователей и 1 гостей читают эту тему: