mirror of
https://github.com/ParadiseSS13/Paradise.git
synced 2026-08-23 20:16:55 +01:00
* Migrate hailer to the new attack chain. * Apply suggestion from CRUNCH review. Github, please no funny business. Co-authored-by: CRUNCH <143041327+CRUNCH-Borg@users.noreply.github.com> Signed-off-by: Alan <alfalfascout@users.noreply.github.com> * Add fingerprint to whistle too. Why not. --------- Signed-off-by: Alan <alfalfascout@users.noreply.github.com> Co-authored-by: CRUNCH <143041327+CRUNCH-Borg@users.noreply.github.com>
71 lines
2.4 KiB
Plaintext
71 lines
2.4 KiB
Plaintext
|
|
#define USE_COOLDOWN 2 SECONDS
|
|
|
|
/obj/item/hailer
|
|
name = "hailer"
|
|
desc = "Used by obese officers to save their breath for running."
|
|
icon = 'icons/obj/device.dmi'
|
|
icon_state = "voice0"
|
|
inhand_icon_state = "flashtool"
|
|
w_class = WEIGHT_CLASS_TINY
|
|
flags = CONDUCT
|
|
var/next_use_time
|
|
var/spamcheck = FALSE
|
|
new_attack_chain = TRUE
|
|
|
|
/obj/item/hailer/activate_self(mob/living/carbon/user)
|
|
if(world.time < next_use_time)
|
|
return ..()
|
|
|
|
if(emagged)
|
|
playsound(get_turf(src), 'sound/voice/binsult.ogg', 100, TRUE, vary = 0) // Hueheuheuheuheuheuhe.
|
|
user.visible_message(SPAN_WARNING("[user]'s [name] gurgles, \"FUCK YOUR CUNT YOU SHIT EATING CUNT TILL YOU ARE A MASS EATING SHIT CUNT. EAT PENISES IN YOUR FUCK FACE AND SHIT OUT ABORTIONS TO FUCK UP SHIT IN YOUR ASS YOU COCK FUCK SHIT MONKEY FROM THE DEPTHS OF SHIT\""))
|
|
else
|
|
playsound(get_turf(src), 'sound/voice/halt.ogg', 100, TRUE, vary = 0)
|
|
user.visible_message(SPAN_WARNING("[user]'s [name] rasps, \"Halt! Security!\""))
|
|
|
|
add_fingerprint(user)
|
|
next_use_time = world.time + USE_COOLDOWN
|
|
return ITEM_INTERACT_COMPLETE
|
|
|
|
/obj/item/hailer/emag_act(mob/user)
|
|
add_fingerprint(user)
|
|
if(!emagged)
|
|
to_chat(user, SPAN_WARNING("You overload [src]'s voice synthesizer!"))
|
|
emagged = TRUE
|
|
return TRUE
|
|
to_chat(user, SPAN_NOTICE("You load [src]'s voice synthesizer a normal amount."))
|
|
emagged = FALSE
|
|
return TRUE
|
|
|
|
#undef USE_COOLDOWN
|
|
|
|
/obj/item/clothing/mask/whistle
|
|
name = "whistle"
|
|
desc = "A metal pea-whistle. Can be blown while held, or worn in the mouth."
|
|
icon_state = "whistle"
|
|
w_class = WEIGHT_CLASS_TINY
|
|
flags = CONDUCT
|
|
body_parts_covered = null
|
|
actions_types = list(/datum/action/item_action/whistle)
|
|
COOLDOWN_DECLARE(whistle_cooldown)
|
|
sprite_sheets = list(
|
|
"Vox" = 'icons/mob/clothing/species/vox/mask.dmi',
|
|
"Unathi" = 'icons/mob/clothing/species/unathi/mask.dmi',
|
|
"Tajaran" = 'icons/mob/clothing/species/tajaran/mask.dmi',
|
|
"Vulpkanin" = 'icons/mob/clothing/species/vulpkanin/mask.dmi',
|
|
"Grey" = 'icons/mob/clothing/species/grey/mask.dmi'
|
|
)
|
|
|
|
/obj/item/clothing/mask/whistle/activate_self(mob/user)
|
|
if(..())
|
|
return ITEM_INTERACT_COMPLETE
|
|
|
|
if(!COOLDOWN_FINISHED(src, whistle_cooldown))
|
|
return ITEM_INTERACT_COMPLETE
|
|
|
|
add_fingerprint(user)
|
|
playsound(src, pick('sound/items/whistle1.ogg', 'sound/items/whistle2.ogg', 'sound/items/whistle3.ogg'), 25)
|
|
COOLDOWN_START(src, whistle_cooldown, 4 SECONDS)
|
|
return ITEM_INTERACT_COMPLETE
|