]> git.lizzy.rs Git - minetest.git/commitdiff
DevTest: Move experimental items to other mods
authorWuzzy <Wuzzy@disroot.org>
Sun, 9 Oct 2022 12:20:35 +0000 (14:20 +0200)
committersfan5 <sfan5@live.de>
Sun, 23 Oct 2022 19:58:56 +0000 (21:58 +0200)
16 files changed:
games/devtest/mods/callbacks/init.lua [new file with mode: 0644]
games/devtest/mods/callbacks/mod.conf [new file with mode: 0644]
games/devtest/mods/callbacks/textures/callbacks_callback_node.png [new file with mode: 0644]
games/devtest/mods/experimental/init.lua
games/devtest/mods/experimental/textures/experimental_callback_node.png [deleted file]
games/devtest/mods/experimental/textures/experimental_particle_sheet.png [deleted file]
games/devtest/mods/experimental/textures/experimental_particle_vertical.png [deleted file]
games/devtest/mods/testtools/README.md
games/devtest/mods/testtools/init.lua
games/devtest/mods/testtools/items.lua [deleted file]
games/devtest/mods/testtools/particles.lua [new file with mode: 0644]
games/devtest/mods/testtools/privatizer.lua [new file with mode: 0644]
games/devtest/mods/testtools/textures/testtools_particle_sheet.png [new file with mode: 0644]
games/devtest/mods/testtools/textures/testtools_particle_spawner.png [new file with mode: 0644]
games/devtest/mods/testtools/textures/testtools_particle_vertical.png [new file with mode: 0644]
games/devtest/mods/testtools/textures/testtools_privatizer.png

diff --git a/games/devtest/mods/callbacks/init.lua b/games/devtest/mods/callbacks/init.lua
new file mode 100644 (file)
index 0000000..baaf9fb
--- /dev/null
@@ -0,0 +1,51 @@
+local function print_to_everything(msg)
+       minetest.log("action", msg)
+       minetest.chat_send_all(msg)
+end
+
+minetest.register_node("callbacks:callback_node", {
+       description = "Callback Test Node (construct/destruct/timer)".."\n"..
+               "Tests callbacks: on_construct, after_place_node, on_destruct, after_destruct, after_dig_node, on_timer",
+       tiles = {"callbacks_callback_node.png"},
+       groups = {dig_immediate=3},
+       -- This was known to cause a bug in minetest.item_place_node() when used
+       -- via minetest.place_node(), causing a placer with no position
+       paramtype2 = "facedir",
+       drop = "",
+
+       on_construct = function(pos)
+               print_to_everything("callbacks:callback_node:on_construct("..minetest.pos_to_string(pos)..")")
+               local meta = minetest.get_meta(pos)
+               meta:set_string("mine", "test")
+               local timer = minetest.get_node_timer(pos)
+               timer:start(4, 3)
+       end,
+
+       after_place_node = function(pos, placer)
+               print_to_everything("callbacks:callback_node:after_place_node("..minetest.pos_to_string(pos)..")")
+               local meta = minetest.get_meta(pos)
+               if meta:get_string("mine") == "test" then
+                       print_to_everything("correct metadata found")
+               else
+                       print_to_everything("incorrect metadata found")
+               end
+       end,
+
+       on_destruct = function(pos)
+               print_to_everything("callbacks:callback_node:on_destruct("..minetest.pos_to_string(pos)..")")
+       end,
+
+       after_destruct = function(pos)
+               print_to_everything("callbacks:callback_node:after_destruct("..minetest.pos_to_string(pos)..")")
+       end,
+
+       after_dig_node = function(pos, oldnode, oldmetadata, digger)
+               print_to_everything("callbacks:callback_node:after_dig_node("..minetest.pos_to_string(pos)..")")
+       end,
+
+       on_timer = function(pos, elapsed)
+               print_to_everything("callbacks:callback_node:on_timer(): elapsed="..dump(elapsed))
+               return true
+       end,
+})
+
diff --git a/games/devtest/mods/callbacks/mod.conf b/games/devtest/mods/callbacks/mod.conf
new file mode 100644 (file)
index 0000000..7f7b6b8
--- /dev/null
@@ -0,0 +1,2 @@
+name = callbacks
+description = Adds various callback-related stuff
diff --git a/games/devtest/mods/callbacks/textures/callbacks_callback_node.png b/games/devtest/mods/callbacks/textures/callbacks_callback_node.png
new file mode 100644 (file)
index 0000000..e9d8743
Binary files /dev/null and b/games/devtest/mods/callbacks/textures/callbacks_callback_node.png differ
index 20350b0932d8af423b2bdad73a1ba0ba7a753924..e37d85dbfac15699b136de32db66044067c08e1f 100644 (file)
@@ -5,7 +5,6 @@
 experimental = {}
 
 dofile(minetest.get_modpath("experimental").."/detached.lua")
