Untouch entity hook

Сообщения
219
Реакции
42
Is there any simple way to hook when a player untouch an entity?

I don't want to use a task or a think every second for that...
 
Сообщения
494
Реакции
341
Помог
11 раз(а)
Проверять после прикосновения через find_ent_in_sphere как вариант.
Будет слегка не точно, ведь энтити - штука "прямоугольная", а find_ent_in_sphere - "круглая". Но это всего лишь погрешность.
Либо просто сверять дистанцию между двумя объектами.
 
Сообщения
494
Реакции
341
Помог
11 раз(а)
RockTheStreet, сфера тогда уж. Боюсь, что гугл транслэйт для ТС неоднозначно переведет мои слова, потому так и выразился, даже в кавычки засунул.
 
Сообщения
219
Реакции
42
Проверять после прикосновения через find_ent_in_sphere как вариант.
Будет слегка не точно, ведь энтити - штука "прямоугольная", а find_ent_in_sphere - "круглая". Но это всего лишь погрешность.
Либо просто сверять дистанцию между двумя объектами.
Well, this still needs a task/think checking it.
Bad news so with this method.

The idea is to make an entity transpassable but reducing speed. Any way to achieve this by solid types?
Entity will not have this effect for all players
 
Сообщения
494
Реакции
341
Помог
11 раз(а)
Если проверять после прикосновения через set_task, то никакой нагрузки не будет.
И хватит уже чушь придумывать, не важно используешь ты "PlayerThink"/"FM_AddToFullPack". Важно то, какой код будет внутри этих функций, будет ли этот код нести нагрузку используемыми там функциями.
Если нужно, например, замедлять игрока при прикосновении с энтити, то создаешь энтити (коллизия: SOLID_TRIGGER), при прикосновении игрока с этой энтити уменьшаешь векторную скорость (velocity) игроку, вот и всё.
 
Сообщения
1,304
Реакции
2,303
Помог
57 раз(а)
для реалистичности скорее велоситимодифер надо менять. постепенно до #значения и форсить его далее на этом уровне. как человек вышел, логика сама его восстановит обратно. Но тут надо понимать что оно не везде подойдёт конечно.

 
Сообщения
219
Реакции
42
Если проверять после прикосновения через set_task, то никакой нагрузки не будет.
И хватит уже чушь придумывать, не важно используешь ты "PlayerThink"/"FM_AddToFullPack". Важно то, какой код будет внутри этих функций, будет ли этот код нести нагрузку используемыми там функциями.
Если нужно, например, замедлять игрока при прикосновении с энтити, то создаешь энтити (коллизия: SOLID_TRIGGER), при прикосновении игрока с этой энтити уменьшаешь векторную скорость (velocity) игроку, вот и всё.
It's not about cpu load, it's about not using fucking tricky methods.
Of course, if it's the only way I will do it
для реалистичности скорее велоситимодифер надо менять. постепенно до #значения и форсить его далее на этом уровне. как человек вышел, логика сама его восстановит обратно. Но тут надо понимать что оно не везде подойдёт конечно.

Good idea. Thanks
 
Сообщения
219
Реакции
42
для реалистичности скорее велоситимодифер надо менять. постепенно до #значения и форсить его далее на этом уровне. как человек вышел, логика сама его восстановит обратно. Но тут надо понимать что оно не везде подойдёт конечно.

Sorry about asking you directly, but it's related to how m_flVelocityModifier works.

What do you think about this? Is correct the behavior? it's a little strange.
 
Последнее редактирование:
Сообщения
1,304
Реакции
2,303
Помог
57 раз(а)
raulitop,

I don't see anything strange in this code. It works the way it works. Why is that? Because it was originally intended to be. I don't think it's a good idea to change the default behavior without a good reason.

"If the attacker don't get the large flinch"

"this" in this function is the victim, not the attacker.
 
Сообщения
219
Реакции
42
raulitop,

I don't see anything strange in this code. It works the way it works. Why is that? Because it was originally intended to be. I don't think it's a good idea to change the default behavior without a good reason.

"If the attacker don't get the large flinch"

"this" in this function is the victim, not the attacker.
Well, the strange is that the behavior should apply slowdown ALWAYS.
With the current code, if victim has speed higher than 300, slowdown is not applied.
Slowdown is applied always when it is a normal flinch, why not at large flinch?
Animation is applied always


I'm not referring to 'this' parameter in any moment...
The person who "GETS/OBTAINS" the flinch is the attacker, the person who "SUFFERS/HAS" the flinch is the victim
....:swoon2:
 
Последнее редактирование:

Пользователи, просматривающие эту тему

Сейчас на форуме нет ни одного пользователя.
Сверху Снизу