diff --git a/mods/jumping/README.md b/mods/jumping/README.md new file mode 100755 index 00000000..17e3a09b --- /dev/null +++ b/mods/jumping/README.md @@ -0,0 +1,7 @@ +Jumping + +Jumping is a mod for minetest that adds trampolines, cushions, ... + +License: GPLv3 + +Creator: Jeija diff --git a/mods/jumping/init.lua b/mods/jumping/init.lua new file mode 100755 index 00000000..077f14f0 --- /dev/null +++ b/mods/jumping/init.lua @@ -0,0 +1,82 @@ +local trampolinebox = { + type = "fixed", + fixed = { + {-0.5, -0.2, -0.5, 0.5, 0, 0.5}, + + {-0.5, -0.5, -0.5, -0.4, -0.2, -0.4}, + { 0.4, -0.5, -0.5, 0.5, -0.2, -0.4}, + { 0.4, -0.5, 0.4, 0.5, -0.2, 0.5}, + {-0.5, -0.5, 0.4, -0.4, -0.2, 0.5}, + } +} + +local cushionbox = { + type = "fixed", + fixed = { + {-0.5, -0.5, -0.5, 0.5, -0.3, 0.5}, + } +} + +local trampoline_punch = function(pos, node) + local id = string.sub(node.name, #node.name) + id = id + 1 + if id == 7 then id = 1 end + minetest.add_node(pos, {name = string.sub(node.name, 1, #node.name - 1)..id}) +end + +local u = 6 + +for i = 1, u do + local bnc_pct = math.ceil((150/u)*i)+25 + minetest.register_node("jumping:trampoline_" .. i, { + description = "Trampoline (bounce : " .. bnc_pct .. "%)", + drawtype = "nodebox", + node_box = trampolinebox, + selection_box = trampolinebox, + paramtype = "light", + on_punch = trampoline_punch, + tiles = { + "jumping_trampoline_top.png", + "jumping_trampoline_bottom.png", + "jumping_trampoline_sides.png^jumping_trampoline_sides_overlay_" .. i .. ".png", + }, + drop = "jumping:trampoline_1", + groups = {dig_immediate = 2, bouncy = bnc_pct, fall_damage_add_percent = -65, disable_jump = 1}, + }) +end + +minetest.register_node("jumping:cushion", { + description = "Cushion", + drawtype = "nodebox", + node_box = cushionbox, + selection_box = cushionbox, + paramtype = "light", + tiles = { + "jumping_cushion_tb.png", + "jumping_cushion_tb.png", + "jumping_cushion_sides.png", + }, + groups = {dig_immediate = 2, disable_jump = 1, fall_damage_add_percent = -100}, +}) + +minetest.register_craft({ + output = "jumping:trampoline_1", + recipe = { + {"group:ingot", "group:ingot", "group:ingot"}, + {"default:leaves", "default:leaves", "default:leaves"}, + {"default:stick", "default:stick", "default:stick"}, + } +}) + +minetest.register_craft({ + output = "jumping:cushion", + recipe = { + {"default:junglegrass", "default:junglegrass", "default:junglegrass"}, + {"default:leaves", "default:leaves", "default:leaves"}, + {"default:stick", "default:stick", "default:stick"}, + } +}) + +if minetest.setting_getbool("log_mods") then + minetest.log("action", "Carbone: [jumping] loaded.") +end diff --git a/mods/jumping/textures/jumping_cushion_sides.png b/mods/jumping/textures/jumping_cushion_sides.png new file mode 100755 index 00000000..9d65797d Binary files /dev/null and b/mods/jumping/textures/jumping_cushion_sides.png differ diff --git a/mods/jumping/textures/jumping_cushion_tb.png b/mods/jumping/textures/jumping_cushion_tb.png new file mode 100755 index 00000000..1cc91c8f Binary files /dev/null and b/mods/jumping/textures/jumping_cushion_tb.png differ diff --git a/mods/jumping/textures/jumping_trampoline_bottom.png b/mods/jumping/textures/jumping_trampoline_bottom.png new file mode 100755 index 00000000..7ade61ef Binary files /dev/null and b/mods/jumping/textures/jumping_trampoline_bottom.png differ diff --git a/mods/jumping/textures/jumping_trampoline_sides.png b/mods/jumping/textures/jumping_trampoline_sides.png new file mode 100755 index 00000000..ff3f6e43 Binary files /dev/null and b/mods/jumping/textures/jumping_trampoline_sides.png differ diff --git a/mods/jumping/textures/jumping_trampoline_sides_overlay_1.png b/mods/jumping/textures/jumping_trampoline_sides_overlay_1.png new file mode 100755 index 00000000..1119f46a Binary files /dev/null and b/mods/jumping/textures/jumping_trampoline_sides_overlay_1.png differ diff --git a/mods/jumping/textures/jumping_trampoline_sides_overlay_2.png b/mods/jumping/textures/jumping_trampoline_sides_overlay_2.png new file mode 100755 index 00000000..3853953f Binary files /dev/null and b/mods/jumping/textures/jumping_trampoline_sides_overlay_2.png differ diff --git a/mods/jumping/textures/jumping_trampoline_sides_overlay_3.png b/mods/jumping/textures/jumping_trampoline_sides_overlay_3.png new file mode 100755 index 00000000..7c3ae249 Binary files /dev/null and b/mods/jumping/textures/jumping_trampoline_sides_overlay_3.png differ diff --git a/mods/jumping/textures/jumping_trampoline_sides_overlay_4.png b/mods/jumping/textures/jumping_trampoline_sides_overlay_4.png new file mode 100755 index 00000000..f1ba54d1 Binary files /dev/null and b/mods/jumping/textures/jumping_trampoline_sides_overlay_4.png differ diff --git a/mods/jumping/textures/jumping_trampoline_sides_overlay_5.png b/mods/jumping/textures/jumping_trampoline_sides_overlay_5.png new file mode 100755 index 00000000..fde0ad00 Binary files /dev/null and b/mods/jumping/textures/jumping_trampoline_sides_overlay_5.png differ diff --git a/mods/jumping/textures/jumping_trampoline_sides_overlay_6.png b/mods/jumping/textures/jumping_trampoline_sides_overlay_6.png new file mode 100755 index 00000000..b1a93fe3 Binary files /dev/null and b/mods/jumping/textures/jumping_trampoline_sides_overlay_6.png differ diff --git a/mods/jumping/textures/jumping_trampoline_top.png b/mods/jumping/textures/jumping_trampoline_top.png new file mode 100755 index 00000000..c5df874c Binary files /dev/null and b/mods/jumping/textures/jumping_trampoline_top.png differ diff --git a/worlds/minetestforfun/world.mt b/worlds/minetestforfun/world.mt index bc76afef..3c875027 100755 --- a/worlds/minetestforfun/world.mt +++ b/worlds/minetestforfun/world.mt @@ -87,7 +87,7 @@ load_mod_paintings = true load_mod_multitest = true load_mod_lavalamp = true load_mod_lantern = true -load_mod_jumping = false +load_mod_jumping = true load_mod_mesecons = true load_mod_warps = true