diff --git a/api.lua b/api.lua index cacda4d..8917418 100644 --- a/api.lua +++ b/api.lua @@ -1,5 +1,5 @@ --- Mobs Api (2nd May 2016) +-- Mobs Api (6th May 2016) mobs = {} mobs.mod = "redo" @@ -2033,6 +2033,11 @@ local mob_step = function(self, dtime) return end + -- run custom function (defined in mob lua file) + if self.do_custom then + self.do_custom(self, dtime) + end + -- attack timer self.timer = self.timer + dtime @@ -2072,11 +2077,6 @@ local mob_step = function(self, dtime) self.env_damage_timer = 0 do_env_damage(self) - - -- custom function (defined in mob lua file) - if self.do_custom then - self.do_custom(self) - end end monster_attack(self) @@ -2471,6 +2471,7 @@ function mobs:register_arrow(name, def) collisionbox = {0, 0, 0, 0, 0, 0}, -- remove box around arrows timer = 0, switch = 0, + arrow = true, on_step = function(self, dtime) diff --git a/api.txt b/api.txt index f81f9da..95bb397 100644 --- a/api.txt +++ b/api.txt @@ -122,7 +122,7 @@ The mob api also has some preset variables and functions that it will remember f 'self.owner' string used to set owner of npc mobs, typically used for dogs 'self.order' set to "follow" or "stand" so that npc will follow owner or stand it's ground 'on_die' a function that is called when mob is killed - 'do_custom' a custom function that is called every second while mob is active and which has access to all of the self.* variables e.g. (self.health for health or self.standing_in for node status) + 'do_custom' a custom function that is called while mob is active and which has access to all of the self.* variables e.g. (self.health for health or self.standing_in for node status) mobs:register_spawn(name, nodes, max_light, min_light, chance, active_object_count, max_height, day_toggle)