- 31 Май 2019
- 405
- 57
Привет, это небольшой гайд по удивительному сообществу Moddota(customgames.ru).
Сегодня мы будем делать лаву, когда герой наступит на лаву он будет получать урон в интервал 0.3.
Сначала создайте блок триггера:
Теперь назовите его, lava и назовите в Entity Scripts: lavadamage.lua
Далее мы идем в Outputs и нажимаем на её, добавляя следующее на картинке.
Теперь откройте папку ваш_проект/scripts/vscripts в вашем проекте, создайте в ней файл lavadamage.lua и поместите этот скрипт в этот же файл.
Вот и конечный результат!
Перевод гайда: CrySidingWorld
Создатель гайда: DiNaSoR
Link: https://web.archive.org/web/2019051...om/forums/discussion/793/tutorial-lava-damage
Спасибо за внимание!
Сегодня мы будем делать лаву, когда герой наступит на лаву он будет получать урон в интервал 0.3.
Сначала создайте блок триггера:
Теперь назовите его, lava и назовите в Entity Scripts: lavadamage.lua
Далее мы идем в Outputs и нажимаем на её, добавляя следующее на картинке.
Теперь откройте папку ваш_проект/scripts/vscripts в вашем проекте, создайте в ней файл lavadamage.lua и поместите этот скрипт в этот же файл.
Lua:
LinkLuaModifier("modifier_lava_damage","lavadamage.lua", LUA_MODIFIER_MOTION_NONE)
function StartTouchDamage( trigger )
local ent = trigger.activator
ent:AddNewModifier(ent, self, "modifier_lava_damage", {})
end
function EndTouch( trigger )
local ent = trigger.activator
ent:RemoveModifierByName("modifier_lava_damage")
end
-----------------------------------------------------------------------------------------
modifier_lava_damage = modifier_lava_damage or class({})
function modifier_lava_damage:IsHidden()
return true
end
function modifier_lava_damage:IsPassive()
return false
end
function modifier_lava_damage:IsPurgable()
return false
end
function modifier_lava_damage:OnCreated()
if not IsServer() then return end
self:StartIntervalThink( 0.3 )
end
function modifier_lava_damage:OnIntervalThink()
if IsServer() then
local damage_table = {
victim = self:GetParent(),
attacker = self:GetParent(),
ability = self,
damage = 50,
damage_type = DAMAGE_TYPE_PURE
}
ApplyDamage(damage_table)
end
end
Вот и конечный результат!
Перевод гайда: CrySidingWorld
Создатель гайда: DiNaSoR
Link: https://web.archive.org/web/2019051...om/forums/discussion/793/tutorial-lava-damage
Спасибо за внимание!
Вложения
Последнее редактирование: