Half-Life и Adrenaline Gamer форум

Всё об игре в Халф-Лайф и АГ
Текущее время: 19 май 2024, 05:41

Часовой пояс: UTC + 5 часов [ Летнее время ]




Начать новую тему Ответить на тему  [ Сообщений: 12 ]  На страницу 1, 2  След.
Автор Сообщение
 Заголовок сообщения: DisableHamForward ( HamHook:fwd )
СообщениеДобавлено: 02 ноя 2011, 00:12 
Не в сети
Аватара пользователя
Зарегистрирован:
24 янв 2011, 03:32
Последнее посещение:
09 дек 2021, 03:04
Сообщения: 756
Откуда: Futurama
DisableHamForward

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


Вернуться к началу
 Профиль 
  
 Заголовок сообщения: Re: DisableHamForward ( HamHook:fwd )
СообщениеДобавлено: 02 ноя 2011, 03:06 
Не в сети
Аватара пользователя
Зарегистрирован:
01 июн 2010, 23:25
Последнее посещение:
05 июл 2018, 16:02
Сообщения: 1035
Выключает регистрированный форвард. Удобно для экономии ресурсов, для отключения опций плагинов или для каких-нибудь специальных целей.


Код:
new HamHook:g_fwdPreThink

public plugin_init()
{
        ....
        DisableHamForward(g_fwdPreThink =  RegisterHam(Ham_Player_PreThink, "player", "Ham_PlayerPreThink"));
}

public Ham_PlayerPreThink(id)
{



}


А во время выполнения плагина можно подключать и отключать этот форвард :


EnableHamForward ( g_fwdPreThink )
DisableHamForward ( g_fwdPreThink )

Например в ctf моде, когда игрок несет флаг у него появляется потеря скорости бхопа, уменьшается отдача гаусса. Это сделано через PlayerPreThink. И эта фича управляется через CVAR. В функции вначале идет проверка всех игроков, не несут ли они флаг. Так вот чтоб не гонять это впустую, форвард запускается только когда кто-то возьмет флаг. И только если CVAR разрешает это. На самом деле я использовал fm функции (unregister_forward()) но тут суть такая же

_________________
Изображение


Вернуться к началу
 Профиль 
  
 Заголовок сообщения: Re: DisableHamForward ( HamHook:fwd )
СообщениеДобавлено: 13 янв 2012, 16:09 
Не в сети
Аватара пользователя
Зарегистрирован:
24 янв 2011, 03:32
Последнее посещение:
09 дек 2021, 03:04
Сообщения: 756
Откуда: Futurama
Код:
enum _:HAM_SPECIFIC
{
Ham_zBot,
Ham_Client
}
 
new HamHook:g_HamHookFunction[HAM_SPECIFIC]
 
function()
{
DisableHamForward(g_HamHookFunction[Ham_zBot]) // - Warning
}

Почему выдает предупреждение ? "Тэг мистмач"
Так тоже - DisableHamForward(_:g_HamHookFunction[Ham_zBot])
:unknown:


Вернуться к началу
 Профиль 
  
 Заголовок сообщения: Re: DisableHamForward ( HamHook:fwd )
СообщениеДобавлено: 13 янв 2012, 19:58 
Не в сети
Site Admin
Зарегистрирован:
01 июн 2010, 01:27
Последнее посещение:
18 май 2024, 23:15
Сообщения: 6868
Попробуй так:
Код:
enum HamHook:HAM_SPECIFIC


Вернуться к началу
 Профиль 
  
 Заголовок сообщения: Re: DisableHamForward ( HamHook:fwd )
СообщениеДобавлено: 13 янв 2012, 20:24 
Не в сети
Аватара пользователя
Зарегистрирован:
24 янв 2011, 03:32
Последнее посещение:
09 дек 2021, 03:04
Сообщения: 756
Откуда: Futurama
Lev
чето не совсем понял ... так тож пишет тэг мистмач

Код:
enum HamHook:HAM_SPECIFIC
{
   Ham_zBot,
   Ham_Client
}

HamHook:g_HamHookFunction[HAM_SPECIFIC]
DisableHamForward(_:g_HamHookFunction[Ham_zBot])


Вернуться к началу
 Профиль 
  
 Заголовок сообщения: Re: DisableHamForward ( HamHook:fwd )
СообщениеДобавлено: 13 янв 2012, 21:11 
Не в сети
Site Admin
Зарегистрирован:
01 июн 2010, 01:27
Последнее посещение:
18 май 2024, 23:15
Сообщения: 6868
Дак, это,
Код:
DisableHamForward(g_HamHookFunction[Ham_zBot])
ofc


Вернуться к началу
 Профиль 
  
 Заголовок сообщения: Re: DisableHamForward ( HamHook:fwd )
СообщениеДобавлено: 13 янв 2012, 21:16 
Не в сети
Site Admin
Зарегистрирован:
01 июн 2010, 01:27
Последнее посещение:
18 май 2024, 23:15
Сообщения: 6868
Держи:
Код:
enum HAM_SPECIFIC
{
   HamHook:Ham_zBot,
   HamHook:Ham_Client
};
new g_HamHookFunction[HAM_SPECIFIC];

   DisableHamForward(g_HamHookFunction[Ham_zBot]);


Вернуться к началу
 Профиль 
  
 Заголовок сообщения: Re: DisableHamForward ( HamHook:fwd )
СообщениеДобавлено: 13 янв 2012, 21:22 
Не в сети
Аватара пользователя
Зарегистрирован:
24 янв 2011, 03:32
Последнее посещение:
09 дек 2021, 03:04
Сообщения: 756
Откуда: Futurama
Lev
зачем тогда нужен этот HamHook: - ? :D тока путает пополной


Вернуться к началу
 Профиль 
  
 Заголовок сообщения: Re: DisableHamForward ( HamHook:fwd )
СообщениеДобавлено: 13 янв 2012, 22:41 
Не в сети
Site Admin
Зарегистрирован:
01 июн 2010, 01:27
Последнее посещение:
18 май 2024, 23:15
Сообщения: 6868
Ну, это вот такие "недоструктуры" в AMXX.


Вернуться к началу
 Профиль 
  
 Заголовок сообщения: Re: DisableHamForward ( HamHook:fwd )
СообщениеДобавлено: 14 янв 2012, 00:33 
Не в сети
Аватара пользователя
Зарегистрирован:
24 янв 2011, 03:32
Последнее посещение:
09 дек 2021, 03:04
Сообщения: 756
Откуда: Futurama
ААА и так не пашет ))

Код:
enum _:LOL
{
HamHook:Ham_zBot_enable,
HamHook:Ham_Client_enable
}

g_plugin_data[LOL]

g_plugin_data[Ham_zBot_enable] = RegisterHamFromEntity(Ham_TakeDamage, id, "client_take_dmg_pre", 0) // Тут warning

DisableHamForward(g_plugin_data[Ham_zBot_enable])


Вернуться к началу
 Профиль 
  
Показать сообщения за:  Поле сортировки  
Начать новую тему Ответить на тему  [ Сообщений: 12 ]  На страницу 1, 2  След.

Часовой пояс: UTC + 5 часов [ Летнее время ]


Кто сейчас на конференции

Сейчас этот форум просматривают: нет зарегистрированных пользователей и гости: 1


Вы не можете начинать темы
Вы не можете отвечать на сообщения
Вы не можете редактировать свои сообщения
Вы не можете удалять свои сообщения
Вы не можете добавлять вложения

Найти:
Перейти:  
Создано на основе phpBB® Forum Software © phpBB Group
Русская поддержка phpBB