mirror of
https://codeberg.org/tenplus1/mobs_redo.git
synced 2024-12-25 18:20:20 +01:00
fix damage_per_sec checks wit some nested if's, add custom on_activate to arrows
This commit is contained in:
parent
d6ff282917
commit
608a5178cf
18
api.lua
18
api.lua
@ -1,9 +1,9 @@
|
|||||||
|
|
||||||
-- Mobs Api (27th May 2017)
|
-- Mobs Api (28th May 2017)
|
||||||
|
|
||||||
mobs = {}
|
mobs = {}
|
||||||
mobs.mod = "redo"
|
mobs.mod = "redo"
|
||||||
mobs.version = "20170527"
|
mobs.version = "20170528"
|
||||||
|
|
||||||
|
|
||||||
-- Intllib
|
-- Intllib
|
||||||
@ -566,26 +566,30 @@ local do_env_damage = function(self)
|
|||||||
pos.y = pos.y + 1
|
pos.y = pos.y + 1
|
||||||
|
|
||||||
-- water
|
-- water
|
||||||
if self.water_damage ~= 0
|
if nodef.groups.water then
|
||||||
and nodef.groups.water then
|
|
||||||
|
if self.water_damage ~= 0 then
|
||||||
|
|
||||||
self.health = self.health - self.water_damage
|
self.health = self.health - self.water_damage
|
||||||
|
|
||||||
effect(pos, 5, "bubble.png", nil, nil, 1, nil)
|
effect(pos, 5, "bubble.png", nil, nil, 1, nil)
|
||||||
|
|
||||||
if check_for_death(self, "water") then return end
|
if check_for_death(self, "water") then return end
|
||||||
|
end
|
||||||
|
|
||||||
-- lava or fire
|
-- lava or fire
|
||||||
elseif self.lava_damage ~= 0
|
elseif (nodef.groups.lava
|
||||||
and (nodef.groups.lava
|
|
||||||
or self.standing_in == "fire:basic_flame"
|
or self.standing_in == "fire:basic_flame"
|
||||||
or self.standing_in == "fire:permanent_flame") then
|
or self.standing_in == "fire:permanent_flame") then
|
||||||
|
|
||||||
|
if self.lava_damage ~= 0 then
|
||||||
|
|
||||||
self.health = self.health - self.lava_damage
|
self.health = self.health - self.lava_damage
|
||||||
|
|
||||||
effect(pos, 5, "fire_basic_flame.png", nil, nil, 1, nil)
|
effect(pos, 5, "fire_basic_flame.png", nil, nil, 1, nil)
|
||||||
|
|
||||||
if check_for_death(self, "lava") then return end
|
if check_for_death(self, "lava") then return end
|
||||||
|
end
|
||||||
|
|
||||||
-- damage_per_second node check
|
-- damage_per_second node check
|
||||||
elseif minetest.registered_nodes[self.standing_in].damage_per_second ~= 0 then
|
elseif minetest.registered_nodes[self.standing_in].damage_per_second ~= 0 then
|
||||||
@ -2879,6 +2883,8 @@ function mobs:register_arrow(name, def)
|
|||||||
automatic_face_movement_dir = def.rotate
|
automatic_face_movement_dir = def.rotate
|
||||||
and (def.rotate - (pi / 180)) or false,
|
and (def.rotate - (pi / 180)) or false,
|
||||||
|
|
||||||
|
on_activate = def.on_activate or nil,
|
||||||
|
|
||||||
on_step = def.on_step or function(self, dtime)
|
on_step = def.on_step or function(self, dtime)
|
||||||
|
|
||||||
self.timer = self.timer + 1
|
self.timer = self.timer + 1
|
||||||
|
Loading…
Reference in New Issue
Block a user