mirror of
https://github.com/Bubberstation/Bubberstation.git
synced 2025-12-17 13:12:37 +00:00
Remake of #50528 About The Pull Request https://hackmd.io/@tgstation/r1tzxpwPL Basically that. Raw anomaly cores Cargo crates for them (currently 5k credits each, please tell me if this is good I balanced it relative to other crates I have no clue what the current cargo "meta"/power levels are) Finish the explosive/implosion compressor attackby and implosion procs Map in the implosion compressor Map in the roundstart 2 cores each type for science Current values are set to maxcap at the 8th core, and 4 light radius (1/2/4 explosion required) at the first core. I think this is a bit low but I'm just going off the document. The implosion compressor consumes the TTV + tanks on an attempted detonation, regardless of success. However, the "bare minimum" of checks are included (it won't let you insert incomplete TTVs. It will however, let you insert TTVs that have no explosive potential (test your bombs like you test your code ;) ), and will not waste the raw core if you fail to make a high enough radius. Props to @ArcaneMusic for the machine sprite! Why It's Good For The Game image Start of the anomaly core system I guess, gives toxins a use other than doing the quirky 50k maxcap tritium speedrun rush (or was that removed already?). Yadda yadda allows locking items behind it and another method of getting these other than supermatter overloads (I don't know if that is already gone either by the by). Changelog 🆑 add: An explosion compressor has been added to science. It makes raw anomaly cores into proper anomaly cores using prepared TTVs of a specific required blast radius. /🆑
64 lines
2.7 KiB
Plaintext
64 lines
2.7 KiB
Plaintext
// Embedded signaller used in anomalies.
|
|
/obj/item/assembly/signaler/anomaly
|
|
name = "anomaly core"
|
|
desc = "The neutralized core of an anomaly. It'd probably be valuable for research."
|
|
icon_state = "anomaly_core"
|
|
inhand_icon_state = "electronic"
|
|
lefthand_file = 'icons/mob/inhands/misc/devices_lefthand.dmi'
|
|
righthand_file = 'icons/mob/inhands/misc/devices_righthand.dmi'
|
|
resistance_flags = FIRE_PROOF
|
|
var/anomaly_type = /obj/effect/anomaly
|
|
|
|
/obj/item/assembly/signaler/anomaly/receive_signal(datum/signal/signal)
|
|
if(!signal)
|
|
return FALSE
|
|
if(signal.data["code"] != code)
|
|
return FALSE
|
|
if(suicider)
|
|
manual_suicide(suicider)
|
|
for(var/obj/effect/anomaly/A in get_turf(src))
|
|
A.anomalyNeutralize()
|
|
return TRUE
|
|
|
|
/obj/item/assembly/signaler/anomaly/manual_suicide(mob/living/carbon/user)
|
|
user.visible_message("<span class='suicide'>[user]'s [src] is reacting to the radio signal, warping [user.p_their()] body!</span>")
|
|
user.set_suicide(TRUE)
|
|
user.suicide_log()
|
|
user.gib()
|
|
|
|
/obj/item/assembly/signaler/anomaly/attackby(obj/item/I, mob/user, params)
|
|
if(I.tool_behaviour == TOOL_ANALYZER)
|
|
to_chat(user, "<span class='notice'>Analyzing... [src]'s stabilized field is fluctuating along frequency [format_frequency(frequency)], code [code].</span>")
|
|
return ..()
|
|
|
|
//Anomaly cores
|
|
/obj/item/assembly/signaler/anomaly/pyro
|
|
name = "\improper pyroclastic anomaly core"
|
|
desc = "The neutralized core of a pyroclastic anomaly. It feels warm to the touch. It'd probably be valuable for research."
|
|
icon_state = "pyro_core"
|
|
anomaly_type = /obj/effect/anomaly/pyro
|
|
|
|
/obj/item/assembly/signaler/anomaly/grav
|
|
name = "\improper gravitational anomaly core"
|
|
desc = "The neutralized core of a gravitational anomaly. It feels much heavier than it looks. It'd probably be valuable for research."
|
|
icon_state = "grav_core"
|
|
anomaly_type = /obj/effect/anomaly/grav
|
|
|
|
/obj/item/assembly/signaler/anomaly/flux
|
|
name = "\improper flux anomaly core"
|
|
desc = "The neutralized core of a flux anomaly. Touching it makes your skin tingle. It'd probably be valuable for research."
|
|
icon_state = "flux_core"
|
|
anomaly_type = /obj/effect/anomaly/flux
|
|
|
|
/obj/item/assembly/signaler/anomaly/bluespace
|
|
name = "\improper bluespace anomaly core"
|
|
desc = "The neutralized core of a bluespace anomaly. It keeps phasing in and out of view. It'd probably be valuable for research."
|
|
icon_state = "anomaly_core"
|
|
anomaly_type = /obj/effect/anomaly/bluespace
|
|
|
|
/obj/item/assembly/signaler/anomaly/vortex
|
|
name = "\improper vortex anomaly core"
|
|
desc = "The neutralized core of a vortex anomaly. It won't sit still, as if some invisible force is acting on it. It'd probably be valuable for research."
|
|
icon_state = "vortex_core"
|
|
anomaly_type = /obj/effect/anomaly/bhole
|