mirror of
https://github.com/CHOMPStation2/CHOMPStation2.git
synced 2026-08-25 22:28:44 +01:00
[MIRROR] SM, Tesla, and general engineering adjustments [MDB IGNORE] [IDB IGNORE] (#12603)
Co-authored-by: Cameron Lennox <killer65311@gmail.com>
This commit is contained in:
co-authored by
Cameron Lennox
parent
743a16c74d
commit
a62b9ed8fe
@@ -71,14 +71,14 @@
|
||||
sparks.set_up(3, 1, src)
|
||||
sparks.start()
|
||||
if(16 to 33)
|
||||
tesla_zap(src, 2, 1000, FALSE, FALSE)
|
||||
tesla_zap(src, 2, 1000, FALSE, FALSE, current_jumps = 1) //Can't chain jumps.
|
||||
if(34 to 65)
|
||||
tesla_zap(src, 3, 1000, FALSE, FALSE)
|
||||
tesla_zap(src, 3, 1000, FALSE, FALSE, current_jumps = 1)
|
||||
addtimer(CALLBACK(GLOBAL_PROC, GLOBAL_PROC_REF(tesla_zap), src, 3, 1500, FALSE, FALSE), 3 SECONDS)
|
||||
else
|
||||
tesla_zap(src, 4, 1000, FALSE, TRUE)
|
||||
tesla_zap(src, 4, 1000, FALSE, TRUE, current_jumps = 1)
|
||||
addtimer(CALLBACK(src, PROC_REF(highSevPulse)), 3 SECONDS)
|
||||
|
||||
/obj/effect/anomaly/flux/proc/highSevPulse()
|
||||
tesla_zap(src, 4, 1250, FALSE, FALSE)
|
||||
/obj/effect/anomaly/flux/proc/highSevPulse(power, explosive, current_jumps)
|
||||
tesla_zap(src, 4, 1250, FALSE, FALSE, current_jumps = 1)
|
||||
addtimer(CALLBACK(GLOBAL_PROC, GLOBAL_PROC_REF(tesla_zap), src, 4, 1500, FALSE, FALSE), 3 SECONDS)
|
||||
|
||||
@@ -31,15 +31,15 @@
|
||||
. += span_info("Alt-click it to clear stored radiation levels.")
|
||||
switch(last_perceived_radiation_danger)
|
||||
if(null)
|
||||
. += span_notice("Ambient radiation level count reports that all is well.")
|
||||
. += span_notice("Ambient radiation level count reports that all is well. It is ") + span_green("safe ") + span_notice("here.")
|
||||
if(PERCEIVED_RADIATION_DANGER_LOW)
|
||||
. += span_alert("Ambient radiation levels slightly above average.")
|
||||
. += span_notice("Ambient radiation levels slightly above average. It is ") + span_green("safe ") + span_notice("here.")
|
||||
if(PERCEIVED_RADIATION_DANGER_MEDIUM)
|
||||
. += span_warning("Ambient radiation levels above average.")
|
||||
. += span_notice("Ambient radiation levels above average. It is ") + span_green("safe ") + span_notice("here.")
|
||||
if(PERCEIVED_RADIATION_DANGER_HIGH)
|
||||
. += span_danger("Ambient radiation levels highly above average.")
|
||||
. += span_suicide("Ambient radiation levels highly above average. It is ") + span_warning("unsafe ") + span_suicide("here.")
|
||||
if(PERCEIVED_RADIATION_DANGER_EXTREME)
|
||||
. += span_suicide("Ambient radiation levels reaching critical level!")
|
||||
. += span_suicide("Ambient radiation levels reaching critical levels! It is ") + span_warning("extremely unsafe ") + span_suicide("here.")
|
||||
|
||||
/obj/item/geiger/update_icon()
|
||||
if(!scanning)
|
||||
|
||||
@@ -0,0 +1,5 @@
|
||||
/obj/item/circuitboard/account_console
|
||||
name = T_BOARD("account database console")
|
||||
build_path = /obj/machinery/account_database
|
||||
board_type = new /datum/frame/frame_types/computer
|
||||
req_one_access = list(ACCESS_HOP, ACCESS_CAPTAIN, ACCESS_CENT_CAPTAIN)
|
||||
@@ -16,3 +16,9 @@
|
||||
name = T_BOARD("telecommunications traffic control console")
|
||||
build_path = /obj/machinery/computer/telecomms/traffic
|
||||
origin_tech = list(TECH_DATA = 3)
|
||||
|
||||
/obj/item/circuitboard/message_server
|
||||
name = T_BOARD("message server")
|
||||
build_path = /obj/machinery/message_server
|
||||
origin_tech = list(TECH_DATA = 3)
|
||||
board_type = new /datum/frame/frame_types/machine
|
||||
|
||||
@@ -74,6 +74,11 @@
|
||||
build_path = /obj/machinery/button/windowtint
|
||||
board_type = new /datum/frame/frame_types/button
|
||||
|
||||
/obj/item/circuitboard/mass_driver_button
|
||||
name = T_BOARD("mass driver button")
|
||||
build_path = /obj/machinery/button/remote/driver
|
||||
board_type = new /datum/frame/frame_types/button
|
||||
|
||||
//Computer
|
||||
|
||||
/obj/item/circuitboard/holopad
|
||||
|
||||
@@ -36,3 +36,12 @@
|
||||
/obj/item/stock_parts/spring = 1,
|
||||
/obj/item/stock_parts/manipulator = 1,
|
||||
/obj/item/stack/cable_coil = 10)
|
||||
|
||||
/obj/item/circuitboard/hydromagnetic_trap
|
||||
name = T_BOARD("hydromagnetic trap")
|
||||
build_path = /obj/machinery/power/hydromagnetic_trap
|
||||
board_type = new /datum/frame/frame_types/machine
|
||||
req_components = list(
|
||||
/obj/item/stock_parts/spring = 1,
|
||||
/obj/item/stock_parts/motor = 2,
|
||||
/obj/item/stack/cable_coil = 10)
|
||||
|
||||
@@ -0,0 +1,78 @@
|
||||
#ifndef T_BOARD
|
||||
#error T_BOARD macro is not defined but we need it!
|
||||
#endif
|
||||
|
||||
/obj/item/circuitboard/smartfridge
|
||||
name = T_BOARD("smartfridge")
|
||||
build_path = /obj/machinery/smartfridge
|
||||
board_type = new /datum/frame/frame_types/machine
|
||||
hidden = TRUE
|
||||
req_components = list(
|
||||
/obj/item/stock_parts/motor = 1,
|
||||
/obj/item/stock_parts/gear = 2)
|
||||
|
||||
/obj/item/circuitboard/smartfridge/drying
|
||||
name = T_BOARD("smartfridge - drying rack")
|
||||
build_path = /obj/machinery/smartfridge/drying_rack
|
||||
hidden = FALSE
|
||||
|
||||
/obj/item/circuitboard/smartfridge/sheets
|
||||
name = T_BOARD("smartfridge - industrial sheet storage")
|
||||
build_path = /obj/machinery/smartfridge/sheets
|
||||
hidden = FALSE
|
||||
|
||||
/obj/item/circuitboard/smartfridge/sheets/mining
|
||||
name = T_BOARD("smartfridge - mining sheet storage")
|
||||
build_path = /obj/machinery/smartfridge/sheets/mining
|
||||
hidden = FALSE
|
||||
|
||||
/obj/item/circuitboard/smartfridge/medbay
|
||||
name = T_BOARD("smartfridge - refrigerated medicine storage")
|
||||
build_path = /obj/machinery/smartfridge/medbay
|
||||
hidden = FALSE
|
||||
|
||||
/obj/item/circuitboard/smartfridge/medbay/secure
|
||||
name = T_BOARD("smartfridge - secure refrigerated medicine storage")
|
||||
build_path = /obj/machinery/smartfridge/secure/medbay
|
||||
hidden = FALSE
|
||||
|
||||
/obj/item/circuitboard/smartfridge/science
|
||||
name = T_BOARD("smartfridge - biological sample storage")
|
||||
build_path = /obj/machinery/smartfridge/secure/extract
|
||||
hidden = FALSE
|
||||
|
||||
/obj/item/circuitboard/smartfridge/kitchen
|
||||
name = T_BOARD("smartfridge - food storage")
|
||||
build_path = /obj/machinery/smartfridge/chef
|
||||
hidden = FALSE
|
||||
|
||||
/obj/item/circuitboard/smartfridge/drinks
|
||||
name = T_BOARD("smartfridge - drink storage")
|
||||
build_path = /obj/machinery/smartfridge/drinks
|
||||
hidden = FALSE
|
||||
|
||||
/obj/item/circuitboard/smartfridge/drinks/showcase
|
||||
name = T_BOARD("smartfridge - drink showcase")
|
||||
build_path = /obj/machinery/smartfridge/drinks/showcase
|
||||
hidden = FALSE
|
||||
|
||||
/obj/item/circuitboard/smartfridge/produce
|
||||
name = T_BOARD("smartfridge - smart produce storage")
|
||||
build_path = /obj/machinery/smartfridge/produce
|
||||
hidden = FALSE
|
||||
|
||||
/obj/item/circuitboard/smartfridge/seeds
|
||||
name = T_BOARD("smartfridge - megaSeed servitor")
|
||||
build_path = /obj/machinery/smartfridge/seeds
|
||||
hidden = FALSE
|
||||
|
||||
//these 2 are weird af
|
||||
/obj/item/circuitboard/smartfridge/chemvator
|
||||
name = T_BOARD("smartfridge - smart chemavator - upper")
|
||||
build_path = /obj/machinery/smartfridge/chemistry/chemvator
|
||||
hidden = FALSE
|
||||
|
||||
/obj/item/circuitboard/smartfridge/chemvator/down
|
||||
name = T_BOARD("smartfridge - smart chemavator - lower")
|
||||
build_path = /obj/machinery/smartfridge/chemistry/chemvator/down
|
||||
hidden = FALSE
|
||||
@@ -13,7 +13,6 @@
|
||||
var/show_examine = TRUE // Does this pop up on a mob when the mob is examined?
|
||||
|
||||
var/redgate_allowed = TRUE //can we be taken through the redgate, in either direction?
|
||||
var/rad_resistance = 0 // Allow overriding rad resistance
|
||||
var/being_shocked = FALSE
|
||||
var/micro_accepted_scale = 0.5
|
||||
var/micro_target = FALSE
|
||||
|
||||
@@ -124,7 +124,7 @@
|
||||
if(Proj.get_structure_damage())
|
||||
adjust_health(-Proj.get_structure_damage(), TRUE)
|
||||
|
||||
/obj/structure/flora/tree/tesla_act(power, explosive)
|
||||
/obj/structure/flora/tree/tesla_act(power, explosive, current_jumps)
|
||||
adjust_health(-power / 100, TRUE) // Kills most trees in one lightning strike.
|
||||
..()
|
||||
|
||||
|
||||
+18
-8
@@ -1,6 +1,6 @@
|
||||
/obj/structure/reflector
|
||||
name = "reflector base"
|
||||
icon = 'icons/obj/tgs_structures_ch.dmi'
|
||||
icon = 'icons/obj/structures/tgs_structures.dmi'
|
||||
icon_state = "reflector_map"
|
||||
desc = "A base for reflector assemblies."
|
||||
anchored = FALSE
|
||||
@@ -114,22 +114,32 @@
|
||||
to_chat(user, span_warning("Unweld [src] from the floor first!"))
|
||||
return
|
||||
user.visible_message(span_notice("[user] starts to dismantle [src]."), span_notice("You start to dismantle [src]..."))
|
||||
to_chat(user, span_notice("You dismantle [src]."))
|
||||
new framebuildstacktype(drop_location(), framebuildstackamount)
|
||||
if(buildstackamount)
|
||||
new buildstacktype(drop_location(), buildstackamount)
|
||||
qdel(src)
|
||||
|
||||
if(do_after(user, 2 SECONDS, target = src))
|
||||
user.visible_message(span_notice("[user] dismantles [src]."), span_notice("You dismantle [src]..."))
|
||||
new framebuildstacktype(drop_location(), framebuildstackamount)
|
||||
if(buildstackamount)
|
||||
new buildstacktype(drop_location(), buildstackamount)
|
||||
qdel(src)
|
||||
else if(istype(W, /obj/item/weldingtool))
|
||||
var/obj/item/weldingtool/I = W
|
||||
if(!anchored)
|
||||
if(!I.remove_fuel(1,user))
|
||||
if(!I.get_fuel())
|
||||
to_chat(user, span_warning("You require fuel to weld the [src]!"))
|
||||
return
|
||||
|
||||
user.visible_message(span_notice("[user] starts to weld [src] to the floor."),
|
||||
span_notice("You start to weld [src] to the floor..."),
|
||||
span_hear("You hear welding."))
|
||||
|
||||
if(do_after(user, 2 SECONDS, target = src))
|
||||
if(!I.remove_fuel(1,user))
|
||||
to_chat(user, span_warning("You require fuel to weld the [src]!"))
|
||||
return
|
||||
anchored = TRUE
|
||||
to_chat(user, span_notice("You weld [src] to the floor."))
|
||||
user.visible_message(span_notice("[user] welds [src] to the floor."),
|
||||
span_notice("You weld [src] to the floor..."),
|
||||
span_hear("You hear welding."))
|
||||
else
|
||||
if(!I.remove_fuel(1,user))
|
||||
return
|
||||
Reference in New Issue
Block a user