/tg/ Station 13 - Modules - TypesVar Details - Proc Details

belly_function

Vars

allow_sound_groansSound preferences for full creaks & groans (size_fullness + size_stuffed)
allow_sound_gurglesSound preferences for stuffed gurgles and churns (size_fullness)
allow_sound_move_creaksSound preferences for heavier creaks, groans & gwrbles triggered by movement (size_fullness + size_stuffed)
allow_sound_move_sloshesSound preferences for active sloshes triggered by movement (size_stuffed)
base_size_cosmeticBaseline sizes that apply purely-cosmetic bellysize (e.g, preg/egg)
base_size_fullBaseline endosoma size (causes creaks and such), stacks with total_endo_size
base_size_stuffedBaseline actively-gurgly size for being stuffed, stacks with size gained from nutrition if applicable
color_with_uniformAuto-color belly to match a uniform.
current_size_unclampedlast_size but not clamped to an int, mostly a debug helper.
endo_sizeBase-size for calculating fullness/size with one occupant.
escape_helpersEscape helper actions for nommed guests (mob:/datum/action)
full_cooldownSound cooldown for fullness creaks & groans (allow_sound_groans)
full_soundsFull creaks, groans & similar (allow_sound_groans, full_cooldown)
hide_with_uniformAuto-hide belly with a uniform equipped.
horizontal_layerLive editable layers in case things go scrungy.
last_sizeUsed to avoid spamming sprite icon state changes.
layer_optionsA couple layer options for HORIZONTAL and SOUTH layers to play better with genitalia and certain styles of undersuit. TODO: Restore higher layer options or migrate to a more robust system when genitalia do. Ahhghh
maxsizeMaximum size for this belly to reach.
move_creak_cooldownSound cooldown for movement-induced creaks & gwrbles (allow_sound_move_creaks)
move_creaksMovement noise for a full but not sloshy tummy (allow_sound_move_creaks, move_creak_cooldown)
move_slosh_cooldownSound cooldown for
nommed_gasmixesGasmixes for nommed guests (mob:/datum/gas_mixture)
nommed_sizesSizes for nommed guests (mob:number)
nommedsMaster tracker for guests.
overlay_horizontalWorking state tracker for generating horizontal overlays
overlay_horizontal_allAll horizontal overlays, used for cutting in remove_from_user or recalculation of overlays.
overlay_northWorking state tracker for generating north overlays
overlay_north_allAll north overlays, used for cutting in remove_from_user or recalculation of overlays.
overlay_southWorking state tracker for generating south overlays, used to track if overlays are active; null if they aren't
overlay_south_allAll south overlays, used for cutting in remove_from_user or recalculation of overlays.
pred_modePred preferences. QUERY throws an alert before trying, ALWAYS will always try pending on target prefs.
sizemodSize modifier applied to ALL belly size providers. Good for making a 3ft teshi round out faster than a 12ft oversized shork.
sizemod_audioSize modifier applied to the sound system. Multiplicative with nutrition but NOT base sizemod.
sizemod_nutritionSize modifier applied to automatic stuffing calculation from get_fullness. Good for reducing its impact when Botany is nutrimentmaxxing.
skintone_worn_iconBespoke icons used for skintone bellies. No teshi subvariant as of yet as it's PROBABLY unneeded.
slosh_soundsMovement noise for an overfull, stuffed tummy (allow_sound_move_sloshes, move_slosh_cooldown)
stuff_majorNoisier gurgles and churns for being very stuffed (allow_sound_gurgles, stuff_major_cooldown)
stuff_major_cooldownSound cooldown for major gurgles, growls & churns (allow_sound_gurgles, high size_stuffed)
stuff_minorLow-level stuffed digestion noises (allow_sound_gurgles, stuff_minor_cooldown)
stuff_minor_cooldownSound cooldown for minor gurgles & burbles (allow_sound_gurgles)
stuffed_tempTotal stuffed fullness for sounds (size_stuffed), including nutrition & base stuffed size
total_endo_sizeTotal combined size from all guests.
total_fullnessTotal fullness size for sounds (size_fullness + size_stuffed), including guests, nutrition, and base sizes
use_skintoneWhether or not to use the skintone spritesheet.
worn_icon_64xWorn icon used for XL sizes that require a 64x64 sprite.
worn_icon_teshari_64xWorn icon used for XL sizes on a teshari that require a 64x64 sprite.

