runtime fixes

master
Thomas Rudin 2019-04-29 18:10:05 +02:00
parent 835cf45cd4
commit 37efcf0221
10 changed files with 58 additions and 55 deletions

View File

@ -9,6 +9,6 @@ def = {
}
--]]
soundblocks.register = function(def)
soundblocks.sounds[def.key] = def
soundblock.register = function(def)
soundblock.sounds[def.key] = def
end

View File

@ -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)

View File

@ -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")

View File

@ -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",

View File

@ -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"

View File

@ -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"

View File

@ -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"

View File

@ -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"

View File

@ -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"},

View File

Before

Width:  |  Height:  |  Size: 179 B

After

Width:  |  Height:  |  Size: 179 B