Port the Bluespace Light Replacer

- Ports the Bluespace Light Replacer from TG
-- Added to Applied Bluespace Research instead of Advanced Sanitation Technology
- Makes the basic Light Replacer a default tech node
This commit is contained in:
Darius
2022-12-24 15:57:11 -05:00
parent 0712bb4c79
commit d3e018720c
5 changed files with 28 additions and 3 deletions

View File

@@ -67,6 +67,9 @@
// when we get this many shards, we get a free bulb.
var/shards_required = 4
// whether it is "bluespace powered" (can be used at a range)
var/bluespace_toggle = FALSE
/obj/item/lightreplacer/New()
uses = max_uses / 2
failmsg = "The [name]'s refill light blinks red."
@@ -242,7 +245,7 @@
/obj/item/lightreplacer/afterattack(atom/T, mob/U, proximity)
. = ..()
if(!proximity)
if(!proximity && !bluespace_toggle)
return
if(!isturf(T))
return
@@ -253,6 +256,9 @@
break
used = TRUE
if(istype(A, /obj/machinery/light))
if(!proximity && bluespace_toggle)
U.Beam(A, icon_state = "rped_upgrade", time = 1 SECONDS)
playsound(src, 'sound/items/pshoom.ogg', 40, 1)
ReplaceLight(A, U)
if(!used)
@@ -266,6 +272,15 @@
/obj/item/lightreplacer/cyborg/janicart_insert(mob/user, obj/structure/janitorialcart/J)
return
/obj/item/lightreplacer/blue
name = "bluespace light replacer"
desc = "A modified light replacer that zaps lights into place. Refill with broken or working lightbulbs, or sheets of glass."
icon_state = "lightreplacer_blue"
bluespace_toggle = TRUE
/obj/item/lightreplacer/blue/emag_act()
return // balancing against longrange explosions
#undef LIGHT_OK
#undef LIGHT_EMPTY
#undef LIGHT_BROKEN

View File

@@ -407,6 +407,16 @@
category = list("Equipment")
departmental_flags = DEPARTMENTAL_FLAG_SERVICE | DEPARTMENTAL_FLAG_ENGINEERING
/datum/design/light_replacer_blue
name = "Bluespace Light Replacer"
desc = "A device to automatically replace lights at a distance. Refill with working light bulbs."
id = "light_replacer_blue"
build_type = PROTOLATHE
materials = list(/datum/material/iron = 1500, /datum/material/silver = 150, /datum/material/glass = 3000, /datum/material/bluespace = 300)
build_path = /obj/item/lightreplacer/blue
category = list("Equipment")
departmental_flags = DEPARTMENTAL_FLAG_SERVICE | DEPARTMENTAL_FLAG_ENGINEERING
/datum/design/normtrash
name = "Trashbag"
desc = "It's a bag for trash, you put garbage in it."

View File

@@ -106,4 +106,4 @@
"destructive_analyzer", "circuit_imprinter", "experimentor", "rdconsole", "bepis", "design_disk", "tech_disk", "rdserver", "rdservercontrol", "mechfab", "paystand",
"space_heater", "beaker", "large_beaker", "xlarge_beaker", "bucket", "hypovial", "large_hypovial", "syringe", "pillbottle",
"sec_shellclip", "sec_beanbag", "sec_rshot", "sec_bshot", "sec_slug", "sec_islug", "sec_dart", "sec_38", "sec_38lethal",
"rglass","plasteel","plastitanium","plasmaglass","plasmareinforcedglass","titaniumglass","plastitaniumglass", "salestagger")
"rglass","plasteel","plastitanium","plasmaglass","plasmareinforcedglass","titaniumglass","plastitaniumglass", "salestagger", "light_replacer")

View File

@@ -13,7 +13,7 @@
display_name = "Applied Bluespace Research"
description = "Using bluespace to make things faster and better."
prereq_ids = list("bluespace_basic", "engineering")
design_ids = list("bs_rped","biobag_holding","minerbag_holding", "bluespacebeaker", "bluespacesyringe", "phasic_scanning", "bluespacesmartdart", "xenobio_slimebasic", "bluespace_tray")
design_ids = list("bs_rped","biobag_holding","minerbag_holding", "bluespacebeaker", "bluespacesyringe", "phasic_scanning", "bluespacesmartdart", "xenobio_slimebasic", "bluespace_tray", "light_replacer_blue")
research_costs = list(TECHWEB_POINT_TYPE_GENERIC = 5000)
/datum/techweb_node/adv_bluespace

Binary file not shown.

Before

Width:  |  Height:  |  Size: 27 KiB

After

Width:  |  Height:  |  Size: 29 KiB