Procs

DestroyHandles all sanity checks during destruction. Frees everyone, tries to avoid any hanging refs, destroys acts, etc.
apply_to_userHelper for activating the belly. Culls old appearances as needed and registers signals & actions.
belly_processThis is where the magic happens for calculating sizes, triggering noise, etc.
config_menuThe great wall of ingame config options. This mirrors what you can access from the quirk prefs, but able to be edited ingame.
do_alt_appearanceThis isn't where the magic happens for doing the overlays. See the /erp/ alt_appearance subtype for more info.
do_nomThis is where the magic happens to actually nom someone. Do not call this outside of debug, it doesn't have consent checks.
free_targetHelper function that handles everything needed to free someone & do all associated sanity checks.
handle_internal_lifeformThis is what provides healthy air for occupants to breathe.
item_action_slot_checkSanity checks & required edits to make the belly action get properly granted.
on_stepSignal handler that allows for the various movement/jostling sounds to play.
on_user_deletedSimple little signal to avoid hanging onto lastuser & clear things if this gets nullspaced. Part of the CI Sacrifice Suite.
recalculate_guest_sizesHelper function that recalculates the total endo size from nommed guests.
refresh_overlaysHelper function that handles rebuilding overlays.
remove_from_userStrip the action & appearance from a user if needed. This is non-destructive; the quirk can be temporarily disabled by pref changes, body swaps, etc to reduce prefbreak risk. This means that when the user is back in their body & in a valid state, the quirk re-enables itself nondestructively.
try_nomThis isn't an action button, persay, but it is an action. This is the main helper function for handling pref & consent checks before nomming someone. Call this, not do_nom, unless you are debugging on local and don't have two clients to work with.
update_layer_modeHelper function that updates the layers in use

Var Details

allow_sound_groans

Sound preferences for full creaks & groans (size_fullness + size_stuffed)

allow_sound_gurgles

Sound preferences for stuffed gurgles and churns (size_fullness)

allow_sound_move_creaks

Sound preferences for heavier creaks, groans & gwrbles triggered by movement (size_fullness + size_stuffed)

allow_sound_move_sloshes

Sound preferences for active sloshes triggered by movement (size_stuffed)

base_size_cosmetic

Baseline sizes that apply purely-cosmetic bellysize (e.g, preg/egg)

base_size_full

Baseline endosoma size (causes creaks and such), stacks with total_endo_size

base_size_stuffed

Baseline actively-gurgly size for being stuffed, stacks with size gained from nutrition if applicable

color_with_uniform

Auto-color belly to match a uniform.

current_size_unclamped

last_size but not clamped to an int, mostly a debug helper.

endo_size

Base-size for calculating fullness/size with one occupant.

escape_helpers

Escape helper actions for nommed guests (mob:/datum/action)

full_cooldown

Sound cooldown for fullness creaks & groans (allow_sound_groans)

full_sounds

Full creaks, groans & similar (allow_sound_groans, full_cooldown)

hide_with_uniform

Auto-hide belly with a uniform equipped.

horizontal_layer

Live editable layers in case things go scrungy.

last_size

Used to avoid spamming sprite icon state changes.

layer_options

A couple layer options for HORIZONTAL and SOUTH layers to play better with genitalia and certain styles of undersuit. TODO: Restore higher layer options or migrate to a more robust system when genitalia do. Ahhghh

maxsize

Maximum size for this belly to reach.

move_creak_cooldown

Sound cooldown for movement-induced creaks & gwrbles (allow_sound_move_creaks)

move_creaks

Movement noise for a full but not sloshy tummy (allow_sound_move_creaks, move_creak_cooldown)

move_slosh_cooldown

Sound cooldown for

nommed_gasmixes

Gasmixes for nommed guests (mob:/datum/gas_mixture)

nommed_sizes

