mirror of
https://github.com/Bubberstation/Bubberstation.git
synced 2026-08-22 12:41:09 +01:00
[MIRROR] adds the ability to splat the goat [MDB IGNORE] (#9860)
* the goat plushie can be run over (#63148) You can now run over the plushie with the tram, splatting it into the ground Non-joke reason: The tram now sends a signal to the destination turf, which can be used by objects to have unique interactions with the tram when being ran over. * adds the ability to splat the goat Co-authored-by: MMMiracles <lolaccount1@hotmail.com>
This commit is contained in:
@@ -600,10 +600,22 @@
|
||||
squeak_override = list('sound/weapons/punch1.ogg'=1)
|
||||
/// Whether or not this goat is currently taking in a monsterous doink
|
||||
var/going_hard = FALSE
|
||||
/// Whether or not this goat has been flattened like a funny pancake
|
||||
var/splat = FALSE
|
||||
|
||||
/obj/item/toy/plush/goatplushie/Initialize(mapload)
|
||||
. = ..()
|
||||
var/static/list/loc_connections = list(
|
||||
COMSIG_TURF_INDUSTRIAL_LIFT_ENTER = .proc/splat,
|
||||
)
|
||||
AddElement(/datum/element/connect_loc, loc_connections)
|
||||
|
||||
/obj/item/toy/plush/goatplushie/attackby(obj/item/clothing/mask/cigarette/rollie/fat_dart, mob/user, params)
|
||||
if(!istype(fat_dart))
|
||||
return ..()
|
||||
if(splat)
|
||||
to_chat(user, span_notice("[src] doesn't seem to be able to go hard right now."))
|
||||
return
|
||||
if(going_hard)
|
||||
to_chat(user, span_notice("[src] is already going too hard!"))
|
||||
return
|
||||
@@ -615,8 +627,22 @@
|
||||
going_hard = TRUE
|
||||
update_icon(UPDATE_OVERLAYS)
|
||||
|
||||
/obj/item/toy/plush/goatplushie/proc/splat(datum/source)
|
||||
SIGNAL_HANDLER
|
||||
if(splat)
|
||||
return
|
||||
if(going_hard)
|
||||
going_hard = FALSE
|
||||
update_icon(UPDATE_OVERLAYS)
|
||||
icon_state = "goat_splat"
|
||||
playsound(src, "desecration", 50, TRUE)
|
||||
visible_message(span_danger("[src] gets absolutely flattened!"))
|
||||
splat = TRUE
|
||||
|
||||
/obj/item/toy/plush/goatplushie/examine()
|
||||
. = ..()
|
||||
if(splat)
|
||||
. += span_notice("[src] might need medical attention.")
|
||||
if(going_hard)
|
||||
. += span_notice("[src] is going so hard, feel free to take a picture.")
|
||||
|
||||
|
||||
@@ -233,6 +233,8 @@ GLOBAL_LIST_EMPTY(lifts)
|
||||
destination = get_step_multiz(src, going)
|
||||
else
|
||||
destination = going
|
||||
///handles any special interactions objects could have with the lift/tram, handled on the item itself
|
||||
SEND_SIGNAL(destination, COMSIG_TURF_INDUSTRIAL_LIFT_ENTER)
|
||||
|
||||
if(istype(destination, /turf/closed/wall))
|
||||
var/turf/closed/wall/C = destination
|
||||
|
||||
Reference in New Issue
Block a user