/tg/ Station 13 - Modules - TypesDefine Details

code/__HELPERS/hallucinations.dm

HALLUCINATION_ARG_TYPEWhat typepath of the hallucination
HALLUCINATION_ARG_SOURCEWhere the hallucination came from, for logging
HALLUCINATION_ARGLISTOnwards from this index, it's the arglist that gets passed into the hallucination created.
NO_HALLUCINATION_BIOTYPESBiotypes which cannot hallucinate for balance and logic reasons (not code)
cause_hallucinationCauses a hallucination of a certain type to the mob.
/proc/visible_hallucination_pulseEmits a hallucinating pulse around the passed atom. Affects everyone in the passed radius who can view the center, except for those with TRAIT_MADNESS_IMMUNE, or those who are blind.
/proc/hallucination_pulseEmits a hallucinating pulse around the passed atom. Affects everyone in the passed radius except for those with TRAIT_MADNESS_IMMUNE. This affects blind players.
/proc/generate_hallucination_weighted_listGenerates the global weighted list of random hallucinations.
/proc/debug_hallucination_weighted_listDebug proc for getting the total weight of the random_hallucination_weighted_list
/proc/get_random_valid_hallucination_subtypeGets a random subtype of the passed hallucination type that has a random_hallucination_weight > 0. If no subtype is passed, it will get any random hallucination subtype that is not abstract and has weight > 0. This can be used instead of picking from the global weighted list to just get a random valid hallucination.
/proc/select_hallucination_typeHelper to give the passed mob the ability to select a hallucination from the list of all hallucination subtypes.
/proc/create_delusionHelper to give the passed mob the ability to create a delusion hallucination (even a custom one). Returns a list of arguments - pass these to _cause_hallucination to cause the desired hallucination
BUBBLEGUM_HALLUCINATION_LINESLines the bubblegum hallucinatoin uses when it pops up

Define Details

BUBBLEGUM_HALLUCINATION_LINES

Lines the bubblegum hallucinatoin uses when it pops up

HALLUCINATION_ARGLIST

Onwards from this index, it's the arglist that gets passed into the hallucination created.

HALLUCINATION_ARG_SOURCE

Where the hallucination came from, for logging

HALLUCINATION_ARG_TYPE

What typepath of the hallucination

NO_HALLUCINATION_BIOTYPES

Biotypes which cannot hallucinate for balance and logic reasons (not code)

cause_hallucination

Causes a hallucination of a certain type to the mob.

First argument is always the type of halllucination, a /datum/hallucination, required. second argument is always the key source of the hallucination, used for admin logging, required.

Additionally, named arguments are supported for passing them forward to the created hallucination's new().