Sizes for nommed guests (mob:number)

nommeds

Master tracker for guests.

overlay_horizontal

Working state tracker for generating horizontal overlays

overlay_horizontal_all

All horizontal overlays, used for cutting in remove_from_user or recalculation of overlays.

overlay_north

Working state tracker for generating north overlays

overlay_north_all

All north overlays, used for cutting in remove_from_user or recalculation of overlays.

overlay_south

Working state tracker for generating south overlays, used to track if overlays are active; null if they aren't

overlay_south_all

All south overlays, used for cutting in remove_from_user or recalculation of overlays.

pred_mode

Pred preferences. QUERY throws an alert before trying, ALWAYS will always try pending on target prefs.

sizemod

Size modifier applied to ALL belly size providers. Good for making a 3ft teshi round out faster than a 12ft oversized shork.

sizemod_audio

Size modifier applied to the sound system. Multiplicative with nutrition but NOT base sizemod.

sizemod_nutrition

Size modifier applied to automatic stuffing calculation from get_fullness. Good for reducing its impact when Botany is nutrimentmaxxing.

skintone_worn_icon

Bespoke icons used for skintone bellies. No teshi subvariant as of yet as it's PROBABLY unneeded.

slosh_sounds

Movement noise for an overfull, stuffed tummy (allow_sound_move_sloshes, move_slosh_cooldown)

stuff_major

Noisier gurgles and churns for being very stuffed (allow_sound_gurgles, stuff_major_cooldown)

stuff_major_cooldown

Sound cooldown for major gurgles, growls & churns (allow_sound_gurgles, high size_stuffed)

stuff_minor

Low-level stuffed digestion noises (allow_sound_gurgles, stuff_minor_cooldown)

stuff_minor_cooldown

Sound cooldown for minor gurgles & burbles (allow_sound_gurgles)

stuffed_temp

Total stuffed fullness for sounds (size_stuffed), including nutrition & base stuffed size

total_endo_size

Total combined size from all guests.

total_fullness

Total fullness size for sounds (size_fullness + size_stuffed), including guests, nutrition, and base sizes

use_skintone

Whether or not to use the skintone spritesheet.

worn_icon_64x

Worn icon used for XL sizes that require a 64x64 sprite.

worn_icon_teshari_64x

Worn icon used for XL sizes on a teshari that require a 64x64 sprite.

Proc Details

Destroy

Handles all sanity checks during destruction. Frees everyone, tries to avoid any hanging refs, destroys acts, etc.

apply_to_user

Helper for activating the belly. Culls old appearances as needed and registers signals & actions.

belly_process

This is where the magic happens for calculating sizes, triggering noise, etc.

config_menu

The great wall of ingame config options. This mirrors what you can access from the quirk prefs, but able to be edited ingame.

do_alt_appearance

This isn't where the magic happens for doing the overlays. See the /erp/ alt_appearance subtype for more info.

do_nom

This is where the magic happens to actually nom someone. Do not call this outside of debug, it doesn't have consent checks.

free_target

Helper function that handles everything needed to free someone & do all associated sanity checks.

handle_internal_lifeform

This is what provides healthy air for occupants to breathe.

item_action_slot_check

Sanity checks & required edits to make the belly action get properly granted.

on_step

Signal handler that allows for the various movement/jostling sounds to play.

on_user_deleted

Simple little signal to avoid hanging onto lastuser & clear things if this gets nullspaced. Part of the CI Sacrifice Suite.

recalculate_guest_sizes

Helper function that recalculates the total endo size from nommed guests.

refresh_overlays

Helper function that handles rebuilding overlays.

remove_from_user

Strip the action & appearance from a user if needed. This is non-destructive; the quirk can be temporarily disabled by pref changes, body swaps, etc to reduce prefbreak risk. This means that when the user is back in their body & in a valid state, the quirk re-enables itself nondestructively.

try_nom

This isn't an action button, persay, but it is an action. This is the main helper function for handling pref & consent checks before nomming someone. Call this, not do_nom, unless you are debugging on local and don't have two clients to work with.

update_layer_mode

Helper function that updates the layers in use