-dofile(minetest.get_modpath("experimental").."/items.lua")
 dofile(minetest.get_modpath("experimental").."/commands.lua")
 
 function experimental.print_to_everything(msg)
diff --git a/games/devtest/mods/experimental/textures/experimental_callback_node.png b/games/devtest/mods/experimental/textures/experimental_callback_node.png
deleted file mode 100644 (file)
index e9d8743..0000000
Binary files a/games/devtest/mods/experimental/textures/experimental_callback_node.png and /dev/null differ
diff --git a/games/devtest/mods/experimental/textures/experimental_particle_sheet.png b/games/devtest/mods/experimental/textures/experimental_particle_sheet.png
deleted file mode 100644 (file)
index 6d70394..0000000
Binary files a/games/devtest/mods/experimental/textures/experimental_particle_sheet.png and /dev/null differ
diff --git a/games/devtest/mods/experimental/textures/experimental_particle_vertical.png b/games/devtest/mods/experimental/textures/experimental_particle_vertical.png
deleted file mode 100644 (file)
index 0320b75..0000000
Binary files a/games/devtest/mods/experimental/textures/experimental_particle_vertical.png and /dev/null differ
index 72f0a2db04c46d508339a81976f772bbdfdb2a06..3de2969a740bcf60229c9099c9e92f074146826c 100644 (file)
@@ -120,9 +120,24 @@ Usage:
 * Punch entity to increase visual size
 * Sneak+punch entity to decrease visual size
 
+## Note Meta Privatizer
+Sets the 'formspec' and 'infotext' metadata fields of a node
+to private. This means that clients can no longer access these
+fields.
+This only works for chests [`chest:chest`] at the moment.
+
+Usage:
+* Punch: Set metadata of pointed node to private
+
 ## Light Tool
 Show light level of node.
 
 Usage:
 * Punch: Show light info of node in front of the punched node's side
 * Place: Show light info of the node that you touched
+
+## Particle Spawner
+Spawn a random animated particle.
+
+Usage:
+* Punch: Spawn particle
index abc1ed79b983f0c13e3adc9e70453011def86528..6db5a7cd177ceb792a9409b71eb0ef97538fd9f7 100644 (file)
@@ -2,6 +2,8 @@ local S = minetest.get_translator("testtools")
 local F = minetest.formspec_escape
 
 dofile(minetest.get_modpath("testtools") .. "/light.lua")
