mirror of
https://github.com/Bubberstation/Bubberstation.git
synced 2026-08-23 13:10:02 +01:00
## About The Pull Request Does as the title says. ## Why It's Good For The Game Fixes https://github.com/Bubberstation/Bubberstation/issues/4386 ## Proof Of Testing It worked fully on my end. ## Changelog 🆑 fix: fixed dried cannabis not being removed from grinders after being ground /🆑
91 lines
3.5 KiB
Plaintext
91 lines
3.5 KiB
Plaintext
/obj/item/food/grown/cannabis/on_grind()
|
|
. = ..()
|
|
if(HAS_TRAIT(src, TRAIT_DRIED))
|
|
reagents.clear_reagents()
|
|
reagents.add_reagent(/datum/reagent/drug/thc/hash, 0.15 * seed.potency)
|
|
return TRUE
|
|
|
|
/datum/chemical_reaction/hash
|
|
required_reagents = list(/datum/reagent/drug/thc/hash = 10)
|
|
reaction_flags = REACTION_INSTANT
|
|
reaction_tags = REACTION_TAG_EASY | REACTION_TAG_CHEMICAL
|
|
|
|
/datum/chemical_reaction/hash/on_reaction(datum/reagents/holder, datum/equilibrium/reaction, created_volume)
|
|
var/location = get_turf(holder.my_atom)
|
|
for(var/i in 1 to created_volume)
|
|
new /obj/item/reagent_containers/hash(location)
|
|
|
|
/datum/chemical_reaction/dabs
|
|
required_reagents = list(/datum/reagent/drug/thc = 20)
|
|
required_temp = 420 //haha very funny
|
|
reaction_flags = REACTION_INSTANT
|
|
reaction_tags = REACTION_TAG_EASY | REACTION_TAG_CHEMICAL
|
|
|
|
/datum/chemical_reaction/dabs/on_reaction(datum/reagents/holder, datum/equilibrium/reaction, created_volume)
|
|
var/location = get_turf(holder.my_atom)
|
|
for(var/i in 1 to created_volume)
|
|
new /obj/item/reagent_containers/hash/dabs(location)
|
|
|
|
//shit for effects
|
|
/datum/mood_event/stoned
|
|
description = span_nicegreen("You're totally baked right now...\n")
|
|
mood_change = 6
|
|
timeout = 3 MINUTES
|
|
|
|
/atom/movable/screen/alert/stoned
|
|
name = "Stoned"
|
|
desc = "You're stoned out of your mind! Woaaahh..."
|
|
icon_state = "high"
|
|
|
|
//the reagent itself
|
|
/datum/reagent/drug/thc
|
|
name = "THC"
|
|
description = "A chemical found in cannabis that serves as its main psychoactive component."
|
|
color = "#cfa40c"
|
|
overdose_threshold = 30 //just gives funny effects, but doesnt hurt you; thc has no actual known overdose
|
|
ph = 6
|
|
taste_description = "skunk"
|
|
|
|
/datum/reagent/drug/thc/concentrated
|
|
name = "Concentrated THC"
|
|
description = "TCH in pure concentrated form"
|
|
|
|
/datum/reagent/drug/thc/on_mob_life(mob/living/carbon/M, seconds_per_tick, times_fired)
|
|
var/high_message = pick("You feel relaxed.", "You feel fucked up.", "You feel totally wrecked...")
|
|
if(M.hud_used!=null)
|
|
var/atom/movable/plane_master_controller/game_plane_master_controller = M.hud_used.plane_master_controllers[PLANE_MASTERS_GAME]
|
|
game_plane_master_controller.add_filter("weed_blur", 10, angular_blur_filter(0, 0, 0.45))
|
|
if(SPT_PROB(2.5, seconds_per_tick))
|
|
to_chat(M, span_notice("[high_message]"))
|
|
M.add_mood_event("stoned", /datum/mood_event/stoned, name)
|
|
M.throw_alert("stoned", /atom/movable/screen/alert/stoned)
|
|
M.sound_environment_override = SOUND_ENVIRONMENT_DRUGGED
|
|
M.set_dizzy_if_lower(5 * REM * seconds_per_tick * 2 SECONDS)
|
|
M.adjust_nutrition(-1 * REM * seconds_per_tick) //munchies
|
|
if(SPT_PROB(3.5, seconds_per_tick))
|
|
M.emote(pick("laugh","giggle"))
|
|
..()
|
|
|
|
/datum/reagent/drug/thc/on_mob_end_metabolize(mob/living/carbon/M)
|
|
. = ..()
|
|
if(M.hud_used!=null)
|
|
var/atom/movable/plane_master_controller/game_plane_master_controller = M.hud_used.plane_master_controllers[PLANE_MASTERS_GAME]
|
|
game_plane_master_controller.remove_filter("weed_blur")
|
|
M.clear_alert("stoned")
|
|
M.sound_environment_override = SOUND_ENVIRONMENT_NONE
|
|
|
|
/datum/reagent/drug/thc/overdose_process(mob/living/M, seconds_per_tick, times_fired)
|
|
var/cg420_message = pick("It's major...", "Oh my goodness...",)
|
|
if(SPT_PROB(1.5, seconds_per_tick))
|
|
M.say("[cg420_message]")
|
|
M.adjust_drowsiness(0.2 SECONDS * REM * normalise_creation_purity() * seconds_per_tick)
|
|
if(SPT_PROB(3.5, seconds_per_tick))
|
|
M.emote("cough")
|
|
..()
|
|
. = TRUE
|
|
|
|
/datum/reagent/drug/thc/hash //only exists to generate hash object
|
|
name = "hashish"
|
|
description = "Concentrated cannabis extract. Delivers a much better high when used in a bong."
|
|
color = "#cfa40c"
|