From ba7a8eea4651924867995714c2095acd13a443cb Mon Sep 17 00:00:00 2001 From: BuckarooBanzay Date: Fri, 22 Dec 2023 10:14:13 +0100 Subject: [PATCH 01/13] fix `sunlight_propagates` of octagon glass nodes --- nodes.lua | 10 +++++----- 1 file changed, 5 insertions(+), 5 deletions(-) diff --git a/nodes.lua b/nodes.lua index 8496392..fe2e733 100644 --- a/nodes.lua +++ b/nodes.lua @@ -346,7 +346,7 @@ minetest.register_node("scifi_nodes:grnpipe2", { minetest.register_node("scifi_nodes:octrng", { description = "Orange Octagon Glass", - sunlight_propagates = false, + sunlight_propagates = true, drawtype = "glasslike", tiles = { "scifi_nodes_octrng.png", @@ -361,7 +361,7 @@ minetest.register_node("scifi_nodes:octrng", { minetest.register_node("scifi_nodes:octgrn", { description = "Green Octagon Glass", - sunlight_propagates = false, + sunlight_propagates = true, drawtype = "glasslike", tiles = { "scifi_nodes_octgrn.png", @@ -376,7 +376,7 @@ minetest.register_node("scifi_nodes:octgrn", { minetest.register_node("scifi_nodes:octbl", { description = "Blue Octagon Glass", - sunlight_propagates = false, + sunlight_propagates = true, drawtype = "glasslike", tiles = { "scifi_nodes_octbl.png", @@ -391,7 +391,7 @@ minetest.register_node("scifi_nodes:octbl", { minetest.register_node("scifi_nodes:octppl", { description = "Purple Octagon Glass", - sunlight_propagates = false, + sunlight_propagates = true, drawtype = "glasslike", tiles = { "scifi_nodes_octppl.png", @@ -407,7 +407,7 @@ minetest.register_node("scifi_nodes:octppl", { if has_unifieddyes_mod then minetest.register_node("scifi_nodes:octwht", { description = "Octagon Glass", - sunlight_propagates = false, + sunlight_propagates = true, drawtype = "glasslike", tiles = { "scifi_nodes_octwht.png", From 3c3ad75e6d5a315695832d57fab29a04f8b5e661 Mon Sep 17 00:00:00 2001 From: BuckarooBanzay Date: Sat, 27 Jan 2024 19:33:01 +0100 Subject: [PATCH 02/13] add recipe for `screen3` --- crafts.lua | 16 ++++++++++++++-- 1 file changed, 14 insertions(+), 2 deletions(-) diff --git a/crafts.lua b/crafts.lua index 794c529..654fbee 100644 --- a/crafts.lua +++ b/crafts.lua @@ -234,7 +234,7 @@ minetest.register_craft({ } }) --- 4 electronic screen from 4 plastic, 1 trap glow glass, 2 cyan dye, 2 +-- 4 electronic screen from 4 plastic, 1 lightbar, 2 cyan dye, 2 -- microcontroller minetest.register_craft({ output = "scifi_nodes:screen 4", @@ -245,7 +245,7 @@ minetest.register_craft({ } }) --- 4 electronic screen2 from 4 plastic, 1 trap glow glass, 2 green dye, 2 +-- 4 electronic screen2 from 4 plastic, 1 lightbar, 2 green dye, 2 -- microcontroller minetest.register_craft({ output = "scifi_nodes:screen2 4", @@ -256,6 +256,18 @@ minetest.register_craft({ } }) + +-- 4 electronic screen3 from 4 plastic, 1 lightbar, 2 black dye, 2 +-- microcontroller +minetest.register_craft({ + output = "scifi_nodes:screen3 4", + recipe = { + {"scifi_nodes:white2", "mesecons_microcontroller:microcontroller0000", "scifi_nodes:white2"}, + {"dye:black", "scifi_nodes:lightbar", "dye:black"}, + {"scifi_nodes:white2", "mesecons_microcontroller:microcontroller0000", "scifi_nodes:white2"} + } +}) + -- 4 black wall screen from 4 black meshes and 1 electronic screen2 minetest.register_craft({ output = "scifi_nodes:black_screen 4", From 89876b23e7516c0fcb1f07eb03fc756cf4770857 Mon Sep 17 00:00:00 2001 From: BuckarooBanzay Date: Mon, 29 Jan 2024 17:26:15 +0100 Subject: [PATCH 03/13] add `slat` support --- .luacheckrc | 3 ++- mod.conf | 3 ++- nodes.json | 18 ++++++++++++------ nodes.lua | 12 ++++++++++++ 4 files changed, 28 insertions(+), 8 deletions(-) diff --git a/.luacheckrc b/.luacheckrc index f0423c2..e1c1bc6 100644 --- a/.luacheckrc +++ b/.luacheckrc @@ -23,5 +23,6 @@ read_globals = { "mesecon", "unifieddyes", "letters", - "stealthnode" + "stealthnode", + "slats" } diff --git a/mod.conf b/mod.conf index 58220d6..5570676 100644 --- a/mod.conf +++ b/mod.conf @@ -13,5 +13,6 @@ basic_materials, dye, unifieddyes, letters, -mesecons_stealthnode +mesecons_stealthnode, +slats """ diff --git a/nodes.json b/nodes.json index 4261078..50a75b4 100644 --- a/nodes.json +++ b/nodes.json @@ -38,7 +38,8 @@ "description": "rough metal" }, "lighttop": { - "description": "metal block" + "description": "metal block", + "slat": true }, "red": { "description": "red lines" @@ -50,7 +51,8 @@ "description": "vent" }, "stripes": { - "description": "hazard stripes" + "description": "hazard stripes", + "slat": true }, "rust": { "description": "rusty metal" @@ -83,7 +85,8 @@ "description": "blue metal" }, "bluetile": { - "description": "blue tile" + "description": "blue tile", + "slat": true }, "greytile": { "description": "grey tile" @@ -106,7 +109,8 @@ }, "whitetile": { "description": "white tile 2", - "colorable": true + "colorable": true, + "slat": true }, "black_detail": { "description": "black detail" @@ -206,7 +210,8 @@ "description": "Doom wall 4.4" }, "blackdmg": { - "description": "Damaged black wall" + "description": "Damaged black wall", + "slat": true }, "blackdmgstripe": { "description": "Damaged black wall(stripes)" @@ -252,7 +257,8 @@ "description": "Purple wall 4" }, "pplblk": { - "description": "Purple tile" + "description": "Purple tile", + "slat": true }, "purple": { "description": "Purple node" diff --git a/nodes.lua b/nodes.lua index fe2e733..ceb0563 100644 --- a/nodes.lua +++ b/nodes.lua @@ -1,5 +1,6 @@ local has_unifieddyes_mod = minetest.get_modpath("unifieddyes") local has_moreblocks_mod = minetest.get_modpath("moreblocks") +local has_slats_mod = minetest.get_modpath("slats") --nodes @@ -616,4 +617,15 @@ for name, def in pairs(nodes) do sounds = sounds, }) end + + if has_slats_mod and def.slat then + slats.register_slat( + name, + "scifi_nodes:" .. name, + node_def.groups, + "scifi_nodes_" .. name .. ".png^slats_slat_overlay.png^[makealpha:255,126,126", + def.description .. " Slat", + sounds + ) + end end From f1c0d745037f06132206f44bec17902c7d49d7e8 Mon Sep 17 00:00:00 2001 From: BuckarooBanzay Date: Mon, 29 Jan 2024 17:29:47 +0100 Subject: [PATCH 04/13] copy groups before passing them --- nodes.lua | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/nodes.lua b/nodes.lua index ceb0563..0bfc44d 100644 --- a/nodes.lua +++ b/nodes.lua @@ -622,7 +622,7 @@ for name, def in pairs(nodes) do slats.register_slat( name, "scifi_nodes:" .. name, - node_def.groups, + table.copy(node_def.groups), "scifi_nodes_" .. name .. ".png^slats_slat_overlay.png^[makealpha:255,126,126", def.description .. " Slat", sounds From 28229547372f5d60fa3a89682f5e52c83265d19d Mon Sep 17 00:00:00 2001 From: BuckarooBanzay Date: Sat, 3 Feb 2024 20:10:11 +0100 Subject: [PATCH 05/13] add some missing crafts --- crafts.lua | 49 +++++++++++++++++++++++++++++++++++++++++++++++++ 1 file changed, 49 insertions(+) diff --git a/crafts.lua b/crafts.lua index 654fbee..9383cc3 100644 --- a/crafts.lua +++ b/crafts.lua @@ -343,6 +343,16 @@ minetest.register_craft({ } }) +-- 6 black vnt from 6 black wall block and 6 stripes +minetest.register_craft({ + output = "scifi_nodes:blackvnt 6", + recipe = { + {"scifi_nodes:black", "scifi_nodes:black", "scifi_nodes:black"}, + {"scifi_nodes:stripes", "scifi_nodes:stripes", "scifi_nodes:stripes"}, + {"", "", ""} + } +}) + -- 6 black vent from 6 black wall minetest.register_craft({ output = "scifi_nodes:blackvent 6", @@ -745,6 +755,16 @@ minetest.register_craft({ } }) +-- 6 black pipe from 6 lighttop and 1 vent +minetest.register_craft({ + output = "scifi_nodes:blackpipe 6", + recipe = { + {"scifi_nodes:lighttop", "", "scifi_nodes:lighttop"}, + {"scifi_nodes:lighttop", "scifi_nodes:vent2", "scifi_nodes:lighttop"}, + {"scifi_nodes:lighttop", "", "scifi_nodes:lighttop"} + } +}) + -- 1 broken green pipe from 1 green pipe minetest.register_craft({ output = "scifi_nodes:grnpipe2", @@ -908,6 +928,16 @@ minetest.register_craft({ } }) +-- 4 holes from 4 grey and 1 black dye and 1 white dye and 1 metal mesh +minetest.register_craft({ + output = "scifi_nodes:holes 4", + recipe = { + {"scifi_nodes:grey", "dye:black", "scifi_nodes:grey"}, + {"", "scifi_nodes:mesh", ""}, + {"scifi_nodes:grey", "dye:white", "scifi_nodes:grey"} + } +}) + -- 4 metal table from 2 grey and 2 dented metal block minetest.register_craft({ output = "scifi_nodes:table 4", @@ -1647,6 +1677,25 @@ minetest.register_craft({ } }) +minetest.register_craft({ + output = 'scifi_nodes:green2 6', + recipe = { + {"scifi_nodes:white","dye:dark_green","scifi_nodes:white"}, + {"scifi_nodes:black","dye:dark_green","scifi_nodes:black"}, + {"scifi_nodes:white","dye:green","scifi_nodes:white"} + } +}) + + +minetest.register_craft({ + output = 'scifi_nodes:doomwall4 6', + recipe = { + {"scifi_nodes:white","dye:dark_green","scifi_nodes:white"}, + {"scifi_nodes:black","dye:dark_green","scifi_nodes:black"}, + {"scifi_nodes:white","dye:dark_green","scifi_nodes:white"} + } +}) + minetest.register_craft({ output = 'scifi_nodes:doomwall41 6', recipe = { From e29c8467af3c3f2afdf483f8eb5dd9e54552131b Mon Sep 17 00:00:00 2001 From: BuckarooBanzay Date: Sat, 3 Feb 2024 20:10:55 +0100 Subject: [PATCH 06/13] fix some light and rotation issues with `cover` --- nodeboxes.lua | 2 ++ 1 file changed, 2 insertions(+) diff --git a/nodeboxes.lua b/nodeboxes.lua index 2327a13..caddcbb 100644 --- a/nodeboxes.lua +++ b/nodeboxes.lua @@ -656,6 +656,8 @@ minetest.register_node("scifi_nodes:cover", { }, drawtype = "nodebox", paramtype = "light", + paramtype2 = "facedir", + sunlight_propagates = true, node_box = { type = "fixed", fixed = { From f3354f52da077c8000f98d5ad4dfc6bcbeafa838 Mon Sep 17 00:00:00 2001 From: BuckarooBanzay Date: Thu, 29 Feb 2024 13:37:38 +0100 Subject: [PATCH 07/13] disable param2type of octofloors --- nodes.json | 6 ++++-- nodes.lua | 2 +- 2 files changed, 5 insertions(+), 3 deletions(-) diff --git a/nodes.json b/nodes.json index 50a75b4..47f5db7 100644 --- a/nodes.json +++ b/nodes.json @@ -176,11 +176,13 @@ }, "octofloor": { "description": "Doom floor", - "sounds": "stone" + "sounds": "stone", + "paramtype2": "none" }, "octofloor2": { "description": "Brown Doom floor", - "sounds": "stone" + "sounds": "stone", + "paramtype2": "none" }, "doomwall1": { "description": "Doom wall 1" diff --git a/nodes.lua b/nodes.lua index 0bfc44d..61962f5 100644 --- a/nodes.lua +++ b/nodes.lua @@ -569,7 +569,7 @@ for name, def in pairs(nodes) do tiles = tiles, groups = {cracky=1, dig_generic = 3}, paramtype = "light", - paramtype2 = "facedir", + paramtype2 = def.paramtype2 or "facedir", light_source = def.light, sounds = sounds, } From 014ca0179fc7264056f789d9f7ded0015b997f22 Mon Sep 17 00:00:00 2001 From: squidicuz Date: Thu, 29 Feb 2024 14:41:04 -0500 Subject: [PATCH 08/13] update doors group (#80) --- doors.lua | 9 +++++---- 1 file changed, 5 insertions(+), 4 deletions(-) diff --git a/doors.lua b/doors.lua index b165763..b44fc96 100644 --- a/doors.lua +++ b/doors.lua @@ -243,7 +243,8 @@ for _, current_door in ipairs(doors) do groups = { cracky = 3, oddly_breakable_by_hand = 1, - scifi_nodes_door = 1 + scifi_nodes_door = 1, + door = 1 }, node_box = { type = "fixed", @@ -277,7 +278,7 @@ for _, current_door in ipairs(doors) do drawtype = "nodebox", paramtype = "light", paramtype2 = "facedir", - groups = {cracky = 1, dig_generic = 3}, + groups = {cracky = 1, dig_generic = 3, door = 1}, node_box = { type = "fixed", fixed = { @@ -307,7 +308,7 @@ for _, current_door in ipairs(doors) do paramtype = "light", paramtype2 = "facedir", drop = closed, - groups = {cracky = 1, dig_generic = 3}, + groups = {cracky = 1, dig_generic = 3, door = 2}, node_box = { type = "fixed", fixed = { @@ -338,7 +339,7 @@ for _, current_door in ipairs(doors) do drawtype = "nodebox", paramtype = "light", paramtype2 = "facedir", - groups = {cracky = 1, dig_generic = 3}, + groups = {cracky = 1, dig_generic = 3, door = 2}, node_box = { type = "fixed", fixed = { From 49703e73861907d57d4f788297c460cb4e3e785c Mon Sep 17 00:00:00 2001 From: Luke aka SwissalpS Date: Fri, 1 Mar 2024 07:00:13 +0100 Subject: [PATCH 09/13] is ground content revision (#81) also cleaned up some of the whitespace indentation and one occurance where ';' was being used instead of ',' --- builder.lua | 31 +++---- digicode.lua | 4 +- doors.lua | 6 +- forcefield.lua | 3 +- models.lua | 37 ++++---- nodeboxes.lua | 208 +++++++++++++++++++++++++------------------ nodes.lua | 39 +++++++- palm_scanner.lua | 3 + protected_switch.lua | 2 + switch.lua | 2 + 10 files changed, 213 insertions(+), 122 deletions(-) diff --git a/builder.lua b/builder.lua index cdb67da..4a031f1 100644 --- a/builder.lua +++ b/builder.lua @@ -86,25 +86,26 @@ minetest.register_node("scifi_nodes:builder", { on_metadata_inventory_take = function(pos, listname, index, stack, player) local meta = minetest.get_meta(pos) local inv = meta:get_inventory() - local istack = inv:get_stack("input", 1) - local stack_name = istack:get_name() - inv:remove_item("input", stack_name.." 1") + local istack = inv:get_stack("input", 1) + local stack_name = istack:get_name() + inv:remove_item("input", stack_name.." 1") - inv:set_stack("output", 1, "") - inv:set_stack("output", 2, "") - inv:set_stack("output", 3, "") - inv:set_stack("output", 4, "") - inv:set_stack("output", 5, "") - inv:set_stack("output", 6, "") - inv:set_stack("output", 7, "") - inv:set_stack("output", 8, "") - inv:set_stack("output", 9, "") - inv:set_stack("output", 10, "") - inv:set_stack("output", 11, "") - inv:set_stack("output", 12, "") + inv:set_stack("output", 1, "") + inv:set_stack("output", 2, "") + inv:set_stack("output", 3, "") + inv:set_stack("output", 4, "") + inv:set_stack("output", 5, "") + inv:set_stack("output", 6, "") + inv:set_stack("output", 7, "") + inv:set_stack("output", 8, "") + inv:set_stack("output", 9, "") + inv:set_stack("output", 10, "") + inv:set_stack("output", 11, "") + inv:set_stack("output", 12, "") end, paramtype = "light", paramtype2 = "facedir", groups = {cracky=1, oddly_breakable_by_hand=1}, + is_ground_content = false, sounds = scifi_nodes.node_sound_metal_defaults(), }) diff --git a/digicode.lua b/digicode.lua index 98b5d34..1a5fdcf 100644 --- a/digicode.lua +++ b/digicode.lua @@ -102,7 +102,7 @@ minetest.register_on_player_receive_fields(function(player, formname, fields) end -- play sound at context position minetest.sound_play(sounds[sound_index], { - pos = context.pos, + pos = context.pos, max_hear_distance = 10 }) context[player:get_player_name()] = nil -- we don't need it anymore @@ -122,6 +122,7 @@ minetest.register_node("scifi_nodes:digicode_on", { paramtype2 = "wallmounted", light_source = 5, groups = {cracky=1, oddly_breakable_by_hand=1, not_in_creative_inventory=1, mesecon_needs_receiver = 1}, + is_ground_content = false, drop = "scifi_nodes:digicode_off", mesecons = { receptor = { @@ -145,6 +146,7 @@ minetest.register_node("scifi_nodes:digicode_off", { paramtype = "light", paramtype2 = "wallmounted", groups = {cracky=1, oddly_breakable_by_hand=1, mesecon_needs_receiver = 1}, + is_ground_content = false, mesecons = { receptor = { state = (has_mesecons and mesecon.state.off) diff --git a/doors.lua b/doors.lua index b44fc96..35ba558 100644 --- a/doors.lua +++ b/doors.lua @@ -246,6 +246,7 @@ for _, current_door in ipairs(doors) do scifi_nodes_door = 1, door = 1 }, + is_ground_content = false, node_box = { type = "fixed", fixed = { @@ -279,6 +280,7 @@ for _, current_door in ipairs(doors) do paramtype = "light", paramtype2 = "facedir", groups = {cracky = 1, dig_generic = 3, door = 1}, + is_ground_content = false, node_box = { type = "fixed", fixed = { @@ -309,6 +311,7 @@ for _, current_door in ipairs(doors) do paramtype2 = "facedir", drop = closed, groups = {cracky = 1, dig_generic = 3, door = 2}, + is_ground_content = false, node_box = { type = "fixed", fixed = { @@ -340,6 +343,7 @@ for _, current_door in ipairs(doors) do paramtype = "light", paramtype2 = "facedir", groups = {cracky = 1, dig_generic = 3, door = 2}, + is_ground_content = false, node_box = { type = "fixed", fixed = { @@ -379,4 +383,4 @@ function scifi_nodes.open_door(pos) -- call open function def._open(pos, node) return true -end \ No newline at end of file +end diff --git a/forcefield.lua b/forcefield.lua index 939aabb..53bf9a5 100644 --- a/forcefield.lua +++ b/forcefield.lua @@ -6,6 +6,7 @@ minetest.register_node("scifi_nodes:forcefield", { cracky = 1, level = 3 }, + is_ground_content = false, sounds = scifi_nodes.node_sound_glass_defaults(), paramtype = "light", light_source = minetest.LIGHT_MAX, @@ -18,4 +19,4 @@ minetest.register_node("scifi_nodes:forcefield", { length = 1.0, } }} -}) \ No newline at end of file +}) diff --git a/models.lua b/models.lua index 5704faa..dc54c82 100644 --- a/models.lua +++ b/models.lua @@ -16,29 +16,30 @@ function scifi_nodes.register_slope(name, desc, texture, light, soundtype) drawtype = "mesh", mesh = "scifi_nodes_slope.obj", tiles = texture, - selection_box = { - type = "fixed", - fixed = { - {-0.5, -0.5, -0.5, 0.5, -0.25, 0.5}, - {-0.5, -0.25, -0.25, 0.5, 0, 0.5}, - {-0.5, 0, 0, 0.5, 0.25, 0.5}, - {-0.5, 0.25, 0.25, 0.5, 0.5, 0.5} - } - }, - collision_box = { - type = "fixed", - fixed = { - {-0.5, -0.5, -0.5, 0.5, -0.25, 0.5}, - {-0.5, -0.25, -0.25, 0.5, 0, 0.5}, - {-0.5, 0, 0, 0.5, 0.25, 0.5}, - {-0.5, 0.25, 0.25, 0.5, 0.5, 0.5} - } - }, + selection_box = { + type = "fixed", + fixed = { + {-0.5, -0.5, -0.5, 0.5, -0.25, 0.5}, + {-0.5, -0.25, -0.25, 0.5, 0, 0.5}, + {-0.5, 0, 0, 0.5, 0.25, 0.5}, + {-0.5, 0.25, 0.25, 0.5, 0.5, 0.5} + } + }, + collision_box = { + type = "fixed", + fixed = { + {-0.5, -0.5, -0.5, 0.5, -0.25, 0.5}, + {-0.5, -0.25, -0.25, 0.5, 0, 0.5}, + {-0.5, 0, 0, 0.5, 0.25, 0.5}, + {-0.5, 0.25, 0.25, 0.5, 0.5, 0.5} + } + }, paramtype = "light", paramtype2 = "facedir", use_texture_alpha = "clip", light_source = light, groups = {cracky=1, dig_generic = 3}, + is_ground_content = false, on_place = minetest.rotate_node, sounds = sounds, }) diff --git a/nodeboxes.lua b/nodeboxes.lua index caddcbb..6253af3 100644 --- a/nodeboxes.lua +++ b/nodeboxes.lua @@ -19,6 +19,7 @@ minetest.register_node("scifi_nodes:alienslope", { paramtype = "light", paramtype2 = "facedir", groups = {cracky=1, dig_generic = 3}, + is_ground_content = false, node_box = { type = "fixed", fixed = { @@ -50,6 +51,7 @@ minetest.register_node("scifi_nodes:wallpipe", { paramtype = "light", paramtype2 = "facedir", groups = {cracky=1, dig_generic = 3}, + is_ground_content = false, node_box = { type = "fixed", fixed = { @@ -82,6 +84,7 @@ minetest.register_node("scifi_nodes:plant_trap", { walkable = false, sunlight_propagates = false, groups = {snappy=1, oddly_breakable_by_hand=1}, + is_ground_content = false, node_box = { type = "fixed", fixed = { @@ -108,6 +111,7 @@ minetest.register_node("scifi_nodes:egg", { drawtype = "nodebox", paramtype = "light", groups = {cracky=1, oddly_breakable_by_hand=1, dig_immediate=2, falling_node=1, dig_generic = 3}, + is_ground_content = false, light_source = 5, node_box = { type = "fixed", @@ -127,14 +131,14 @@ minetest.register_node("scifi_nodes:egg", { }) if minetest.get_modpath("scifi_mobs") then -minetest.register_abm({ - nodenames = {"scifi_nodes:egg"}, - interval = 30, chance = 10, - action = function(pos, node, _, _) - minetest.add_entity(pos, "scifi_mobs:xenomorph") - minetest.remove_node(pos) - end -}) + minetest.register_abm({ + nodenames = {"scifi_nodes:egg"}, + interval = 30, chance = 10, + action = function(pos, node, _, _) + minetest.add_entity(pos, "scifi_mobs:xenomorph") + minetest.remove_node(pos) + end + }) end minetest.register_node("scifi_nodes:pad", { @@ -150,6 +154,7 @@ minetest.register_node("scifi_nodes:pad", { drawtype = "nodebox", paramtype = "light", groups = {cracky=1, oddly_breakable_by_hand=1}, + is_ground_content = false, light_source = 5, after_place_node = function(pos, placer, itemstack, pointed_thing) local placer_name = placer:get_player_name() @@ -168,92 +173,93 @@ minetest.register_node("scifi_nodes:pad", { local clicker_name = clicker:get_player_name() local meta = minetest.get_meta(pos) if meta:get_int("type") == 1 and position2 ~= nil and position1 ~= nil then - minetest.add_particlespawner( - 25, --amount - 1.5, --time - {x=pos.x-0.9, y=pos.y-0.3, z=pos.z-0.9}, --minpos - {x=pos.x+0.9, y=pos.y-0.3, z=pos.z+0.9}, --maxpos - {x=0, y=0, z=0}, --minvel - {x=0, y=0, z=0}, --maxvel - {x=-0,y=1,z=-0}, --minacc - {x=0,y=2,z=0}, --maxacc - 0.5, --minexptime - 1, --maxexptime - 2, --minsize - 5, --maxsize - false, --collisiondetection - "scifi_nodes_tp_part.png" --texture - ) - minetest.after(1, function() - local ppos = clicker:getpos() - if minetest.get_node({x=ppos.x, y=ppos.y, z=ppos.z}).name == "scifi_nodes:pad" then - clicker:setpos(position2) - end - local objs = minetest.get_objects_inside_radius(pos, 3) - for _, obj in pairs(objs) do - if obj:get_luaentity() and not obj:is_player() then - if obj:get_luaentity().name == "__builtin:item" then - local item1 = obj:get_luaentity().itemstring - local obj2 = minetest.add_entity(position2, "__builtin:item") - obj2:get_luaentity():set_item(item1) - obj:remove() + minetest.add_particlespawner( + 25, --amount + 1.5, --time + {x=pos.x-0.9, y=pos.y-0.3, z=pos.z-0.9}, --minpos + {x=pos.x+0.9, y=pos.y-0.3, z=pos.z+0.9}, --maxpos + {x=0, y=0, z=0}, --minvel + {x=0, y=0, z=0}, --maxvel + {x=-0,y=1,z=-0}, --minacc + {x=0,y=2,z=0}, --maxacc + 0.5, --minexptime + 1, --maxexptime + 2, --minsize + 5, --maxsize + false, --collisiondetection + "scifi_nodes_tp_part.png" --texture + ) + minetest.after(1, function() + local ppos = clicker:getpos() + if minetest.get_node({x=ppos.x, y=ppos.y, z=ppos.z}).name == "scifi_nodes:pad" then + clicker:setpos(position2) end + local objs = minetest.get_objects_inside_radius(pos, 3) + for _, obj in pairs(objs) do + if obj:get_luaentity() and not obj:is_player() then + if obj:get_luaentity().name == "__builtin:item" then + local item1 = obj:get_luaentity().itemstring + local obj2 = minetest.add_entity(position2, "__builtin:item") + obj2:get_luaentity():set_item(item1) + obj:remove() + end + end end - end - end) + end) elseif meta:get_int("type") == 2 and position1 ~= nil and position2 ~= nil then - minetest.add_particlespawner( - 25, --amount - 1.5, --time - {x=pos.x-0.9, y=pos.y-0.3, z=pos.z-0.9}, --minpos - {x=pos.x+0.9, y=pos.y-0.3, z=pos.z+0.9}, --maxpos - {x=0, y=0, z=0}, --minvel - {x=0, y=0, z=0}, --maxvel - {x=-0,y=1,z=-0}, --minacc - {x=0,y=2,z=0}, --maxacc - 0.5, --minexptime - 1, --maxexptime - 2, --minsize - 5, --maxsize - false, --collisiondetection - "scifi_nodes_tp_part.png" --texture - ) - minetest.after(1, function() - local ppos = clicker:getpos() - if minetest.get_node({x=ppos.x, y=ppos.y, z=ppos.z}).name == "scifi_nodes:pad" then - clicker:setpos(position1) - end - local objs = minetest.get_objects_inside_radius(pos, 3) + minetest.add_particlespawner( + 25, --amount + 1.5, --time + {x=pos.x-0.9, y=pos.y-0.3, z=pos.z-0.9}, --minpos + {x=pos.x+0.9, y=pos.y-0.3, z=pos.z+0.9}, --maxpos + {x=0, y=0, z=0}, --minvel + {x=0, y=0, z=0}, --maxvel + {x=-0,y=1,z=-0}, --minacc + {x=0,y=2,z=0}, --maxacc + 0.5, --minexptime + 1, --maxexptime + 2, --minsize + 5, --maxsize + false, --collisiondetection + "scifi_nodes_tp_part.png" --texture + ) + minetest.after(1, function() + local ppos = clicker:getpos() + if minetest.get_node({x=ppos.x, y=ppos.y, z=ppos.z}).name == "scifi_nodes:pad" then + clicker:setpos(position1) + end + local objs = minetest.get_objects_inside_radius(pos, 3) for _, obj in pairs(objs) do - if obj:get_luaentity() and not obj:is_player() then - if obj:get_luaentity().name == "__builtin:item" then - local item1 = obj:get_luaentity().itemstring - local obj2 = minetest.add_entity(position1, "__builtin:item") - obj2:get_luaentity():set_item(item1) - obj:remove() + if obj:get_luaentity() and not obj:is_player() then + if obj:get_luaentity().name == "__builtin:item" then + local item1 = obj:get_luaentity().itemstring + local obj2 = minetest.add_entity(position1, "__builtin:item") + obj2:get_luaentity():set_item(item1) + obj:remove() + end + end end - end - end - end) + end) elseif position1 == nil and meta:get_int("type") ~= 2 then - position1 = pos - meta:set_int("type", 1) - minetest.chat_send_player(clicker_name, "Teleporter 1 connected at "..minetest.pos_to_string(pos)) + position1 = pos + meta:set_int("type", 1) + minetest.chat_send_player(clicker_name, "Teleporter 1 connected at "..minetest.pos_to_string(pos)) elseif position2 == nil and meta:get_int("type") ~= 1 then - position2 = pos - meta:set_int("type", 2) - minetest.chat_send_player(clicker_name, "Teleporter 2 connected at "..minetest.pos_to_string(pos)) - else minetest.chat_send_player(clicker_name, "Teleporter error!") + position2 = pos + meta:set_int("type", 2) + minetest.chat_send_player(clicker_name, "Teleporter 2 connected at "..minetest.pos_to_string(pos)) + else + minetest.chat_send_player(clicker_name, "Teleporter error!") end end, on_destruct = function(pos, oldnode, placer) local meta = minetest.get_meta(pos) if meta:get_int("type") == 1 then - position1 = nil - meta:set_int("type", 0) + position1 = nil + meta:set_int("type", 0) elseif meta:get_int("type") == 2 then - position2 = nil - meta:set_int("type", 0) + position2 = nil + meta:set_int("type", 0) end end, node_box = { @@ -284,6 +290,7 @@ minetest.register_node("scifi_nodes:pplwndw", { use_texture_alpha = "blend", groups = {cracky=3, dig_generic = 4}, sounds = scifi_nodes.node_sound_glass_defaults(), + is_ground_content = false, node_box = { type = "fixed", fixed = { @@ -310,6 +317,7 @@ minetest.register_node("scifi_nodes:gloshroom", { sunlight_propagates = false, use_texture_alpha = "blend", groups = {fleshy=1, oddly_breakable_by_hand=1, dig_immediate=3}, + is_ground_content = false, node_box = { type = "fixed", fixed = { @@ -335,6 +343,7 @@ minetest.register_node("scifi_nodes:pot_lid", { drawtype = "nodebox", paramtype = "light", groups = {not_in_creative_inventory = 1}, + is_ground_content = false, sunlight_propagates = true, diggable = false, drop = "", @@ -392,6 +401,7 @@ minetest.register_node("scifi_nodes:pot", { drawtype = "nodebox", paramtype = "light", groups = {cracky = 1, soil = 1, sand = 1, dig_generic = 3}, + is_ground_content = false, selection_box = { type = "fixed", fixed = {-0.5, -0.5, -0.5, 0.5, 0.5, 0.5} @@ -426,6 +436,7 @@ minetest.register_node("scifi_nodes:pot2", { drawtype = "nodebox", paramtype = "light", groups = {cracky = 1, soil = 3, wet = 1, dig_generic = 3}, + is_ground_content = false, selection_box = { type = "fixed", fixed = {-0.5, -0.5, -0.5, 0.5, 0.5, 0.5} @@ -470,6 +481,7 @@ minetest.register_node("scifi_nodes:lightbar", { } }, groups = {cracky=1, dig_generic = 3}, + is_ground_content = false, sounds = scifi_nodes.node_sound_glass_defaults() }) @@ -495,6 +507,7 @@ minetest.register_node("scifi_nodes:light_dynamic", { paramtype2 = "wallmounted", light_source = minetest.LIGHT_MAX, groups = {cracky=1, oddly_breakable_by_hand=1}, + is_ground_content = false, sounds = scifi_nodes.node_sound_glass_defaults() }) @@ -531,6 +544,7 @@ minetest.register_node("scifi_nodes:ladder", { walkable = false, climbable = true, groups = {cracky=1, oddly_breakable_by_hand=1}, + is_ground_content = false, }) minetest.register_node("scifi_nodes:lightbars", { @@ -553,12 +567,13 @@ minetest.register_node("scifi_nodes:lightbars", { } }, groups = {cracky=1, dig_generic = 3}, + is_ground_content = false, sounds = scifi_nodes.node_sound_glass_defaults() }) minetest.register_node("scifi_nodes:liquid_pipe", { description = "Liquid pipe", -tiles = {{ + tiles = {{ name = "scifi_nodes_liquid.png", animation = {type = "vertical_frames", aspect_w = 16, aspect_h = 16, length = 1.00}, }}, @@ -575,12 +590,13 @@ tiles = {{ } }, groups = {cracky=1, oddly_breakable_by_hand=1, dig_generic = 3}, + is_ground_content = false, sounds = scifi_nodes.node_sound_glass_defaults() }) minetest.register_node("scifi_nodes:liquid_pipe2", { description = "Liquid pipe 2", -tiles = { + tiles = { "scifi_nodes_orange.png", }, use_texture_alpha = "blend", @@ -596,6 +612,7 @@ tiles = { } }, groups = {cracky=1, oddly_breakable_by_hand=1}, + is_ground_content = false, sounds = scifi_nodes.node_sound_glass_defaults() }) @@ -626,6 +643,7 @@ minetest.register_node("scifi_nodes:powered_stand", { } }, groups = {cracky=1, oddly_breakable_by_hand=1}, + is_ground_content = false, on_rightclick = function(pos, node, clicker, item, _) local wield_item_stack = clicker:get_wielded_item() local wield_item = wield_item_stack:get_name() @@ -667,7 +685,8 @@ minetest.register_node("scifi_nodes:cover", { } }, sounds = scifi_nodes.node_sound_metal_defaults(), - groups = {cracky=1, oddly_breakable_by_hand=1} + groups = {cracky=1, oddly_breakable_by_hand=1}, + is_ground_content = false, }) minetest.register_node("scifi_nodes:computer", { @@ -691,6 +710,7 @@ minetest.register_node("scifi_nodes:computer", { } }, groups = {cracky=1, oddly_breakable_by_hand=1}, + is_ground_content = false, sounds = scifi_nodes.node_sound_metal_defaults(), }) @@ -718,6 +738,7 @@ minetest.register_node("scifi_nodes:keysmonitor", { } }, groups = {cracky=1, oddly_breakable_by_hand=1}, + is_ground_content = false, sounds = scifi_nodes.node_sound_defaults(), }) @@ -746,6 +767,7 @@ minetest.register_node("scifi_nodes:microscope", { } }, groups = {cracky=1, oddly_breakable_by_hand=1}, + is_ground_content = false, sounds = scifi_nodes.node_sound_defaults(), }) @@ -775,7 +797,8 @@ minetest.register_node("scifi_nodes:table", { } }, sounds = scifi_nodes.node_sound_metal_defaults(), - groups = {cracky=1, dig_generic = 3} + groups = {cracky=1, dig_generic = 3}, + is_ground_content = false, }) minetest.register_node("scifi_nodes:laptop_open", { @@ -800,6 +823,7 @@ minetest.register_node("scifi_nodes:laptop_open", { } }, groups = {cracky=1, oddly_breakable_by_hand=1, not_in_creative_inventory=1}, + is_ground_content = false, on_rightclick = function(pos, node, clicker, item, _) minetest.set_node(pos, {name="scifi_nodes:laptop_closed", param2=node.param2}) end, @@ -827,6 +851,7 @@ minetest.register_node("scifi_nodes:laptop_closed", { } }, groups = {cracky=1, oddly_breakable_by_hand=1}, + is_ground_content = false, on_rightclick = function(pos, node, clicker, item, _) minetest.set_node(pos, {name="scifi_nodes:laptop_open", param2=node.param2}) end, @@ -861,6 +886,7 @@ minetest.register_node("scifi_nodes:pipen", { } }, groups = {cracky=1, dig_generic = 3}, + is_ground_content = false, on_place = minetest.rotate_node, sounds = scifi_nodes.node_sound_metal_defaults(), }) @@ -892,6 +918,7 @@ minetest.register_node("scifi_nodes:windowcorner", { } }, groups = {cracky=1, dig_generic = 3}, + is_ground_content = false, on_place = minetest.rotate_node, sounds = scifi_nodes.node_sound_glass_defaults(), }) @@ -919,6 +946,7 @@ minetest.register_node("scifi_nodes:windowstraight", { } }, groups = {cracky=1, dig_generic = 3}, + is_ground_content = false, on_place = minetest.rotate_node, sounds = scifi_nodes.node_sound_glass_defaults(), }) @@ -950,6 +978,7 @@ minetest.register_node("scifi_nodes:windowcorner2", { } }, groups = {cracky=1, dig_generic = 3}, + is_ground_content = false, on_place = minetest.rotate_node, sounds = scifi_nodes.node_sound_glass_defaults(), }) @@ -977,6 +1006,7 @@ minetest.register_node("scifi_nodes:windowstraight2", { } }, groups = {cracky=1, dig_generic = 3}, + is_ground_content = false, on_place = minetest.rotate_node, sounds = scifi_nodes.node_sound_glass_defaults(), }) @@ -1007,6 +1037,7 @@ minetest.register_node("scifi_nodes:capsule", { } }, groups = {cracky=1, oddly_breakable_by_hand=1, dig_generic = 3}, + is_ground_content = false, sounds = scifi_nodes.node_sound_glass_defaults(), on_rightclick = function(pos, node, clicker, item, _) minetest.set_node(pos, {name="scifi_nodes:capsule2", param2=node.param2}) @@ -1037,6 +1068,7 @@ minetest.register_node("scifi_nodes:capsule3", { } }, groups = {cracky=1, oddly_breakable_by_hand=1, not_in_creative_inventory=1}, + is_ground_content = false, sounds = scifi_nodes.node_sound_glass_defaults(), on_rightclick = function(pos, node, clicker, item, _) minetest.set_node(pos, {name="scifi_nodes:capsule", param2=node.param2}) @@ -1067,6 +1099,7 @@ minetest.register_node("scifi_nodes:capsule2", { } }, groups = {cracky=1, oddly_breakable_by_hand=1, not_in_creative_inventory=1}, + is_ground_content = false, sounds = scifi_nodes.node_sound_glass_defaults(), on_rightclick = function(pos, node, clicker, item, _) minetest.set_node(pos, {name="scifi_nodes:capsule3", param2=node.param2}) @@ -1097,6 +1130,7 @@ minetest.register_node("scifi_nodes:itemholder", { } }, groups = {cracky=1, dig_generic = 3}, + is_ground_content = false, on_rotate = minetest.get_modpath("screwdriver") and screwdriver.disallow, after_place_node = function(pos, placer, itemstack) local meta = minetest.get_meta(pos) @@ -1156,6 +1190,7 @@ minetest.register_node("scifi_nodes:glassscreen", { } }, groups = {cracky=1, oddly_breakable_by_hand=1}, + is_ground_content = false, sounds = scifi_nodes.node_sound_glass_defaults(), }) @@ -1188,6 +1223,7 @@ minetest.register_node("scifi_nodes:widescreen", { } }, groups = {cracky=1, oddly_breakable_by_hand=1}, + is_ground_content = false, sounds = scifi_nodes.node_sound_defaults(), }) @@ -1219,6 +1255,7 @@ minetest.register_node("scifi_nodes:tallscreen", { } }, groups = {cracky=1, oddly_breakable_by_hand=1}, + is_ground_content = false, sounds = scifi_nodes.node_sound_defaults(), }) @@ -1240,6 +1277,7 @@ minetest.register_node("scifi_nodes:windowpanel", { } }, groups = {cracky=1, dig_generic = 3}, + is_ground_content = false, on_place = minetest.rotate_node, sounds = scifi_nodes.node_sound_glass_defaults(), }) diff --git a/nodes.lua b/nodes.lua index 61962f5..128c3d3 100644 --- a/nodes.lua +++ b/nodes.lua @@ -11,6 +11,7 @@ minetest.register_node("scifi_nodes:grassblk", { tileable_vertical = false}}, light_source = 2, groups = {crumbly=1, oddly_breakable_by_hand=1, soil=1}, + is_ground_content = false, sounds = scifi_nodes.node_sound_dirt_defaults({ footstep = scifi_nodes.node_sound_plant_defaults().footstep, }) @@ -30,6 +31,7 @@ minetest.register_node("scifi_nodes:light", { light_source = 10, paramtype = "light", groups = {cracky=1, dig_generic = 3}, + is_ground_content = false, sounds = scifi_nodes.node_sound_metal_defaults(), }) @@ -42,6 +44,7 @@ minetest.register_node("scifi_nodes:rfloor", { paramtype2 = "facedir", light_source = 10, groups = {cracky=1, dig_generic = 3}, + is_ground_content = false, sounds = scifi_nodes.node_sound_metal_defaults() }) @@ -54,6 +57,7 @@ minetest.register_node("scifi_nodes:bfloor", { paramtype2 = "facedir", light_source = 10, groups = {cracky=1, dig_generic = 3}, + is_ground_content = false, sounds = scifi_nodes.node_sound_metal_defaults() }) @@ -71,6 +75,7 @@ minetest.register_node("scifi_nodes:stripes2", { }, paramtype = "light", groups = {cracky=1, dig_generic = 3}, + is_ground_content = false, sounds = scifi_nodes.node_sound_metal_defaults() }) @@ -86,7 +91,8 @@ minetest.register_node("scifi_nodes:gblock", { "scifi_nodes_gblock.png" }, paramtype = "light", - groups = {cracky=1, dig_generic = 3}; + groups = {cracky=1, dig_generic = 3}, + is_ground_content = false, sounds = scifi_nodes.node_sound_metal_defaults() }) @@ -104,6 +110,7 @@ minetest.register_node("scifi_nodes:gblock2", { paramtype = "light", paramtype2 = "facedir", groups = {cracky=1, dig_generic = 3}, + is_ground_content = false, sounds = scifi_nodes.node_sound_metal_defaults() }) @@ -121,6 +128,7 @@ minetest.register_node("scifi_nodes:gblock3", { paramtype = "light", paramtype2 = "facedir", groups = {cracky=1, dig_generic = 3}, + is_ground_content = false, sounds = scifi_nodes.node_sound_metal_defaults() }) @@ -140,6 +148,7 @@ minetest.register_node("scifi_nodes:green_light", { light_source = 10, paramtype = "light", groups = {cracky=1, dig_generic = 3}, + is_ground_content = false, sounds = scifi_nodes.node_sound_glass_defaults() }) @@ -157,6 +166,7 @@ minetest.register_node("scifi_nodes:red_light", { light_source = 10, paramtype = "light", groups = {cracky=1, dig_generic = 3}, + is_ground_content = false, sounds = scifi_nodes.node_sound_glass_defaults() }) @@ -173,6 +183,7 @@ minetest.register_node("scifi_nodes:discs", { }, paramtype = "light", groups = {cracky=1, dig_generic = 3}, + is_ground_content = false, sounds = scifi_nodes.node_sound_metal_defaults() }) @@ -187,6 +198,7 @@ minetest.register_node("scifi_nodes:disc", { wield_image = "scifi_nodes_disc.png", paramtype = "light", groups = {cracky=1, dig_generic = 3}, + is_ground_content = false, sounds = scifi_nodes.node_sound_defaults(), }) @@ -203,6 +215,7 @@ minetest.register_node("scifi_nodes:greenbar_animated", { paramtype = "light", paramtype2 = "facedir", groups = {cracky=1, dig_generic = 3}, + is_ground_content = false, light_source = 10, sounds = scifi_nodes.node_sound_glass_defaults(), on_place = minetest.rotate_node @@ -217,6 +230,7 @@ minetest.register_node("scifi_nodes:blink", { }}, paramtype = "light", groups = {cracky=1, dig_generic = 3}, + is_ground_content = false, light_source = 5, sounds = scifi_nodes.node_sound_glass_defaults() }) @@ -230,6 +244,7 @@ minetest.register_node("scifi_nodes:black_lights", { }}, paramtype = "light", groups = {cracky=1, dig_generic = 3}, + is_ground_content = false, sounds = scifi_nodes.node_sound_metal_defaults() }) @@ -242,6 +257,7 @@ minetest.register_node("scifi_nodes:black_screen", { }}, paramtype = "light", groups = {cracky=1, dig_generic = 3}, + is_ground_content = false, light_source = 1, sounds = scifi_nodes.node_sound_metal_defaults() }) @@ -255,6 +271,7 @@ minetest.register_node("scifi_nodes:screen", { }}, paramtype = "light", groups = {cracky=1, dig_generic = 3}, + is_ground_content = false, light_source = 5, sounds = scifi_nodes.node_sound_glass_defaults() }) @@ -268,6 +285,7 @@ minetest.register_node("scifi_nodes:screen2", { }}, paramtype = "light", groups = {cracky=1, dig_generic = 3}, + is_ground_content = false, light_source = 5, sounds = scifi_nodes.node_sound_glass_defaults() }) @@ -288,6 +306,7 @@ minetest.register_node("scifi_nodes:white_pad", { paramtype = "light", paramtype2 = "facedir", groups = {cracky=1, dig_generic = 3}, + is_ground_content = false, sounds = scifi_nodes.node_sound_metal_defaults() }) @@ -305,6 +324,7 @@ minetest.register_node("scifi_nodes:white_base", { paramtype = "light", paramtype2 = "facedir", groups = {cracky=1, dig_generic = 3}, + is_ground_content = false, sounds = scifi_nodes.node_sound_glass_defaults() }) @@ -322,6 +342,7 @@ minetest.register_node("scifi_nodes:grnpipe", { paramtype = "light", paramtype2 = "facedir", groups = {cracky=1, dig_generic = 3}, + is_ground_content = false, sounds = scifi_nodes.node_sound_metal_defaults(), on_place = minetest.rotate_node }) @@ -341,6 +362,7 @@ minetest.register_node("scifi_nodes:grnpipe2", { paramtype = "light", paramtype2 = "facedir", groups = {cracky=1, dig_generic = 3}, + is_ground_content = false, sounds = scifi_nodes.node_sound_metal_defaults(), on_place = minetest.rotate_node }) @@ -357,6 +379,7 @@ minetest.register_node("scifi_nodes:octrng", { use_texture_alpha = "blend", light_source = 10, groups = {cracky=2, dig_generic = 3}, + is_ground_content = false, sounds = scifi_nodes.node_sound_glass_defaults(), }) @@ -372,6 +395,7 @@ minetest.register_node("scifi_nodes:octgrn", { use_texture_alpha = "blend", light_source = 10, groups = {cracky=2, dig_generic = 3}, + is_ground_content = false, sounds = scifi_nodes.node_sound_glass_defaults(), }) @@ -387,6 +411,7 @@ minetest.register_node("scifi_nodes:octbl", { use_texture_alpha = "blend", light_source = 10, groups = {cracky=2, dig_generic = 3}, + is_ground_content = false, sounds = scifi_nodes.node_sound_glass_defaults(), }) @@ -402,6 +427,7 @@ minetest.register_node("scifi_nodes:octppl", { use_texture_alpha = "blend", light_source = 10, groups = {cracky=2, dig_generic = 3}, + is_ground_content = false, sounds = scifi_nodes.node_sound_glass_defaults(), }) @@ -423,6 +449,7 @@ if has_unifieddyes_mod then dig_generic = 3, ud_param2_colorable = 1 }, + is_ground_content = false, sounds = scifi_nodes.node_sound_glass_defaults(), on_construct = unifieddyes.on_construct, on_dig = unifieddyes.on_dig @@ -441,6 +468,7 @@ minetest.register_node("scifi_nodes:tower", { inventory_image = "scifi_nodes_tower.png", paramtype = "light", groups = {cracky=2, dig_generic = 3}, + is_ground_content = false, sounds = scifi_nodes.node_sound_metal_defaults() }) @@ -459,6 +487,7 @@ minetest.register_node("scifi_nodes:junk", { "scifi_nodes_junk.png" }, groups = {snappy=1, oddly_breakable_by_hand=1, liquid=3, dig_immediate=1}, + is_ground_content = false, }) @@ -476,6 +505,7 @@ minetest.register_node("scifi_nodes:blumetlight", { light_source = 10, paramtype = "light", groups = {cracky=1, dig_generic = 3}, + is_ground_content = false, sounds = scifi_nodes.node_sound_glass_defaults() }) @@ -489,6 +519,7 @@ minetest.register_node("scifi_nodes:lightstp", { light_source = minetest.LIGHT_MAX, paramtype = "light", groups = {cracky=1, dig_generic = 3}, + is_ground_content = false, sounds = scifi_nodes.node_sound_glass_defaults() }) @@ -501,6 +532,7 @@ minetest.register_node("scifi_nodes:blklt2", { light_source = 10, paramtype = "light", groups = {cracky=1, dig_generic = 3}, + is_ground_content = false, sounds = scifi_nodes.node_sound_metal_defaults() }) @@ -513,6 +545,7 @@ minetest.register_node("scifi_nodes:blumetstr", { light_source = 10, paramtype = "light", groups = {cracky=1, dig_generic = 3}, + is_ground_content = false, sounds = scifi_nodes.node_sound_metal_defaults() }) @@ -526,6 +559,7 @@ minetest.register_node("scifi_nodes:glass", { use_texture_alpha = "blend", paramtype = "light", groups = {cracky=1, dig_generic = 3}, + is_ground_content = false, sounds = scifi_nodes.node_sound_glass_defaults() }) @@ -538,6 +572,7 @@ minetest.register_node("scifi_nodes:whtlightbnd", { light_source = 10, paramtype = "light", groups = {cracky=1, dig_generic = 3}, + is_ground_content = false, sounds = scifi_nodes.node_sound_metal_defaults() }) @@ -568,6 +603,7 @@ for name, def in pairs(nodes) do description = def.description, tiles = tiles, groups = {cracky=1, dig_generic = 3}, + is_ground_content = false, paramtype = "light", paramtype2 = def.paramtype2 or "facedir", light_source = def.light, @@ -594,6 +630,7 @@ for name, def in pairs(nodes) do ud_param2_colorable = 1, not_in_creative_inventory = 1 }, + is_ground_content = false, palette = "unifieddyes_palette_extended.png", paramtype = "light", paramtype2 = "color", diff --git a/palm_scanner.lua b/palm_scanner.lua index 61cfd1d..68bff7d 100644 --- a/palm_scanner.lua +++ b/palm_scanner.lua @@ -59,6 +59,7 @@ minetest.register_node("scifi_nodes:palm_scanner_off", { paramtype = "light", paramtype2 = "wallmounted", groups = {cracky=1, oddly_breakable_by_hand=1, mesecon_needs_receiver = 1}, + is_ground_content = false, mesecons = { receptor = { state = (has_mesecons and mesecon.state.off) @@ -82,6 +83,7 @@ minetest.register_node("scifi_nodes:palm_scanner_checking", { paramtype = "light", paramtype2 = "wallmounted", groups = {cracky=1, oddly_breakable_by_hand=1, not_in_creative_inventory=1, mesecon_needs_receiver = 1}, + is_ground_content = false, drop = "scifi_nodes:palm_scanner_off", sounds = scifi_nodes.node_sound_metal_defaults() }) @@ -100,6 +102,7 @@ minetest.register_node("scifi_nodes:palm_scanner_on", { paramtype2 = "wallmounted", light_source = 5, groups = {cracky=1, oddly_breakable_by_hand=1, not_in_creative_inventory=1, mesecon_needs_receiver = 1}, + is_ground_content = false, drop = "scifi_nodes:palm_scanner_off", mesecons = { receptor = { diff --git a/protected_switch.lua b/protected_switch.lua index cc65b04..14b8fe6 100644 --- a/protected_switch.lua +++ b/protected_switch.lua @@ -46,6 +46,7 @@ minetest.register_node("scifi_nodes:protected_switch_on", { not_in_creative_inventory = 1, mesecon_needs_receiver = 1 }, + is_ground_content = false, mesecons = { receptor = { state = (has_mesecons and mesecon.state.on) @@ -73,6 +74,7 @@ minetest.register_node("scifi_nodes:protected_switch_off", { oddly_breakable_by_hand = 1, mesecon_needs_receiver = 1 }, + is_ground_content = false, mesecons = { receptor = { state = (has_mesecons and mesecon.state.off) diff --git a/switch.lua b/switch.lua index 6c77f66..939088c 100644 --- a/switch.lua +++ b/switch.lua @@ -39,6 +39,7 @@ minetest.register_node("scifi_nodes:switch_on", { not_in_creative_inventory = 1, mesecon_needs_receiver = 1 }, + is_ground_content = false, mesecons = { receptor = { state = (has_mesecons and mesecon.state.on) @@ -66,6 +67,7 @@ minetest.register_node("scifi_nodes:switch_off", { oddly_breakable_by_hand = 1, mesecon_needs_receiver = 1 }, + is_ground_content = false, mesecons = { receptor = { state = (has_mesecons and mesecon.state.off) From 4bbe29fcd3d4ca8174316517376fba1b883cfa1a Mon Sep 17 00:00:00 2001 From: Buckaroo Banzai <39065740+BuckarooBanzay@users.noreply.github.com> Date: Sun, 21 Apr 2024 09:36:24 +0200 Subject: [PATCH 10/13] mtt action (#83) * mtt action * nodename * remove coverage step * re-enable coverage * add coverage badge --------- Co-authored-by: BuckarooBanzay --- .github/workflows/integration-test.yml | 15 -- .github/workflows/test.yml | 12 ++ .luacheckrc | 3 +- README.md | 3 +- init.lua | 4 + mod.conf | 1 + mtt.lua | 2 + nodenames.txt | 246 +++++++++++++++++++++++++ test/integration-test.sh | 25 --- test/test_mod/init.lua | 40 ---- test/test_mod/mod.conf | 2 - 11 files changed, 269 insertions(+), 84 deletions(-) delete mode 100644 .github/workflows/integration-test.yml create mode 100644 .github/workflows/test.yml create mode 100644 mtt.lua create mode 100644 nodenames.txt delete mode 100755 test/integration-test.sh delete mode 100644 test/test_mod/init.lua delete mode 100644 test/test_mod/mod.conf diff --git a/.github/workflows/integration-test.yml b/.github/workflows/integration-test.yml deleted file mode 100644 index 2d00698..0000000 --- a/.github/workflows/integration-test.yml +++ /dev/null @@ -1,15 +0,0 @@ -name: integration-test - -on: [push, pull_request] - -jobs: - build: - - runs-on: ubuntu-latest - timeout-minutes: 10 - - steps: - - uses: actions/checkout@v1 - - - name: integration-test - run: ./test/integration-test.sh diff --git a/.github/workflows/test.yml b/.github/workflows/test.yml new file mode 100644 index 0000000..73b4ca1 --- /dev/null +++ b/.github/workflows/test.yml @@ -0,0 +1,12 @@ +name: test +on: [push, pull_request] +jobs: + test: + runs-on: ubuntu-latest + steps: + - uses: actions/checkout@v2 + - uses: buckaroobanzay/mtt@main + with: + modname: scifi_nodes + enable_coverage: "true" + - uses: coverallsapp/github-action@v1 \ No newline at end of file diff --git a/.luacheckrc b/.luacheckrc index e1c1bc6..ab44472 100644 --- a/.luacheckrc +++ b/.luacheckrc @@ -24,5 +24,6 @@ read_globals = { "unifieddyes", "letters", "stealthnode", - "slats" + "slats", + "mtt" } diff --git a/README.md b/README.md index dfc5ef8..c0b6d47 100644 --- a/README.md +++ b/README.md @@ -3,7 +3,8 @@ # scifi_nodes ![](https://github.com/D00Med/scifi_nodes/workflows/luacheck/badge.svg) -![](https://github.com/D00Med/scifi_nodes/workflows/integration-test/badge.svg) +![](https://github.com/D00Med/scifi_nodes/workflows/test/badge.svg) +[![Coverage Status](https://coveralls.io/repos/github/D00Med/scifi_nodes/badge.svg?branch=master)](https://coveralls.io/github/D00Med/scifi_nodes?branch=master) [![ContentDB](https://content.minetest.net/packages/D00Med/scifi_nodes/shields/downloads/)](https://content.minetest.net/packages/D00Med/scifi_nodes/) Minetest mod that adds scifi themed blocks, doors, materials, plants and other assets. diff --git a/init.lua b/init.lua index fef8fba..f9f0696 100644 --- a/init.lua +++ b/init.lua @@ -41,4 +41,8 @@ end if minetest.get_modpath("mesecons_stealthnode") then -- register stealthnodes dofile(MP.."/stealthnodes.lua") +end + +if minetest.get_modpath("mtt") and mtt.enabled then + dofile(MP .. "/mtt.lua") end \ No newline at end of file diff --git a/mod.conf b/mod.conf index 5570676..8a4629e 100644 --- a/mod.conf +++ b/mod.conf @@ -14,5 +14,6 @@ dye, unifieddyes, letters, mesecons_stealthnode, +mtt, slats """ diff --git a/mtt.lua b/mtt.lua new file mode 100644 index 0000000..68e9a4d --- /dev/null +++ b/mtt.lua @@ -0,0 +1,2 @@ + +mtt.validate_nodenames(minetest.get_modpath("scifi_nodes") .. "/nodenames.txt") diff --git a/nodenames.txt b/nodenames.txt new file mode 100644 index 0000000..3c26c73 --- /dev/null +++ b/nodenames.txt @@ -0,0 +1,246 @@ +scifi_nodes:liquid_pipe +scifi_nodes:light +scifi_nodes:blackdmg +scifi_nodes:bluemetal +scifi_nodes:blackpipe +scifi_nodes:white_pad +scifi_nodes:green_light +scifi_nodes:glass +scifi_nodes:pad +scifi_nodes:rough +scifi_nodes:protected_switch_on +scifi_nodes:rock +scifi_nodes:greentubes +scifi_nodes:slope_gblock +scifi_nodes:greytile +scifi_nodes:dent +scifi_nodes:screen2 +scifi_nodes:octbl_pane_offset +scifi_nodes:octppl_pane_offset +scifi_nodes:grnpipe +scifi_nodes:doomengine +scifi_nodes:egg +scifi_nodes:ultra_white +scifi_nodes:octppl_pane_double +scifi_nodes:cover +scifi_nodes:laptop_closed +scifi_nodes:discs +scifi_nodes:switch_on +scifi_nodes:Doom_door_closed +scifi_nodes:glass_pane +scifi_nodes:disc +scifi_nodes:whtlightbnd +scifi_nodes:light_dynamic +scifi_nodes:slope_wallpipe +scifi_nodes:greenbar +scifi_nodes:blue_square +scifi_nodes:blumetlight +scifi_nodes:white_door_opened +scifi_nodes:blue_door_closed +scifi_nodes:pipeside +scifi_nodes:keysmonitor +scifi_nodes:slope_pipe +scifi_nodes:grass +scifi_nodes:slope_alien +scifi_nodes:doomwall3 +scifi_nodes:blumetstr +scifi_nodes:doomwall42 +scifi_nodes:blue +scifi_nodes:greenlights2 +scifi_nodes:slope_black +scifi_nodes:plant10 +scifi_nodes:plant2 +scifi_nodes:blklt2 +scifi_nodes:plant9 +scifi_nodes:screen +scifi_nodes:purple +scifi_nodes:white_door_closed +scifi_nodes:lightstp +scifi_nodes:slope_stripes +scifi_nodes:pplwndw +scifi_nodes:crate +scifi_nodes:octrng_pane_double +scifi_nodes:widescreen +scifi_nodes:blue_door_closed_top +scifi_nodes:slope_white2 +scifi_nodes:table +scifi_nodes:green_door_opened +scifi_nodes:flower1 +scifi_nodes:grnpipe2 +scifi_nodes:slope_mesh +scifi_nodes:rock2 +scifi_nodes:blackdmgstripe +scifi_nodes:ppllght +scifi_nodes:grey_square +scifi_nodes:plant6 +scifi_nodes:powered_stand +scifi_nodes:pot +scifi_nodes:wall +scifi_nodes:greygreenbar +scifi_nodes:greenmetal +scifi_nodes:blacktile2 +scifi_nodes:blackoct +scifi_nodes:black +scifi_nodes:slope_ultra_white +scifi_nodes:lighttop +scifi_nodes:blackplate +scifi_nodes:doomwall43 +scifi_nodes:green_square +scifi_nodes:Doom_door_closed_top +scifi_nodes:box +scifi_nodes:green +scifi_nodes:plant8 +scifi_nodes:whiteoct +scifi_nodes:wallpipe +scifi_nodes:flower4 +scifi_nodes:slope_bluebars +scifi_nodes:engine +scifi_nodes:glass_pane_double +scifi_nodes:blacktile +scifi_nodes:glassscreen +scifi_nodes:octrng +scifi_nodes:plant1 +scifi_nodes:computer +scifi_nodes:grassblk +scifi_nodes:tower +scifi_nodes:builder +scifi_nodes:pplwll2 +scifi_nodes:doomwall431 +scifi_nodes:black_screen +scifi_nodes:doomwall44 +scifi_nodes:windowstraight2 +scifi_nodes:gblock3 +scifi_nodes:octgrn_pane_offset +scifi_nodes:glass_pane_offset +scifi_nodes:octppl_pane +scifi_nodes:octbl_pane_double +scifi_nodes:octgrn_pane_double +scifi_nodes:octgrn_pane +scifi_nodes:octrng_pane_offset +scifi_nodes:octrng_pane +scifi_nodes:digicode_off +scifi_nodes:octppl +scifi_nodes:digicode_on +scifi_nodes:palm_scanner_checking +scifi_nodes:palm_scanner_off +scifi_nodes:windowpanel +scifi_nodes:slope_vent +scifi_nodes:tallscreen +scifi_nodes:itemholder +scifi_nodes:capsule2 +scifi_nodes:capsule3 +scifi_nodes:slope_wall +scifi_nodes:slope_blklt2 +scifi_nodes:plant5 +scifi_nodes:slope_screen +scifi_nodes:windowcorner2 +scifi_nodes:windowstraight +scifi_nodes:windowcorner +scifi_nodes:pipen +scifi_nodes:laptop_open +scifi_nodes:mesh2 +scifi_nodes:microscope +scifi_nodes:liquid_pipe2 +scifi_nodes:lightbars +scifi_nodes:doomwall4 +scifi_nodes:lightbar +scifi_nodes:plant_trap +scifi_nodes:slope_purple +scifi_nodes:gloshroom +scifi_nodes:blue_door_opened_top +scifi_nodes:greenbar_animated +scifi_nodes:blue_door_opened +scifi_nodes:tile +scifi_nodes:flower3 +scifi_nodes:green_door_opened_top +scifi_nodes:green_door_closed_top +scifi_nodes:blackvent +scifi_nodes:white_door_opened_top +scifi_nodes:white_door_closed_top +scifi_nodes:black_door_opened_top +scifi_nodes:black_door_opened +scifi_nodes:white_base +scifi_nodes:black_door_closed_top +scifi_nodes:black_door_closed +scifi_nodes:Doom_door_opened_top +scifi_nodes:stripes +scifi_nodes:Doom_door_opened +scifi_nodes:bluebars +scifi_nodes:doomwall41 +scifi_nodes:green2 +scifi_nodes:whitetile +scifi_nodes:rust +scifi_nodes:slope_glight +scifi_nodes:fan +scifi_nodes:red_square +scifi_nodes:greydots +scifi_nodes:green_door_closed +scifi_nodes:greenlights +scifi_nodes:mesh +scifi_nodes:black_mesh +scifi_nodes:gblock2 +scifi_nodes:stripes2top +scifi_nodes:greybolts +scifi_nodes:octofloor +scifi_nodes:pplwll3 +scifi_nodes:red +scifi_nodes:greenmetal2 +scifi_nodes:junk +scifi_nodes:red_light +scifi_nodes:pplblk +scifi_nodes:super_white +scifi_nodes:bluwllight +scifi_nodes:blackvnt +scifi_nodes:pplwll4 +scifi_nodes:slope_holes +scifi_nodes:vent2 +scifi_nodes:bluetile +scifi_nodes:eyetree +scifi_nodes:octgrn +scifi_nodes:capsule +scifi_nodes:slope_bluemetal +scifi_nodes:slope_super_white +scifi_nodes:switch_off +scifi_nodes:octbl +scifi_nodes:doomlight +scifi_nodes:white2 +scifi_nodes:forcefield +scifi_nodes:alienslope +scifi_nodes:slope_white +scifi_nodes:plant3 +scifi_nodes:slope_mesh2 +scifi_nodes:screen3 +scifi_nodes:pipe +scifi_nodes:black_detail +scifi_nodes:slope_lightstripe +scifi_nodes:slope_blight +scifi_nodes:ladder +scifi_nodes:protected_switch_off +scifi_nodes:rfloor +scifi_nodes:white +scifi_nodes:gblock +scifi_nodes:octofloor2 +scifi_nodes:slope_rough +scifi_nodes:octbl_pane +scifi_nodes:bluegrid +scifi_nodes:pot_lid +scifi_nodes:slope_rlight +scifi_nodes:bfloor +scifi_nodes:plant4 +scifi_nodes:pot2 +scifi_nodes:greybars +scifi_nodes:doomwall1 +scifi_nodes:holes +scifi_nodes:black_lights +scifi_nodes:palm_scanner_on +scifi_nodes:plant7 +scifi_nodes:flower2 +scifi_nodes:slope_greenmetal +scifi_nodes:blink +scifi_nodes:slope_grey +scifi_nodes:grey +scifi_nodes:pplwll +scifi_nodes:stripes2 +scifi_nodes:slope_blight2 +scifi_nodes:monitorwall +scifi_nodes:doomwall2 diff --git a/test/integration-test.sh b/test/integration-test.sh deleted file mode 100755 index d3b8429..0000000 --- a/test/integration-test.sh +++ /dev/null @@ -1,25 +0,0 @@ -#!/bin/sh -# Spins up a test world to ensure proper working recipes and registrations - -CWD=$(dirname $0) -cd ${CWD}/../ - -CFG=/tmp/minetest.conf -MTDIR=/tmp/mt -WORLDDIR=${MTDIR}/worlds/world - -cat < ${CFG} - # empty -EOF - -mkdir -p ${WORLDDIR} -chmod 777 ${MTDIR} -R -docker run --rm -i \ - -v ${CFG}:/etc/minetest/minetest.conf:ro \ - -v ${MTDIR}:/var/lib/minetest/.minetest \ - -v $(pwd)/:/var/lib/minetest/.minetest/worlds/world/worldmods/scifi_nodes \ - -v $(pwd)/test/test_mod/:/var/lib/minetest/.minetest/worlds/world/worldmods/scifi_nodes_test \ - --network host \ - registry.gitlab.com/minetest/minetest/server:5.2.0 - -test -f ${WORLDDIR}/integration_test.json && exit 0 || exit 1 diff --git a/test/test_mod/init.lua b/test/test_mod/init.lua deleted file mode 100644 index 7b986fa..0000000 --- a/test/test_mod/init.lua +++ /dev/null @@ -1,40 +0,0 @@ - -minetest.log("warning", "[TEST] integration-test enabled!") - --- those mods have to be present -local assert_mods = { - "scifi_nodes" -} - --- those nodes have to be present -local assert_nodes = { - "scifi_nodes:crate", - "scifi_nodes:door1a" -} - -minetest.register_on_mods_loaded(function() - minetest.after(0, function() - -- check mods - for _, modname in ipairs(assert_mods) do - if not minetest.get_modpath(modname) then - error("Mod not present: " .. modname) - end - end - - -- check nodes - for _, nodename in ipairs(assert_nodes) do - if not minetest.registered_nodes[nodename] then - error("Node not present: " .. nodename) - end - end - - local data = minetest.write_json({ success = true }, true); - local file = io.open(minetest.get_worldpath().."/integration_test.json", "w" ); - if file then - file:write(data) - file:close() - end - minetest.request_shutdown("success") - - end) -end) diff --git a/test/test_mod/mod.conf b/test/test_mod/mod.conf deleted file mode 100644 index 8065d95..0000000 --- a/test/test_mod/mod.conf +++ /dev/null @@ -1,2 +0,0 @@ -name = scifi_nodes_test -depends = scifi_nodes From d4ec06f8889c3cb07a4482d1951d9cd8ec9d1e42 Mon Sep 17 00:00:00 2001 From: BuckarooBanzay Date: Fri, 3 May 2024 11:02:46 +0200 Subject: [PATCH 11/13] add transparent vent and mesh --- crafts.lua | 18 ++++++++++++++++++ nodes.json | 12 ++++++++++++ nodes.lua | 6 ++++++ 3 files changed, 36 insertions(+) diff --git a/crafts.lua b/crafts.lua index 9383cc3..c1b7aa9 100644 --- a/crafts.lua +++ b/crafts.lua @@ -1842,3 +1842,21 @@ minetest.register_craft({ {"scifi_nodes:octbl", "", "scifi_nodes:octbl"} } }) + +minetest.register_craft({ + output = "scifi_nodes:vent3 4", + recipe = { + {"scifi_nodes:vent2", "", "scifi_nodes:vent2"}, + {"", "scifi_nodes:glass", ""}, + {"scifi_nodes:vent2", "", "scifi_nodes:vent2"} + } +}) + +minetest.register_craft({ + output = "scifi_nodes:mesh3 4", + recipe = { + {"scifi_nodes:mesh2", "", "scifi_nodes:mesh2"}, + {"", "scifi_nodes:glass", ""}, + {"scifi_nodes:mesh2", "", "scifi_nodes:mesh2"} + } +}) diff --git a/nodes.json b/nodes.json index 47f5db7..71efed8 100644 --- a/nodes.json +++ b/nodes.json @@ -50,6 +50,12 @@ "vent2": { "description": "vent" }, + "vent3": { + "description": "transparent vent", + "texture_name": "vent2", + "texture_modifier": "^[makealpha:33,33,33", + "drawtype": "glasslike" + }, "stripes": { "description": "hazard stripes", "slat": true @@ -94,6 +100,12 @@ "mesh2": { "description": "metal floormesh" }, + "mesh3": { + "description": "transparent metal floormesh", + "texture_name": "mesh2", + "texture_modifier": "^[makealpha:19,19,19", + "drawtype": "glasslike" + }, "pipe": { "description": "wall pipe" }, diff --git a/nodes.lua b/nodes.lua index 128c3d3..8b5049a 100644 --- a/nodes.lua +++ b/nodes.lua @@ -598,9 +598,15 @@ for name, def in pairs(nodes) do tiles = {"scifi_nodes_" .. def.texture_name .. ".png"} end + -- optional texture modifier + if def.texture_modifier then + tiles[1] = tiles[1] .. def.texture_modifier + end + -- Node Definition local node_def = { description = def.description, + drawtype = def.drawtype or "normal", tiles = tiles, groups = {cracky=1, dig_generic = 3}, is_ground_content = false, From 6bb8d294f3db32a8309dc9a833653bbbbe04d809 Mon Sep 17 00:00:00 2001 From: BuckarooBanzay Date: Sat, 4 May 2024 19:10:12 +0200 Subject: [PATCH 12/13] use other mes texture for transparent mesh-node --- nodes.json | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/nodes.json b/nodes.json index 71efed8..668d05a 100644 --- a/nodes.json +++ b/nodes.json @@ -102,8 +102,8 @@ }, "mesh3": { "description": "transparent metal floormesh", - "texture_name": "mesh2", - "texture_modifier": "^[makealpha:19,19,19", + "texture_name": "mesh", + "texture_modifier": "^[contrast:10:-50^[makealpha:0,0,0", "drawtype": "glasslike" }, "pipe": { From 8967e0ea04badde50081daee9d3f0b39cb7a571a Mon Sep 17 00:00:00 2001 From: OgelGames Date: Mon, 15 Jul 2024 16:37:24 +1000 Subject: [PATCH 13/13] fix alien grass texture (#84) --- README.md | 2 +- nodes.lua | 2 +- textures/scifi_nodes_grass.png | Bin 461 -> 252 bytes textures/scifi_nodes_grass_top.png | Bin 0 -> 461 bytes 4 files changed, 2 insertions(+), 2 deletions(-) create mode 100644 textures/scifi_nodes_grass_top.png diff --git a/README.md b/README.md index c0b6d47..e756270 100644 --- a/README.md +++ b/README.md @@ -43,7 +43,7 @@ CC BY 3.0 * scifi_nodes_access_refused https://freesound.org/people/RICHERlandTV/sounds/216090/ * scifi_nodes_forcefield.png https://github.com/minetest-mods/technic/ * scifi_nodes_dirt.png https://github.com/minetest/minetest_game -* scifi_nodes_grass.png https://github.com/minetest/minetest_game +* scifi_nodes_grass_top.png https://github.com/minetest/minetest_game * scifi_nodes_grass_side.png https://github.com/minetest/minetest_game * scifi_nodes_wood.png https://github.com/minetest/minetest_game diff --git a/nodes.lua b/nodes.lua index 8b5049a..940bc16 100644 --- a/nodes.lua +++ b/nodes.lua @@ -6,7 +6,7 @@ local has_slats_mod = minetest.get_modpath("slats") minetest.register_node("scifi_nodes:grassblk", { description = "Dirt With Alien Grass", - tiles = {"scifi_nodes_grass.png^[colorize:cyan:80", "scifi_nodes_dirt.png", + tiles = {"scifi_nodes_grass_top.png^[colorize:cyan:80", "scifi_nodes_dirt.png", {name = "scifi_nodes_dirt.png^(scifi_nodes_grass_side.png^[colorize:cyan:80)", tileable_vertical = false}}, light_source = 2, diff --git a/textures/scifi_nodes_grass.png b/textures/scifi_nodes_grass.png index 5778caa1dbabdb9d4cd1ff46e63c8bb810aa9a0c..5d7c98b507802f789c4b59ccd2c35769de2adcc7 100644 GIT binary patch delta 236 zcmX@h{D*OZL_G^L0|Ud`yN`l^6lZ})WHAE+w=f7ZGR&GI0TfgT@Ck7R(){g>q7%C% zrcIF8y;*wpROx-&<>$|mKe$Wz$X@m12R^qwKguvM45*H=B*-tA!Qt7BG$5zY)5S4_ zBRVmdKI;Vst0CcNMPXGV_ delta 447 zcmV;w0YLuz0nG!D7=H)@0000eEe}%w006E~OjJcUViq}L7dd1WI%F6+WfwbR7dvDY zJ7yR=XBRwW7d&VfJ!Tj^X&F6g7(QqiK4}*|YZ*Rp8b4|nKX4d8YZ*Xn7(i|qKyDg9 zaT!2!8$oRuL2nsBa2P>x8$om&L3JBKa2i5!8A5X#LUbBJc7Gg0bR0u<8$);;M0FiR zb{s@^8$@^-MRy%VcpOG}9!7Z`M|mGedLT%9A4q&2NqHYhdLBu9AWC~5N_-wleIY!V zW{Lm+0NP1JK~xwS1;K$rf-n>X(1%Tt7ZMSS zCS@AJCB!m^v42`)Lrh)n?i2K4Giav-$ej)udTgovgc*&dvLIfA69qHs(QCS<{2hGh zmMVb`ZBNM$7t@=Z<21;Zub7aN(wZlUe6O-+*==bBy20MStaikCB*k$N$pNQYHfdUV z%07Hdm>cv!S^s*nN`MOzF|@Ag=Ri{I8XU#h57jtGfH>ex1u2#7%<-CXN7?MpoCBN| pm-zUw5=y)0I^L7_xoM>N`v*9X8o=o*kWfweX7(HefJ!u&|Y8XCf7(QtiK5H31a2h{q z7(Z|rKx-L5Y#2ap7(i|sKyevBa~nZz89{FuL2wvBaT`H&96@y(LU0;FaT!8$8$xs% zLUtTObR0u<8$);;M0FiRb{s@^8$@^-MRy%VcpOG}9!7Z`M|mGedLT%9A4q&2NqHYh zdLBu9AWC~5N_-wleIY!VW{Lm+0NP1JK~xwS1;K$rf-n>X(1%Tt7ZMSSCS@AJCB!m^v07t8OkM8o6ZB#;Xr~0ooemj#Y^nW(8I7j0 zAYOwL1vBc=Yr3ZV9enAQDuE7dPstA#)0>>*G{~2)n2?jwnkR{Tud-*^ZD|F%!QQ~E zcEouk#c>hI0jF9vX*&nsP_k?9ZG7oEDe(_^=X6yXQLIllQr4r1|>?IFK5^=_`@Y00000NkvXXu0mjf D>FlW_ literal 0 HcmV?d00001