mirror of
https://github.com/Bubberstation/Bubberstation.git
synced 2026-07-14 17:45:02 +01:00
b540aaf8ab
* Afterattack is dead, long live Afterattack * wew * fixes --------- Co-authored-by: MrMelbert <51863163+MrMelbert@users.noreply.github.com> Co-authored-by: Gandalf <9026500+Gandalf2k15@users.noreply.github.com>
47 lines
1.5 KiB
Plaintext
47 lines
1.5 KiB
Plaintext
///Use on an anomaly core to "awake" the anomaly and stabilize it
|
|
/obj/item/anomaly_releaser
|
|
name = "anomaly releaser"
|
|
desc = "Single-use injector that releases and stabilizes anomalies by injecting an unknown substance."
|
|
icon = 'icons/obj/devices/syndie_gadget.dmi'
|
|
icon_state = "anomaly_releaser"
|
|
inhand_icon_state = "stimpen"
|
|
lefthand_file = 'icons/mob/inhands/equipment/medical_lefthand.dmi'
|
|
righthand_file = 'icons/mob/inhands/equipment/medical_righthand.dmi'
|
|
throwforce = 0
|
|
w_class = WEIGHT_CLASS_SMALL
|
|
throw_speed = 3
|
|
throw_range = 5
|
|
|
|
///icon state after being used up
|
|
var/used_icon_state = "anomaly_releaser_used"
|
|
///are we used? if used we can't be used again
|
|
var/used = FALSE
|
|
///Can we be used infinitely?
|
|
var/infinite = FALSE
|
|
|
|
/obj/item/anomaly_releaser/interact_with_atom(atom/target, mob/living/user, list/modifiers)
|
|
if(!istype(target, /obj/item/assembly/signaler/anomaly))
|
|
return NONE
|
|
|
|
if(used)
|
|
return ITEM_INTERACT_BLOCKING
|
|
if(!do_after(user, 3 SECONDS, target))
|
|
return ITEM_INTERACT_BLOCKING
|
|
if(used)
|
|
return ITEM_INTERACT_BLOCKING
|
|
|
|
var/obj/item/assembly/signaler/anomaly/core = target
|
|
if(!core.anomaly_type)
|
|
return ITEM_INTERACT_BLOCKING
|
|
|
|
var/obj/effect/anomaly/anomaly = new core.anomaly_type(get_turf(core))
|
|
anomaly.stabilize()
|
|
log_combat(user, anomaly, "released", object = src, addition = "in [get_area(target)].")
|
|
|
|
if(!infinite)
|
|
icon_state = used_icon_state
|
|
used = TRUE
|
|
name = "used " + name
|
|
qdel(core)
|
|
return ITEM_INTERACT_SUCCESS
|