From 989aba1966373885d4cac306daea25e102f8d68d Mon Sep 17 00:00:00 2001 From: Perttu Ahola Date: Fri, 9 Mar 2012 23:53:25 +0200 Subject: Fix and tune things, add tool "recharge" animation, add dummyball --- data/mods/experimental/init.lua | 45 +++++++++++++++++++++++++++++++++++++++++ 1 file changed, 45 insertions(+) (limited to 'data/mods/experimental/init.lua') diff --git a/data/mods/experimental/init.lua b/data/mods/experimental/init.lua index 5f01d8b78..76b787031 100644 --- a/data/mods/experimental/init.lua +++ b/data/mods/experimental/init.lua @@ -374,6 +374,51 @@ minetest.register_entity("experimental:tnt", TNT) -- Add TNT's old name also minetest.register_alias("TNT", "experimental:tnt") +-- +-- The dummyball! +-- + +minetest.register_alias("dummyball", "experimental:dummyball") + +minetest.register_entity("experimental:dummyball", { + -- Static definition + physical = false, + collisionbox = {-0.4,-0.4,-0.4, 0.4,0.4,0.4}, + visual = "sprite", + visual_size = {x=1, y=1}, + textures = {"experimental_dummyball.png"}, + spritediv = {x=1, y=3}, + initial_sprite_basepos = {x=0, y=0}, + -- Dynamic variables + phase = 0, + phasetimer = 0, + + on_activate = function(self, staticdata) + minetest.log("Dummyball activated!") + end, + + on_step = function(self, dtime) + self.phasetimer = self.phasetimer + dtime + if self.phasetimer > 2.0 then + self.phasetimer = self.phasetimer - 2.0 + self.phase = self.phase + 1 + if self.phase >= 3 then + self.phase = 0 + end + self.object:setsprite({x=0, y=self.phase}) + phasearmor = { + [0]={cracky=3}, + [1]={crumbly=3}, + [2]={fleshy=3} + } + self.object:set_armor_groups(phasearmor[self.phase]) + end + end, + + on_punch = function(self, hitter) + end, +}) + -- -- A test entity for testing animated and yaw-modulated sprites -- -- cgit v1.2.3