diff options
author | TenPlus1 <kinsellaja@yahoo.com> | 2018-09-09 11:11:08 +0100 |
---|---|---|
committer | TenPlus1 <kinsellaja@yahoo.com> | 2018-09-09 11:11:08 +0100 |
commit | 82411330fcab88333a866fe5fd5a58ffe196f4b1 (patch) | |
tree | 7250f49ecfe735f386a69cdf5573e25520435b80 | |
parent | 2106a081b91eefddb6e4b3fc1ea659f012634e1b (diff) |
add custom on_punch for mob arrows
-rw-r--r-- | api.lua | 7 | ||||
-rw-r--r-- | api.txt | 2 |
2 files changed, 7 insertions, 2 deletions
@@ -6,7 +6,7 @@ local use_cmi = minetest.global_exists("cmi") mobs = { mod = "redo", - version = "20180908", + version = "20180909", intllib = S, invis = minetest.global_exists("invisibility") and invisibility or {}, } @@ -3309,7 +3309,7 @@ function mobs:register_arrow(name, def) hit_node = def.hit_node, hit_mob = def.hit_mob, drop = def.drop or false, -- drops arrow as registered item when true - collisionbox = {0, 0, 0, 0, 0, 0}, -- remove box around arrows + collisionbox = def.collisionbox or {0, 0, 0, 0, 0, 0}, timer = 0, switch = 0, owner_id = def.owner_id, @@ -3319,6 +3319,9 @@ function mobs:register_arrow(name, def) on_activate = def.on_activate, + on_punch = def.on_punch or function(self, hitter, tflp, tool_capabilities, dir) + end, + on_step = def.on_step or function(self, dtime) self.timer = self.timer + 1 @@ -396,6 +396,8 @@ This function registers a arrow for mobs with the attack type shoot. 'rotate' integer value in degrees to rotate arrow 'on_step' is a custom function when arrow is active, nil for default. + 'on_punch' is a custom function when arrow is punched, nil by default + 'collisionbox' is hitbox table for arrow, {0,0,0,0,0,0} by default. Spawn Eggs |