Theyre already tiered with Mk1-3 (at least drill is, more in the future). Tools can be considered as designed for different tiers of circuits thx to their power needs. For example Mk3 will require ages to load in LV batbox. Batboxes load tools timining: LV standard (1000EU), MV 4x faster (4000EU), HV 16x faster (16000EU) Also since 1EU is the same in any circuit it is possible to move energy from one to another with portable devices like crystals. Other changes: - moved charge/discharge functions to battery_boxes_commons.lua - added UI style backgrounds for all the batboxes
64 lines
1.9 KiB
Lua
64 lines
1.9 KiB
Lua
-- This file includes the functions and data structures for registering machines and tools for LV, MV, HV types.
|
|
-- We use the technic namespace for these functions and data to avoid eventual conflict.
|
|
|
|
-- register power tools here
|
|
technic.power_tools = {}
|
|
technic.register_power_tool = function(craftitem,max_charge)
|
|
technic.power_tools[craftitem] = max_charge
|
|
end
|
|
|
|
-- register LV machines here
|
|
technic.LV_machines = {}
|
|
|
|
technic.register_LV_machine = function(nodename,type)
|
|
technic.LV_machines[nodename] = type
|
|
end
|
|
|
|
technic.unregister_LV_machine = function(nodename,type)
|
|
technic.LV_machines[nodename] = nil
|
|
end
|
|
|
|
-- register MV machines here
|
|
technic.MV_machines = {}
|
|
technic.MV_power_tools = {}
|
|
technic.register_MV_machine = function(nodename,type)
|
|
technic.MV_machines[nodename] = type
|
|
end
|
|
|
|
technic.unregister_MV_machine = function(nodename)
|
|
technic.MV_machines[nodename] = nil
|
|
end
|
|
|
|
-- register HV machines here
|
|
technic.HV_machines = {}
|
|
technic.HV_power_tools = {}
|
|
technic.register_HV_machine = function(nodename,type)
|
|
technic.HV_machines[nodename] = type
|
|
end
|
|
|
|
technic.unregister_HV_machine = function(nodename)
|
|
technic.HV_machines[nodename] = nil
|
|
end
|
|
|
|
-- Utility functions. Not sure exactly what they do.. water.lua uses the two first.
|
|
function technic.get_RE_item_load (load1,max_load)
|
|
if load1==0 then load1=65535 end
|
|
local temp = 65536-load1
|
|
temp= temp/65535*max_load
|
|
return math.floor(temp + 0.5)
|
|
end
|
|
|
|
function technic.set_RE_item_load (load1,max_load)
|
|
if load1 == 0 then return 65535 end
|
|
local temp=load1/max_load*65535
|
|
temp=65536-temp
|
|
return math.floor(temp)
|
|
end
|
|
|
|
-- Wear down a tool depending on the remaining charge.
|
|
function technic.set_RE_wear (item_stack,load,max_load)
|
|
local temp=65536-math.floor(load/max_load*65535)
|
|
item_stack["wear"]=tostring(temp)
|
|
return item_stack
|
|
end
|