mirror of
https://github.com/Aurorastation/Aurora.3.git
synced 2025-12-20 15:12:19 +00:00
Restore old machinery init behavior (#3380)
This commit is contained in:
@@ -153,10 +153,6 @@
|
|||||||
var/cap_rating = 0
|
var/cap_rating = 0
|
||||||
var/manip_rating = 0
|
var/manip_rating = 0
|
||||||
var/bin_rating = 0
|
var/bin_rating = 0
|
||||||
if(!component_parts)
|
|
||||||
cap_rating = 2
|
|
||||||
manip_rating = 1
|
|
||||||
bin_rating = 1
|
|
||||||
for(var/obj/item/weapon/stock_parts/P in component_parts)
|
for(var/obj/item/weapon/stock_parts/P in component_parts)
|
||||||
if(iscapacitor(P))
|
if(iscapacitor(P))
|
||||||
cap_rating += P.rating
|
cap_rating += P.rating
|
||||||
|
|||||||
@@ -141,9 +141,6 @@
|
|||||||
..()
|
..()
|
||||||
var/cap_rating = 0
|
var/cap_rating = 0
|
||||||
var/bin_rating = 0
|
var/bin_rating = 0
|
||||||
if(!component_parts)
|
|
||||||
cap_rating = 2
|
|
||||||
bin_rating = 1
|
|
||||||
for(var/obj/item/weapon/stock_parts/P in component_parts)
|
for(var/obj/item/weapon/stock_parts/P in component_parts)
|
||||||
if(iscapacitor(P))
|
if(iscapacitor(P))
|
||||||
cap_rating += P.rating
|
cap_rating += P.rating
|
||||||
|
|||||||
@@ -24,7 +24,6 @@
|
|||||||
)
|
)
|
||||||
/obj/machinery/sleeper/Initialize()
|
/obj/machinery/sleeper/Initialize()
|
||||||
. = ..()
|
. = ..()
|
||||||
populate_components() // has a beaker so it needs to populate
|
|
||||||
update_icon()
|
update_icon()
|
||||||
|
|
||||||
/obj/machinery/sleeper/machinery_process()
|
/obj/machinery/sleeper/machinery_process()
|
||||||
@@ -50,8 +49,6 @@
|
|||||||
..()
|
..()
|
||||||
var/scan_rating = 0
|
var/scan_rating = 0
|
||||||
var/cap_rating = 0
|
var/cap_rating = 0
|
||||||
if(!component_parts)
|
|
||||||
populate_components()
|
|
||||||
|
|
||||||
for(var/obj/item/weapon/stock_parts/P in component_parts)
|
for(var/obj/item/weapon/stock_parts/P in component_parts)
|
||||||
if(isscanner(P))
|
if(isscanner(P))
|
||||||
|
|||||||
@@ -279,9 +279,6 @@
|
|||||||
..()
|
..()
|
||||||
var/mb_rating = 0
|
var/mb_rating = 0
|
||||||
var/man_rating = 0
|
var/man_rating = 0
|
||||||
if(!component_parts)
|
|
||||||
mb_rating = 3
|
|
||||||
man_rating = 1
|
|
||||||
for(var/obj/item/weapon/stock_parts/matter_bin/MB in component_parts)
|
for(var/obj/item/weapon/stock_parts/matter_bin/MB in component_parts)
|
||||||
mb_rating += MB.rating
|
mb_rating += MB.rating
|
||||||
for(var/obj/item/weapon/stock_parts/manipulator/M in component_parts)
|
for(var/obj/item/weapon/stock_parts/manipulator/M in component_parts)
|
||||||
|
|||||||
@@ -250,9 +250,6 @@
|
|||||||
..()
|
..()
|
||||||
var/man_rating = 1
|
var/man_rating = 1
|
||||||
var/bin_rating = 1
|
var/bin_rating = 1
|
||||||
if(!component_parts)
|
|
||||||
man_rating = 1
|
|
||||||
bin_rating = 1
|
|
||||||
|
|
||||||
for(var/obj/item/weapon/stock_parts/P in component_parts)
|
for(var/obj/item/weapon/stock_parts/P in component_parts)
|
||||||
if(ismatterbin(P))
|
if(ismatterbin(P))
|
||||||
|
|||||||
@@ -278,8 +278,7 @@
|
|||||||
/obj/machinery/clonepod/RefreshParts()
|
/obj/machinery/clonepod/RefreshParts()
|
||||||
..()
|
..()
|
||||||
var/rating = 0
|
var/rating = 0
|
||||||
if(!component_parts)
|
|
||||||
rating = 4
|
|
||||||
for(var/obj/item/weapon/stock_parts/P in component_parts)
|
for(var/obj/item/weapon/stock_parts/P in component_parts)
|
||||||
if(isscanner(P) || ismanipulator(P))
|
if(isscanner(P) || ismanipulator(P))
|
||||||
rating += P.rating
|
rating += P.rating
|
||||||
|
|||||||
@@ -669,9 +669,6 @@
|
|||||||
..()
|
..()
|
||||||
var/scan_rating = 0
|
var/scan_rating = 0
|
||||||
var/cap_rating = 0
|
var/cap_rating = 0
|
||||||
if(!component_parts)
|
|
||||||
scan_rating = 2
|
|
||||||
cap_rating = 3
|
|
||||||
|
|
||||||
for(var/obj/item/weapon/stock_parts/P in component_parts)
|
for(var/obj/item/weapon/stock_parts/P in component_parts)
|
||||||
if(isscanner(P))
|
if(isscanner(P))
|
||||||
@@ -689,4 +686,4 @@
|
|||||||
req_components = list(
|
req_components = list(
|
||||||
"/obj/item/weapon/stock_parts/capacitor" = 3,
|
"/obj/item/weapon/stock_parts/capacitor" = 3,
|
||||||
"/obj/item/weapon/stock_parts/scanning_module" = 1,
|
"/obj/item/weapon/stock_parts/scanning_module" = 1,
|
||||||
"/obj/item/weapon/stock_parts/matter_bin" = 2)
|
"/obj/item/weapon/stock_parts/matter_bin" = 2)
|
||||||
|
|||||||
@@ -129,11 +129,24 @@ Class Procs:
|
|||||||
var/tmp/machinery_processing = FALSE // Are we process()ing in SSmachinery?
|
var/tmp/machinery_processing = FALSE // Are we process()ing in SSmachinery?
|
||||||
var/has_special_power_checks = FALSE // If true, call auto_use_power instead of doing it all in SSmachinery.
|
var/has_special_power_checks = FALSE // If true, call auto_use_power instead of doing it all in SSmachinery.
|
||||||
|
|
||||||
/obj/machinery/Initialize(mapload, d = 0)
|
/obj/machinery/Initialize(mapload, d = 0, populate_components = TRUE)
|
||||||
. = ..()
|
. = ..()
|
||||||
if(d)
|
if(d)
|
||||||
set_dir(d)
|
set_dir(d)
|
||||||
|
|
||||||
|
if (populate_components && component_types)
|
||||||
|
component_parts = list()
|
||||||
|
for (var/type in component_types)
|
||||||
|
var/count = component_types[type]
|
||||||
|
if (count > 1)
|
||||||
|
for (var/i in 1 to count)
|
||||||
|
component_parts += new type(src)
|
||||||
|
else
|
||||||
|
component_parts += new type(src)
|
||||||
|
|
||||||
|
if(component_parts.len)
|
||||||
|
RefreshParts()
|
||||||
|
|
||||||
add_machine(src)
|
add_machine(src)
|
||||||
|
|
||||||
/obj/machinery/Destroy()
|
/obj/machinery/Destroy()
|
||||||
@@ -262,10 +275,7 @@ Class Procs:
|
|||||||
|
|
||||||
return ..()
|
return ..()
|
||||||
|
|
||||||
/obj/machinery/proc/RefreshParts(var/makeparts = 0)
|
/obj/machinery/proc/RefreshParts()
|
||||||
if(makeparts)
|
|
||||||
populate_components()
|
|
||||||
return
|
|
||||||
|
|
||||||
/obj/machinery/proc/assign_uid()
|
/obj/machinery/proc/assign_uid()
|
||||||
uid = gl_uid
|
uid = gl_uid
|
||||||
@@ -325,11 +335,9 @@ Class Procs:
|
|||||||
/obj/machinery/proc/default_part_replacement(var/mob/user, var/obj/item/weapon/storage/part_replacer/R)
|
/obj/machinery/proc/default_part_replacement(var/mob/user, var/obj/item/weapon/storage/part_replacer/R)
|
||||||
if(!istype(R))
|
if(!istype(R))
|
||||||
return 0
|
return 0
|
||||||
if(!component_parts)
|
if(!LAZYLEN(component_parts))
|
||||||
if(!component_types)
|
return 0
|
||||||
return 0
|
|
||||||
else
|
|
||||||
RefreshParts(1) // make default parts for us to replace
|
|
||||||
if(panel_open)
|
if(panel_open)
|
||||||
var/obj/item/weapon/circuitboard/CB = locate(/obj/item/weapon/circuitboard) in component_parts
|
var/obj/item/weapon/circuitboard/CB = locate(/obj/item/weapon/circuitboard) in component_parts
|
||||||
var/P
|
var/P
|
||||||
@@ -373,20 +381,6 @@ Class Procs:
|
|||||||
user << "<span class='notice'> [C.name]</span>"
|
user << "<span class='notice'> [C.name]</span>"
|
||||||
return 1
|
return 1
|
||||||
|
|
||||||
/obj/machinery/proc/populate_components()
|
|
||||||
if(component_types)
|
|
||||||
component_parts = list()
|
|
||||||
for (var/type in component_types)
|
|
||||||
var/count = component_types[type]
|
|
||||||
if (count > 1)
|
|
||||||
for (var/i in 1 to count)
|
|
||||||
component_parts += new type(src)
|
|
||||||
else
|
|
||||||
component_parts += new type(src)
|
|
||||||
|
|
||||||
if(component_parts.len)
|
|
||||||
RefreshParts()
|
|
||||||
|
|
||||||
/obj/machinery/proc/dismantle()
|
/obj/machinery/proc/dismantle()
|
||||||
playsound(loc, 'sound/items/Crowbar.ogg', 50, 1)
|
playsound(loc, 'sound/items/Crowbar.ogg', 50, 1)
|
||||||
var/obj/machinery/constructable_frame/machine_frame/M = new /obj/machinery/constructable_frame/machine_frame(loc)
|
var/obj/machinery/constructable_frame/machine_frame/M = new /obj/machinery/constructable_frame/machine_frame(loc)
|
||||||
|
|||||||
@@ -145,8 +145,6 @@
|
|||||||
..()
|
..()
|
||||||
var/man_rating = 0
|
var/man_rating = 0
|
||||||
var/cap_rating = 0
|
var/cap_rating = 0
|
||||||
if(!component_parts)
|
|
||||||
populate_components()
|
|
||||||
|
|
||||||
for(var/obj/item/weapon/stock_parts/P in component_parts)
|
for(var/obj/item/weapon/stock_parts/P in component_parts)
|
||||||
if(iscapacitor(P))
|
if(iscapacitor(P))
|
||||||
|
|||||||
@@ -32,9 +32,6 @@
|
|||||||
..()
|
..()
|
||||||
charge = 0
|
charge = 0
|
||||||
repair = -5
|
repair = -5
|
||||||
if(!component_parts)
|
|
||||||
charge = 45
|
|
||||||
repair = 0
|
|
||||||
|
|
||||||
for(var/obj/item/weapon/stock_parts/P in component_parts)
|
for(var/obj/item/weapon/stock_parts/P in component_parts)
|
||||||
if(iscapacitor(P))
|
if(iscapacitor(P))
|
||||||
|
|||||||
@@ -68,18 +68,15 @@
|
|||||||
|
|
||||||
/obj/machinery/mecha_part_fabricator/RefreshParts()
|
/obj/machinery/mecha_part_fabricator/RefreshParts()
|
||||||
res_max_amount = 0
|
res_max_amount = 0
|
||||||
if(!component_parts)
|
|
||||||
res_max_amount = 200000
|
|
||||||
for(var/obj/item/weapon/stock_parts/matter_bin/M in component_parts)
|
for(var/obj/item/weapon/stock_parts/matter_bin/M in component_parts)
|
||||||
res_max_amount += M.rating * 100000 // 200k -> 600k
|
res_max_amount += M.rating * 100000 // 200k -> 600k
|
||||||
var/T = 0
|
var/T = 0
|
||||||
if(!component_parts)
|
|
||||||
T = 1
|
|
||||||
for(var/obj/item/weapon/stock_parts/manipulator/M in component_parts)
|
for(var/obj/item/weapon/stock_parts/manipulator/M in component_parts)
|
||||||
T += M.rating
|
T += M.rating
|
||||||
mat_efficiency = 1 - (T - 1) / 4 // 1 -> 0.5
|
mat_efficiency = 1 - (T - 1) / 4 // 1 -> 0.5
|
||||||
if(!component_parts)
|
|
||||||
T = 2
|
|
||||||
for(var/obj/item/weapon/stock_parts/micro_laser/M in component_parts) // Not resetting T is intended; speed is affected by both
|
for(var/obj/item/weapon/stock_parts/micro_laser/M in component_parts) // Not resetting T is intended; speed is affected by both
|
||||||
T += M.rating
|
T += M.rating
|
||||||
speed = T / 2 // 1 -> 3
|
speed = T / 2 // 1 -> 3
|
||||||
|
|||||||
@@ -251,8 +251,7 @@
|
|||||||
harvest_speed = 0
|
harvest_speed = 0
|
||||||
capacity = 0
|
capacity = 0
|
||||||
charge_use = 50
|
charge_use = 50
|
||||||
if(!component_parts)
|
|
||||||
populate_components()
|
|
||||||
for(var/obj/item/weapon/stock_parts/P in component_parts)
|
for(var/obj/item/weapon/stock_parts/P in component_parts)
|
||||||
if(ismicrolaser(P))
|
if(ismicrolaser(P))
|
||||||
harvest_speed = P.rating
|
harvest_speed = P.rating
|
||||||
|
|||||||
@@ -318,10 +318,6 @@
|
|||||||
var/scan_rating = 0
|
var/scan_rating = 0
|
||||||
var/cap_rating = 0
|
var/cap_rating = 0
|
||||||
var/laser_rating = 0
|
var/laser_rating = 0
|
||||||
if(!component_parts)
|
|
||||||
scan_rating = 1
|
|
||||||
cap_rating = 2
|
|
||||||
laser_rating = 2
|
|
||||||
|
|
||||||
for(var/obj/item/weapon/stock_parts/P in component_parts)
|
for(var/obj/item/weapon/stock_parts/P in component_parts)
|
||||||
if(isscanner(P))
|
if(isscanner(P))
|
||||||
@@ -332,4 +328,3 @@
|
|||||||
laser_rating += P.rating
|
laser_rating += P.rating
|
||||||
|
|
||||||
sheets_per_tick += scan_rating + cap_rating + laser_rating
|
sheets_per_tick += scan_rating + cap_rating + laser_rating
|
||||||
|
|
||||||
|
|||||||
@@ -20,8 +20,7 @@
|
|||||||
/obj/machinery/power/smes/batteryrack/RefreshParts()
|
/obj/machinery/power/smes/batteryrack/RefreshParts()
|
||||||
capacitors_amount = 0
|
capacitors_amount = 0
|
||||||
cells_amount = 0
|
cells_amount = 0
|
||||||
if(!component_parts)
|
|
||||||
populate_components()
|
|
||||||
var/max_level = 0 //for both input and output
|
var/max_level = 0 //for both input and output
|
||||||
for(var/obj/item/weapon/stock_parts/capacitor/CP in component_parts)
|
for(var/obj/item/weapon/stock_parts/capacitor/CP in component_parts)
|
||||||
max_level += CP.rating
|
max_level += CP.rating
|
||||||
|
|||||||
@@ -130,9 +130,7 @@
|
|||||||
|
|
||||||
/obj/machinery/power/port_gen/pacman/RefreshParts()
|
/obj/machinery/power/port_gen/pacman/RefreshParts()
|
||||||
var/temp_rating = 0
|
var/temp_rating = 0
|
||||||
if(!component_parts)
|
|
||||||
max_sheets = 50
|
|
||||||
temp_rating = 2
|
|
||||||
for(var/obj/item/weapon/stock_parts/SP in component_parts)
|
for(var/obj/item/weapon/stock_parts/SP in component_parts)
|
||||||
if(istype(SP, /obj/item/weapon/stock_parts/matter_bin))
|
if(istype(SP, /obj/item/weapon/stock_parts/matter_bin))
|
||||||
max_sheets = SP.rating * SP.rating * 50
|
max_sheets = SP.rating * SP.rating * 50
|
||||||
|
|||||||
@@ -15,8 +15,7 @@
|
|||||||
|
|
||||||
/obj/machinery/power/tesla_coil/RefreshParts()
|
/obj/machinery/power/tesla_coil/RefreshParts()
|
||||||
var/power_multiplier = 0
|
var/power_multiplier = 0
|
||||||
if(!component_parts)
|
|
||||||
power_multiplier = 1
|
|
||||||
for(var/obj/item/weapon/stock_parts/capacitor/C in component_parts)
|
for(var/obj/item/weapon/stock_parts/capacitor/C in component_parts)
|
||||||
power_multiplier += C.rating
|
power_multiplier += C.rating
|
||||||
input_power_multiplier = power_multiplier
|
input_power_multiplier = power_multiplier
|
||||||
@@ -89,4 +88,4 @@
|
|||||||
name = "tesla coil circuitry"
|
name = "tesla coil circuitry"
|
||||||
desc = "The circuitboard for a tesla coil."
|
desc = "The circuitboard for a tesla coil."
|
||||||
origin_tech = list(TECH_MAGNET = 2, TECH_ENGINEERING = 2)
|
origin_tech = list(TECH_MAGNET = 2, TECH_ENGINEERING = 2)
|
||||||
req_components = list("/obj/item/weapon/stock_parts/capacitor" = 1)
|
req_components = list("/obj/item/weapon/stock_parts/capacitor" = 1)
|
||||||
|
|||||||
@@ -56,8 +56,6 @@ using metal and glass, it uses glass and reagents (usually sulphuric acid).
|
|||||||
|
|
||||||
/obj/machinery/r_n_d/circuit_imprinter/RefreshParts()
|
/obj/machinery/r_n_d/circuit_imprinter/RefreshParts()
|
||||||
// Adjust reagent container volume to match combined volume of the inserted beakers
|
// Adjust reagent container volume to match combined volume of the inserted beakers
|
||||||
if(!component_parts)
|
|
||||||
populate_components()
|
|
||||||
var/T = 0
|
var/T = 0
|
||||||
for(var/obj/item/weapon/reagent_containers/glass/G in component_parts)
|
for(var/obj/item/weapon/reagent_containers/glass/G in component_parts)
|
||||||
T += G.reagents.maximum_volume
|
T += G.reagents.maximum_volume
|
||||||
|
|||||||
@@ -25,8 +25,7 @@ Note: Must be placed within 3 tiles of the R&D Console
|
|||||||
|
|
||||||
/obj/machinery/r_n_d/destructive_analyzer/RefreshParts()
|
/obj/machinery/r_n_d/destructive_analyzer/RefreshParts()
|
||||||
var/T = 0
|
var/T = 0
|
||||||
if(!component_parts)
|
|
||||||
T = 3
|
|
||||||
for(var/obj/item/weapon/stock_parts/S in component_parts)
|
for(var/obj/item/weapon/stock_parts/S in component_parts)
|
||||||
T += S.rating
|
T += S.rating
|
||||||
decon_mod = T * 0.1
|
decon_mod = T * 0.1
|
||||||
|
|||||||
@@ -56,8 +56,6 @@
|
|||||||
return t
|
return t
|
||||||
|
|
||||||
/obj/machinery/r_n_d/protolathe/RefreshParts()
|
/obj/machinery/r_n_d/protolathe/RefreshParts()
|
||||||
if(!component_parts)
|
|
||||||
populate_components()
|
|
||||||
// Adjust reagent container volume to match combined volume of the inserted beakers
|
// Adjust reagent container volume to match combined volume of the inserted beakers
|
||||||
var/T = 0
|
var/T = 0
|
||||||
for(var/obj/item/weapon/reagent_containers/glass/G in component_parts)
|
for(var/obj/item/weapon/reagent_containers/glass/G in component_parts)
|
||||||
|
|||||||
@@ -11,11 +11,6 @@
|
|||||||
var/busy = 0
|
var/busy = 0
|
||||||
var/obj/machinery/computer/rdconsole/linked_console
|
var/obj/machinery/computer/rdconsole/linked_console
|
||||||
|
|
||||||
|
|
||||||
/obj/machinery/r_n_d/Initialize()
|
|
||||||
. = ..()
|
|
||||||
populate_components()
|
|
||||||
|
|
||||||
/obj/machinery/r_n_d/attack_hand(mob/user as mob)
|
/obj/machinery/r_n_d/attack_hand(mob/user as mob)
|
||||||
return
|
return
|
||||||
|
|
||||||
@@ -52,4 +47,4 @@
|
|||||||
if(/obj/item/stack/material/uranium)
|
if(/obj/item/stack/material/uranium)
|
||||||
return "uranium"
|
return "uranium"
|
||||||
if(/obj/item/stack/material/diamond)
|
if(/obj/item/stack/material/diamond)
|
||||||
return "diamond"
|
return "diamond"
|
||||||
|
|||||||
@@ -26,8 +26,7 @@
|
|||||||
|
|
||||||
/obj/machinery/r_n_d/server/RefreshParts()
|
/obj/machinery/r_n_d/server/RefreshParts()
|
||||||
var/tot_rating = 0
|
var/tot_rating = 0
|
||||||
if(!component_parts)
|
|
||||||
tot_rating = 2
|
|
||||||
for(var/obj/item/weapon/stock_parts/SP in component_parts)
|
for(var/obj/item/weapon/stock_parts/SP in component_parts)
|
||||||
tot_rating += SP.rating
|
tot_rating += SP.rating
|
||||||
idle_power_usage /= max(1, tot_rating)
|
idle_power_usage /= max(1, tot_rating)
|
||||||
|
|||||||
@@ -20,8 +20,6 @@
|
|||||||
|
|
||||||
/obj/machinery/telepad/RefreshParts()
|
/obj/machinery/telepad/RefreshParts()
|
||||||
var/E
|
var/E
|
||||||
if(!component_parts)
|
|
||||||
populate_components()
|
|
||||||
for(var/obj/item/weapon/stock_parts/capacitor/C in component_parts)
|
for(var/obj/item/weapon/stock_parts/capacitor/C in component_parts)
|
||||||
E += C.rating
|
E += C.rating
|
||||||
efficiency = E
|
efficiency = E
|
||||||
|
|||||||
Reference in New Issue
Block a user