Skip to content

Commit 0f6bdb1

Browse files
committed
Correct (almost) all luacheck warnings
Also includes a few code opimizations: - Combined mining drill functions - Shorter alias registration (unused?) - Add TODOs to address later
1 parent 0211c58 commit 0f6bdb1

File tree

22 files changed

+254
-244
lines changed

22 files changed

+254
-244
lines changed

.luacheckrc

Lines changed: 7 additions & 17 deletions
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,8 @@
11
unused_args = false
22
allow_defined_top = true
3-
max_line_length = 999
3+
max_line_length = 150
4+
-- Allow shadowed variables (callbacks in callbacks)
5+
redefined = false
46

57
globals = {
68
"technic", "minetest",
@@ -32,19 +34,7 @@ read_globals = {
3234
"craftguide", "i3"
3335
}
3436

35-
files["concrete/init.lua"].ignore = { "steel_ingot" }
36-
files["technic/machines/MV/tool_workshop.lua"].ignore = { "pos" }
37-
files["technic/machines/other/frames.lua"].ignore = { "item_texture", "item_type", "adj", "connected", "" }
38-
files["technic/machines/register/battery_box.lua"].ignore = { "pos", "tube_upgrade" }
39-
files["technic/machines/register/cables.lua"].ignore = { "name", "from_below", "p" }
40-
files["technic/machines/register/common.lua"].ignore = { "result" }
41-
42-
files["technic/machines/register/generator.lua"].ignore = { "node" }
43-
files["technic/machines/switching_station.lua"].ignore = { "pos1", "tier", "poshash" }
44-
files["technic/radiation.lua"].ignore = { "LAVA_VISC" }
45-
files["technic/tools/chainsaw.lua"].ignore = { "pos" }
46-
files["technic/tools/mining_drill.lua"].ignore = { "mode" }
47-
files["technic_chests/register.lua"].ignore = { "fs_helpers", "name", "locked_after_place" }
48-
49-
files["technic_cnc/cnc.lua"].ignore = { "multiplier" }
50-
files["wrench/init.lua"].ignore = { "name", "stack" }
37+
-- Loop warning
38+
files["technic/machines/other/frames.lua"].ignore = { "" }
39+
-- Long lines
40+
files["technic_cnc/cnc_api.lua"].ignore = { "" }

concrete/init.lua

Lines changed: 0 additions & 7 deletions
Original file line numberDiff line numberDiff line change
@@ -16,13 +16,6 @@ for i = 32, 63 do
1616
"technic:concrete_post_with_platform")
1717
end
1818

