diff --git a/mods/mesecons/mesecons_gates/init.lua b/mods/mesecons/mesecons_gates/init.lua index dde85bf9..f3d6f094 100755 --- a/mods/mesecons/mesecons_gates/init.lua +++ b/mods/mesecons/mesecons_gates/init.lua @@ -125,7 +125,7 @@ register_gate("xor", 2, function (val1, val2) return (val1 or val2) and not (val register_gate("nor", 2, function (val1, val2) return not (val1 or val2) end, {{"mesecons:mesecon", "", ""}, - {"", "mesecons_materials:mesecon_torch_on", "mesecons_materials:silicon"}, + {"", "mesecons:mesecon", "mesecons_torch:mesecon_torch_on"}, {"mesecons:mesecon", "", ""}}) register_gate("or", 2, function (val1, val2) return (val1 or val2) end, diff --git a/mods/mesecons/mesecons_luacontroller/init.lua b/mods/mesecons/mesecons_luacontroller/init.lua index bbbd280f..839d1506 100755 --- a/mods/mesecons/mesecons_luacontroller/init.lua +++ b/mods/mesecons/mesecons_luacontroller/init.lua @@ -201,6 +201,10 @@ local function safe_print(param) print(dump(param)) end +local function safe_date() + return(os.date("*t",os.time())) +end + local function remove_functions(x) local tp = type(x) if tp == "table" then @@ -321,6 +325,7 @@ local function create_environment(pos, mem, event) clock = os.clock, difftime = os.difftime, time = os.time, + datetable = safe_date, }, } env._G = env diff --git a/mods/mesecons/mesecons_noteblock/init.lua b/mods/mesecons/mesecons_noteblock/init.lua index 63218827..d5e49fff 100755 --- a/mods/mesecons/mesecons_noteblock/init.lua +++ b/mods/mesecons/mesecons_noteblock/init.lua @@ -1,21 +1,15 @@ minetest.register_node("mesecons_noteblock:noteblock", { description = "Noteblock", tiles = {"mesecons_noteblock.png"}, - groups = {snappy=2,choppy=2,oddly_breakable_by_hand=2}, - visual_scale = 1.3, - paramtype="light", - after_place_node = function(pos) - minetest.add_node(pos, {name="mesecons_noteblock:noteblock", param2=0}) - end, - on_punch = function (pos, node) -- change sound when punched - local param2 = node.param2+1 - if param2==12 then param2=0 end - minetest.add_node(pos, {name = node.name, param2 = param2}) - mesecon.noteblock_play(pos, param2) + groups = {snappy=2, choppy=2, oddly_breakable_by_hand=2}, + on_punch = function(pos, node) -- change sound when punched + node.param2 = (node.param2+1)%12 + mesecon.noteblock_play(pos, node.param2) + minetest.add_node(pos, node) end, sounds = default.node_sound_wood_defaults(), mesecons = {effector = { -- play sound when activated - action_on = function (pos, node) + action_on = function(pos, node) mesecon.noteblock_play(pos, node.param2) end }} @@ -30,58 +24,46 @@ minetest.register_craft({ } }) -mesecon.noteblock_play = function (pos, param2) - local soundname - if param2==8 then - soundname="mesecons_noteblock_a" - elseif param2==9 then - soundname="mesecons_noteblock_asharp" - elseif param2==10 then - soundname="mesecons_noteblock_b" - elseif param2==11 then - soundname="mesecons_noteblock_c" - elseif param2==0 then - soundname="mesecons_noteblock_csharp" - elseif param2==1 then - soundname="mesecons_noteblock_d" - elseif param2==2 then - soundname="mesecons_noteblock_dsharp" - elseif param2==3 then - soundname="mesecons_noteblock_e" - elseif param2==4 then - soundname="mesecons_noteblock_f" - elseif param2==5 then - soundname="mesecons_noteblock_fsharp" - elseif param2==6 then - soundname="mesecons_noteblock_g" - elseif param2==7 then - soundname="mesecons_noteblock_gsharp" +local soundnames = { + [0] = "mesecons_noteblock_csharp", + "mesecons_noteblock_d", + "mesecons_noteblock_dsharp", + "mesecons_noteblock_e", + "mesecons_noteblock_f", + "mesecons_noteblock_fsharp", + "mesecons_noteblock_g", + "mesecons_noteblock_gsharp", + + "mesecons_noteblock_a", + "mesecons_noteblock_asharp", + "mesecons_noteblock_b", + "mesecons_noteblock_c" +} + +local node_sounds = { + ["default:glass"] = "mesecons_noteblock_hihat", + ["default:stone"] = "mesecons_noteblock_kick", + ["default:lava_source"] = "fire_large", + ["default:chest"] = "mesecons_noteblock_snare", + ["default:tree"] = "mesecons_noteblock_crash", + ["default:wood"] = "mesecons_noteblock_litecrash", + ["default:coalblock"] = "tnt_explode", +} + +mesecon.noteblock_play = function(pos, param2) + pos.y = pos.y-1 + local nodeunder = minetest.get_node(pos).name + local soundname = node_sounds[nodeunder] + if not soundname then + soundname = soundnames[param2] + if not soundname then + minetest.log("error", "[mesecons_noteblock] No soundname found, test param2") + return + end + if nodeunder == "default:steelblock" then + soundname = soundname.. 2 + end end - local block_below_name = minetest.get_node({x=pos.x, y=pos.y-1, z=pos.z}).name - if block_below_name == "default:glass" then - soundname="mesecons_noteblock_hihat" - end - if block_below_name == "default:steelblock" then - soundname=soundname.."2" -- Go up an octave. - end - if block_below_name == "default:stone" then - soundname="mesecons_noteblock_kick" - end - if block_below_name == "default:lava_source" then - soundname="fire_large" - end - if block_below_name == "default:chest" then - soundname="mesecons_noteblock_snare" - end - if block_below_name == "default:tree" then - soundname="mesecons_noteblock_crash" - end - if block_below_name == "default:wood" then - soundname="mesecons_noteblock_litecrash" - end - if block_below_name == "default:coalblock" then - soundname="tnt_explode" - end - minetest.sound_play(soundname, - {pos = pos, gain = 1.0, max_hear_distance = 32,}) + pos.y = pos.y+1 + minetest.sound_play(soundname, {pos = pos}) end diff --git a/mods/mesecons/mesecons_noteblock/sounds/mesecons_noteblock_a.ogg b/mods/mesecons/mesecons_noteblock/sounds/mesecons_noteblock_a.ogg old mode 100755 new mode 100644 index 65781e5c..331fc1cc Binary files a/mods/mesecons/mesecons_noteblock/sounds/mesecons_noteblock_a.ogg and b/mods/mesecons/mesecons_noteblock/sounds/mesecons_noteblock_a.ogg differ diff --git a/mods/mesecons/mesecons_noteblock/sounds/mesecons_noteblock_a2.ogg b/mods/mesecons/mesecons_noteblock/sounds/mesecons_noteblock_a2.ogg old mode 100755 new mode 100644 index 80d7af54..695b0f4e Binary files a/mods/mesecons/mesecons_noteblock/sounds/mesecons_noteblock_a2.ogg and b/mods/mesecons/mesecons_noteblock/sounds/mesecons_noteblock_a2.ogg differ diff --git a/mods/mesecons/mesecons_noteblock/sounds/mesecons_noteblock_asharp.ogg b/mods/mesecons/mesecons_noteblock/sounds/mesecons_noteblock_asharp.ogg old mode 100755 new mode 100644 index d35a9175..db96aedb Binary files a/mods/mesecons/mesecons_noteblock/sounds/mesecons_noteblock_asharp.ogg and b/mods/mesecons/mesecons_noteblock/sounds/mesecons_noteblock_asharp.ogg differ diff --git a/mods/mesecons/mesecons_noteblock/sounds/mesecons_noteblock_asharp2.ogg b/mods/mesecons/mesecons_noteblock/sounds/mesecons_noteblock_asharp2.ogg old mode 100755 new mode 100644 index 59157ad1..27bd09df Binary files a/mods/mesecons/mesecons_noteblock/sounds/mesecons_noteblock_asharp2.ogg and b/mods/mesecons/mesecons_noteblock/sounds/mesecons_noteblock_asharp2.ogg differ diff --git a/mods/mesecons/mesecons_noteblock/sounds/mesecons_noteblock_b.ogg b/mods/mesecons/mesecons_noteblock/sounds/mesecons_noteblock_b.ogg old mode 100755 new mode 100644 index 44f2ebe7..810fe18f Binary files a/mods/mesecons/mesecons_noteblock/sounds/mesecons_noteblock_b.ogg and b/mods/mesecons/mesecons_noteblock/sounds/mesecons_noteblock_b.ogg differ diff --git a/mods/mesecons/mesecons_noteblock/sounds/mesecons_noteblock_b2.ogg b/mods/mesecons/mesecons_noteblock/sounds/mesecons_noteblock_b2.ogg old mode 100755 new mode 100644 index 5f0c2182..3de1250d Binary files a/mods/mesecons/mesecons_noteblock/sounds/mesecons_noteblock_b2.ogg and b/mods/mesecons/mesecons_noteblock/sounds/mesecons_noteblock_b2.ogg differ diff --git a/mods/mesecons/mesecons_noteblock/sounds/mesecons_noteblock_c.ogg b/mods/mesecons/mesecons_noteblock/sounds/mesecons_noteblock_c.ogg old mode 100755 new mode 100644 index b2672e63..5c60d315 Binary files a/mods/mesecons/mesecons_noteblock/sounds/mesecons_noteblock_c.ogg and b/mods/mesecons/mesecons_noteblock/sounds/mesecons_noteblock_c.ogg differ diff --git a/mods/mesecons/mesecons_noteblock/sounds/mesecons_noteblock_c2.ogg b/mods/mesecons/mesecons_noteblock/sounds/mesecons_noteblock_c2.ogg old mode 100755 new mode 100644 index a923bf3b..724db7de Binary files a/mods/mesecons/mesecons_noteblock/sounds/mesecons_noteblock_c2.ogg and b/mods/mesecons/mesecons_noteblock/sounds/mesecons_noteblock_c2.ogg differ diff --git a/mods/mesecons/mesecons_noteblock/sounds/mesecons_noteblock_crash.ogg b/mods/mesecons/mesecons_noteblock/sounds/mesecons_noteblock_crash.ogg old mode 100755 new mode 100644 index cdcc4994..0308d11a Binary files a/mods/mesecons/mesecons_noteblock/sounds/mesecons_noteblock_crash.ogg and b/mods/mesecons/mesecons_noteblock/sounds/mesecons_noteblock_crash.ogg differ diff --git a/mods/mesecons/mesecons_noteblock/sounds/mesecons_noteblock_csharp.ogg b/mods/mesecons/mesecons_noteblock/sounds/mesecons_noteblock_csharp.ogg old mode 100755 new mode 100644 index 162ba285..12c1ef38 Binary files a/mods/mesecons/mesecons_noteblock/sounds/mesecons_noteblock_csharp.ogg and b/mods/mesecons/mesecons_noteblock/sounds/mesecons_noteblock_csharp.ogg differ diff --git a/mods/mesecons/mesecons_noteblock/sounds/mesecons_noteblock_csharp2.ogg b/mods/mesecons/mesecons_noteblock/sounds/mesecons_noteblock_csharp2.ogg old mode 100755 new mode 100644 index 00bd6acb..fc7f6c88 Binary files a/mods/mesecons/mesecons_noteblock/sounds/mesecons_noteblock_csharp2.ogg and b/mods/mesecons/mesecons_noteblock/sounds/mesecons_noteblock_csharp2.ogg differ diff --git a/mods/mesecons/mesecons_noteblock/sounds/mesecons_noteblock_d.ogg b/mods/mesecons/mesecons_noteblock/sounds/mesecons_noteblock_d.ogg old mode 100755 new mode 100644 index 87540c3f..929b7fba Binary files a/mods/mesecons/mesecons_noteblock/sounds/mesecons_noteblock_d.ogg and b/mods/mesecons/mesecons_noteblock/sounds/mesecons_noteblock_d.ogg differ diff --git a/mods/mesecons/mesecons_noteblock/sounds/mesecons_noteblock_d2.ogg b/mods/mesecons/mesecons_noteblock/sounds/mesecons_noteblock_d2.ogg old mode 100755 new mode 100644 index f65ff474..dfd702b1 Binary files a/mods/mesecons/mesecons_noteblock/sounds/mesecons_noteblock_d2.ogg and b/mods/mesecons/mesecons_noteblock/sounds/mesecons_noteblock_d2.ogg differ diff --git a/mods/mesecons/mesecons_noteblock/sounds/mesecons_noteblock_dsharp.ogg b/mods/mesecons/mesecons_noteblock/sounds/mesecons_noteblock_dsharp.ogg old mode 100755 new mode 100644 index 73611a4d..eb6045d4 Binary files a/mods/mesecons/mesecons_noteblock/sounds/mesecons_noteblock_dsharp.ogg and b/mods/mesecons/mesecons_noteblock/sounds/mesecons_noteblock_dsharp.ogg differ diff --git a/mods/mesecons/mesecons_noteblock/sounds/mesecons_noteblock_dsharp2.ogg b/mods/mesecons/mesecons_noteblock/sounds/mesecons_noteblock_dsharp2.ogg old mode 100755 new mode 100644 index 0800ad44..5ac16dde Binary files a/mods/mesecons/mesecons_noteblock/sounds/mesecons_noteblock_dsharp2.ogg and b/mods/mesecons/mesecons_noteblock/sounds/mesecons_noteblock_dsharp2.ogg differ diff --git a/mods/mesecons/mesecons_noteblock/sounds/mesecons_noteblock_e.ogg b/mods/mesecons/mesecons_noteblock/sounds/mesecons_noteblock_e.ogg old mode 100755 new mode 100644 index df745df8..94977e0d Binary files a/mods/mesecons/mesecons_noteblock/sounds/mesecons_noteblock_e.ogg and b/mods/mesecons/mesecons_noteblock/sounds/mesecons_noteblock_e.ogg differ diff --git a/mods/mesecons/mesecons_noteblock/sounds/mesecons_noteblock_e2.ogg b/mods/mesecons/mesecons_noteblock/sounds/mesecons_noteblock_e2.ogg old mode 100755 new mode 100644 index e42c6fd8..1dcc0c4a Binary files a/mods/mesecons/mesecons_noteblock/sounds/mesecons_noteblock_e2.ogg and b/mods/mesecons/mesecons_noteblock/sounds/mesecons_noteblock_e2.ogg differ diff --git a/mods/mesecons/mesecons_noteblock/sounds/mesecons_noteblock_f.ogg b/mods/mesecons/mesecons_noteblock/sounds/mesecons_noteblock_f.ogg old mode 100755 new mode 100644 index bfdc194f..221d9264 Binary files a/mods/mesecons/mesecons_noteblock/sounds/mesecons_noteblock_f.ogg and b/mods/mesecons/mesecons_noteblock/sounds/mesecons_noteblock_f.ogg differ diff --git a/mods/mesecons/mesecons_noteblock/sounds/mesecons_noteblock_f2.ogg b/mods/mesecons/mesecons_noteblock/sounds/mesecons_noteblock_f2.ogg old mode 100755 new mode 100644 index 59fcd5aa..acf10dbb Binary files a/mods/mesecons/mesecons_noteblock/sounds/mesecons_noteblock_f2.ogg and b/mods/mesecons/mesecons_noteblock/sounds/mesecons_noteblock_f2.ogg differ diff --git a/mods/mesecons/mesecons_noteblock/sounds/mesecons_noteblock_fsharp.ogg b/mods/mesecons/mesecons_noteblock/sounds/mesecons_noteblock_fsharp.ogg old mode 100755 new mode 100644 index de907002..7af83a8e Binary files a/mods/mesecons/mesecons_noteblock/sounds/mesecons_noteblock_fsharp.ogg and b/mods/mesecons/mesecons_noteblock/sounds/mesecons_noteblock_fsharp.ogg differ diff --git a/mods/mesecons/mesecons_noteblock/sounds/mesecons_noteblock_fsharp2.ogg b/mods/mesecons/mesecons_noteblock/sounds/mesecons_noteblock_fsharp2.ogg old mode 100755 new mode 100644 index 06b0efd4..a96f6371 Binary files a/mods/mesecons/mesecons_noteblock/sounds/mesecons_noteblock_fsharp2.ogg and b/mods/mesecons/mesecons_noteblock/sounds/mesecons_noteblock_fsharp2.ogg differ diff --git a/mods/mesecons/mesecons_noteblock/sounds/mesecons_noteblock_g.ogg b/mods/mesecons/mesecons_noteblock/sounds/mesecons_noteblock_g.ogg old mode 100755 new mode 100644 index 382ca4c9..480ca367 Binary files a/mods/mesecons/mesecons_noteblock/sounds/mesecons_noteblock_g.ogg and b/mods/mesecons/mesecons_noteblock/sounds/mesecons_noteblock_g.ogg differ diff --git a/mods/mesecons/mesecons_noteblock/sounds/mesecons_noteblock_g2.ogg b/mods/mesecons/mesecons_noteblock/sounds/mesecons_noteblock_g2.ogg old mode 100755 new mode 100644 index 5f866a6d..917b2b9c Binary files a/mods/mesecons/mesecons_noteblock/sounds/mesecons_noteblock_g2.ogg and b/mods/mesecons/mesecons_noteblock/sounds/mesecons_noteblock_g2.ogg differ diff --git a/mods/mesecons/mesecons_noteblock/sounds/mesecons_noteblock_gsharp.ogg b/mods/mesecons/mesecons_noteblock/sounds/mesecons_noteblock_gsharp.ogg old mode 100755 new mode 100644 index 634fceca..2e71fea0 Binary files a/mods/mesecons/mesecons_noteblock/sounds/mesecons_noteblock_gsharp.ogg and b/mods/mesecons/mesecons_noteblock/sounds/mesecons_noteblock_gsharp.ogg differ diff --git a/mods/mesecons/mesecons_noteblock/sounds/mesecons_noteblock_gsharp2.ogg b/mods/mesecons/mesecons_noteblock/sounds/mesecons_noteblock_gsharp2.ogg old mode 100755 new mode 100644 index fd95bbce..941c6856 Binary files a/mods/mesecons/mesecons_noteblock/sounds/mesecons_noteblock_gsharp2.ogg and b/mods/mesecons/mesecons_noteblock/sounds/mesecons_noteblock_gsharp2.ogg differ diff --git a/mods/mesecons/mesecons_noteblock/sounds/mesecons_noteblock_hihat.ogg b/mods/mesecons/mesecons_noteblock/sounds/mesecons_noteblock_hihat.ogg old mode 100755 new mode 100644 index 5daca43f..0afa7c07 Binary files a/mods/mesecons/mesecons_noteblock/sounds/mesecons_noteblock_hihat.ogg and b/mods/mesecons/mesecons_noteblock/sounds/mesecons_noteblock_hihat.ogg differ diff --git a/mods/mesecons/mesecons_noteblock/sounds/mesecons_noteblock_kick.ogg b/mods/mesecons/mesecons_noteblock/sounds/mesecons_noteblock_kick.ogg old mode 100755 new mode 100644 index 60760609..10d585b8 Binary files a/mods/mesecons/mesecons_noteblock/sounds/mesecons_noteblock_kick.ogg and b/mods/mesecons/mesecons_noteblock/sounds/mesecons_noteblock_kick.ogg differ diff --git a/mods/mesecons/mesecons_noteblock/sounds/mesecons_noteblock_litecrash.ogg b/mods/mesecons/mesecons_noteblock/sounds/mesecons_noteblock_litecrash.ogg old mode 100755 new mode 100644 index d0c90858..79ab256a Binary files a/mods/mesecons/mesecons_noteblock/sounds/mesecons_noteblock_litecrash.ogg and b/mods/mesecons/mesecons_noteblock/sounds/mesecons_noteblock_litecrash.ogg differ diff --git a/mods/mesecons/mesecons_noteblock/sounds/mesecons_noteblock_snare.ogg b/mods/mesecons/mesecons_noteblock/sounds/mesecons_noteblock_snare.ogg old mode 100755 new mode 100644 index 60234951..83a79441 Binary files a/mods/mesecons/mesecons_noteblock/sounds/mesecons_noteblock_snare.ogg and b/mods/mesecons/mesecons_noteblock/sounds/mesecons_noteblock_snare.ogg differ diff --git a/mods/mesecons/mesecons_noteblock/textures/mesecons_noteblock.png b/mods/mesecons/mesecons_noteblock/textures/mesecons_noteblock.png old mode 100755 new mode 100644