diff --git a/init.lua b/init.lua index 1a8c673..5a60105 100644 --- a/init.lua +++ b/init.lua @@ -8,11 +8,11 @@ dofile(minetest.get_modpath("dmobs").."/api.lua") -- Enable dragons (disable to remove tamed dragons and dragon bosses) dmobs.dragons = minetest.setting_getbool("dmobs.dragons") -if dmobs.dragons = nil then +if dmobs.dragons == nil then dmobs.dragons = true end dmobs.regulars = minetest.setting_getbool("dmobs.regulars") -if dmobs.regulars = nil then +if dmobs.regulars == nil then dmobs.regulars = true end diff --git a/mobs/butterfly.lua b/mobs/butterfly.lua index 921de52..cbc152c 100644 --- a/mobs/butterfly.lua +++ b/mobs/butterfly.lua @@ -6,25 +6,30 @@ minetest.register_abm({ interval = 10.0, chance = 10, action = function(pos, node, active_object_count, active_object_count_wider) - minetest.env:add_entity({x=pos.x,y=pos.y,z=pos.z}, "dmobs:butterfly") + minetest.env:add_entity({x=pos.x,y=pos.y+0.3,z=pos.z}, "dmobs:butterfly") end }) minetest.register_entity("dmobs:butterfly", { - visual = "sprite", + visual = "mesh", + mesh = "butterfly.b3d", physical = true, textures = {"dmobs_butterfly.png",}, - visual_size = {x=0.2, y=0.2}, + visual_size = {x=0.3, y=0.3}, on_activate = function(self) num = math.random(1,4) self.object:set_properties({textures = {"dmobs_butterfly"..num..".png",},}) - minetest.after(5, function() + self.object:set_animation({x=1, y=10}, 20, 0) + self.object:setyaw(math.pi+num) + minetest.after(10, function() self.object:remove() end) end, on_step = function(self) local pos = self.object:getpos() local vec = self.object:getvelocity() + local num = math.random(-math.pi, math.pi) + self.object:setyaw(math.pi+num) self.object:setvelocity({x=-math.sin(12*pos.y), y=math.cos(12*pos.x), z=-math.sin(12*pos.y)}) self.object:setacceleration({x=-math.sin(6*vec.y), y=math.cos(6*vec.x), z=-math.sin(6*vec.y)}) end, diff --git a/models/butterfly.b3d b/models/butterfly.b3d new file mode 100644 index 0000000..fcd7c45 Binary files /dev/null and b/models/butterfly.b3d differ diff --git a/textures/dmobs_butterfly1.png b/textures/dmobs_butterfly1.png index 3a5e432..fb03790 100644 Binary files a/textures/dmobs_butterfly1.png and b/textures/dmobs_butterfly1.png differ diff --git a/textures/dmobs_butterfly2.png b/textures/dmobs_butterfly2.png index ba475a2..feb88b8 100644 Binary files a/textures/dmobs_butterfly2.png and b/textures/dmobs_butterfly2.png differ diff --git a/textures/dmobs_butterfly3.png b/textures/dmobs_butterfly3.png index 62c10bc..2d0db18 100644 Binary files a/textures/dmobs_butterfly3.png and b/textures/dmobs_butterfly3.png differ diff --git a/textures/dmobs_butterfly4.png b/textures/dmobs_butterfly4.png index 90dae3f..48a62c2 100644 Binary files a/textures/dmobs_butterfly4.png and b/textures/dmobs_butterfly4.png differ