Доброго времени господа. Хотелось бы узнать. Кто знает как хукнуть или отследить событие после того как выжившие заходят в убежище пройдет смена карты и старт следующего сценария.
player_spawn
Отправлено 09 Декабрь 2023 - 16:06
Доброго времени господа. Хотелось бы узнать. Кто знает как хукнуть или отследить событие после того как выжившие заходят в убежище пройдет смена карты и старт следующего сценария.
player_spawn
Отправлено 09 Декабрь 2023 - 20:19
Можешь попробовать при входе игрока сравнить количество подключенных с количеством игроков уже в игре.
Например:
Сообщение отредактировал BloodyBlade: 09 Декабрь 2023 - 20:19
Отправлено 09 Декабрь 2023 - 20:53
Можешь попробовать при входе игрока сравнить количество подключенных с количеством игроков уже в игре.
Например:
Скрытый текст
Не работает. Прошло окно кто сколько убил за сцену и потом ничего не происходит.
Отправлено 10 Декабрь 2023 - 0:49
Не работает. Прошло окно кто сколько убил за сцену и потом ничего не происходит.
OnClientPutInServer срабатывает раньше, чем ты сможешь увидеть, ибо, это момент входа на сервер.
Если есть игрок при этом на сервере(не бот), то он увидит сообщение.
Вот с задержкой в 3 сек., чтобы сам увидел:
Сообщение отредактировал BloodyBlade: 10 Декабрь 2023 - 0:53
Отправлено 10 Декабрь 2023 - 8:25
Сообщение отредактировал Райский: 10 Декабрь 2023 - 8:26
Отправлено 10 Декабрь 2023 - 11:07
Доброго времени господа. Хотелось бы узнать. Кто знает как хукнуть или отследить событие после того как выжившие заходят в убежище пройдет смена карты и старт следующего сценария.
player_spawn
player_entered_start_arearound_start_post_navНе работают. Только после смерти уже на этом новом сценарии.Т.е когда ты прошел карту и происходит старт новой карты и дверь еще заблочена но уже выжившие подключены.
player_spawn - вызывается каждый раз когда игрок заходит в игру, поднимается или появляется. Обычно после события 10-15 сек таймера и дальше делать то что нужно.
player_entered_start_area - Игрок появился/вошел в начальную территорию. На многих картах это может срабатывать не правильно, так как не всегда определены зоны правильно.
round_start_pre_entity - Начало раунда перед объектом. Не использовал так что сказать нечего не могу насчет данного события
Я бы посоветовал использовать:
player_team - Игрок сменил команду. Так как после player_spawn игрок перемещается в команду, то есть срабатывает player_team
Отправлено 10 Декабрь 2023 - 13:10
player_spawn - вызывается каждый раз когда игрок заходит в игру, поднимается или появляется. Обычно после события 10-15 сек таймера и дальше делать то что нужно.
player_entered_start_area - Игрок появился/вошел в начальную территорию. На многих картах это может срабатывать не правильно, так как не всегда определены зоны правильно.
round_start_pre_entity - Начало раунда перед объектом. Не использовал так что сказать нечего не могу насчет данного события
Я бы посоветовал использовать:player_team - Игрок сменил команду. Так как после player_spawn игрок перемещается в команду, то есть срабатывает player_team
player_team - Не сработало.
player_entered_start_area - Когда выходишь из убежища только срабатывает.
А мне надо когда игрок в самом убежище после показа окна кто сколько убил (Меняется сценарий т.е след карта).
public void OnMapStart() { CreateTimer(30.0, tCheck); } public Action tCheck(Handle timer, any data) { for (int i = 1; i <= MaxClients; i++) { if(IsPlayer(i) && IsClientVip(i)) { g_bClient[i] = true; RequestFrame(Set, i); } } return Plugin_Handled; }
При этом функция мапстарт работает в этом случае. Но такие хуки как player_spawn player_team не срабатывают в этом случае
Сообщение отредактировал Райский: 10 Декабрь 2023 - 14:26
Отправлено 10 Декабрь 2023 - 21:30
player_team - Не сработало.
player_entered_start_area - Когда выходишь из убежища только срабатывает.
А мне надо когда игрок в самом убежище после показа окна кто сколько убил (Меняется сценарий т.е след карта).
public void OnMapStart() { CreateTimer(30.0, tCheck); } public Action tCheck(Handle timer, any data) { for (int i = 1; i <= MaxClients; i++) { if(IsPlayer(i) && IsClientVip(i)) { g_bClient[i] = true; RequestFrame(Set, i); } } return Plugin_Handled; }При этом функция мапстарт работает в этом случае. Но такие хуки как player_spawn player_team не срабатывают в этом случае
За 30 сек. не факт, что все успеют подключиться.
Начало карты (вызываются примерно в таком порядке):
OnClientConnect
OnClientAuthorized
OnClientConnected
OnClientPutInServer
OnClientPreAdminCheck
OnClientPostAdminCheck
OnClientPostAdminFilter
Ты можешь в player_spawn проверить в принципе, не вышел ли ещё кто из игроков с убеги.
Либо, round_freeze_end событие проверь, ибо, оно тоже срабатывает после начала карты.
Сообщение отредактировал BloodyBlade: 10 Декабрь 2023 - 21:43
Отправлено 11 Декабрь 2023 - 10:48
player_team - Не сработало.
player_entered_start_area - Когда выходишь из убежища только срабатывает.
А мне надо когда игрок в самом убежище после показа окна кто сколько убил (Меняется сценарий т.е след карта).
public void OnMapStart() { CreateTimer(30.0, tCheck); } public Action tCheck(Handle timer, any data) { for (int i = 1; i <= MaxClients; i++) { if(IsPlayer(i) && IsClientVip(i)) { g_bClient[i] = true; RequestFrame(Set, i); } } return Plugin_Handled; }При этом функция мапстарт работает в этом случае. Но такие хуки как player_spawn player_team не срабатывают в этом случае
Странно, или я не понимаю что вы хотите сделать, или что-то делаете не так.
Можете попробовать OnClientPostAdminCheck как вариант.
По поводу player_team то он должен срабатывать, так как при подключении игрок через него проходит, как и через player_spawn.
player_entered_start_area не на всех картах обозначен правильно, по этому доверять данному событию не стоит.
Отправлено 12 Декабрь 2023 - 22:10
Странно, или я не понимаю что вы хотите сделать, или что-то делаете не так.
Можете попробовать OnClientPostAdminCheck как вариант.По поводу player_team то он должен срабатывать, так как при подключении игрок через него проходит, как и через player_spawn.
player_entered_start_area не на всех картах обозначен правильно, по этому доверять данному событию не стоит.
Мне нужно после смены сценария установить игроку максимально допустимое hp (SetEntProp(client, Prop_Data, "m_iMaxHealth", iHp) так как после смены карты оно возвращает его в стандартное значение 100 хп
Отправлено 13 Декабрь 2023 - 6:10
Мне нужно после смены сценария установить игроку максимально допустимое hp (SetEntProp(client, Prop_Data, "m_iMaxHealth", iHp) так как после смены карты оно возвращает его в стандартное значение 100 хп
Через секунду после player_spawn норм поставится.
Пример из моего модуля для вип от Рико:
Сообщение отредактировал BloodyBlade: 13 Декабрь 2023 - 17:06
Отправлено 13 Декабрь 2023 - 6:51
Через секунду после player_spawn норм поставится.
Пример из моего модуля для вип от Рико:
Скрытый текст
Игровые сервера →
Left 4 Dead 2 →
Баги и CVAR в SourceMod Version: 1.10.0.6498Автор lex222 , 07 мар 2021 SM, Restart map |
|
|
||
Игровые сервера →
Counter-Strike: Global Offensive →
Помогите пожалуйста хочу что бы в чат писало у вас нет доступаАвтор globalyt1 , 04 июн 2020 vip, доступ, код, sourcepawn |
|
|
||
Игровые сервера →
Counter-Strike: Global Offensive →
Проблемы с меню SMАвтор WRN , 24 июн 2017 SM, меню |
|
|
||
Игровые сервера →
Counter-Strike: Global Offensive →
Проблема с загрузкой карт клиентом / Не показываются карты из мастерской в админ меню SMАвтор leop2p , 10 фев 2017 карты, sm, админ меню и 2 еще... |
|
|
||
Игровые сервера →
Counter-Strike: Source →
Как изменить приставку sm в sourcemodАвтор lastik , 04 фев 2017 sm замена тега, тег, sm и 4 еще... |
|
|
0 пользователей, 0 гостей, 0 анонимных