19-
local steel_ingot
20-
if minetest.get_modpath("technic_worldgen") then
21-
steel_ingot = "technic:carbon_steel_ingot"
22-
else
23-
steel_ingot = "default:steel_ingot"
24-
end
25-
2619
minetest.register_craft({
2720
output = 'technic:concrete_post_platform 6',
2821
recipe = {

extranodes/init.lua

Lines changed: 41 additions & 30 deletions
Original file line numberDiff line numberDiff line change
@@ -57,36 +57,47 @@ if minetest.get_modpath("moreblocks") then
5757
tiles={"technic_stainless_steel_block.png"},
5858
})
5959

60-
function register_technic_stairs_alias(modname, origname, newmod, newname)
61-
minetest.register_alias(modname .. ":slab_" .. origname, newmod..":slab_" .. newname)
62-
minetest.register_alias(modname .. ":slab_" .. origname .. "_inverted", newmod..":slab_" .. newname .. "_inverted")
63-
minetest.register_alias(modname .. ":slab_" .. origname .. "_wall", newmod..":slab_" .. newname .. "_wall")
64-
minetest.register_alias(modname .. ":slab_" .. origname .. "_quarter", newmod..":slab_" .. newname .. "_quarter")
65-
minetest.register_alias(modname .. ":slab_" .. origname .. "_quarter_inverted", newmod..":slab_" .. newname .. "_quarter_inverted")
66-
minetest.register_alias(modname .. ":slab_" .. origname .. "_quarter_wall", newmod..":slab_" .. newname .. "_quarter_wall")
67-
minetest.register_alias(modname .. ":slab_" .. origname .. "_three_quarter", newmod..":slab_" .. newname .. "_three_quarter")
68-
minetest.register_alias(modname .. ":slab_" .. origname .. "_three_quarter_inverted", newmod..":slab_" .. newname .. "_three_quarter_inverted")
69-
minetest.register_alias(modname .. ":slab_" .. origname .. "_three_quarter_wall", newmod..":slab_" .. newname .. "_three_quarter_wall")
70-
minetest.register_alias(modname .. ":stair_" .. origname, newmod..":stair_" .. newname)
71-
minetest.register_alias(modname .. ":stair_" .. origname .. "_inverted", newmod..":stair_" .. newname .. "_inverted")
72-
minetest.register_alias(modname .. ":stair_" .. origname .. "_wall", newmod..":stair_" .. newname .. "_wall")
73-
minetest.register_alias(modname .. ":stair_" .. origname .. "_wall_half", newmod..":stair_" .. newname .. "_wall_half")
74-
minetest.register_alias(modname .. ":stair_" .. origname .. "_wall_half_inverted", newmod..":stair_" .. newname .. "_wall_half_inverted")
75-
minetest.register_alias(modname .. ":stair_" .. origname .. "_half", newmod..":stair_" .. newname .. "_half")
76-
minetest.register_alias(modname .. ":stair_" .. origname .. "_half_inverted", newmod..":stair_" .. newname .. "_half_inverted")
77-
minetest.register_alias(modname .. ":stair_" .. origname .. "_right_half", newmod..":stair_" .. newname .. "_right_half")
78-
minetest.register_alias(modname .. ":stair_" .. origname .. "_right_half_inverted", newmod..":stair_" .. newname .. "_right_half_inverted")
79-
minetest.register_alias(modname .. ":stair_" .. origname .. "_wall_half", newmod..":stair_" .. newname .. "_wall_half")
80-
minetest.register_alias(modname .. ":stair_" .. origname .. "_wall_half_inverted", newmod..":stair_" .. newname .. "_wall_half_inverted")
81-
minetest.register_alias(modname .. ":stair_" .. origname .. "_inner", newmod..":stair_" .. newname .. "_inner")
82-
minetest.register_alias(modname .. ":stair_" .. origname .. "_inner_inverted", newmod..":stair_" .. newname .. "_inner_inverted")
83-
minetest.register_alias(modname .. ":stair_" .. origname .. "_outer", newmod..":stair_" .. newname .. "_outer")
84-
minetest.register_alias(modname .. ":stair_" .. origname .. "_outer_inverted", newmod..":stair_" .. newname .. "_outer_inverted")
85-
minetest.register_alias(modname .. ":panel_" .. origname .. "_bottom", newmod..":panel_" .. newname .. "_bottom")
86-
minetest.register_alias(modname .. ":panel_" .. origname .. "_top", newmod..":panel_" .. newname .. "_top")
87-
minetest.register_alias(modname .. ":panel_" .. origname .. "_vertical", newmod..":panel_" .. newname .. "_vertical")
88-
minetest.register_alias(modname .. ":micro_" .. origname .. "_bottom", newmod..":micro_" .. newname .. "_bottom")
89-
minetest.register_alias(modname .. ":micro_" .. origname .. "_top", newmod..":micro_" .. newname .. "_top")
60+
function register_technic_stairs_alias(origmod, origname, newmod, newname)
61+
local func = minetest.register_alias
62+
local function remap(kind, suffix)
63+
-- Old: stairsplus:slab_concrete_wall
64+
-- New: technic:slab_concrete_wall
65+
func(("%s:%s_%s%s"):format(origmod, kind, origname, suffix),
66+
("%s:%s_%s%s"):format(newmod, kind, newname, suffix))
67+
end
68+
69+
-- Slabs
70+
remap("slab", "")
71+
remap("slab", "_inverted")
72+
remap("slab", "_wall")
73+
remap("slab", "_quarter")
74+
remap("slab", "_quarter_inverted")
75+
remap("slab", "_quarter_wall")
76+
remap("slab", "_three_quarter")
77+
remap("slab", "_three_quarter_inverted")
78+
remap("slab", "_three_quarter_wall")
79+
80+
-- Stairs
81+
remap("stair", "")
82+
remap("stair", "_inverted")
83+
remap("stair", "_wall")
84+
remap("stair", "_wall_half")
85+
remap("stair", "_wall_half_inverted")
86+
remap("stair", "_half")
87+
remap("stair", "_half_inverted")
88+
remap("stair", "_right_half")
89+
remap("stair", "_right_half_inverted")
90+
remap("stair", "_inner")
91+
remap("stair", "_inner_inverted")
92+
remap("stair", "_outer")
93+
remap("stair", "_outer_inverted")
94+
95+
-- Other
96+
remap("panel", "_bottom")
97+
remap("panel", "_top")
98+
remap("panel", "_vertical")
99+
remap("micro", "_bottom")
100+
remap("micro", "_top")
90101
end
91102

92103
register_technic_stairs_alias("stairsplus", "concrete", "technic", "concrete")

technic/init.lua

Lines changed: 11 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -16,7 +16,17 @@ technic.modpath = modpath
1616
if rawget(_G, "intllib") then
1717
technic.getter = intllib.Getter()
1818
else
19-
technic.getter = function(s,a,...)if a==nil then return s end a={a,...}return s:gsub("(@?)@(%(?)(%d+)(%)?)",function(e,o,n,c)if e==""then return a[tonumber(n)]..(o==""and c or"")else return"@"..o..n..c end end) end
19+
-- Intllib copypasta: TODO replace with the client-side translation API
20+
technic.getter = function(s,a,...)
21+
if a==nil then return s end
22+
a={a,...}
23+
return s:gsub("(@?)@(%(?)(%d+)(%)?)", function(e,o,n,c)
24+
if e==""then
25+
return a[tonumber(n)]..(o==""and c or"")
26+
end
27+
return "@"..o..n..c
28+
end)
29+
end
2030
end
2131
local S = technic.getter
2232

technic/machines/HV/forcefield.lua

Lines changed: 5 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -112,10 +112,13 @@ local function set_forcefield_formspec(meta)
112112
else
113113
formspec = formspec.."button[0,1;5,1;mesecon_mode_0;"..S("Controlled by Mesecon Signal").."]"
114114
end
115+
-- TODO: String replacement with %s will stop working with client-side translations
115116
if meta:get_int("enabled") == 0 then
116-
formspec = formspec.."button[0,1.75;5,1;enable;"..S("%s Disabled"):format(S("%s Forcefield Emitter"):format("HV")).."]"
117+
formspec = formspec.."button[0,1.75;5,1;enable;"..
118+
S("%s Disabled"):format(S("%s Forcefield Emitter"):format("HV")).."]"
117119
else
118-
formspec = formspec.."button[0,1.75;5,1;disable;"..S("%s Enabled"):format(S("%s Forcefield Emitter"):format("HV")).."]"
120+
formspec = formspec.."button[0,1.75;5,1;disable;"..
121+
S("%s Enabled"):format(S("%s Forcefield Emitter"):format("HV")).."]"
119122
end
120123
meta:set_string("formspec", formspec)
121124
end

technic/machines/HV/quarry.lua

Lines changed: 8 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -47,14 +47,19 @@ local function set_quarry_demand(meta)
4747
local radius = meta:get_int("size")
4848
local diameter = radius*2 + 1
4949
local machine_name = S("%s Quarry"):format("HV")
50-
if meta:get_int("enabled") == 0 or meta:get_int("purge_on") == 1 then
51-
meta:set_string("infotext", S(meta:get_int("purge_on") == 1 and "%s purging cache" or "%s Disabled"):format(machine_name))
50+
local do_purge = meta:get_int("purge_on") == 1
51+
if meta:get_int("enabled") == 0 or do_purge then
52+
local infotext = do_purge and
53+
S("%s purging cache") or S("%s Disabled")
54+
meta:set_string("infotext", infotext:format(machine_name))
5255
meta:set_int("HV_EU_demand", 0)
5356
elseif meta:get_int("dug") == diameter*diameter * (quarry_dig_above_nodes+1+quarry_max_depth) then
5457
meta:set_string("infotext", S("%s Finished"):format(machine_name))
5558
meta:set_int("HV_EU_demand", 0)
5659
else
57-
meta:set_string("infotext", S(meta:get_int("HV_EU_input") >= quarry_demand and "%s Active" or "%s Unpowered"):format(machine_name))
60+
local infotext = meta:get_int("HV_EU_input") >= quarry_demand
61+
and S("%s Active") or S("%s Unpowered")
62+
meta:set_string("infotext", infotext:format(machine_name))
5863
meta:set_int("HV_EU_demand", quarry_demand)
5964
end
6065
end

technic/machines/MV/power_radiator.lua

Lines changed: 2 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -36,7 +36,8 @@ technic.register_inductive_machine = function(name)
3636
end
3737

3838
-- Appliances:
39-
-- has_supply: pos of supply node if the appliance has a power radiator near with sufficient power for the demand else ""
39+
-- has_supply: pos of supply node if the appliance has a power radiator near
40+
-- with sufficient power for the demand else ""
4041
-- EU_demand: The power demand of the device.
4142
-- EU_charge: Actual use. set to EU_demand if active==1
4243
-- active: set to 1 if the device is on

technic/machines/other/anchor.lua

Lines changed: 18 additions & 10 deletions
Original file line numberDiff line numberDiff line change
@@ -48,20 +48,23 @@ local function forceload_on(pos, meta)
4848
end
4949

5050
local function set_display(pos, meta)
51+
local ESC = minetest.formspec_escape
5152
meta:set_string("infotext", S(meta:get_int("enabled") ~= 0 and "%s Enabled" or "%s Disabled"):format(desc))
5253
meta:set_string("formspec",
5354
"size[5,3.5]"..
5455
"item_image[0,0;1,1;technic:admin_anchor]"..
55-
"label[1,0;"..minetest.formspec_escape(desc).."]"..
56-
"label[0,1;"..minetest.formspec_escape(S("Owner:").." "..meta:get_string("owner")).."]"..
56+
"label[1,0;"..ESC(desc).."]"..
57+
"label[0,1;"..ESC(S("Owner:").." "..meta:get_string("owner")).."]"..
5758
(meta:get_int("locked") == 0 and
58-
"button[3,1;2,1;lock;"..minetest.formspec_escape(S("Unlocked")).."]" or
59-
"button[3,1;2,1;unlock;"..minetest.formspec_escape(S("Locked")).."]")..
60-
"field[0.25,2.3;1,1;radius;"..minetest.formspec_escape(S("Radius:"))..";"..meta:get_int("radius").."]"..
59+
"button[3,1;2,1;lock;"..ESC(S("Unlocked")).."]" or
60+
"button[3,1;2,1;unlock;"..ESC(S("Locked")).."]")..
61+
"field[0.25,2.3;1,1;radius;"..ESC(S("Radius:"))..";"..meta:get_int("radius").."]"..
6162
(meta:get_int("enabled") == 0 and
62-
"button[3,2;2,1;enable;"..minetest.formspec_escape(S("Disabled")).."]" or
63-
"button[3,2;2,1;disable;"..minetest.formspec_escape(S("Enabled")).."]")..
64-
"label[0,3;"..minetest.formspec_escape(S("Keeping %d/%d map blocks loaded"):format(#currently_forceloaded_positions(meta), #compute_forceload_positions(pos, meta))).."]")
63+
"button[3,2;2,1;enable;"..ESC(S("Disabled")).."]" or
64+
"button[3,2;2,1;disable;"..ESC(S("Enabled")).."]")..
65+
"label[0,3;"..ESC(S("Keeping %d/%d map blocks loaded"):format(
66+
#currently_forceloaded_positions(meta), #compute_forceload_positions(pos, meta)
67+
)).."]")
6568
end
6669

6770
minetest.register_node("technic:admin_anchor", {
@@ -80,7 +83,8 @@ minetest.register_node("technic:admin_anchor", {
8083
end,
8184
can_dig = function (pos, player)
8285
local meta = minetest.get_meta(pos)
83-
return meta:get_int("locked") == 0 or (player and player:is_player() and player:get_player_name() == meta:get_string("owner"))
86+
return meta:get_int("locked") == 0 or
87+
(player and player:is_player() and player:get_player_name() == meta:get_string("owner"))
8488
end,
8589
on_destruct = function (pos)
8690
local meta = minetest.get_meta(pos)
@@ -99,7 +103,11 @@ minetest.register_node("technic:admin_anchor", {
99103
forceload_off(meta)
100104
if fields.disable then meta:set_int("enabled", 0) end
101105
if fields.enable then meta:set_int("enabled", 1) end
102-
if fields.radius and string.find(fields.radius, "^[0-9]+$") and tonumber(fields.radius) < 256 then meta:set_int("radius", fields.radius) end
106+
if fields.radius
107+
and string.find(fields.radius, "^[0-9]+$")
108+
and tonumber(fields.radius) < 256 then
109+
meta:set_int("radius", fields.radius)
110+
end
103111
if meta:get_int("enabled") ~= 0 then
104112
forceload_on(pos, meta)
105113
end

technic/machines/other/frames.lua

Lines changed: 5 additions & 19 deletions
Original file line numberDiff line numberDiff line change
@@ -88,22 +88,22 @@ local function pos_in_list(l, pos)
8888
return false
8989
end
9090

91-
local function table_empty(table)
92-
for _, __ in pairs(table) do
91+
local function table_empty(what)
92+
for _ in pairs(what) do
9393
return false
9494
end
9595
return true
9696
end
9797

98-
local function add_table(table, toadd)
98+
local function add_table(what, toadd)
9999
local i = 1
100100
while true do
101-
local o = table[i]
101+
local o = what[i]
102102
if o == toadd then return end
103103
if o == nil then break end
104104
i = i + 1
105105
end
106-
table[i] = toadd
106+
what[i] = toadd
107107
end
108108

109109
local function move_nodes_vect(poslist, vect, must_not_move, owner)
@@ -398,20 +398,6 @@ minetest.register_entity("technic:frame_entity", {
398398
local pos = vector.round(self.object:getpos())
399399
frames_pos[pos_to_string(pos)] = node.name
400400

401-
local stack = ItemStack(node.name)
402-
local itemtable = stack:to_table()
403-
local itemname = nil
404-
405-
if itemtable then
406-
itemname = stack:to_table().name
407-
end
408-
409-
local item_texture = nil
410-
local item_type = ""
411-
if minetest.registered_items[itemname] then
412-
item_texture = minetest.registered_items[itemname].inventory_image
413-
item_type = minetest.registered_items[itemname].type
414-
end
415401
local prop = {
416402
is_visible = true,
417403
textures = { node.name },

technic/machines/register/battery_box.lua

Lines changed: 4 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -304,9 +304,9 @@ function technic.register_battery_box(data)
304304
drop = "technic:"..ltier.."_battery_box0",
305305
on_construct = function(pos)
306306
local meta = minetest.get_meta(pos)
307-
local EU_upgrade, tube_upgrade = 0, 0
307+
local EU_upgrade, _ = 0
308308
if data.upgrade then
309-
EU_upgrade, tube_upgrade = technic.handle_machine_upgrades(meta)
309+
EU_upgrade, _ = technic.handle_machine_upgrades(meta)
310310
end
311311
local max_charge = data.max_charge * (1 + EU_upgrade / 10)
312312
local charge = meta:get_int("internal_EU_charge")
@@ -345,9 +345,9 @@ function technic.register_battery_box(data)
345345
meta = minetest.get_meta(pos)
346346
if not pipeworks.may_configure(pos, sender) then return end
347347
fs_helpers.on_receive_fields(pos, fields)
348-
local EU_upgrade, tube_upgrade = 0, 0
348+
local EU_upgrade, _ = 0
349349
if data.upgrade then
350-
EU_upgrade, tube_upgrade = technic.handle_machine_upgrades(meta)
350+
EU_upgrade, _ = technic.handle_machine_upgrades(meta)
351351
end
352352
local max_charge = data.max_charge * (1 + EU_upgrade / 10)
353353
local charge = meta:get_int("internal_EU_charge")

0 commit comments

Comments
 (0)