From 9bf29384b39fb9c617e9fa5fff8a29a5fd0fa52c Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Gabriel=20P=C3=A9rez-Cerezo?= Date: Sun, 27 Dec 2020 19:45:42 +0100 Subject: Overhaul textures and handling * Paint color-code onto rocket bodies, rather than using symbols * Make the rockets react to mesecons directly, remove the launcher --- init.lua | 86 +++++++-------------- textures/fireworkz_rocket_launcher.png | Bin 2712 -> 0 bytes textures/rocket_ball.png | Bin 0 -> 3156 bytes textures/rocket_ball_blue.png | Bin 3071 -> 0 bytes .../rocket_ball_default_love_blue_white_red.png | Bin 3140 -> 0 bytes .../rocket_ball_default_love_green_yellow_red.png | Bin 3198 -> 0 bytes textures/rocket_ball_green.png | Bin 3074 -> 0 bytes textures/rocket_ball_red.png | Bin 3076 -> 0 bytes textures/rocket_ball_white.png | Bin 3049 -> 0 bytes textures/rocket_ball_yellow.png | Bin 3072 -> 0 bytes textures/rocket_default.png | Bin 2727 -> 2558 bytes textures/rocket_default_blue.png | Bin 3089 -> 3150 bytes textures/rocket_default_blue_white_red.png | Bin 0 -> 3084 bytes textures/rocket_default_green.png | Bin 3078 -> 3137 bytes textures/rocket_default_green_yellow_red.png | Bin 0 -> 3060 bytes textures/rocket_default_red.png | Bin 3093 -> 3082 bytes textures/rocket_default_white.png | Bin 3047 -> 2671 bytes textures/rocket_default_yellow.png | Bin 3088 -> 3176 bytes textures/rocket_love.png | Bin 0 -> 2564 bytes 19 files changed, 29 insertions(+), 57 deletions(-) delete mode 100644 textures/fireworkz_rocket_launcher.png create mode 100644 textures/rocket_ball.png delete mode 100644 textures/rocket_ball_blue.png delete mode 100644 textures/rocket_ball_default_love_blue_white_red.png delete mode 100644 textures/rocket_ball_default_love_green_yellow_red.png delete mode 100644 textures/rocket_ball_green.png delete mode 100644 textures/rocket_ball_red.png delete mode 100644 textures/rocket_ball_white.png delete mode 100644 textures/rocket_ball_yellow.png create mode 100644 textures/rocket_default_blue_white_red.png create mode 100644 textures/rocket_default_green_yellow_red.png create mode 100644 textures/rocket_love.png diff --git a/init.lua b/init.lua index 3ed5faf..9e5aa3d 100644 --- a/init.lua +++ b/init.lua @@ -31,7 +31,7 @@ local variant_list = { rdt = { {color = "blue", figure = "ball", form = ""}, {color = "yellow", figure = "default", form = ""}, - --{color = "red", figure = "custom", form = "love"}, + {color = "red", figure = "custom", form = "love"}, } }, {colour = "green_yellow_red", figure = "ball_default_love", form = "", desc = S("Green-Yellow-Love"), @@ -208,6 +208,7 @@ end --Nodes for _, i in pairs(variant_list) do local figure_desc = "" + if i.figure == "default" then figure_desc = S("Default") elseif i.figure == "ball" then @@ -217,42 +218,42 @@ for _, i in pairs(variant_list) do elseif i.figure == "custom" then figure_desc = S("Custom") end - local inv_image = "rocket_" - if not(i.figure == "") then - inv_image = inv_image .. i.figure .. "_" + + local figure = i.figure + if i.figure == "custom" and i.form == "love" then + figure = "love" end - inv_image = inv_image .. i.colour .. ".png" + inv_image = "rocket_default_"..i.colour..".png" + if figure ~= "default" then + inv_image = inv_image.."^rocket_"..figure..".png" + end local rdt = i.rdt or {{color = i.colour, figure = i.figure, form = i.form},} - + rdt.texture = inv_image minetest.register_node("fireworkz:rocket_"..i.figure.."_"..i.colour, { description = S("Rocket").." (".. i.desc .. "|"..figure_desc..")", drawtype = "plantlike", light_source = 5, inventory_image = inv_image, - tiles = {"rocket_default.png"}, - wield_image = "rocket_default.png", + tiles = {inv_image}, + wield_image = inv_image, paramtype = "light", sunlight_propagates = true, walkable = false, is_ground_content = false, groups = {choppy = 3, explody = 1, firework = 1}, - - on_rightclick = function(pos, node, clicker, itemstack, pointed_thing) - local wielded_item = clicker:get_wielded_item() - local wielded_item_name = wielded_item:get_name() - if wielded_item_name == fireworkz.settings.igniter then - minetest.sound_play("fireworkz_fuse", {pos= pos, fireworkz.settings.max_hear_distance_fuse, gain = 1,}) - minetest.after(fireworkz.settings.ignition_time, function(node, pos) - local rocket_node = minetest.get_node(pos) - if rocket_node.name == node.name then - minetest.remove_node(pos) - fireworkz.launch(pos, rdt) - end - end, node, pos) - end + mesecons = { + effector = { + action_on = function(pos) + minetest.remove_node(pos) + fireworkz.launch(pos,rdt) + end + }, + }, + on_punch = function(pos) + minetest.remove_node(pos) + fireworkz.launch(pos,rdt) end, - on_use = function(itemstack, user, pointed_thing) local pos = minetest.get_pointed_thing_position(pointed_thing, true) if pos then @@ -269,6 +270,11 @@ end fireworkz.launch = function(pos, rdt) local obj = minetest.add_entity(pos, "fireworkz:rocket") --activate + if obj then + obj:set_properties({ + textures={rdt.texture} + }) + end local obj_ent = obj:get_luaentity() obj_ent.rdt = rdt end @@ -392,37 +398,3 @@ minetest.register_craft({ }, }) ---Mesecons Support - -if minetest.get_modpath("mesecons") ~= nil then - minetest.register_node("fireworkz:launcher", { - description = S("Firework Rocket Launcher"), - tiles = {"fireworkz_rocket_launcher.png"}, - is_ground_content = false, - groups = {cracky = 2, stone = 1}, - sounds = default.node_sound_stone_defaults(), - mesecons = {effector = { - action_on = function (pos, node) - pos.y = pos. y + 1 - local node = minetest.get_node_or_nil(pos) - if node then - if node.name:sub(1, 16) == "fireworkz:rocket" then - local meta = minetest.get_meta(pos) - local rdt = minetest.deserialize(meta:get_string("firework:rdt")) - minetest.remove_node(pos) - fireworkz.launch(pos, rdt) - end - end - end, - }} - }) - minetest.register_craft({ - output = "fireworkz:launcher", - type = "shaped", - recipe = { - {"", "tnt:gunpowder", ""}, - {"", "default:mese", ""}, - {"", "default:steelblock", ""} - }, - }) -end diff --git a/textures/fireworkz_rocket_launcher.png b/textures/fireworkz_rocket_launcher.png deleted file mode 100644 index db090b4..0000000 Binary files a/textures/fireworkz_rocket_launcher.png and /dev/null differ diff --git a/textures/rocket_ball.png b/textures/rocket_ball.png new file mode 100644 index 0000000..1805b31 Binary files /dev/null and b/textures/rocket_ball.png differ diff --git a/textures/rocket_ball_blue.png b/textures/rocket_ball_blue.png deleted file mode 100644 index af18a67..0000000 Binary files a/textures/rocket_ball_blue.png and /dev/null differ diff --git a/textures/rocket_ball_default_love_blue_white_red.png b/textures/rocket_ball_default_love_blue_white_red.png deleted file mode 100644 index de9e413..0000000 Binary files a/textures/rocket_ball_default_love_blue_white_red.png and /dev/null differ diff --git a/textures/rocket_ball_default_love_green_yellow_red.png b/textures/rocket_ball_default_love_green_yellow_red.png deleted file mode 100644 index 0288d34..0000000 Binary files a/textures/rocket_ball_default_love_green_yellow_red.png and /dev/null differ diff --git a/textures/rocket_ball_green.png b/textures/rocket_ball_green.png deleted file mode 100644 index 45c55a8..0000000 Binary files a/textures/rocket_ball_green.png and /dev/null differ diff --git a/textures/rocket_ball_red.png b/textures/rocket_ball_red.png deleted file mode 100644 index c143e5a..0000000 Binary files a/textures/rocket_ball_red.png and /dev/null differ diff --git a/textures/rocket_ball_white.png b/textures/rocket_ball_white.png deleted file mode 100644 index f9cd983..0000000 Binary files a/textures/rocket_ball_white.png and /dev/null differ diff --git a/textures/rocket_ball_yellow.png b/textures/rocket_ball_yellow.png deleted file mode 100644 index 3ec60ed..0000000 Binary files a/textures/rocket_ball_yellow.png and /dev/null differ diff --git a/textures/rocket_default.png b/textures/rocket_default.png index ddeb986..89542bc 100644 Binary files a/textures/rocket_default.png and b/textures/rocket_default.png differ diff --git a/textures/rocket_default_blue.png b/textures/rocket_default_blue.png index d1b2ce0..abcf9f3 100644 Binary files a/textures/rocket_default_blue.png and b/textures/rocket_default_blue.png differ diff --git a/textures/rocket_default_blue_white_red.png b/textures/rocket_default_blue_white_red.png new file mode 100644 index 0000000..2972bc8 Binary files /dev/null and b/textures/rocket_default_blue_white_red.png differ diff --git a/textures/rocket_default_green.png b/textures/rocket_default_green.png index 31e1c41..da92cbc 100644 Binary files a/textures/rocket_default_green.png and b/textures/rocket_default_green.png differ diff --git a/textures/rocket_default_green_yellow_red.png b/textures/rocket_default_green_yellow_red.png new file mode 100644 index 0000000..6d7b70f Binary files /dev/null and b/textures/rocket_default_green_yellow_red.png differ diff --git a/textures/rocket_default_red.png b/textures/rocket_default_red.png index a5f6e7d..2851774 100644 Binary files a/textures/rocket_default_red.png and b/textures/rocket_default_red.png differ diff --git a/textures/rocket_default_white.png b/textures/rocket_default_white.png index ea8e073..e7c469a 100644 Binary files a/textures/rocket_default_white.png and b/textures/rocket_default_white.png differ diff --git a/textures/rocket_default_yellow.png b/textures/rocket_default_yellow.png index ad251c6..51aec3c 100644 Binary files a/textures/rocket_default_yellow.png and b/textures/rocket_default_yellow.png differ diff --git a/textures/rocket_love.png b/textures/rocket_love.png new file mode 100644 index 0000000..8945f8e Binary files /dev/null and b/textures/rocket_love.png differ -- cgit v1.2.3