From 37efcf0221ef8b6255f5f9c49b0818d562616303 Mon Sep 17 00:00:00 2001 From: Thomas Rudin Date: Mon, 29 Apr 2019 18:10:05 +0200 Subject: [PATCH] runtime fixes --- api.lua | 4 +- form.lua | 43 ++++++++++-------- init.lua | 6 +-- mods/ambience.lua | 12 ++--- mods/default.lua | 18 ++++---- mods/doors.lua | 12 ++--- mods/mobs_monster.lua | 4 +- mods/technic.lua | 4 +- soundblock.lua | 10 ++-- ...dblocks_block.png => soundblock_block.png} | Bin 10 files changed, 58 insertions(+), 55 deletions(-) rename textures/{soundblocks_block.png => soundblock_block.png} (100%) diff --git a/api.lua b/api.lua index fbde0f1..a5f375e 100644 --- a/api.lua +++ b/api.lua @@ -9,6 +9,6 @@ def = { } --]] -soundblocks.register = function(def) - soundblocks.sounds[def.key] = def +soundblock.register = function(def) + soundblock.sounds[def.key] = def end diff --git a/form.lua b/form.lua index a899db7..5f94454 100644 --- a/form.lua +++ b/form.lua @@ -14,33 +14,33 @@ config options: --]] -soundblocks.showform = function(pos, node, player) +soundblock.showform = function(pos, node, player) local meta = minetest.get_meta(pos) local owner = meta:get_string("owner") local has_override = minetest.check_player_privs(player, "protection_bypass") -- check if plain user rightclicks - if player:get_player_name() ~= owner and not has_override then + if minetest.is_protected(pos, player:get_player_name()) and not has_override then return end local selected_sound_key = meta:get_string("selected_sound_key") - local selected_sound = 0 + local selected_id = 1 + local i = 1 -- sound list local sound_list = "textlist[0,1;4,6;sounds;" - for i,sound in ipairs(soundblocks.sounds) do - if selected_sound_key == sound.key then - selected_sound = i + for key, sound in pairs(soundblock.sounds) do + if selected_sound_key == key then + selected_id = i end - sound_list = sound_list .. minetest.formspec_escape(sound.name) - if i < #soundblocks.sounds then - sound_list = sound_list .. "," - end + i = i + 1 + sound_list = sound_list .. minetest.formspec_escape(sound.name) .. "," end - sound_list = sound_list .. ";" .. selected_sound .. "]"; + sound_list = sound_list:sub(1, #sound_list-1) + sound_list = sound_list .. ";" .. selected_id .. "]"; local state = meta:get_string("state") local interval_min = meta:get_int("interval_min") @@ -53,12 +53,12 @@ soundblocks.showform = function(pos, node, player) --left "label[0,0;Soundblock <" .. state .. ">]" .. - "field[4,1;4,1;interval_min;Interval-min;" .. interval_min .. "]" .. - "field[4,2;4,1;interval_max;Interval-max;" .. interval_max .. "]" .. + "field[5,1;3,1;interval_min;Interval-min;" .. interval_min .. "]" .. + "field[5,2;3,1;interval_max;Interval-max;" .. interval_max .. "]" .. - "field[4,3;4,1;gain;Gain;" .. gain .. "]" .. - "field[4,4;4,1;hear_distance;Hear distance;" .. hear_distance .. "]" .. - "field[4,5;4,1;randomize_position;Randomize position;" .. randomize_position .. "]" .. + "field[5,3;3,1;gain;Gain;" .. gain .. "]" .. + "field[5,4;3,1;hear_distance;Hear distance;" .. hear_distance .. "]" .. + "field[5,5;3,1;randomize_position;Randomize position;" .. randomize_position .. "]" .. sound_list .. "button_exit[0,7;4,1;save;Save]" .. @@ -119,13 +119,16 @@ minetest.register_on_player_receive_fields(function(player, formname, fields) if fields.sounds then parts = fields.sounds:split(":") if parts[1] == "CHG" then - local selected_sound_name = tonumber(parts[2]) + local selected_id = tonumber(parts[2]) + local i = 1 local selected_sound_key - for i,sound in ipairs(soundblocks.sounds) do - if selected_sound_name == sound.name then - selected_sound_key = sound.key + for key, sound in pairs(soundblock.sounds) do + if selected_id == i then + selected_sound_key = key end + + i = i + 1 end meta:set_string("selected_sound_key", selected_sound_key) diff --git a/init.lua b/init.lua index 38d4828..1acaf39 100644 --- a/init.lua +++ b/init.lua @@ -1,9 +1,9 @@ -soundblocks = { +soundblock = { sounds = {} } -local MP = minetest.get_modpath("soundblocks") +local MP = minetest.get_modpath("soundblock") dofile(MP.."/api.lua") dofile(MP.."/form.lua") dofile(MP.."/soundblock.lua") @@ -28,4 +28,4 @@ if minetest.get_modpath("mobs_monster") then dofile(MP.."/mods/mobs_monster.lua") end -print("[OK] Soundblocks") +print("[OK] soundblock") diff --git a/mods/ambience.lua b/mods/ambience.lua index cdb3c26..2138a26 100644 --- a/mods/ambience.lua +++ b/mods/ambience.lua @@ -1,29 +1,29 @@ -soundblocks.register({ +soundblock.register({ filename = "icecrack", key = "ambience_icecrack", name = "Ambience Icecrack" }) -soundblocks.register({ +soundblock.register({ filename = "cricket", key = "ambience_cricket", name = "Ambience Cricket" }) -soundblocks.register({ +soundblock.register({ filename = "river", key = "ambience_river", name = "Ambience River" }) -soundblocks.register({ +soundblock.register({ filename = "waterfall", key = "ambience_waterfall", name = "Ambience Waterfall" }) -soundblocks.register({ +soundblock.register({ filenames = { "beach", "beach_2", @@ -32,7 +32,7 @@ soundblocks.register({ name = "Ambience Beach" }) -soundblocks.register({ +soundblock.register({ filenames = { "drippingwater1", "drippingwater2", diff --git a/mods/default.lua b/mods/default.lua index 31711be..a5e697d 100644 --- a/mods/default.lua +++ b/mods/default.lua @@ -1,13 +1,13 @@ -soundblocks.register({ +soundblock.register({ filename = "default_glass_footstep", key = "default_glass_footsteps", name = "Glass footsteps" }) -soundblocks.register({ +soundblock.register({ filenames = { "default_grass_footstep.1", "default_grass_footstep.2", @@ -17,7 +17,7 @@ soundblocks.register({ name = "Grass footsteps" }) -soundblocks.register({ +soundblock.register({ filenames = { "default_gravel_footstep.1", "default_gravel_footstep.2", @@ -27,7 +27,7 @@ soundblocks.register({ name = "Gravel footsteps" }) -soundblocks.register({ +soundblock.register({ filenames = { "default_wood_footstep.1", "default_wood_footstep.2" @@ -36,7 +36,7 @@ soundblocks.register({ name = "Wood footsteps" }) -soundblocks.register({ +soundblock.register({ filenames = { "default_sand_footstep.1", "default_sand_footstep.2" @@ -45,7 +45,7 @@ soundblocks.register({ name = "Sand footsteps" }) -soundblocks.register({ +soundblock.register({ filenames = { "default_metal_footstep.1", "default_metal_footstep.2", @@ -56,7 +56,7 @@ soundblocks.register({ }) -soundblocks.register({ +soundblock.register({ filenames = { "default_snow_footstep.1", "default_snow_footstep.2", @@ -69,13 +69,13 @@ soundblocks.register({ }) -soundblocks.register({ +soundblock.register({ filename = "default_chest_close", key = "default_chest_close", name = "Chest close" }) -soundblocks.register({ +soundblock.register({ filename = "default_chest_open", key = "default_chest_open", name = "Chest open" diff --git a/mods/doors.lua b/mods/doors.lua index 7de4b0d..dc724e5 100644 --- a/mods/doors.lua +++ b/mods/doors.lua @@ -1,36 +1,36 @@ -soundblocks.register({ +soundblock.register({ filename = "doors_door_close", key = "doors_door_close", name = "Doors wood close" }) -soundblocks.register({ +soundblock.register({ filename = "doors_door_open", key = "doors_door_open", name = "Doors wood open" }) -soundblocks.register({ +soundblock.register({ filename = "doors_steel_door_close", key = "doors_steel_door_close", name = "Doors steel close" }) -soundblocks.register({ +soundblock.register({ filename = "doors_steel_door_open", key = "doors_steel_door_open", name = "Doors steel open" }) -soundblocks.register({ +soundblock.register({ filename = "doors_glass_door_close", key = "doors_glass_door_close", name = "Doors glass close" }) -soundblocks.register({ +soundblock.register({ filename = "doors_glass_door_open", key = "doors_glass_door_open", name = "Doors glass open" diff --git a/mods/mobs_monster.lua b/mods/mobs_monster.lua index 845004e..4a406ea 100644 --- a/mods/mobs_monster.lua +++ b/mods/mobs_monster.lua @@ -1,12 +1,12 @@ -soundblocks.register({ +soundblock.register({ filename = "mobs_dirtmonster", key = "mobs_dirtmonster", name = "Mobs Dirtmonster" }) -soundblocks.register({ +soundblock.register({ filename = "mobs_spider", key = "mobs_spider", name = "Mobs Spider" diff --git a/mods/technic.lua b/mods/technic.lua index 9603451..e9ff3eb 100644 --- a/mods/technic.lua +++ b/mods/technic.lua @@ -1,12 +1,12 @@ -soundblocks.register({ +soundblock.register({ filename = "technic_hv_nuclear_reactor_siren_danger_loop", key = "technic_hv_nuclear_reactor_siren_danger_loop", name = "Nuclear reactor meltdown" }) -soundblocks.register({ +soundblock.register({ filename = "technic_hv_nuclear_reactor_siren_clear", key = "technic_hv_nuclear_reactor_siren_clear", name = "Nuclear reactor clear" diff --git a/soundblock.lua b/soundblock.lua index f2c94d6..c92d66a 100644 --- a/soundblock.lua +++ b/soundblock.lua @@ -3,7 +3,7 @@ local execute = function(pos) local meta = minetest.get_meta(pos) local selected_sound_key = meta:get_string("selected_sound_key") - local def = soundblocks.sounds[selected_sound_key] + local def = soundblock.sounds[selected_sound_key] if def == nil then return @@ -36,9 +36,9 @@ local execute = function(pos) end -minetest.register_node("soundblocks:block", { +minetest.register_node("soundblock:block", { description = "Sound Block", - tiles = {"soundblocks_block.png"}, + tiles = {"soundblock_block.png"}, is_ground_content = false, groups = { oddly_breakable_by_hand = 1 }, @@ -87,12 +87,12 @@ minetest.register_node("soundblocks:block", { end }}, - on_rightclick = soundblocks.showform + on_rightclick = soundblock.showform }) minetest.register_craft({ - output = "soundblocks:block", + output = "soundblock:block", recipe = { {"default:steel_ingot", "default:steelblock", "default:steel_ingot"}, {"default:steel_ingot", "default:glass", "default:steel_ingot"}, diff --git a/textures/soundblocks_block.png b/textures/soundblock_block.png similarity index 100% rename from textures/soundblocks_block.png rename to textures/soundblock_block.png