Removes a great amount of machinery copypasta with circuitboards.

This commit is contained in:
CitadelStationBot
2017-08-09 19:24:19 -05:00
parent 014487c808
commit 4d19a89519
136 changed files with 1994 additions and 2196 deletions
+1 -2
View File
@@ -52,8 +52,7 @@
/obj/machinery/vr_sleeper/Destroy()
open_machine()
cleanup_vr_human()
qdel(sparks)
sparks = null
QDEL_NULL(sparks)
return ..()
@@ -9,9 +9,10 @@
max_integrity = 350
armor = list(melee = 0, bullet = 0, laser = 0, energy = 100, bomb = 0, bio = 100, rad = 100, fire = 30, acid = 30)
layer = ABOVE_WINDOW_LAYER
state_open = FALSE
circuit = /obj/item/weapon/circuitboard/machine/cryo_tube
var/on = FALSE
state_open = FALSE
var/autoeject = FALSE
var/volume = 100
@@ -35,8 +36,6 @@
/obj/machinery/atmospherics/components/unary/cryo_cell/Initialize()
. = ..()
initialize_directions = dir
var/obj/item/weapon/circuitboard/machine/cryo_tube/B = new
B.apply_default_parts(src)
radio = new(src)
radio.keyslot = new radio_key
@@ -44,16 +43,6 @@
radio.canhear_range = 0
radio.recalculateChannels()
/obj/item/weapon/circuitboard/machine/cryo_tube
name = "Cryotube (Machine Board)"
build_path = /obj/machinery/atmospherics/components/unary/cryo_cell
origin_tech = "programming=4;biotech=3;engineering=4;plasmatech=3"
req_components = list(
/obj/item/weapon/stock_parts/matter_bin = 1,
/obj/item/stack/cable_coil = 1,
/obj/item/weapon/stock_parts/console_screen = 1,
/obj/item/stack/sheet/glass = 2)
/obj/machinery/atmospherics/components/unary/cryo_cell/on_construction()
..(dir, dir)
@@ -69,11 +58,8 @@
conduction_coefficient = initial(conduction_coefficient) * C
/obj/machinery/atmospherics/components/unary/cryo_cell/Destroy()
qdel(radio)
radio = null
if(beaker)
qdel(beaker)
beaker = null
QDEL_NULL(radio)
QDEL_NULL(beaker)
return ..()
/obj/machinery/atmospherics/components/unary/cryo_cell/contents_explosion(severity, target)
@@ -10,6 +10,7 @@
max_integrity = 300
armor = list(melee = 0, bullet = 0, laser = 0, energy = 100, bomb = 0, bio = 100, rad = 100, fire = 80, acid = 30)
layer = OBJ_LAYER
circuit = /obj/item/weapon/circuitboard/machine/thermomachine
var/on = FALSE
var/min_temperature = 0
@@ -18,49 +19,9 @@
var/heat_capacity = 0
var/interactive = TRUE // So mapmakers can disable interaction.
/obj/machinery/atmospherics/components/unary/thermomachine/New()
..()
initialize_directions = dir
var/obj/item/weapon/circuitboard/machine/B = new /obj/item/weapon/circuitboard/machine/thermomachine(null)
B.apply_default_parts(src)
/obj/item/weapon/circuitboard/machine/thermomachine
name = "Thermomachine (Machine Board)"
desc = "You can use a screwdriver to switch between heater and freezer."
origin_tech = "programming=3;plasmatech=3"
req_components = list(
/obj/item/weapon/stock_parts/matter_bin = 2,
/obj/item/weapon/stock_parts/micro_laser = 2,
/obj/item/stack/cable_coil = 1,
/obj/item/weapon/stock_parts/console_screen = 1)
/obj/item/weapon/circuitboard/machine/thermomachine/Initialize()
/obj/machinery/atmospherics/components/unary/thermomachine/Initialize()
. = ..()
if(prob(50))
name = "Freezer (Machine Board)"
build_path = /obj/machinery/atmospherics/components/unary/thermomachine/freezer
else
name = "Heater (Machine Board)"
build_path = /obj/machinery/atmospherics/components/unary/thermomachine/heater
/obj/item/weapon/circuitboard/machine/thermomachine/attackby(obj/item/I, mob/user, params)
var/obj/item/weapon/circuitboard/machine/freezer = /obj/item/weapon/circuitboard/machine/thermomachine/freezer
var/obj/item/weapon/circuitboard/machine/heater = /obj/item/weapon/circuitboard/machine/thermomachine/heater
var/obj/item/weapon/circuitboard/machine/newtype
if(istype(I, /obj/item/weapon/screwdriver))
var/new_setting = "Heater"
playsound(src.loc, I.usesound, 50, 1)
if(build_path == initial(heater.build_path))
newtype = freezer
new_setting = "Freezer"
else
newtype = heater
name = initial(newtype.name)
build_path = initial(newtype.build_path)
to_chat(user, "<span class='notice'>You change the circuitboard setting to \"[new_setting]\".</span>")
else
return ..()
initialize_directions = dir
/obj/machinery/atmospherics/components/unary/thermomachine/on_construction()
..(dir,dir)
@@ -202,15 +163,7 @@
icon_state_open = "freezer-o"
max_temperature = T20C
min_temperature = 170
/obj/machinery/atmospherics/components/unary/thermomachine/freezer/New()
..()
var/obj/item/weapon/circuitboard/machine/B = new /obj/item/weapon/circuitboard/machine/thermomachine/freezer(null)
B.apply_default_parts(src)
/obj/item/weapon/circuitboard/machine/thermomachine/freezer
name = "Freezer (Machine Board)"
build_path = /obj/machinery/atmospherics/components/unary/thermomachine/freezer
circuit = /obj/item/weapon/circuitboard/machine/thermomachine/freezer
/obj/machinery/atmospherics/components/unary/thermomachine/freezer/RefreshParts()
..()
@@ -227,15 +180,7 @@
icon_state_open = "heater-o"
max_temperature = 140
min_temperature = T20C
/obj/machinery/atmospherics/components/unary/thermomachine/heater/New()
..()
var/obj/item/weapon/circuitboard/machine/B = new /obj/item/weapon/circuitboard/machine/thermomachine/heater(null)
B.apply_default_parts(src)
/obj/item/weapon/circuitboard/machine/thermomachine/heater
name = "Heater (Machine Board)"
build_path = /obj/machinery/atmospherics/components/unary/thermomachine/heater
circuit = /obj/item/weapon/circuitboard/machine/thermomachine/heater
/obj/machinery/atmospherics/components/unary/thermomachine/heater/RefreshParts()
..()
@@ -16,7 +16,7 @@
volume = 1000
/obj/machinery/portable_atmospherics/pump/Initialize()
..()
. = ..()
pump = new(src, FALSE)
pump.on = TRUE
pump.stat = 0
@@ -26,8 +26,7 @@
var/turf/T = get_turf(src)
T.assume_air(air_contents)
air_update_turf()
qdel(pump)
pump = null
QDEL_NULL(pump)
return ..()
/obj/machinery/portable_atmospherics/pump/update_icon()
@@ -29,13 +29,11 @@
var/reset_path = /obj/effect/ctf/flag_reset
/obj/item/weapon/twohanded/ctf/Destroy()
if(reset)
qdel(reset)
reset = null
. = ..()
QDEL_NULL(reset)
return ..()
/obj/item/weapon/twohanded/ctf/Initialize()
..()
. = ..()
SET_SECONDARY_FLAG(src, SLOWS_WHILE_IN_HAND)
if(!reset)
reset = new reset_path(get_turf(src))
+7 -10
View File
@@ -22,7 +22,7 @@ GLOBAL_DATUM(the_gateway, /obj/machinery/gateway/centerstation)
switch(dir)
if(SOUTH,SOUTHEAST,SOUTHWEST)
density = FALSE
..()
return ..()
/obj/machinery/gateway/proc/toggleoff()
for(var/obj/machinery/gateway/G in linked)
@@ -75,10 +75,13 @@ GLOBAL_DATUM(the_gateway, /obj/machinery/gateway/centerstation)
/obj/machinery/gateway/proc/toggleon(mob/user)
return FALSE
/obj/machinery/gateway/centerstation/New()
..()
/obj/machinery/gateway/centerstation/Initialize()
. = ..()
if(!GLOB.the_gateway)
GLOB.the_gateway = src
update_icon()
wait = world.time + config.gateway_delay //+ thirty minutes default
awaygate = locate(/obj/machinery/gateway/centeraway)
/obj/machinery/gateway/centerstation/Destroy()
if(GLOB.the_gateway == src)
@@ -96,12 +99,6 @@ GLOBAL_DATUM(the_gateway, /obj/machinery/gateway/centerstation)
var/obj/machinery/gateway/centeraway/awaygate = null
can_link = TRUE
/obj/machinery/gateway/centerstation/Initialize()
..()
update_icon()
wait = world.time + config.gateway_delay //+ thirty minutes default
awaygate = locate(/obj/machinery/gateway/centeraway)
/obj/machinery/gateway/centerstation/update_icon()
if(active)
icon_state = "oncenter"
@@ -182,7 +179,7 @@ GLOBAL_DATUM(the_gateway, /obj/machinery/gateway/centerstation)
/obj/machinery/gateway/centeraway/Initialize()
..()
. = ..()
update_icon()
stationgate = locate(/obj/machinery/gateway/centerstation)
+2 -2
View File
@@ -18,8 +18,8 @@
circuit = /obj/item/weapon/circuitboard/computer/cargo/request
requestonly = TRUE
/obj/machinery/computer/cargo/New()
..()
/obj/machinery/computer/cargo/Initialize()
. = ..()
var/obj/item/weapon/circuitboard/computer/cargo/board = circuit
contraband = board.contraband
emagged = board.emagged
+1 -3
View File
@@ -1778,9 +1778,7 @@
name = "Shield System Control Board"
cost = 5000
special = TRUE
contains = list(
/obj/item/weapon/circuitboard/machine/computer/sat_control
)
contains = list(/obj/item/weapon/circuitboard/computer/sat_control)
crate_name= "shield control board crate"
/datum/supply_pack/misc/bicycle
@@ -18,7 +18,7 @@ insert ascii eagle on american flag background here
container_type = OPENCONTAINER
var/obj/item/frying = null //What's being fried RIGHT NOW?
var/cook_time = 0
var/static/list/blacklisted_items = typecacheof(list(
var/static/list/deepfry_blacklisted_items = typecacheof(list(
/obj/item/weapon/screwdriver,
/obj/item/weapon/crowbar,
/obj/item/weapon/wrench,
@@ -28,14 +28,8 @@ insert ascii eagle on american flag background here
/obj/item/weapon/reagent_containers/glass,
/obj/item/weapon/storage/part_replacer))
/obj/item/weapon/circuitboard/machine/deep_fryer
name = "circuit board (Deep Fryer)"
build_path = /obj/machinery/deepfryer
origin_tech = "programming=1"
req_components = list(/obj/item/weapon/stock_parts/micro_laser = 1)
/obj/machinery/deepfryer/New()
..()
/obj/machinery/deepfryer/Initialize()
. = ..()
create_reagents(50)
reagents.add_reagent("nutriment", 25)
component_parts = list()
@@ -62,7 +56,7 @@ insert ascii eagle on american flag background here
else if(default_deconstruction_screwdriver(user, "fryer_off", "fryer_off" ,I)) //where's the open maint panel icon?!
return
else
if(is_type_in_typecache(I, blacklisted_items))
if(is_type_in_typecache(I, deepfry_blacklisted_items))
. = ..()
else if(user.drop_item() && !frying)
to_chat(user, "<span class='notice'>You put [I] into [src].</span>")
@@ -18,17 +18,15 @@
container_type = OPENCONTAINER
var/obj/item/weapon/reagent_containers/mixer
/obj/machinery/food_cart/New()
..()
/obj/machinery/food_cart/Initialize()
. = ..()
create_reagents(LIQUID_CAPACIY)
reagents.set_reacting(FALSE)
mixer = new /obj/item/weapon/reagent_containers(src, MIXER_CAPACITY)
mixer.name = "Mixer"
/obj/machinery/food_cart/Destroy()
if(mixer)
qdel(mixer)
mixer = null
QDEL_NULL(mixer)
return ..()
/obj/machinery/food_cart/attack_hand(mob/user)
@@ -6,58 +6,21 @@
icon_state = "grinder"
density = TRUE
anchored = TRUE
use_power = IDLE_POWER_USE
idle_power_usage = 2
active_power_usage = 500
circuit = /obj/item/weapon/circuitboard/machine/gibber
var/operating = FALSE //Is it on?
var/dirty = 0 // Does it need cleaning?
var/gibtime = 40 // Time from starting until meat appears
var/meat_produced = 0
var/ignore_clothing = 0
use_power = IDLE_POWER_USE
idle_power_usage = 2
active_power_usage = 500
//auto-gibs anything that bumps into it
/obj/machinery/gibber/autogibber
var/turf/input_plate
/obj/machinery/gibber/autogibber/Initialize()
. = ..()
for(var/i in GLOB.cardinals)
var/obj/machinery/mineral/input/input_obj = locate() in get_step(loc, i)
if(input_obj)
if(isturf(input_obj.loc))
input_plate = input_obj.loc
qdel(input_obj)
break
if(!input_plate)
CRASH("Didn't find an input plate.")
return
/obj/machinery/gibber/autogibber/CollidedWith(atom/movable/AM)
if(!input_plate)
return
if(ismob(AM))
var/mob/M = AM
if(M.loc == input_plate)
M.loc = src
M.gib()
/obj/machinery/gibber/Initialize()
. = ..()
add_overlay("grjam")
var/obj/item/weapon/circuitboard/machine/gibber/B = new
B.apply_default_parts(src)
/obj/item/weapon/circuitboard/machine/gibber
name = "Gibber (Machine Board)"
build_path = /obj/machinery/gibber
origin_tech = "programming=2;engineering=2"
req_components = list(
/obj/item/weapon/stock_parts/matter_bin = 1,
/obj/item/weapon/stock_parts/manipulator = 1)
/obj/machinery/gibber/RefreshParts()
var/gib_time = 40
@@ -234,3 +197,32 @@
pixel_x = initial(pixel_x) //return to its spot after shaking
operating = FALSE
update_icon()
//auto-gibs anything that bumps into it
/obj/machinery/gibber/autogibber
var/turf/input_plate
/obj/machinery/gibber/autogibber/Initialize()
. = ..()
for(var/i in GLOB.cardinals)
var/obj/machinery/mineral/input/input_obj = locate() in get_step(loc, i)
if(input_obj)
if(isturf(input_obj.loc))
input_plate = input_obj.loc
qdel(input_obj)
break
if(!input_plate)
CRASH("Didn't find an input plate.")
return
/obj/machinery/gibber/autogibber/CollidedWith(atom/movable/AM)
if(!input_plate)
return
if(ismob(AM))
var/mob/M = AM
if(M.loc == input_plate)
M.forceMove(src)
M.gib()
@@ -14,11 +14,19 @@
anchored = FALSE
use_power = NO_POWER_USE
layer = BELOW_OBJ_LAYER
container_type = OPENCONTAINER
max_integrity = 300
var/list/product_types = list()
var/dispense_flavour = ICECREAM_VANILLA
var/flavour_name = "vanilla"
container_type = OPENCONTAINER
max_integrity = 300
var/static/list/icecream_vat_reagents = list(
"milk" = 5,
"flour" = 5,
"sugar" = 5,
"ice" = 5,
"cocoa" = 5,
"berryjuice" = 5,
"singulo" = 5)
/obj/machinery/icecream_vat/proc/get_ingredient_list(type)
switch(type)
@@ -52,19 +60,14 @@
return "vanilla"
/obj/machinery/icecream_vat/New()
..()
/obj/machinery/icecream_vat/Initialize()
. = ..()
while(product_types.len < 6)
product_types.Add(5)
create_reagents()
reagents.set_reacting(FALSE)
reagents.add_reagent("milk", 5)
reagents.add_reagent("flour", 5)
reagents.add_reagent("sugar", 5)
reagents.add_reagent("ice", 5)
reagents.add_reagent("cocoa", 5)
reagents.add_reagent("berryjuice", 5)
reagents.add_reagent("singulo", 5)
for(var/reagent in icecream_vat_reagents)
reagents.add_reagent(reagent, icecream_vat_reagents[reagent])
/obj/machinery/icecream_vat/attack_hand(mob/user)
user.set_machine(src)
@@ -9,6 +9,7 @@
use_power = IDLE_POWER_USE
idle_power_usage = 5
active_power_usage = 100
circuit = /obj/item/weapon/circuitboard/machine/microwave
var/operating = FALSE // Is it on?
var/dirty = 0 // = {0..100} Does it need cleaning?
var/broken = 0 // ={0,1,2} How broken is it???
@@ -21,22 +22,9 @@
* Initialising
********************/
/obj/machinery/microwave/New()
/obj/machinery/microwave/Initialize()
. = ..()
create_reagents(100)
var/obj/item/weapon/circuitboard/machine/B = new /obj/item/weapon/circuitboard/machine/microwave(null)
B.apply_default_parts(src)
..()
/obj/item/weapon/circuitboard/machine/microwave
name = "Microwave (Machine Board)"
build_path = /obj/machinery/microwave
origin_tech = "programming=2;magnets=2"
req_components = list(
/obj/item/weapon/stock_parts/micro_laser = 1,
/obj/item/weapon/stock_parts/matter_bin = 1,
/obj/item/stack/cable_coil = 2,
/obj/item/weapon/stock_parts/console_screen = 1,
/obj/item/stack/sheet/glass = 1)
/obj/machinery/microwave/RefreshParts()
var/E
@@ -9,24 +9,11 @@
use_power = IDLE_POWER_USE
idle_power_usage = 5
active_power_usage = 50
circuit = /obj/item/weapon/circuitboard/machine/monkey_recycler
var/grinded = 0
var/required_grind = 5
var/cube_production = 1
/obj/machinery/monkey_recycler/New()
..()
var/obj/item/weapon/circuitboard/machine/B = new /obj/item/weapon/circuitboard/machine/monkey_recycler(null)
B.apply_default_parts(src)
/obj/item/weapon/circuitboard/machine/monkey_recycler
name = "Monkey Recycler (Machine Board)"
build_path = /obj/machinery/monkey_recycler
origin_tech = "programming=1;biotech=2"
req_components = list(
/obj/item/weapon/stock_parts/matter_bin = 1,
/obj/item/weapon/stock_parts/manipulator = 1)
/obj/machinery/monkey_recycler/RefreshParts()
var/req_grind = 5
var/cubes_made = 1
@@ -7,44 +7,15 @@
layer = BELOW_OBJ_LAYER
density = TRUE
anchored = TRUE
var/broken = 0
var/processing = FALSE
use_power = IDLE_POWER_USE
idle_power_usage = 5
active_power_usage = 50
circuit = /obj/item/weapon/circuitboard/machine/processor
var/broken = FALSE
var/processing = FALSE
var/rating_speed = 1
var/rating_amount = 1
/obj/machinery/processor/New()
..()
var/obj/item/weapon/circuitboard/machine/B = new /obj/item/weapon/circuitboard/machine/processor(null)
B.apply_default_parts(src)
/obj/item/weapon/circuitboard/machine/processor
name = "Food Processor (Machine Board)"
build_path = /obj/machinery/processor
origin_tech = "programming=1"
req_components = list(
/obj/item/weapon/stock_parts/matter_bin = 1,
/obj/item/weapon/stock_parts/manipulator = 1)
/obj/item/weapon/circuitboard/machine/processor
name = "Food Processor (Machine Board)"
build_path = /obj/machinery/processor
/obj/item/weapon/circuitboard/machine/processor/attackby(obj/item/I, mob/user, params)
if(istype(I, /obj/item/weapon/screwdriver))
if(build_path == /obj/machinery/processor)
name = "Slime Processor (Machine Board)"
build_path = /obj/machinery/processor/slime
to_chat(user, "<span class='notice'>Name protocols successfully updated.</span>")
else
name = "Food Processor (Machine Board)"
build_path = /obj/machinery/processor
to_chat(user, "<span class='notice'>Defaulting name protocols.</span>")
else
return ..()
/obj/machinery/processor/RefreshParts()
for(var/obj/item/weapon/stock_parts/matter_bin/B in component_parts)
rating_amount = B.rating
@@ -300,11 +271,7 @@
name = "Slime processor"
desc = "An industrial grinder with a sticker saying appropriated for science department. Keep hands clear of intake area while operating."
/obj/machinery/processor/slime/New()
..()
/obj/machinery/processor/slime/Initialize()
. = ..()
var/obj/item/weapon/circuitboard/machine/B = new /obj/item/weapon/circuitboard/machine/processor/slime(null)
B.apply_default_parts(src)
/obj/item/weapon/circuitboard/machine/processor/slime
name = "Slime Processor (Machine Board)"
build_path = /obj/machinery/processor/slime
B.apply_default_parts(src)
@@ -12,13 +12,14 @@
use_power = IDLE_POWER_USE
idle_power_usage = 5
active_power_usage = 100
circuit = /obj/item/weapon/circuitboard/machine/smartfridge
var/max_n_of_items = 1500
var/icon_on = "smartfridge"
var/icon_off = "smartfridge-off"
var/list/initial_contents
/obj/machinery/smartfridge/Initialize()
..()
. = ..()
create_reagents()
reagents.set_reacting(FALSE)
@@ -30,40 +31,6 @@
for(var/i in 1 to amount)
load(new typekey(src))
var/obj/item/weapon/circuitboard/machine/B = new /obj/item/weapon/circuitboard/machine/smartfridge(null)
B.apply_default_parts(src)
/obj/item/weapon/circuitboard/machine/smartfridge
name = "Smartfridge (Machine Board)"
build_path = /obj/machinery/smartfridge
origin_tech = "programming=1"
req_components = list(/obj/item/weapon/stock_parts/matter_bin = 1)
var/static/list/fridges = list(/obj/machinery/smartfridge = "plant produce",
/obj/machinery/smartfridge/food = "food",
/obj/machinery/smartfridge/drinks = "drinks",
/obj/machinery/smartfridge/extract = "slimes",
/obj/machinery/smartfridge/chemistry = "chems",
/obj/machinery/smartfridge/chemistry/virology = "viruses",
/obj/machinery/smartfridge/disks = "disks")
/obj/item/weapon/circuitboard/machine/smartfridge/New(loc, new_type)
if(new_type)
build_path = new_type
..()
/obj/item/weapon/circuitboard/machine/smartfridge/attackby(obj/item/I, mob/user, params)
if(istype(I, /obj/item/weapon/screwdriver))
var/position = fridges.Find(build_path, fridges)
position = (position == fridges.len) ? 1 : (position + 1)
build_path = fridges[position]
to_chat(user, "<span class='notice'>You set the board to [fridges[build_path]].</span>")
else
return ..()
/obj/item/weapon/circuitboard/machine/smartfridge/examine(mob/user)
..()
to_chat(user, "<span class='info'>[src] is set to [fridges[build_path]]. You can use a screwdriver to reconfigure it.</span>")
/obj/machinery/smartfridge/RefreshParts()
for(var/obj/item/weapon/stock_parts/matter_bin/B in component_parts)
max_n_of_items = 1500 * B.rating
@@ -255,8 +222,8 @@
icon_off = "drying_rack"
var/drying = FALSE
/obj/machinery/smartfridge/drying_rack/New()
..()
/obj/machinery/smartfridge/drying_rack/Initialize()
. = ..()
if(component_parts && component_parts.len)
component_parts.Cut()
component_parts = null
+4 -17
View File
@@ -7,6 +7,7 @@
anchored = TRUE
use_power = IDLE_POWER_USE
idle_power_usage = 40
circuit = /obj/item/weapon/circuitboard/machine/biogenerator
var/processing = FALSE
var/obj/item/weapon/reagent_containers/glass/beaker = null
var/points = 0
@@ -18,17 +19,13 @@
var/list/show_categories = list("Food", "Botany Chemicals", "Leather and Cloth")
var/list/timesFiveCategories = list("Food", "Botany Chemicals")
/obj/machinery/biogenerator/New()
..()
/obj/machinery/biogenerator/Initialize()
. = ..()
files = new /datum/research/biogenerator(src)
create_reagents(1000)
var/obj/item/weapon/circuitboard/machine/B = new /obj/item/weapon/circuitboard/machine/biogenerator(null)
B.apply_default_parts(src)
/obj/machinery/biogenerator/Destroy()
if(beaker)
qdel(beaker)
beaker = null
QDEL_NULL(beaker)
return ..()
/obj/machinery/biogenerator/contents_explosion(severity, target)
@@ -43,16 +40,6 @@
update_icon()
updateUsrDialog()
/obj/item/weapon/circuitboard/machine/biogenerator
name = "Biogenerator (Machine Board)"
build_path = /obj/machinery/biogenerator
origin_tech = "programming=2;biotech=3;materials=3"
req_components = list(
/obj/item/weapon/stock_parts/matter_bin = 1,
/obj/item/weapon/stock_parts/manipulator = 1,
/obj/item/stack/cable_coil = 1,
/obj/item/weapon/stock_parts/console_screen = 1)
/obj/machinery/biogenerator/RefreshParts()
var/E = 0
var/P = 0
+3 -31
View File
@@ -5,6 +5,7 @@
icon_state = "dnamod"
density = TRUE
anchored = TRUE
circuit = /obj/item/weapon/circuitboard/machine/plantgenes
var/obj/item/seeds/seed
var/obj/item/weapon/disk/plantgene/disk
@@ -22,21 +23,6 @@
var/min_wchance = 67
var/min_wrate = 10
/obj/machinery/plantgenes/New()
..()
var/obj/item/weapon/circuitboard/machine/B = new /obj/item/weapon/circuitboard/machine/plantgenes(null)
B.apply_default_parts(src)
/obj/item/weapon/circuitboard/machine/plantgenes
name = "Plant DNA Manipulator (Machine Board)"
build_path = /obj/machinery/plantgenes
origin_tech = "programming=3;biotech=3"
req_components = list(
/obj/item/weapon/stock_parts/manipulator = 1,
/obj/item/weapon/stock_parts/micro_laser = 1,
/obj/item/weapon/stock_parts/console_screen = 1,
/obj/item/weapon/stock_parts/scanning_module = 1)
/obj/machinery/plantgenes/RefreshParts() // Comments represent the max you can set per tier, respectively. seeds.dm [219] clamps these for us but we don't want to mislead the viewer.
for(var/obj/item/weapon/stock_parts/manipulator/M in component_parts)
if(M.rating > 3)
@@ -421,23 +407,9 @@
seed.name = "experimental " + seed.name
seed.icon_state = "seed-x"
// Gene modder for seed vault ship, built with high tech alien parts.
/obj/machinery/plantgenes/seedvault/New()
..()
var/obj/item/weapon/circuitboard/machine/B = new /obj/item/weapon/circuitboard/machine/plantgenes/vault(null)
B.apply_default_parts(src)
/obj/item/weapon/circuitboard/machine/plantgenes/vault
name = "alien board (Plant DNA Manipulator)"
icon_state = "abductor_mod"
origin_tech = "programming=5;biotech=5"
// It wasn't made by actual abductors race, so no abductor tech here.
def_components = list(
/obj/item/weapon/stock_parts/manipulator = /obj/item/weapon/stock_parts/manipulator/femto,
/obj/item/weapon/stock_parts/micro_laser = /obj/item/weapon/stock_parts/micro_laser/quadultra,
/obj/item/weapon/stock_parts/scanning_module = /obj/item/weapon/stock_parts/scanning_module/triphasic)
/obj/machinery/plantgenes/seedvault
circuit = /obj/item/weapon/circuitboard/machine/plantgenes/vault
/*
* Plant DNA disk
+1 -14
View File
@@ -6,6 +6,7 @@
anchored = TRUE
pixel_y = 8
unique_rename = 1
circuit = /obj/item/weapon/circuitboard/machine/hydroponics
var/waterlevel = 100 //The amount of water in the tray (max 100)
var/maxwater = 100 //The maximum amount of water in the tray
var/nutrilevel = 10 //The amount of nutrient in the tray (max 10)
@@ -37,20 +38,6 @@
icon = 'icons/obj/hydroponics/equipment.dmi'
icon_state = "hydrotray3"
/obj/machinery/hydroponics/constructable/New()
..()
var/obj/item/weapon/circuitboard/machine/B = new /obj/item/weapon/circuitboard/machine/hydroponics(null)
B.apply_default_parts(src)
/obj/item/weapon/circuitboard/machine/hydroponics
name = "Hydroponics Tray (Machine Board)"
build_path = /obj/machinery/hydroponics/constructable
origin_tech = "programming=1;biotech=2"
req_components = list(
/obj/item/weapon/stock_parts/matter_bin = 2,
/obj/item/weapon/stock_parts/manipulator = 1,
/obj/item/weapon/stock_parts/console_screen = 1)
/obj/machinery/hydroponics/constructable/RefreshParts()
var/tmp_capacity = 0
for (var/obj/item/weapon/stock_parts/matter_bin/M in component_parts)
+1 -13
View File
@@ -44,23 +44,11 @@
icon_state = "sextractor"
density = TRUE
anchored = TRUE
circuit = /obj/item/weapon/circuitboard/machine/seed_extractor
var/piles = list()
var/max_seeds = 1000
var/seed_multiplier = 1
/obj/machinery/seed_extractor/New()
..()
var/obj/item/weapon/circuitboard/machine/B = new /obj/item/weapon/circuitboard/machine/seed_extractor(null)
B.apply_default_parts(src)
/obj/item/weapon/circuitboard/machine/seed_extractor
name = "Seed Extractor (Machine Board)"
build_path = /obj/machinery/seed_extractor
origin_tech = "programming=1"
req_components = list(
/obj/item/weapon/stock_parts/matter_bin = 1,
/obj/item/weapon/stock_parts/manipulator = 1)
/obj/machinery/seed_extractor/RefreshParts()
for(var/obj/item/weapon/stock_parts/matter_bin/B in component_parts)
max_seeds = 1000 * B.rating
+2 -2
View File
@@ -193,8 +193,8 @@ GLOBAL_LIST(cachedbooks) // List of our cached book datums
libcomp_menu[page] = ""
libcomp_menu[page] += "<tr><td>[C.author]</td><td>[C.title]</td><td>[C.category]</td><td><A href='?src=\ref[src];targetid=[C.id]'>\[Order\]</A></td></tr>\n"
/obj/machinery/computer/libraryconsole/bookmanagement/New()
..()
/obj/machinery/computer/libraryconsole/bookmanagement/Initialize()
. = ..()
if(circuit)
circuit.name = "Book Inventory Management Console (Machine Board)"
circuit.build_path = /obj/machinery/computer/libraryconsole/bookmanagement
+3 -4
View File
@@ -26,10 +26,9 @@ interface with the mining shuttle at the landing site if a mobile beacon is also
var/obj/item/device/gps/internal/base/locator
circuit = /obj/item/weapon/circuitboard/computer/auxillary_base
/obj/machinery/computer/auxillary_base/New(location, obj/item/weapon/circuitboard/computer/shuttle/C)
..()
locator = new /obj/item/device/gps/internal/base(src)
/obj/machinery/computer/auxillary_base/Initialize()
. = ..()
locator = new(src)
/obj/machinery/computer/auxillary_base/attack_hand(mob/user)
if(..(user))
+3 -3
View File
@@ -49,9 +49,9 @@
light_color = LIGHT_COLOR_PINK
/obj/machinery/computer/camera_advanced/base_construction/New()
..()
RCD = new /obj/item/weapon/construction/rcd/internal(src)
/obj/machinery/computer/camera_advanced/base_construction/Initialize()
. = ..()
RCD = new(src)
/obj/machinery/computer/camera_advanced/base_construction/Initialize(mapload)
..()
+10 -11
View File
@@ -199,18 +199,9 @@
max_n_of_items = 10
pixel_y = -4
flags = NODECONSTRUCT
var/empty = FALSE
/obj/machinery/smartfridge/survival_pod/empty
name = "dusty survival pod storage"
desc = "A heated storage unit. This one's seen better days."
/obj/machinery/smartfridge/survival_pod/empty/Initialize(mapload)
..(mapload, TRUE)
/obj/machinery/smartfridge/survival_pod/accept_check(obj/item/O)
return isitem(O)
/obj/machinery/smartfridge/survival_pod/Initialize(mapload, empty)
/obj/machinery/smartfridge/survival_pod/Initialize(mapload)
. = ..()
if(empty)
return
@@ -224,6 +215,14 @@
var/obj/item/device/instrument/guitar/G = new(src)
load(G)
/obj/machinery/smartfridge/survival_pod/accept_check(obj/item/O)
return isitem(O)
/obj/machinery/smartfridge/survival_pod/empty
name = "dusty survival pod storage"
desc = "A heated storage unit. This one's seen better days."
empty = TRUE
//Fans
/obj/structure/fans
icon = 'icons/obj/lavaland/survival_pod.dmi'
@@ -15,11 +15,11 @@
var/obj/item/device/radio/Radio //needed to send messages to sec radio
/obj/machinery/mineral/labor_claim_console/New()
..()
/obj/machinery/mineral/labor_claim_console/Initialize()
. = ..()
Radio = new/obj/item/device/radio(src)
Radio.listening = 0
addtimer(CALLBACK(src, .proc/locate_stacking_machine), 7)
Radio.listening = FALSE
locate_stacking_machine()
/obj/machinery/mineral/labor_claim_console/attackby(obj/item/I, mob/user, params)
if(istype(I, /obj/item/weapon/card/id/prisoner))
@@ -7,7 +7,8 @@
density = FALSE
anchored = TRUE
/obj/machinery/mineral/input/New()
/obj/machinery/mineral/input/Initialize()
. = ..()
icon_state = "blank"
/obj/machinery/mineral/output
@@ -17,7 +18,8 @@
density = FALSE
anchored = TRUE
/obj/machinery/mineral/output/New()
/obj/machinery/mineral/output/Initialize()
. = ..()
icon_state = "blank"
/obj/machinery/mineral
+2 -14
View File
@@ -11,6 +11,8 @@
input_dir = NORTH
output_dir = SOUTH
req_access = list(ACCESS_MINERAL_STOREROOM)
speed_process = 1
circuit = /obj/item/weapon/circuitboard/machine/ore_redemption
var/req_access_reclaim = ACCESS_MINING_STATION
var/obj/item/weapon/card/id/inserted_id
var/points = 0
@@ -18,7 +20,6 @@
var/sheet_per_ore = 1
var/point_upgrade = 1
var/list/ore_values = list(MAT_GLASS = 1, MAT_METAL = 1, MAT_PLASMA = 15, MAT_SILVER = 16, MAT_GOLD = 18, MAT_TITANIUM = 30, MAT_URANIUM = 30, MAT_DIAMOND = 50, MAT_BLUESPACE = 50, MAT_BANANIUM = 60)
speed_process = 1
var/message_sent = FALSE
var/list/ore_buffer = list()
var/datum/material_container/materials
@@ -27,8 +28,6 @@
/obj/machinery/mineral/ore_redemption/Initialize()
. = ..()
var/obj/item/weapon/circuitboard/machine/ore_redemption/B = new
B.apply_default_parts(src)
materials = new(src, list(MAT_METAL, MAT_GLASS, MAT_SILVER, MAT_GOLD, MAT_DIAMOND, MAT_PLASMA, MAT_URANIUM, MAT_BANANIUM, MAT_TITANIUM, MAT_BLUESPACE),INFINITY)
files = new /datum/research/smelter(src)
@@ -37,17 +36,6 @@
QDEL_NULL(files)
return ..()
/obj/item/weapon/circuitboard/machine/ore_redemption
name = "Ore Redemption (Machine Board)"
build_path = /obj/machinery/mineral/ore_redemption
origin_tech = "programming=1;engineering=2"
req_components = list(
/obj/item/weapon/stock_parts/console_screen = 1,
/obj/item/weapon/stock_parts/matter_bin = 1,
/obj/item/weapon/stock_parts/micro_laser = 1,
/obj/item/weapon/stock_parts/manipulator = 1,
/obj/item/device/assembly/igniter = 1)
/obj/machinery/mineral/ore_redemption/RefreshParts()
var/ore_pickup_rate_temp = 15
var/point_upgrade_temp = 1
+4 -23
View File
@@ -7,6 +7,7 @@
icon_state = "mining"
density = TRUE
anchored = TRUE
circuit = /obj/item/weapon/circuitboard/machine/mining_equipment_vendor
var/obj/item/weapon/card/id/inserted_id
var/list/prize_list = list( //if you add something to this, please, for the love of god, use tabs and not spaces.
new /datum/data/mining_equipment("1 Marker Beacon", /obj/item/stack/marker_beacon, 10),
@@ -67,19 +68,6 @@
src.equipment_path = path
src.cost = cost
/obj/machinery/mineral/equipment_vendor/New()
..()
var/obj/item/weapon/circuitboard/machine/B = new /obj/item/weapon/circuitboard/machine/mining_equipment_vendor(null)
B.apply_default_parts(src)
/obj/item/weapon/circuitboard/machine/mining_equipment_vendor
name = "Mining Equipment Vendor (Machine Board)"
build_path = /obj/machinery/mineral/equipment_vendor
origin_tech = "programming=1;engineering=3"
req_components = list(
/obj/item/weapon/stock_parts/console_screen = 1,
/obj/item/weapon/stock_parts/matter_bin = 3)
/obj/machinery/mineral/equipment_vendor/power_change()
..()
update_icon()
@@ -207,9 +195,10 @@
/obj/machinery/mineral/equipment_vendor/golem
name = "golem ship equipment vendor"
circuit = /obj/item/weapon/circuitboard/machine/mining_equipment_vendor/golem
/obj/machinery/mineral/equipment_vendor/golem/New()
..()
/obj/machinery/mineral/equipment_vendor/golem/Initialize()
. = ..()
desc += "\nIt seems a few selections have been added."
prize_list += list(
new /datum/data/mining_equipment("Extra Id", /obj/item/weapon/card/id/mining, 250),
@@ -223,14 +212,6 @@
new /datum/data/mining_equipment("Royal Cape of the Liberator", /obj/item/weapon/bedsheet/rd/royal_cape, 500)
)
var/obj/item/weapon/circuitboard/machine/B = new /obj/item/weapon/circuitboard/machine/mining_equipment_vendor/golem(null)
B.apply_default_parts(src)
/obj/item/weapon/circuitboard/machine/mining_equipment_vendor/golem
name = "Golem Ship Equipment Vendor (Machine Board)"
build_path = /obj/machinery/mineral/equipment_vendor/golem
/**********************Mining Equipment Vendor Items**************************/
/**********************Mining Equipment Voucher**********************/
+3 -5
View File
@@ -15,18 +15,16 @@
speed_process = 1
/obj/machinery/mineral/mint/New()
..()
/obj/machinery/mineral/mint/Initialize()
. = ..()
materials = new /datum/material_container(src,
list(MAT_METAL, MAT_PLASMA, MAT_SILVER, MAT_GOLD, MAT_URANIUM, MAT_DIAMOND, MAT_BANANIUM),
max_amt = MINERAL_MATERIAL_AMOUNT*50)
/obj/machinery/mineral/mint/Destroy()
qdel(materials)
materials = null
QDEL_NULL(materials)
return ..()
/obj/machinery/mineral/mint/process()
var/turf/T = get_step(src, input_dir)
if(!T)
@@ -262,14 +262,14 @@ Difficulty: Very Hard
return FALSE
return TRUE
/obj/machinery/smartfridge/black_box/New()
/obj/machinery/smartfridge/black_box/Initialize()
. = ..()
var/static/obj/machinery/smartfridge/black_box/current
if(current && current != src)
qdel(src, force=TRUE)
return
current = src
ReadMemory()
. = ..()
/obj/machinery/smartfridge/black_box/process()
..()
@@ -9,6 +9,7 @@
icon_state = "bus"
anchored = TRUE
density = TRUE
circuit = /obj/item/weapon/circuitboard/machine/ntnet_relay
var/datum/ntnet/NTNet = null // This is mostly for backwards reference and to allow varedit modifications from ingame.
var/enabled = 1 // Set to 0 if the relay was turned off
var/dos_failure = 0 // Set to 1 if the relay failed due to (D)DoS attack
@@ -95,18 +96,16 @@
/obj/machinery/ntnet_relay/attack_hand(mob/living/user)
ui_interact(user)
/obj/machinery/ntnet_relay/New()
/obj/machinery/ntnet_relay/Initialize()
uid = gl_uid
gl_uid++
component_parts = list()
var/obj/item/weapon/circuitboard/machine/B = new /obj/item/weapon/circuitboard/machine/ntnet_relay(null)
B.apply_default_parts(src)
if(GLOB.ntnet_global)
GLOB.ntnet_global.relays.Add(src)
NTNet = GLOB.ntnet_global
GLOB.ntnet_global.add_log("New quantum relay activated. Current amount of linked relays: [NTNet.relays.len]")
..()
. = ..()
/obj/machinery/ntnet_relay/Destroy()
if(GLOB.ntnet_global)
@@ -118,12 +117,4 @@
D.target = null
D.error = "Connection to quantum relay severed"
return ..()
/obj/item/weapon/circuitboard/machine/ntnet_relay
name = "NTNet Relay (Machine Board)"
build_path = /obj/machinery/ntnet_relay
origin_tech = "programming=3;bluespace=3;magnets=2"
req_components = list(
/obj/item/stack/cable_coil = 2,
/obj/item/weapon/stock_parts/subspace/filter = 1)
return ..()
+3 -4
View File
@@ -29,8 +29,8 @@
var/stored_power = 0//Power to deploy per tick
/obj/machinery/power/am_control_unit/New()
..()
/obj/machinery/power/am_control_unit/Initialize()
. = ..()
linked_shielding = list()
linked_cores = list()
@@ -39,8 +39,7 @@
for(var/obj/machinery/am_shielding/AMS in linked_shielding)
AMS.control_unit = null
qdel(AMS)
qdel(fueljar)
fueljar = null
QDEL_NULL(fueljar)
return ..()
+2 -2
View File
@@ -16,8 +16,8 @@
var/record_interval = 50
var/next_record = 0
/obj/machinery/computer/monitor/New()
..()
/obj/machinery/computer/monitor/Initialize()
. = ..()
search()
history["supply"] = list()
history["demand"] = list()
+5 -27
View File
@@ -54,11 +54,11 @@
/obj/machinery/power/port_gen/pacman
name = "\improper P.A.C.M.A.N.-type portable generator"
circuit = /obj/item/weapon/circuitboard/machine/pacman
var/sheets = 0
var/max_sheets = 100
var/sheet_name = ""
var/sheet_path = /obj/item/stack/sheet/mineral/plasma
var/board_path = /obj/item/weapon/circuitboard/machine/pacman
var/sheet_left = 0 // How much is left of the sheet
var/time_per_sheet = 260
var/current_heat = 0
@@ -68,34 +68,12 @@
if(anchored)
connect_to_network()
/obj/machinery/power/port_gen/pacman/New()
..()
var/obj/item/weapon/circuitboard/machine/B = new board_path(null)
B.apply_default_parts(src)
/obj/machinery/power/port_gen/pacman/Initialize()
. = ..()
var/obj/sheet = new sheet_path(null)
sheet_name = sheet.name
/obj/item/weapon/circuitboard/machine/pacman
name = "PACMAN-type Generator (Machine Board)"
build_path = /obj/machinery/power/port_gen/pacman
origin_tech = "programming=2;powerstorage=3;plasmatech=3;engineering=3"
req_components = list(
/obj/item/weapon/stock_parts/matter_bin = 1,
/obj/item/weapon/stock_parts/micro_laser = 1,
/obj/item/stack/cable_coil = 2,
/obj/item/weapon/stock_parts/capacitor = 1)
/obj/item/weapon/circuitboard/machine/pacman/super
name = "SUPERPACMAN-type Generator (Machine Board)"
build_path = /obj/machinery/power/port_gen/pacman/super
origin_tech = "programming=3;powerstorage=4;engineering=4"
/obj/item/weapon/circuitboard/machine/pacman/mrs
name = "MRSPACMAN-type Generator (Machine Board)"
build_path = "/obj/machinery/power/port_gen/pacman/mrs"
origin_tech = "programming=3;powerstorage=4;engineering=4;plasmatech=4"
/obj/machinery/power/port_gen/pacman/Destroy()
DropFuel()
return ..()
@@ -294,10 +272,10 @@
name = "\improper S.U.P.E.R.P.A.C.M.A.N.-type portable generator"
icon_state = "portgen1_0"
base_icon = "portgen1"
circuit = /obj/item/weapon/circuitboard/machine/pacman/super
sheet_path = /obj/item/stack/sheet/mineral/uranium
power_gen = 15000
time_per_sheet = 85
board_path = /obj/item/weapon/circuitboard/machine/pacman/super
/obj/machinery/power/port_gen/pacman/super/overheat()
explosion(src.loc, 3, 3, 3, -1)
@@ -306,10 +284,10 @@
name = "\improper M.R.S.P.A.C.M.A.N.-type portable generator"
base_icon = "portgen2"
icon_state = "portgen2_0"
circuit = /obj/item/weapon/circuitboard/machine/pacman/mrs
sheet_path = /obj/item/stack/sheet/mineral/diamond
power_gen = 40000
time_per_sheet = 80
board_path = /obj/item/weapon/circuitboard/machine/pacman/mrs
/obj/machinery/power/port_gen/pacman/mrs/overheat()
explosion(src.loc, 4, 4, 4, -1)
+4 -42
View File
@@ -9,6 +9,7 @@
density = TRUE
anchored = TRUE
use_power = NO_POWER_USE
circuit = /obj/item/weapon/circuitboard/machine/rtg
// You can buckle someone to RTG, then open its panel. Fun stuff.
can_buckle = TRUE
@@ -16,23 +17,9 @@
buckle_requires_restraints = TRUE
var/power_gen = 1000 // Enough to power a single APC. 4000 output with T4 capacitor.
var/board_path = /obj/item/weapon/circuitboard/machine/rtg
var/irradiate = TRUE // RTGs irradiate surroundings, but only when panel is open.
/obj/machinery/power/rtg/New()
..()
var/obj/item/weapon/circuitboard/machine/B = new board_path(null)
B.apply_default_parts(src)
/obj/item/weapon/circuitboard/machine/rtg
name = "RTG (Machine Board)"
build_path = /obj/machinery/power/rtg
origin_tech = "programming=2;materials=4;powerstorage=3;engineering=2"
req_components = list(
/obj/item/stack/cable_coil = 5,
/obj/item/weapon/stock_parts/capacitor = 1,
/obj/item/stack/sheet/mineral/uranium = 10) // We have no Pu-238, and this is the closest thing to it.
/obj/machinery/power/rtg/Initialize()
. = ..()
connect_to_network()
@@ -68,20 +55,7 @@
/obj/machinery/power/rtg/advanced
desc = "An advanced RTG capable of moderating isotope decay, increasing power output but reducing lifetime. It uses plasma-fueled radiation collectors to increase output even further."
power_gen = 1250 // 2500 on T1, 10000 on T4.
board_path = /obj/item/weapon/circuitboard/machine/rtg/advanced
/obj/item/weapon/circuitboard/machine/rtg/advanced
name = "Advanced RTG (Machine Board)"
build_path = /obj/machinery/power/rtg/advanced
origin_tech = "programming=3;materials=5;powerstorage=4;engineering=3;plasmatech=3"
req_components = list(
/obj/item/stack/cable_coil = 5,
/obj/item/weapon/stock_parts/capacitor = 1,
/obj/item/weapon/stock_parts/micro_laser = 1,
/obj/item/stack/sheet/mineral/uranium = 10,
/obj/item/stack/sheet/mineral/plasma = 5)
circuit = /obj/item/weapon/circuitboard/machine/rtg/advanced
// Void Core, power source for Abductor ships and bases.
// Provides a lot of power, but tends to explode when mistreated.
@@ -91,25 +65,13 @@
icon = 'icons/obj/abductor.dmi'
icon_state = "core"
desc = "An alien power source that produces energy seemingly out of nowhere."
board_path = /obj/item/weapon/circuitboard/machine/abductor/core
circuit = /obj/item/weapon/circuitboard/machine/abductor/core
power_gen = 20000 // 280 000 at T1, 400 000 at T4. Starts at T4.
irradiate = FALSE // Green energy!
can_buckle = FALSE
pixel_y = 7
var/going_kaboom = FALSE // Is it about to explode?
/obj/item/weapon/circuitboard/machine/abductor/core
name = "alien board (Void Core)"
build_path = /obj/machinery/power/rtg/abductor
origin_tech = "programming=5;abductor=5;powerstorage=8;engineering=8"
req_components = list(
/obj/item/weapon/stock_parts/capacitor = 1,
/obj/item/weapon/stock_parts/micro_laser = 1,
/obj/item/weapon/stock_parts/cell/infinite/abductor = 1)
def_components = list(
/obj/item/weapon/stock_parts/capacitor = /obj/item/weapon/stock_parts/capacitor/quadratic,
/obj/item/weapon/stock_parts/micro_laser = /obj/item/weapon/stock_parts/micro_laser/quadultra)
/obj/machinery/power/rtg/abductor/proc/overload()
if(going_kaboom)
return
+2 -2
View File
@@ -21,8 +21,8 @@ GLOBAL_LIST_EMPTY(rad_collectors)
/obj/machinery/power/rad_collector/anchored
anchored = TRUE
/obj/machinery/power/rad_collector/New()
..()
/obj/machinery/power/rad_collector/Initialize()
. = ..()
GLOB.rad_collectors += src
/obj/machinery/power/rad_collector/Destroy()
+15 -26
View File
@@ -3,20 +3,17 @@
desc = "A heavy-duty industrial laser, often used in containment fields and power generation.\n<span class='notice'>Alt-click to rotate it clockwise.</span>"
icon = 'icons/obj/singularity.dmi'
icon_state = "emitter"
var/icon_state_on = "emitter_+a"
anchored = FALSE
density = TRUE
req_access = list(ACCESS_ENGINE_EQUIP)
// The following 3 vars are mostly for the prototype
var/manual = FALSE
var/charge = 0
var/atom/target = null
circuit = /obj/item/weapon/circuitboard/machine/emitter
use_power = NO_POWER_USE
idle_power_usage = 10
active_power_usage = 300
var/icon_state_on = "emitter_+a"
var/active = 0
var/powered = 0
var/fire_delay = 100
@@ -33,6 +30,11 @@
var/datum/effect_system/spark_spread/sparks
// The following 3 vars are mostly for the prototype
var/manual = FALSE
var/charge = 0
var/atom/target
/obj/machinery/power/emitter/anchored
anchored = TRUE
@@ -46,20 +48,16 @@
state = 2
use_power = FALSE
/obj/machinery/power/emitter/New()
..()
var/obj/item/weapon/circuitboard/machine/B = new /obj/item/weapon/circuitboard/machine/emitter(null)
B.apply_default_parts(src)
/obj/machinery/power/emitter/Initialize()
. = ..()
RefreshParts()
wires = new /datum/wires/emitter(src)
if(state == 2 && anchored)
connect_to_network()
/obj/item/weapon/circuitboard/machine/emitter
name = "Emitter (Machine Board)"
build_path = /obj/machinery/power/emitter
origin_tech = "programming=3;powerstorage=4;engineering=4"
req_components = list(
/obj/item/weapon/stock_parts/micro_laser = 1,
/obj/item/weapon/stock_parts/manipulator = 1)
sparks = new
sparks.attach(src)
sparks.set_up(5, TRUE, src)
/obj/machinery/power/emitter/RefreshParts()
var/max_firedelay = 120
@@ -100,15 +98,6 @@
else
rotate()
/obj/machinery/power/emitter/Initialize()
. = ..()
if(state == 2 && anchored)
connect_to_network()
sparks = new
sparks.attach(src)
sparks.set_up(5, TRUE, src)
/obj/machinery/power/emitter/Destroy()
if(SSticker.IsRoundInProgress())
var/turf/T = get_turf(src)
@@ -49,8 +49,8 @@ field_generator power level display
add_overlay("+p[power_level]")
/obj/machinery/field/generator/New()
..()
/obj/machinery/field/generator/Initialize()
. = ..()
fields = list()
connected_gens = list()
@@ -19,10 +19,10 @@
var/powered = 0
mouse_opacity = 2
/obj/machinery/particle_accelerator/control_box/New()
/obj/machinery/particle_accelerator/control_box/Initialize()
. = ..()
wires = new /datum/wires/particle_accelerator/control_box(src)
connected_parts = list()
..()
/obj/machinery/particle_accelerator/control_box/Destroy()
if(active)
@@ -31,8 +31,7 @@
var/obj/structure/particle_accelerator/part = CP
part.master = null
connected_parts.Cut()
qdel(wires)
wires = null
QDEL_NULL(wires)
return ..()
/obj/machinery/particle_accelerator/control_box/attack_hand(mob/user)
+9 -23
View File
@@ -21,6 +21,7 @@
density = TRUE
anchored = TRUE
use_power = NO_POWER_USE
circuit = /obj/item/weapon/circuitboard/machine/smes
var/capacity = 5e6 // maximum charge
var/charge = 0 // actual charge
@@ -43,36 +44,21 @@
if(!terminal)
to_chat(user, "<span class='warning'>This SMES has no power terminal!</span>")
/obj/machinery/power/smes/New()
/obj/machinery/power/smes/Initialize()
..()
var/obj/item/weapon/circuitboard/machine/B = new /obj/item/weapon/circuitboard/machine/smes(null)
B.apply_default_parts(src)
spawn(5)
dir_loop:
for(var/d in GLOB.cardinals)
var/turf/T = get_step(src, d)
for(var/obj/machinery/power/terminal/term in T)
if(term && term.dir == turn(d, 180))
terminal = term
break dir_loop
dir_loop:
for(var/d in GLOB.cardinals)
var/turf/T = get_step(src, d)
for(var/obj/machinery/power/terminal/term in T)
if(term && term.dir == turn(d, 180))
terminal = term
break dir_loop
if(!terminal)
stat |= BROKEN
return
terminal.master = src
update_icon()
return
/obj/item/weapon/circuitboard/machine/smes
name = "SMES (Machine Board)"
build_path = /obj/machinery/power/smes
origin_tech = "programming=3;powerstorage=3;engineering=3"
req_components = list(
/obj/item/stack/cable_coil = 5,
/obj/item/weapon/stock_parts/cell = 5,
/obj/item/weapon/stock_parts/capacitor = 1)
def_components = list(/obj/item/weapon/stock_parts/cell = /obj/item/weapon/stock_parts/cell/high/empty)
/obj/machinery/power/smes/RefreshParts()
var/IO = 0
+6 -5
View File
@@ -13,15 +13,16 @@
layer = WIRE_TERMINAL_LAYER //a bit above wires
/obj/machinery/power/terminal/New()
..()
var/turf/T = src.loc
if(level==1) hide(T.intact)
return
/obj/machinery/power/terminal/Initialize()
. = ..()
var/turf/T = get_turf(src)
if(level == 1)
hide(T.intact)
/obj/machinery/power/terminal/Destroy()
if(master)
master.disconnect_terminal()
master = null
return ..()
/obj/machinery/power/terminal/hide(i)
+5 -20
View File
@@ -11,23 +11,17 @@
buckle_lying = FALSE
buckle_requires_restraints = TRUE
circuit = /obj/item/weapon/circuitboard/machine/tesla_coil
var/power_loss = 2
var/input_power_multiplier = 1
var/zap_cooldown = 100
var/last_zap = 0
/obj/machinery/power/tesla_coil/New()
..()
var/obj/item/weapon/circuitboard/machine/B = new /obj/item/weapon/circuitboard/machine/tesla_coil(null)
B.apply_default_parts(src)
/obj/machinery/power/tesla_coil/Initialize()
. = ..()
wires = new /datum/wires/tesla_coil(src)
/obj/item/weapon/circuitboard/machine/tesla_coil
name = "Tesla Coil (Machine Board)"
build_path = /obj/machinery/power/tesla_coil
origin_tech = "programming=3;magnets=3;powerstorage=3"
req_components = list(/obj/item/weapon/stock_parts/capacitor = 1)
/obj/machinery/power/tesla_coil/RefreshParts()
var/power_multiplier = 0
zap_cooldown = 100
@@ -109,16 +103,7 @@
buckle_lying = FALSE
buckle_requires_restraints = TRUE
/obj/machinery/power/grounding_rod/New()
..()
var/obj/item/weapon/circuitboard/machine/B = new /obj/item/weapon/circuitboard/machine/grounding_rod(null)
B.apply_default_parts(src)
/obj/item/weapon/circuitboard/machine/grounding_rod
name = "Grounding Rod (Machine Board)"
build_path = /obj/machinery/power/grounding_rod
origin_tech = "programming=3;powerstorage=3;magnets=3;plasmatech=2"
req_components = list(/obj/item/weapon/stock_parts/capacitor = 1)
circuit = /obj/item/weapon/circuitboard/machine/grounding_rod
/obj/machinery/power/grounding_rod/default_unfasten_wrench(mob/user, obj/item/weapon/wrench/W, time = 20)
. = ..()
+2 -2
View File
@@ -18,8 +18,8 @@
var/sun_angle = 0 // sun angle as set by sun datum
var/obj/machinery/power/solar_control/control = null
/obj/machinery/power/tracker/New(var/turf/loc, var/obj/item/solar_assembly/S)
..(loc)
/obj/machinery/power/tracker/Initialize(mapload, obj/item/solar_assembly/S)
. = ..()
Make(S)
connect_to_network()
+7 -31
View File
@@ -31,6 +31,7 @@
density = TRUE
resistance_flags = FIRE_PROOF
CanAtmosPass = ATMOS_PASS_DENSITY
circuit = /obj/item/weapon/circuitboard/machine/power_compressor
var/obj/machinery/power/turbine/turbine
var/datum/gas_mixture/gas_contained
var/turf/inturf
@@ -51,6 +52,7 @@
density = TRUE
resistance_flags = FIRE_PROOF
CanAtmosPass = ATMOS_PASS_DENSITY
circuit = /obj/item/weapon/circuitboard/machine/power_turbine
var/opened = 0
var/obj/machinery/power/compressor/compressor
var/turf/outturf
@@ -68,25 +70,12 @@
// the inlet stage of the gas turbine electricity generator
/obj/machinery/power/compressor/New()
..()
var/obj/item/weapon/circuitboard/machine/B = new /obj/item/weapon/circuitboard/machine/power_compressor(null)
B.apply_default_parts(src)
// The inlet of the compressor is the direction it faces
/obj/machinery/power/compressor/Initialize()
. = ..()
// The inlet of the compressor is the direction it faces
gas_contained = new
inturf = get_step(src, dir)
/obj/item/weapon/circuitboard/machine/power_compressor
name = "Power Compressor (Machine Board)"
build_path = /obj/machinery/power/compressor
origin_tech = "programming=4;powerstorage=4;engineering=4"
req_components = list(
/obj/item/stack/cable_coil = 5,
/obj/item/weapon/stock_parts/manipulator = 6)
/obj/machinery/power/compressor/Initialize()
. = ..()
locate_machinery()
if(!turbine)
stat |= BROKEN
@@ -186,23 +175,10 @@
#define TURBGENQ 100000
#define TURBGENG 0.5
/obj/machinery/power/turbine/New()
..()
var/obj/item/weapon/circuitboard/machine/B = new /obj/item/weapon/circuitboard/machine/power_turbine(null)
B.apply_default_parts(src)
// The outlet is pointed at the direction of the turbine component
outturf = get_step(src, dir)
/obj/item/weapon/circuitboard/machine/power_turbine
name = "Power Turbine (Machine Board)"
build_path = /obj/machinery/power/turbine
origin_tech = "programming=4;powerstorage=4;engineering=4"
req_components = list(
/obj/item/stack/cable_coil = 5,
/obj/item/weapon/stock_parts/capacitor = 6)
/obj/machinery/power/turbine/Initialize()
. = ..()
// The outlet is pointed at the direction of the turbine component
outturf = get_step(src, dir)
locate_machinery()
if(!compressor)
stat |= BROKEN
@@ -221,6 +221,7 @@
amount = 5
recharge_delay = 30
dispensable_reagents = list()
circuit = /obj/item/weapon/circuitboard/machine/chem_dispenser
var/list/dispensable_reagent_tiers = list(
list(
"hydrogen",
@@ -264,23 +265,6 @@
)
)
/obj/machinery/chem_dispenser/constructable/Initialize()
. = ..()
var/obj/item/weapon/circuitboard/machine/B = new /obj/item/weapon/circuitboard/machine/chem_dispenser(null)
B.apply_default_parts(src)
/obj/item/weapon/circuitboard/machine/chem_dispenser
name = "Portable Chem Dispenser (Machine Board)"
build_path = /obj/machinery/chem_dispenser/constructable
origin_tech = "materials=4;programming=4;plasmatech=4;biotech=3"
req_components = list(
/obj/item/weapon/stock_parts/matter_bin = 2,
/obj/item/weapon/stock_parts/capacitor = 1,
/obj/item/weapon/stock_parts/manipulator = 1,
/obj/item/weapon/stock_parts/console_screen = 1,
/obj/item/weapon/stock_parts/cell = 1)
def_components = list(/obj/item/weapon/stock_parts/cell = /obj/item/weapon/stock_parts/cell/high)
/obj/machinery/chem_dispenser/constructable/RefreshParts()
var/time = 0
var/i
@@ -7,24 +7,12 @@
use_power = IDLE_POWER_USE
idle_power_usage = 40
resistance_flags = FIRE_PROOF | ACID_PROOF
circuit = /obj/item/weapon/circuitboard/machine/chem_heater
var/obj/item/weapon/reagent_containers/beaker = null
var/target_temperature = 300
var/heater_coefficient = 0.10
var/on = FALSE
/obj/machinery/chem_heater/Initialize()
. = ..()
var/obj/item/weapon/circuitboard/machine/B = new /obj/item/weapon/circuitboard/machine/chem_heater(null)
B.apply_default_parts(src)
/obj/item/weapon/circuitboard/machine/chem_heater
name = "Chemical Heater (Machine Board)"
build_path = /obj/machinery/chem_heater
origin_tech = "programming=2;engineering=2;biotech=2"
req_components = list(
/obj/item/weapon/stock_parts/micro_laser = 1,
/obj/item/weapon/stock_parts/console_screen = 1)
/obj/machinery/chem_heater/RefreshParts()
heater_coefficient = 0.10
for(var/obj/item/weapon/stock_parts/micro_laser/M in component_parts)
@@ -3,11 +3,13 @@
desc = "Used to separate chemicals and distribute them in a variety of forms."
density = TRUE
anchored = TRUE
layer = BELOW_OBJ_LAYER
icon = 'icons/obj/chemical.dmi'
icon_state = "mixer0"
use_power = IDLE_POWER_USE
idle_power_usage = 20
resistance_flags = FIRE_PROOF | ACID_PROOF
circuit = /obj/item/weapon/circuitboard/machine/chem_master
var/obj/item/weapon/reagent_containers/beaker = null
var/obj/item/weapon/storage/pill_bottle/bottle = null
var/mode = 1
@@ -15,39 +17,12 @@
var/screen = "home"
var/analyzeVars[0]
var/useramount = 30 // Last used amount
layer = BELOW_OBJ_LAYER
/obj/machinery/chem_master/Initialize()
create_reagents(100)
add_overlay("waitlight")
var/obj/item/weapon/circuitboard/machine/B = new /obj/item/weapon/circuitboard/machine/chem_master(null)
B.apply_default_parts(src)
. = ..()
/obj/item/weapon/circuitboard/machine/chem_master
name = "ChemMaster 3000 (Machine Board)"
build_path = /obj/machinery/chem_master
origin_tech = "materials=3;programming=2;biotech=3"
req_components = list(
/obj/item/weapon/reagent_containers/glass/beaker = 2,
/obj/item/weapon/stock_parts/manipulator = 1,
/obj/item/weapon/stock_parts/console_screen = 1)
/obj/item/weapon/circuitboard/machine/chem_master/attackby(obj/item/I, mob/user, params)
if(istype(I, /obj/item/weapon/screwdriver))
var/new_name = "ChemMaster"
var/new_path = /obj/machinery/chem_master
if(build_path == /obj/machinery/chem_master)
new_name = "CondiMaster"
new_path = /obj/machinery/chem_master/condimaster
build_path = new_path
name = "[new_name] 3000 (Machine Board)"
to_chat(user, "<span class='notice'>You change the circuit board setting to \"[new_name]\".</span>")
else
return ..()
/obj/machinery/chem_master/RefreshParts()
reagents.maximum_volume = 0
for(var/obj/item/weapon/reagent_containers/glass/beaker/B in component_parts)
@@ -360,7 +335,3 @@
name = "CondiMaster 3000"
desc = "Used to create condiments and other cooking supplies."
condi = 1
/obj/item/weapon/circuitboard/machine/chem_master/condi
name = "CondiMaster 3000 (Machine Board)"
build_path = /obj/machinery/chem_master/condimaster
+4 -14
View File
@@ -9,6 +9,7 @@ using metal and glass, it uses glass and reagents (usually sulfuric acis).
desc = "Manufactures circuit boards for the construction of machines."
icon_state = "circuit_imprinter"
container_type = OPENCONTAINER
circuit = /obj/item/weapon/circuitboard/machine/circuit_imprinter
var/datum/material_container/materials
var/efficiency_coeff
@@ -28,24 +29,13 @@ using metal and glass, it uses glass and reagents (usually sulfuric acis).
)
/obj/machinery/r_n_d/circuit_imprinter/Initialize()
. = ..()
materials = new(src, list(MAT_GLASS, MAT_GOLD, MAT_DIAMOND, MAT_METAL, MAT_BLUESPACE))
create_reagents(0)
var/obj/item/weapon/circuitboard/machine/B = new /obj/item/weapon/circuitboard/machine/circuit_imprinter(null)
B.apply_default_parts(src)
/obj/machinery/r_n_d/circuit_imprinter/Destroy()
qdel(materials)
return ..()
/obj/item/weapon/circuitboard/machine/circuit_imprinter
name = "Circuit Imprinter (Machine Board)"
build_path = /obj/machinery/r_n_d/circuit_imprinter
origin_tech = "engineering=2;programming=2"
req_components = list(
/obj/item/weapon/stock_parts/matter_bin = 1,
/obj/item/weapon/stock_parts/manipulator = 1,
/obj/item/weapon/reagent_containers/glass/beaker = 2)
/obj/machinery/r_n_d/circuit_imprinter/Destroy()
QDEL_NULL(materials)
return ..()
/obj/machinery/r_n_d/circuit_imprinter/RefreshParts()
reagents.maximum_volume = 0
+1 -14
View File
@@ -11,22 +11,9 @@ Note: Must be placed within 3 tiles of the R&D Console
name = "destructive analyzer"
desc = "Learn science by destroying things!"
icon_state = "d_analyzer"
circuit = /obj/item/weapon/circuitboard/machine/destructive_analyzer
var/decon_mod = 0
/obj/machinery/r_n_d/destructive_analyzer/Initialize()
. = ..()
var/obj/item/weapon/circuitboard/machine/B = new /obj/item/weapon/circuitboard/machine/destructive_analyzer(null)
B.apply_default_parts(src)
/obj/item/weapon/circuitboard/machine/destructive_analyzer
name = "Destructive Analyzer (Machine Board)"
build_path = /obj/machinery/r_n_d/destructive_analyzer
origin_tech = "magnets=2;engineering=2;programming=2"
req_components = list(
/obj/item/weapon/stock_parts/scanning_module = 1,
/obj/item/weapon/stock_parts/manipulator = 1,
/obj/item/weapon/stock_parts/micro_laser = 1)
/obj/machinery/r_n_d/destructive_analyzer/RefreshParts()
var/T = 0
for(var/obj/item/weapon/stock_parts/S in component_parts)
+1 -11
View File
@@ -25,6 +25,7 @@
density = TRUE
anchored = TRUE
use_power = IDLE_POWER_USE
circuit = /obj/item/weapon/circuitboard/machine/experimentor
var/recentlyExperimented = 0
var/mob/trackedIan
var/mob/trackedRuntime
@@ -84,22 +85,11 @@
/obj/machinery/r_n_d/experimentor/Initialize()
. = ..()
var/obj/item/weapon/circuitboard/machine/B = new /obj/item/weapon/circuitboard/machine/experimentor(null)
B.apply_default_parts(src)
trackedIan = locate(/mob/living/simple_animal/pet/dog/corgi/Ian) in GLOB.mob_list
trackedRuntime = locate(/mob/living/simple_animal/pet/cat/Runtime) in GLOB.mob_list
SetTypeReactions()
/obj/item/weapon/circuitboard/machine/experimentor
name = "E.X.P.E.R.I-MENTOR (Machine Board)"
build_path = /obj/machinery/r_n_d/experimentor
origin_tech = "magnets=1;engineering=1;programming=1;biotech=1;bluespace=2"
req_components = list(
/obj/item/weapon/stock_parts/scanning_module = 1,
/obj/item/weapon/stock_parts/manipulator = 2,
/obj/item/weapon/stock_parts/micro_laser = 2)
/obj/machinery/r_n_d/experimentor/RefreshParts()
for(var/obj/item/weapon/stock_parts/manipulator/M in component_parts)
if(resetTime > 0 && (resetTime - M.rating) >= 1)
+3 -13
View File
@@ -12,6 +12,7 @@ Note: Must be placed west/left of and R&D console to function.
desc = "Converts raw materials into useful objects."
icon_state = "protolathe"
container_type = OPENCONTAINER
circuit = /obj/item/weapon/circuitboard/machine/protolathe
var/datum/material_container/materials
var/efficiency_coeff
@@ -32,23 +33,12 @@ Note: Must be placed west/left of and R&D console to function.
/obj/machinery/r_n_d/protolathe/Initialize()
. = ..()
create_reagents(0)
materials = new(src, list(MAT_METAL, MAT_GLASS, MAT_SILVER, MAT_GOLD, MAT_DIAMOND, MAT_PLASMA, MAT_URANIUM, MAT_BANANIUM, MAT_TITANIUM, MAT_BLUESPACE))
var/obj/item/weapon/circuitboard/machine/B = new /obj/item/weapon/circuitboard/machine/protolathe(null)
B.apply_default_parts(src)
/obj/item/weapon/circuitboard/machine/protolathe
name = "Protolathe (Machine Board)"
build_path = /obj/machinery/r_n_d/protolathe
origin_tech = "engineering=2;programming=2"
req_components = list(
/obj/item/weapon/stock_parts/matter_bin = 2,
/obj/item/weapon/stock_parts/manipulator = 2,
/obj/item/weapon/reagent_containers/glass/beaker = 2)
return ..()
/obj/machinery/r_n_d/protolathe/Destroy()
qdel(materials)
QDEL_NULL(materials)
return ..()
/obj/machinery/r_n_d/protolathe/RefreshParts()
+1 -2
View File
@@ -21,8 +21,7 @@
wires = new /datum/wires/r_n_d(src)
/obj/machinery/r_n_d/Destroy()
qdel(wires)
wires = null
QDEL_NULL(wires)
return ..()
/obj/machinery/r_n_d/proc/shock(mob/user, prb)
-8
View File
@@ -19,14 +19,6 @@
var/obj/item/weapon/circuitboard/machine/B = new /obj/item/weapon/circuitboard/machine/rdserver(null)
B.apply_default_parts(src)
/obj/item/weapon/circuitboard/machine/rdserver
name = "R&D Server (Machine Board)"
build_path = /obj/machinery/r_n_d/server
origin_tech = "programming=3"
req_components = list(
/obj/item/stack/cable_coil = 2,
/obj/item/weapon/stock_parts/scanning_module = 1)
/obj/machinery/r_n_d/server/Destroy()
griefProtection()
return ..()
@@ -24,8 +24,8 @@ GLOBAL_DATUM_INIT(keycard_events, /datum/events, new)
/obj/machinery/keycard_auth/Destroy()
GLOB.keycard_events.clearEvent("triggerEvent", ev)
qdel(ev)
. = ..()
QDEL_NULL(ev)
return ..()
/obj/machinery/keycard_auth/ui_interact(mob/user, ui_key = "main", datum/tgui/ui = null, force_open = FALSE, \
datum/tgui/master_ui = null, datum/ui_state/state = GLOB.physical_state)
+7 -3
View File
@@ -10,9 +10,13 @@
var/admin_controlled
var/no_destination_swap = 0
/obj/machinery/computer/shuttle/Initialize(mapload, obj/item/weapon/circuitboard/computer/shuttle/C)
. = ..()
if(istype(C))
/obj/machinery/computer/shuttle/Initialize()
..()
return INITIALIZE_HINT_LATELOAD
/obj/machinery/computer/shuttle/LateInitialize()
if(istype(circuit, /obj/item/weapon/circuitboard/computer/shuttle))
var/obj/item/weapon/circuitboard/computer/shuttle/C = circuit
possible_destinations = C.possible_destinations
shuttleId = C.shuttleId
+3 -7
View File
@@ -33,14 +33,10 @@
add_overlay(hologram_projection)
add_overlay(hologram_ship)
/obj/machinery/shuttle_manipulator/ui_interact(mob/user, ui_key = "main", \
datum/tgui/ui = null, force_open = FALSE, datum/tgui/master_ui = null, \
datum/ui_state/state = GLOB.admin_state)
/obj/machinery/shuttle_manipulator/ui_interact(mob/user, ui_key = "main", datum/tgui/ui = null, force_open = FALSE, datum/tgui/master_ui = null, datum/ui_state/state = GLOB.admin_state)
ui = SStgui.try_update_ui(user, src, ui_key, ui, force_open)
if(!ui)
ui = new(user, src, ui_key, "shuttle_manipulator", name, 800, 600, \
master_ui, state)
ui = new(user, src, ui_key, "shuttle_manipulator", name, 800, 600, master_ui, state)
ui.open()
/proc/shuttlemode2str(mode)
@@ -62,7 +58,7 @@
if(SHUTTLE_ENDGAME)
. = "endgame"
if(!.)
throw EXCEPTION("shuttlemode2str(): invalid mode [mode]")
CRASH("shuttlemode2str(): invalid mode [mode]")
/obj/machinery/shuttle_manipulator/ui_data(mob/user)
+1 -1
View File
@@ -10,9 +10,9 @@
icon = 'icons/obj/machines/magic_emitter.dmi'
icon_state = "wabbajack_statue"
icon_state_on = "wabbajack_statue_on"
active = FALSE
var/list/active_tables = list()
var/tables_required = 2
active = FALSE
/obj/machinery/power/emitter/energycannon/magical/Initialize()
. = ..()
-14
View File
@@ -25,20 +25,6 @@
board.moved = TRUE
..()
/obj/item/weapon/circuitboard/computer/syndicate_shuttle
name = "Syndicate Shuttle (Computer Board)"
build_path = /obj/machinery/computer/shuttle/syndicate
var/challenge = FALSE
var/moved = FALSE
/obj/item/weapon/circuitboard/computer/syndicate_shuttle/Initialize()
. = ..()
GLOB.syndicate_shuttle_boards += src
/obj/item/weapon/circuitboard/computer/syndicate_shuttle/Destroy()
GLOB.syndicate_shuttle_boards -= src
return ..()
/obj/machinery/computer/shuttle/syndicate/drop_pod
name = "syndicate assault pod control"
icon = 'icons/obj/terminals.dmi'
-29
View File
@@ -206,35 +206,6 @@
/obj/structure/filler/ex_act()
return
/obj/item/weapon/circuitboard/machine/bsa/back
name = "Bluespace Artillery Generator (Machine Board)"
build_path = /obj/machinery/bsa/back
origin_tech = "engineering=2;combat=2;bluespace=2" //No freebies!
req_components = list(
/obj/item/weapon/stock_parts/capacitor/quadratic = 5,
/obj/item/stack/cable_coil = 2)
/obj/item/weapon/circuitboard/machine/bsa/middle
name = "Bluespace Artillery Fusor (Machine Board)"
build_path = /obj/machinery/bsa/middle
origin_tech = "engineering=2;combat=2;bluespace=2"
req_components = list(
/obj/item/weapon/ore/bluespace_crystal = 20,
/obj/item/stack/cable_coil = 2)
/obj/item/weapon/circuitboard/machine/bsa/front
name = "Bluespace Artillery Bore (Machine Board)"
build_path = /obj/machinery/bsa/front
origin_tech = "engineering=2;combat=2;bluespace=2"
req_components = list(
/obj/item/weapon/stock_parts/manipulator/femto = 5,
/obj/item/stack/cable_coil = 2)
/obj/item/weapon/circuitboard/computer/bsa_control
name = "Bluespace Artillery Controls (Computer Board)"
build_path = /obj/machinery/computer/bsa_control
origin_tech = "engineering=2;combat=2;bluespace=2"
/obj/machinery/computer/bsa_control
name = "bluespace artillery control"
var/obj/machinery/bsa/full/cannon
-10
View File
@@ -118,16 +118,6 @@
dna[H.dna.uni_identity] = 1
to_chat(user, "<span class='notice'>Humanoid data added to local storage.<span>")
/obj/item/weapon/circuitboard/machine/dna_vault
name = "DNA Vault (Machine Board)"
build_path = /obj/machinery/dna_vault
origin_tech = "engineering=2;combat=2;bluespace=2" //No freebies!
req_components = list(
/obj/item/weapon/stock_parts/capacitor/super = 5,
/obj/item/weapon/stock_parts/manipulator/pico = 5,
/obj/item/stack/cable_coil = 2)
/obj/machinery/dna_vault
name = "DNA Vault"
desc = "Break glass in case of apocalypse."
+1 -6
View File
@@ -36,15 +36,10 @@
coverage |= view(A.kill_range,A)
return coverage.len
/obj/item/weapon/circuitboard/machine/computer/sat_control
name = "Satellite Network Control (Computer Board)"
build_path = /obj/machinery/computer/sat_control
origin_tech = "engineering=3"
/obj/machinery/computer/sat_control
name = "satellite control"
desc = "Used to control the satellite network."
circuit = /obj/item/weapon/circuitboard/machine/computer/sat_control
circuit = /obj/item/weapon/circuitboard/computer/sat_control
var/notice
/obj/machinery/computer/sat_control/ui_interact(mob/user, ui_key = "main", datum/tgui/ui = null, force_open = FALSE, datum/tgui/master_ui = null, datum/ui_state/state = GLOB.default_state)
+2 -2
View File
@@ -11,8 +11,8 @@
light_color = LIGHT_COLOR_GREEN
/obj/machinery/computer/stockexchange/New()
..()
/obj/machinery/computer/stockexchange/Initialize()
. = ..()
logged_in = "[station_name()] Cargo Department"
/obj/machinery/computer/stockexchange/proc/balance()