aboutsummaryrefslogtreecommitdiff
path: root/data/mods/experimental/init.lua
diff options
context:
space:
mode:
Diffstat (limited to 'data/mods/experimental/init.lua')
-rw-r--r--data/mods/experimental/init.lua45
1 files changed, 45 insertions, 0 deletions
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
@@ -375,6 +375,51 @@ minetest.register_entity("experimental:tnt", TNT)
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
--