![]() |
Страницы (4): « 1 2 [3] 4 » Показать все 46 сообщений этой темы на одной странице |
HLFX.Ru Forum (https://hlfx.ru/forum/index.php)
- Half-Life SDK (https://hlfx.ru/forum/forumdisplay.php?forumid=8)
-- Брызги воды как в Соусе (https://hlfx.ru/forum/showthread.php?threadid=1968)
PomanoB Проверь, ведь лучше чем спрашивать и ждать ответа.
__________________
Base Defense on Steam, ModDB
Проверил, pev->waterlevel для не игроков работает)
На глаз вроде не особо сильная нагрузка, но хотелось бы способ лучше(
По поводу кода
PomanoB, объясни что ты хочешь сделать и как. потому что что бы дать тебе совет нужно хотя бы представлять, что ты в конечном счете хочешь получить.
Нагрузки никакой не будет, так как там и так каждый кадр вызывается тчинк функция у каждой энтити и еще пара сотен разных функций и параметров.
Как вариант можешь использовать для проверки столкновений не внешние энтити, а саму воду.
__________________
Вся сила лысого кощея,
Сокрыта в башне из костей
Воздвигнутой, под небесами
На месте похорон людей
Я хочу сделать брызги при падении любого объекта в воду)
И think-то вызывается не каждый кадр а после pev->nextthink
[qoute]Как вариант можешь использовать для проверки столкновений не внешние энтити, а саму воду.[/quote]
Это как ?
В think'е воды искать ентити в радиусе?
Примерно так:
function Water:Touch(ent) --прикосновение, ent - прикоснувшаяся энтитя
local Splash = ents.Create("env_sprite") --создает всплеск
Splash:SetKeyValue("sprite","спрайт всплеска") --задает параметр энтити, точно не знаю, как называется параметр, отвечающий за файл спрайта
Splash:SetPos(Vector(ent:GetPos().x,ent:GetPos().y,self:GetPos().z + self:Height())) --устанавливает местоположение спрайта, X и Y это позиция прикоснувшейся энтити, Z это местоположение воды + ее уровень
Splash:Spawn() --создает всплеск
Splash:Activate() --активирует его
timer.Simple(0.5,function() Splash:Remove() end) --удаляет всплеск через 0.5с
end
__________________
My Projects: download page
F.A.Q по XashNT
Блог разработчика в телеграме
C:\DOCUME~1\C4C5~1\LOCALS~1\Temp\a33328if(72) : see declaration of 'size_t'
Дядя Миша, ну если SOLID_NONE и карта своя, то можно попробовать какой-нибудь trigger_water создать, который делает всплески, и разместить его по всей поверхности воды. Там, где в воду ничего не падает, можно этот триггер и не делать.
SiPlus ну ты представь себе что SOLID_TRIGGER трасса игнорирует точно также как и SOLID_NOT. Хоть на своей карте, хоть на чужой.
__________________
My Projects: download page
F.A.Q по XashNT
Блог разработчика в телеграме
C:\DOCUME~1\C4C5~1\LOCALS~1\Temp\a33328if(72) : see declaration of 'size_t'
Некий Festern писал на half-life.ru
__________________
Base Defense on Steam, ModDB
__________________
My Projects: download page
F.A.Q по XashNT
Блог разработчика в телеграме
C:\DOCUME~1\C4C5~1\LOCALS~1\Temp\a33328if(72) : see declaration of 'size_t'
Дядя Миша Да, зато будет работать с энтити. Лучше чем возня с триггерами ИМХО.
__________________
Base Defense on Steam, ModDB
__________________
My Projects: download page
F.A.Q по XashNT
Блог разработчика в телеграме
C:\DOCUME~1\C4C5~1\LOCALS~1\Temp\a33328if(72) : see declaration of 'size_t'
Всем спасибо за ответы, сделал перебором и проверкой waterlevel
PomanoB еще рекомендую код XDM к изучению на предмет ватер-сплешей на мировой воде.
__________________
My Projects: download page
F.A.Q по XashNT
Блог разработчика в телеграме
C:\DOCUME~1\C4C5~1\LOCALS~1\Temp\a33328if(72) : see declaration of 'size_t'
Временная зона GMT. Текущее время 12:16. | Страницы (4): « 1 2 [3] 4 » Показать все 46 сообщений этой темы на одной странице |
На основе vBulletin версии 2.3.0
Авторское право © Jelsoft Enterprises Limited 2000 - 2002.
Дизайн и программирование: Crystice Softworks © 2005 - 2024