mirror of
https://github.com/Bubberstation/Bubberstation.git
synced 2026-07-14 17:45:02 +01:00
Secway and janicart key suicides (#49681)
* Update vehicle_key.dm Adds a unique suicide to the secway key where the user spins, and gibs after a short delay. * Improvements Fixes a runtime, adds a little silliness. * Adds shame result Grammar changes and "rewards" anyone that successfully fails to commit suicide. * Adds janicart key suicide Adds a skillcheck to the suicide that will have varying effects based on the level the user has. * Adds the return at the end of the file back Whoops, didn't notice I deleted that I guess. Dunno if that matters, but I have no reason to remove it, so I'm putting it back.
This commit is contained in:
@@ -9,10 +9,57 @@
|
||||
desc = "A keyring with a small steel key, and a rubber stun baton accessory."
|
||||
icon_state = "keysec"
|
||||
|
||||
/obj/item/key/security/suicide_act(mob/living/carbon/user)
|
||||
if(!user.emote("spin")) //In the off chance that someone attempts this suicide while under the effects of mime's bane they deserve the silliness.
|
||||
user.visible_message("<span class='suicide'>[user] is putting \the [src] in [user.p_their()] ear and starts [user.p_their()] motor! It looks like [user.p_theyre()] trying to commit suicide... But [user.p_they()] sputters and stalls out! </span>")
|
||||
playsound(src, 'sound/misc/sadtrombone.ogg', 50, TRUE, -1)
|
||||
return SHAME
|
||||
user.visible_message("<span class='suicide'>[user] is putting \the [src] in [user.p_their()] ear and starts [user.p_their()] motor! It looks like [user.p_theyre()] trying to commit suicide!</span>")
|
||||
user.say("Vroom vroom!!", forced="secway key suicide") //Not doing a shamestate here, because even if they fail to speak they're spinning.
|
||||
addtimer(CALLBACK(user, /mob/living/.proc/gib), 20)
|
||||
return MANUAL_SUICIDE
|
||||
|
||||
/obj/item/key/janitor
|
||||
desc = "A keyring with a small steel key, and a pink fob reading \"Pussy Wagon\"."
|
||||
icon_state = "keyjanitor"
|
||||
|
||||
/obj/item/key/janitor/suicide_act(mob/living/carbon/user)
|
||||
switch(user.mind.get_skill_level(/datum/skill/cleaning))
|
||||
if(SKILL_LEVEL_NONE to SKILL_LEVEL_NOVICE) //Their mind is too weak to ascend as a janny
|
||||
user.visible_message("<span class='suicide'>[user] is putting \the [src] in [user.p_their()] mouth and is trying to become one with the janicart, but has no idea where to start! It looks like [user.p_theyre()] trying to commit suicide!</span>")
|
||||
user.gib()
|
||||
return MANUAL_SUICIDE
|
||||
if(SKILL_LEVEL_APPRENTICE to SKILL_LEVEL_JOURNEYMAN) //At least they tried
|
||||
user.visible_message("<span class='suicide'>[user] is putting \the [src] in [user.p_their()] mouth and has inefficiently become one with the janicart! It looks like [user.p_theyre()] trying to commit suicide!</span>")
|
||||
user.AddElement(/datum/element/cleaning)
|
||||
addtimer(CALLBACK(src, .proc/manual_suicide, user), 51)
|
||||
return MANUAL_SUICIDE
|
||||
if(SKILL_LEVEL_EXPERT to SKILL_LEVEL_MASTER) //They are worthy enough, but can it go even further beyond?
|
||||
user.visible_message("<span class='suicide'>[user] is putting \the [src] in [user.p_their()] mouth and has skillfully become one with the janicart! It looks like [user.p_theyre()] trying to commit suicide!</span>")
|
||||
user.AddElement(/datum/element/cleaning)
|
||||
for(var/i in 1 to 100)
|
||||
addtimer(CALLBACK(user, /atom/proc/add_atom_colour, (i % 2)? "#a245bb" : "#7a7d82", ADMIN_COLOUR_PRIORITY), i)
|
||||
addtimer(CALLBACK(src, .proc/manual_suicide, user), 101)
|
||||
return MANUAL_SUICIDE
|
||||
if(SKILL_LEVEL_LEGENDARY to INFINITY) //Holy shit, look at that janny go!
|
||||
user.visible_message("<span class='suicide'>[user] is putting \the [src] in [user.p_their()] mouth and has epically become one with the janicart, and they're even in overdrive mode! It looks like [user.p_theyre()] trying to commit suicide!</span>")
|
||||
user.AddElement(/datum/element/cleaning)
|
||||
playsound(src, 'sound//magic/lightning_chargeup.ogg', 50, TRUE, -1)
|
||||
user.reagents.add_reagent(/datum/reagent/drug/methamphetamine, 10) //Gotta go fast!
|
||||
for(var/i in 1 to 150)
|
||||
addtimer(CALLBACK(user, /atom/proc/add_atom_colour, (i % 2)? "#a245bb" : "#7a7d82", ADMIN_COLOUR_PRIORITY), i)
|
||||
addtimer(CALLBACK(src, .proc/manual_suicide, user), 151)
|
||||
return MANUAL_SUICIDE
|
||||
|
||||
/obj/item/key/proc/manual_suicide(mob/living/user)
|
||||
if(user)
|
||||
user.remove_atom_colour(ADMIN_COLOUR_PRIORITY)
|
||||
user.visible_message("<span class='suicide'>[user] forgot [user.p_they()] isn't actually a janicart! That's a paddlin'!</span>")
|
||||
if(user.mind.get_skill_level(/datum/skill/cleaning) >= SKILL_LEVEL_LEGENDARY) //Janny janny janny janny janny
|
||||
playsound(src, 'sound/effects/adminhelp.ogg', 50, TRUE, -1)
|
||||
user.adjustOxyLoss(200)
|
||||
user.death(0)
|
||||
|
||||
/obj/item/key/lasso
|
||||
name = "bone lasso"
|
||||
desc = "Perfect for taming all kinds of supernatural beasts! (Warning: only perfect for taming one kind of supernatural beast.)"
|
||||
|
||||
Reference in New Issue
Block a user