mirror of
https://github.com/vgstation-coders/vgstation13.git
synced 2025-12-10 18:32:03 +00:00
Punctualite (#35328)
* Punchualite * Tweaks * NewnameOldname * Tick tock * I spent like 2 hours forgetting BEDMAS was taught in grade 3 --------- Co-authored-by: Rubylips <Questionfrog@gmail.com> Co-authored-by: ShiftyRail <31417754+ShiftyRail@users.noreply.github.com>
This commit is contained in:
@@ -487,6 +487,7 @@
|
||||
#define MIDAZOLINE "midazoline"
|
||||
#define LOCUTOGEN "locutogen"
|
||||
#define BUMCIVILIAN "bumcivilian"
|
||||
#define PUNCTUALITE "punctualite"
|
||||
|
||||
//Plant-specific reagents
|
||||
#define TANNIC_ACID "tannic_acid"
|
||||
|
||||
@@ -10335,6 +10335,43 @@ var/global/list/tonio_doesnt_remove=list("tonio", "blood")
|
||||
if(!locate(/obj/effect/decal/cleanable/purpledrank) in T)
|
||||
new /obj/effect/decal/cleanable/purpledrank(T)
|
||||
|
||||
/datum/reagent/punctualite
|
||||
name = "Punctualite"
|
||||
id = PUNCTUALITE
|
||||
description = "Nicknamed mad chemist's alarm clock. Explodes on the turn of the hour when within a living creature."
|
||||
reagent_state = REAGENT_STATE_LIQUID
|
||||
color = "#8d8791" //rgb: 200, 165, 220
|
||||
custom_metabolism = 0 //Wouldn't be much fun if it all got metabolized beforehand
|
||||
var/currentHour = 0 //The hour it was introduced into the system so it doesn't blow right away
|
||||
|
||||
/datum/reagent/punctualite/on_mob_life(var/mob/living/M)
|
||||
if(..())
|
||||
return 1
|
||||
if(prob(5) && prob(5)) //0.25% chance per tick
|
||||
var/mob/living/carbon/human/earProtMan = null
|
||||
if(ishuman(M))
|
||||
earProtMan = M
|
||||
if(!M.is_deaf() && !earProtMan || !earProtMan.earprot())
|
||||
if(prob(50))
|
||||
to_chat(M, "<span class='notice'>You hear a ticking sound</span>")
|
||||
else
|
||||
to_chat(M, "<span class='notice'>You hear a tocking sound</span>")
|
||||
if((floor(world.time / (1 HOURS)) + 1) > currentHour)
|
||||
if(!currentHour)
|
||||
currentHour = floor(world.time / (1 HOURS)) + 1
|
||||
else
|
||||
punctualiteExplode(M)
|
||||
currentHour = floor(world.time / (1 HOURS)) + 1
|
||||
|
||||
/datum/reagent/punctualite/proc/punctualiteExplode(var/mob/living/H)
|
||||
var/bigBoom = 0
|
||||
var/medBoom = 0
|
||||
var/litBoom = 0
|
||||
bigBoom = min(floor(volume/150), 2) //Max breach is 2, twice a welder tank
|
||||
medBoom = min(floor(volume/50), 4)
|
||||
litBoom = min(floor(volume/20), 7)
|
||||
explosion(get_turf(H), bigBoom, medBoom, litBoom)
|
||||
|
||||
/datum/reagent/hyperzine/methamphetamine //slightly better than 'zine
|
||||
name = "Methamphetamine" //Only used on the Laundromat spess vault
|
||||
id = METHAMPHETAMINE
|
||||
|
||||
@@ -4171,5 +4171,13 @@
|
||||
var/list/allowed_reagents = chemical_reagents_list - blocked_chems
|
||||
holder.add_reagent(pick(allowed_reagents),created_volume)
|
||||
|
||||
/datum/chemical_reaction/punctualite
|
||||
name = "Punctualite"
|
||||
id = PUNCTUALITE
|
||||
result = PUNCTUALITE
|
||||
required_reagents = list(HYPERZINE = 10, FUEL = 10)
|
||||
required_catalysts = list(ZOMBIEPOWDER = 5)
|
||||
result_amount = 5
|
||||
|
||||
#undef ALERT_AMOUNT_ONLY
|
||||
#undef ALERT_ALL_REAGENTS
|
||||
|
||||
Reference in New Issue
Block a user