+dofile(minetest.get_modpath("testtools") .. "/privatizer.lua")
+dofile(minetest.get_modpath("testtools") .. "/particles.lua")
 
 minetest.register_tool("testtools:param2tool", {
        description = S("Param2 Tool") .."\n"..
diff --git a/games/devtest/mods/testtools/items.lua b/games/devtest/mods/testtools/items.lua
deleted file mode 100644 (file)
index 3a7c178..0000000
+++ /dev/null
@@ -1,106 +0,0 @@
-minetest.register_node("experimental:callback_node", {
-       description = "Callback Test Node".."\n"..
-               "Tests callbacks: on_construct, after_place_node, on_destruct, after_destruct, after_dig_node, on_timer",
-       tiles = {"experimental_callback_node.png"},
-       groups = {dig_immediate=3},
-       -- This was known to cause a bug in minetest.item_place_node() when used
-       -- via minetest.place_node(), causing a placer with no position
-       paramtype2 = "facedir",
-       drop = "",
-
-       on_construct = function(pos)
-               experimental.print_to_everything("experimental:callback_node:on_construct("..minetest.pos_to_string(pos)..")")
-               local meta = minetest.get_meta(pos)
-               meta:set_string("mine", "test")
-               local timer = minetest.get_node_timer(pos)
-               timer:start(4, 3)
-       end,
-
-       after_place_node = function(pos, placer)
-               experimental.print_to_everything("experimental:callback_node:after_place_node("..minetest.pos_to_string(pos)..")")
-               local meta = minetest.get_meta(pos)
-               if meta:get_string("mine") == "test" then
-                       experimental.print_to_everything("correct metadata found")
-               else
-                       experimental.print_to_everything("incorrect metadata found")
-               end
-       end,
-
-       on_destruct = function(pos)
-               experimental.print_to_everything("experimental:callback_node:on_destruct("..minetest.pos_to_string(pos)..")")
-       end,
-
-       after_destruct = function(pos)
-               experimental.print_to_everything("experimental:callback_node:after_destruct("..minetest.pos_to_string(pos)..")")
-       end,
-
-       after_dig_node = function(pos, oldnode, oldmetadata, digger)
-               experimental.print_to_everything("experimental:callback_node:after_dig_node("..minetest.pos_to_string(pos)..")")
-       end,
-
-       on_timer = function(pos, elapsed)
-               experimental.print_to_everything("on_timer(): elapsed="..dump(elapsed))
-               return true
-       end,
-})
-
-minetest.register_tool("experimental:privatizer", {
-       description = "Node Meta Privatizer".."\n"..
-               "Punch: Marks 'infotext' and 'formspec' meta fields of chest as private",
-       inventory_image = "experimental_tester_tool_1.png",
-       groups = { testtool = 1, disable_repair = 1 },
-       on_use = function(itemstack, user, pointed_thing)
-               if pointed_thing.type == "node" then
-                       local node = minetest.get_node(pointed_thing.under)
-                       if node.name == "chest:chest" then
-                               local p = pointed_thing.under
-                               minetest.log("action", "Privatizer used at "..minetest.pos_to_string(p))
-                               minetest.get_meta(p):mark_as_private({"infotext", "formspec"})
-                               if user and user:is_player() then
-                                       minetest.chat_send_player(user:get_player_name(), "Chest metadata (infotext, formspec) set private!")
-                               end
-                               return
-                       end
-               end
-               if user and user:is_player() then
-                       minetest.chat_send_player(user:get_player_name(), "Privatizer can only be used on chest!")
-               end
-       end,
-})
-
-minetest.register_tool("experimental:particle_spawner", {
-       description = "Particle Spawner".."\n"..
-               "Punch: Spawn random test particle",
-       inventory_image = "experimental_tester_tool_1.png^[invert:g",
-       groups = { testtool = 1, disable_repair = 1 },
-       on_use = function(itemstack, user, pointed_thing)
-               local pos = minetest.get_pointed_thing_position(pointed_thing, true)
-               if pos == nil then
-                       if user then
-                               pos = user:get_pos()
-                       end
-               end
-               pos = vector.add(pos, {x=0, y=0.5, z=0})
-               local tex, anim
-               if math.random(0, 1) == 0 then
-                       tex = "experimental_particle_sheet.png"
-                       anim = {type="sheet_2d", frames_w=3, frames_h=2, frame_length=0.5}
-               else
-                       tex = "experimental_particle_vertical.png"
-                       anim = {type="vertical_frames", aspect_w=16, aspect_h=16, length=3.3}
-               end
-
-               minetest.add_particle({
-                       pos = pos,
-                       velocity = {x=0, y=0, z=0},
-                       acceleration = {x=0, y=0.04, z=0},
-                       expirationtime = 6,
-                       collisiondetection = true,
-                       texture = tex,
-                       animation = anim,
-                       size = 4,
-                       glow = math.random(0, 5),
-               })
-       end,
-})
-
diff --git a/games/devtest/mods/testtools/particles.lua b/games/devtest/mods/testtools/particles.lua
new file mode 100644 (file)
index 0000000..18efe25
--- /dev/null
@@ -0,0 +1,36 @@
+minetest.register_tool("testtools:particle_spawner", {
+       description = "Particle Spawner".."\n"..
+               "Punch: Spawn random test particle",
+       inventory_image = "testtools_particle_spawner.png",
+       groups = { testtool = 1, disable_repair = 1 },
+       on_use = function(itemstack, user, pointed_thing)
+               local pos = minetest.get_pointed_thing_position(pointed_thing, true)
+               if pos == nil then
+                       if user then
+                               pos = user:get_pos()
+                       end
+               end
+               pos = vector.add(pos, {x=0, y=0.5, z=0})
+               local tex, anim
+               if math.random(0, 1) == 0 then
+                       tex = "testtools_particle_sheet.png"
+                       anim = {type="sheet_2d", frames_w=3, frames_h=2, frame_length=0.5}
+               else
+                       tex = "testtools_particle_vertical.png"
+                       anim = {type="vertical_frames", aspect_w=16, aspect_h=16, length=3.3}
+               end
+
+               minetest.add_particle({
+                       pos = pos,
+                       velocity = {x=0, y=0, z=0},
+                       acceleration = {x=0, y=0.04, z=0},
+                       expirationtime = 6,
+                       collisiondetection = true,
+                       texture = tex,
+                       animation = anim,
+                       size = 4,
+                       glow = math.random(0, 5),
+               })
+       end,
+})
+
diff --git a/games/devtest/mods/testtools/privatizer.lua b/games/devtest/mods/testtools/privatizer.lua
new file mode 100644 (file)
index 0000000..bd6e237
--- /dev/null
@@ -0,0 +1,24 @@
+minetest.register_tool("testtools:privatizer", {
+       description = "Node Meta Privatizer".."\n"..
+               "Punch: Marks 'infotext' and 'formspec' meta fields of chest as private",
+       inventory_image = "testtools_privatizer.png",
+       groups = { testtool = 1, disable_repair = 1 },
+       on_use = function(itemstack, user, pointed_thing)
+               if pointed_thing.type == "node" then
+                       local node = minetest.get_node(pointed_thing.under)
+                       if node.name == "chest:chest" then
+                               local p = pointed_thing.under
+                               minetest.log("action", "[testtools] Privatizer used at "..minetest.pos_to_string(p))
+                               minetest.get_meta(p):mark_as_private({"infotext", "formspec"})
+                               if user and user:is_player() then
+                                       minetest.chat_send_player(user:get_player_name(), "Chest metadata (infotext, formspec) set private!")
+                               end
+                               return
+                       end
+               end
+               if user and user:is_player() then
+                       minetest.chat_send_player(user:get_player_name(), "Privatizer can only be used on chest!")
+               end
+       end,
+})
+
diff --git a/games/devtest/mods/testtools/textures/testtools_particle_sheet.png b/games/devtest/mods/testtools/textures/testtools_particle_sheet.png
new file mode 100644 (file)
index 0000000..6d70394
Binary files /dev/null and b/games/devtest/mods/testtools/textures/testtools_particle_sheet.png differ
diff --git a/games/devtest/mods/testtools/textures/testtools_particle_spawner.png b/games/devtest/mods/testtools/textures/testtools_particle_spawner.png
new file mode 100644 (file)
index 0000000..5df416a
Binary files /dev/null and b/games/devtest/mods/testtools/textures/testtools_particle_spawner.png differ
diff --git a/games/devtest/mods/testtools/textures/testtools_particle_vertical.png b/games/devtest/mods/testtools/textures/testtools_particle_vertical.png
new file mode 100644 (file)
index 0000000..0320b75
Binary files /dev/null and b/games/devtest/mods/testtools/textures/testtools_particle_vertical.png differ
index 5df416a582e75a7c476f834038cfef02d2bd9ad2..b9896287a4d87cd82656a00baa6e1df4cc21838a 100644 (file)
Binary files a/games/devtest/mods/testtools/textures/testtools_privatizer.png and b/games/devtest/mods/testtools/textures/testtools_privatizer.png differ