X-Git-Url: https://git.lizzy.rs/?a=blobdiff_plain;f=mods%2Fmob%2Fapi%2Fdata_handling.lua;h=3b8753170fe69047b60a6ad2ae7458014cb9f843;hb=363c6808b22ebb127f20b377a183a5948e71da6b;hp=15bbbe7428e9578550b0f151c903039f3858f195;hpb=410e3182931c67587481a47dd06885e960abd552;p=Crafter.git diff --git a/mods/mob/api/data_handling.lua b/mods/mob/api/data_handling.lua index 15bbbe7..3b87531 100644 --- a/mods/mob/api/data_handling.lua +++ b/mods/mob/api/data_handling.lua @@ -1,6 +1,12 @@ +local +vector,minetest,math,pairs += +vector,minetest,math,pairs -- mobs.create_data_handling_functions = function(def,mob_register) - mob_register.get_staticdata = function(self) + + --mob_register.get_staticdata = function(self) + --[[ return minetest.serialize({ --range = self.range, hp = self.hp, @@ -13,17 +19,17 @@ mobs.create_data_handling_functions = function(def,mob_register) tnt_tick_timer = self.tnt_tick_timer, tnt_mod_state = self.tnt_mod_state, punch_timer = self.punch_timer, - projectile_timer = self.projectile_timer + projectile_timer = self.projectile_timer, + scared = self.scared, + scared_timer = self.scared_timer, + c_mob_data = self.c_mob_data, + on_fire = self.on_fire, }) - end + ]]-- + --end - - mob_register.on_activate = function(self, staticdata, dtime_s) - global_mob_amount = global_mob_amount + 1 - --print("Mobs Spawned. Current Mobs: "..global_mob_amount) - self.object:set_armor_groups({immortal = 1}) - --self.object:set_velocity({x = math.random(-5,5), y = 5, z = math.random(-5,5)}) - self.object:set_acceleration(def.gravity) + mob_register.on_activate = function(self)--, staticdata, dtime_s) + --[[ if string.sub(staticdata, 1, string.len("return")) == "return" then local data = minetest.deserialize(staticdata) if data and type(data) == "table" then @@ -39,10 +45,17 @@ mobs.create_data_handling_functions = function(def,mob_register) self.tnt_mod_state = data.tnt_mod_state self.punch_timer = data.punch_timer self.projectile_timer = data.projectile_timer + self.scared = data.scared + self.scared_timer = data.scared_timer + self.c_mob_data = data.c_mob_data + self.on_fire = data.on_fire end end - + ]]-- --set up mob + self.object:set_armor_groups({immortal = 1}) + --self.object:set_velocity({x = math.random(-5,5), y = 5, z = math.random(-5,5)}) + self.object:set_acceleration(def.gravity) self.object:set_animation(def.standing_frame, 0, 0, true) self.current_animation = 0 self.object:set_hp(self.hp) @@ -55,10 +68,19 @@ mobs.create_data_handling_functions = function(def,mob_register) end self.is_mob = true self.object:set_armor_groups({immortal = 1}) + if self.custom_on_activate then self.custom_on_activate(self) end - --self.object:set_yaw(math.pi*math.random(-1,1)*math.random()) + + if self.on_fire == true then + start_fire(self.object) + end + + --use this to handle the global mob table + --minetest.after(0,function() + -- self.deactivating = true + --end) end --this is the info on the mob