From ebc114df71cc20868afbd3c6dea4039dc14c1a0e Mon Sep 17 00:00:00 2001 From: Carter Kolwey <fhrfuyduduf@gmail.com> Date: Sat, 11 Jan 2014 18:30:10 +0100 Subject: [PATCH] Fixed music player --- technic/machines/LV/cnc.lua | 50 +++++++++++++++++++------------------------------- 1 files changed, 19 insertions(+), 31 deletions(-) diff --git a/technic/machines/LV/cnc.lua b/technic/machines/LV/cnc.lua index f58f9df..10e9391 100644 --- a/technic/machines/LV/cnc.lua +++ b/technic/machines/LV/cnc.lua @@ -7,6 +7,7 @@ -- I could imagine some form of API allowing modders to come with their own node -- box definitions and easily stuff it in the this machine for production. +local S = technic.getter local shape = {} local onesize_products = { @@ -126,7 +127,7 @@ -- The actual block inactive state minetest.register_node("technic:cnc", { - description = "CNC Milling Machine", + description = S("CNC Machine"), tiles = {"technic_cnc_top.png", "technic_cnc_bottom.png", "technic_cnc_side.png", "technic_cnc_side.png", "technic_cnc_side.png", "technic_cnc_front.png"}, drawtype = "nodebox", @@ -142,45 +143,32 @@ legacy_facedir_simple = true, on_construct = function(pos) local meta = minetest.get_meta(pos) - meta:set_string("infotext", "CNC Machine") + meta:set_string("infotext", S("CNC Machine")) meta:set_float("technic_power_machine", 1) meta:set_string("formspec", cnc_formspec) local inv = meta:get_inventory() inv:set_size("src", 1) inv:set_size("dst", 4) end, - can_dig = function(pos,player) - local meta = minetest.get_meta(pos); - local inv = meta:get_inventory() - if not inv:is_empty("src") or not inv:is_empty("dst") then - minetest.chat_send_player(player:get_player_name(), - "Machine cannot be removed because it is not empty"); - return false - else - return true - end - end, + can_dig = technic.machine_can_dig, + allow_metadata_inventory_put = technic.machine_inventory_put, + allow_metadata_inventory_take = technic.machine_inventory_take, + allow_metadata_inventory_move = technic.machine_inventory_move, on_receive_fields = form_handler, }) -- Active state block minetest.register_node("technic:cnc_active", { - description = "CNC Machine", + description = S("CNC Machine"), tiles = {"technic_cnc_top_active.png", "technic_cnc_bottom.png", "technic_cnc_side.png", "technic_cnc_side.png", "technic_cnc_side.png", "technic_cnc_front_active.png"}, paramtype2 = "facedir", groups = {cracky=2, not_in_creative_inventory=1}, legacy_facedir_simple = true, - can_dig = function(pos,player) - local meta = minetest.get_meta(pos); - local inv = meta:get_inventory() - if not inv:is_empty("src") or not inv:is_empty("dst") then - minetest.chat_send_player(player:get_player_name(), - "CNC machine cannot be removed because it is not empty"); - return false - end - return true - end, + can_dig = technic.machine_can_dig, + allow_metadata_inventory_put = technic.machine_inventory_put, + allow_metadata_inventory_take = technic.machine_inventory_take, + allow_metadata_inventory_move = technic.machine_inventory_move, on_receive_fields = form_handler, }) @@ -193,7 +181,7 @@ local meta = minetest.get_meta(pos) local inv = meta:get_inventory() local eu_input = meta:get_int("LV_EU_input") - local machine_name = "CNC" + local machine_name = S("CNC Machine") local machine_node = "technic:cnc" local demand = 450 @@ -212,18 +200,18 @@ if inv:is_empty("src") or (not minetest.registered_nodes[result]) or (not inv:room_for_item("dst", result)) then - hacky_swap_node(pos, machine_node) - meta:set_string("infotext", machine_name.." Idle") + technic.swap_node(pos, machine_node) + meta:set_string("infotext", S("%s Idle"):format(machine_name)) meta:set_string("cnc_product", "") return end if eu_input < demand then - hacky_swap_node(pos, machine_node) - meta:set_string("infotext", machine_name.." Unpowered") + technic.swap_node(pos, machine_node) + meta:set_string("infotext", S("%s Unpowered"):format(machine_name)) elseif eu_input >= demand then - hacky_swap_node(pos, machine_node.."_active") - meta:set_string("infotext", machine_name.." Active") + technic.swap_node(pos, machine_node.."_active") + meta:set_string("infotext", S("%s Active"):format(machine_name)) meta:set_int("src_time", meta:get_int("src_time") + 1) if meta:get_int("src_time") >= 3 then -- 3 ticks per output meta:set_int("src_time", 0) -- Gitblit v1.8.0