Merge pull request #2365 from Crazylemon64/apc_autolathe

APC electronics refactor
This commit is contained in:
Fox McCloud
2015-10-15 16:03:08 -04:00
12 changed files with 40 additions and 55 deletions
+2 -2
View File
@@ -1096,7 +1096,7 @@
icon_state = "engivend"
icon_deny = "engivend-deny"
req_access_txt = "11" //Engineering Equipment access
products = list(/obj/item/clothing/glasses/meson = 2,/obj/item/device/multitool = 4,/obj/item/weapon/airlock_electronics = 10,/obj/item/weapon/module/power_control = 10,/obj/item/weapon/airalarm_electronics = 10,/obj/item/weapon/stock_parts/cell/high = 10)
products = list(/obj/item/clothing/glasses/meson = 2,/obj/item/device/multitool = 4,/obj/item/weapon/airlock_electronics = 10,/obj/item/weapon/apc_electronics = 10,/obj/item/weapon/airalarm_electronics = 10,/obj/item/weapon/stock_parts/cell/high = 10)
contraband = list(/obj/item/weapon/stock_parts/cell/potato = 3)
premium = list(/obj/item/weapon/storage/belt/utility = 3)
@@ -1284,4 +1284,4 @@
component_parts += V
component_parts += new /obj/item/weapon/vending_refill/crittercare(0)
component_parts += new /obj/item/weapon/vending_refill/crittercare(0)
component_parts += new /obj/item/weapon/vending_refill/crittercare(0)
component_parts += new /obj/item/weapon/vending_refill/crittercare(0)
-32
View File
@@ -1,32 +0,0 @@
/obj/item/weapon/module
icon = 'icons/obj/module.dmi'
icon_state = "std_module"
w_class = 2.0
item_state = "electronic"
flags = CONDUCT
var/mtype = 1 // 1=electronic 2=hardware
/obj/item/weapon/module/card_reader
name = "card reader module"
icon_state = "card_mod"
desc = "An electronic module for reading data and ID cards."
/obj/item/weapon/module/power_control
name = "power control module"
icon_state = "power_mod"
desc = "Heavy-duty switching circuits for power control."
/obj/item/weapon/module/id_auth
name = "\improper ID authentication module"
icon_state = "id_mod"
desc = "A module allowing secure authorization of ID cards."
/obj/item/weapon/module/cell_power
name = "power cell regulator module"
icon_state = "power_mod"
desc = "A converter and regulator allowing the use of power cells."
/obj/item/weapon/module/cell_power
name = "power cell charger module"
icon_state = "power_mod"
desc = "Charging circuits for power cells."
@@ -53,9 +53,9 @@
new /obj/item/weapon/storage/toolbox/electrical(src)
new /obj/item/weapon/storage/toolbox/electrical(src)
new /obj/item/weapon/storage/toolbox/electrical(src)
new /obj/item/weapon/module/power_control(src)
new /obj/item/weapon/module/power_control(src)
new /obj/item/weapon/module/power_control(src)
new /obj/item/weapon/apc_electronics(src)
new /obj/item/weapon/apc_electronics(src)
new /obj/item/weapon/apc_electronics(src)
new /obj/item/device/multitool(src)
new /obj/item/device/multitool(src)
new /obj/item/device/multitool(src)
@@ -149,4 +149,4 @@
new /obj/item/clothing/suit/fire/atmos(src)
new /obj/item/clothing/head/hardhat/atmos(src)
return
return
@@ -12,7 +12,8 @@
/obj/item/weapon/firealarm_electronics,
/obj/item/weapon/airalarm_electronics,
/obj/item/weapon/airlock_electronics,
/obj/item/weapon/module/power_control,
/obj/item/weapon/intercom_electronics,
/obj/item/weapon/apc_electronics,
/obj/item/weapon/stock_parts,
/obj/item/mounted/frame/light_fixture,
/obj/item/mounted/frame/apc_frame,
@@ -366,4 +367,4 @@
stack = stack_plastic
stack.amount++
decompiler.stored_comms[type]--;
decompiler.stored_comms[type]--;
+13 -4
View File
@@ -105,6 +105,15 @@
/obj/machinery/power/apc/noalarm
report_power_alarm = 0
/obj/item/weapon/apc_electronics
name = "power control module"
desc = "Heavy-duty switching circuits for power control."
icon = 'icons/obj/module.dmi'
icon_state = "power_mod"
w_class = 2.0
item_state = "electronic"
flags = CONDUCT
/obj/machinery/power/apc/connect_to_network()
//Override because the APC does not directly connect to the network; it goes through a terminal.
//The terminal is what the power computer looks for anyway.
@@ -421,7 +430,7 @@
user.visible_message(\
"<span class='warning'>[user.name] has removed the power control board from [src.name]!</span>",\
"<span class='notice'>You remove the power control board.</span>")
new /obj/item/weapon/module/power_control(loc)
new /obj/item/weapon/apc_electronics(loc)
else if (opened!=2) //cover isn't removed
opened = 0
update_icon()
@@ -532,7 +541,7 @@
new /obj/item/stack/cable_coil(loc,10)
user << "<span class='notice'>You cut the cables and dismantle the power terminal.</span>"
qdel(terminal) // qdel
else if (istype(W, /obj/item/weapon/module/power_control) && opened && has_electronics==0 && !((stat & BROKEN) || malfhack))
else if (istype(W, /obj/item/weapon/apc_electronics) && opened && has_electronics==0 && !((stat & BROKEN) || malfhack))
user << "You trying to insert the power control board into the frame..."
playsound(src.loc, 'sound/items/Deconstruct.ogg', 50, 1)
if(do_after(user, 10, target = src))
@@ -540,7 +549,7 @@
has_electronics = 1
user << "<span class='notice'>You place the power control board inside the frame.</span>"
qdel(W) // qdel
else if (istype(W, /obj/item/weapon/module/power_control) && opened && has_electronics==0 && ((stat & BROKEN) || malfhack))
else if (istype(W, /obj/item/weapon/apc_electronics) && opened && has_electronics==0 && ((stat & BROKEN) || malfhack))
user << "<span class='warning'>You cannot put the board inside, the frame is damaged.</span>"
return
else if (istype(W, /obj/item/weapon/weldingtool) && opened && has_electronics==0 && !terminal)
@@ -1357,4 +1366,4 @@
else
return 0
#undef APC_UPDATE_ICON_COOLDOWN
#undef APC_UPDATE_ICON_COOLDOWN
@@ -122,6 +122,14 @@
build_path = /obj/item/weapon/airlock_electronics
category = list("initial", "Electronics")
/datum/design/apc_electronics
name="Power Control Module"
id = "apc_electronics"
build_type = AUTOLATHE
materials = list(MAT_METAL = 50, MAT_GLASS = 50)
build_path = /obj/item/weapon/apc_electronics
category = list("initial", "Electronics")
/datum/design/intercom_electronics
name = "Intercom Electronics"
id = "intercom_electronics"