[MIRROR] Adds Toggleable Stomachs w/ toggleable visibility (#8563)

Co-authored-by: C.L <killer65311@gmail.com>
Co-authored-by: Kashargul <144968721+Kashargul@users.noreply.github.com>
Co-authored-by: Kashargul <KashL@t-online.de>
This commit is contained in:
CHOMPStation2
2024-09-02 11:48:28 -07:00
committed by GitHub
parent 2fc85eb044
commit c3578b9658
34 changed files with 416 additions and 314 deletions

View File

@@ -1,5 +1,5 @@
/client/proc/reload_configuration()
set category = "Debug"
set category = "Debug.Server"
set name = "Reload Configuration"
set desc = "Force config reload to world default"
if(!check_rights(R_DEBUG))

View File

@@ -2,12 +2,6 @@
var/gender_change_cooldown = 0 // A cooldown for gender and gender indentify changing procs to make it easy to avoid spam of gender change
var/loneliness_stage = 0
var/next_loneliness_time = 0
vore_capacity = 3
vore_capacity_ex = list("stomach" = 3, "taur belly" = 3)
vore_fullness_ex = list("stomach" = 0, "taur belly" = 0)
vore_icon_bellies = list("stomach", "taur belly")
var/struggle_anim_stomach = FALSE
var/struggle_anim_taur = FALSE
var/hide_headset = FALSE
var/hide_glasses = FALSE
var/speech_sound_enabled = TRUE

View File

@@ -1,6 +1,5 @@
/datum/species
var/crit_mod = 1
var/vore_belly_default_variant = "H"
var/list/env_traits = list()
var/dirtslip = FALSE
var/photosynthesizing = FALSE

View File

@@ -35,72 +35,6 @@
apply_layer(SHOES_LAYER)
apply_layer(SHOES_LAYER_ALT)
/mob/living/carbon/human/proc/update_vore_belly_sprite()
if(QDESTROYING(src))
return
remove_layer(VORE_BELLY_LAYER)
var/image/vore_belly_image = get_vore_belly_image()
if(vore_belly_image)
vore_belly_image.layer = BODY_LAYER+VORE_BELLY_LAYER
overlays_standing[VORE_BELLY_LAYER] = vore_belly_image
apply_layer(VORE_BELLY_LAYER)
/mob/living/carbon/human/proc/get_vore_belly_image()
if(!(wear_suit && wear_suit.flags_inv & HIDETAIL))
var/vs_fullness = vore_fullness_ex["stomach"]
var/icon/vorebelly_s = new/icon(icon = 'modular_chomp/icons/mob/vore/Bellies.dmi', icon_state = "[species.vore_belly_default_variant]Belly[vs_fullness][struggle_anim_stomach ? "" : " idle"]")
vorebelly_s.Blend(vore_sprite_color["stomach"], vore_sprite_multiply["stomach"] ? ICON_MULTIPLY : ICON_ADD)
var/image/working = image(vorebelly_s)
working.overlays += em_block_image_generic(working)
return working
return null
/mob/living/carbon/human/proc/vore_belly_animation()
if(!struggle_anim_stomach)
struggle_anim_stomach = TRUE
update_vore_belly_sprite()
spawn(12)
struggle_anim_stomach = FALSE
update_vore_belly_sprite()
/mob/living/carbon/human/proc/update_vore_tail_sprite()
if(QDESTROYING(src))
return
remove_layer(VORE_TAIL_LAYER)
var/image/vore_tail_image = get_vore_tail_image()
if(vore_tail_image)
vore_tail_image.layer = BODY_LAYER+VORE_TAIL_LAYER
overlays_standing[VORE_TAIL_LAYER] = vore_tail_image
apply_layer(VORE_TAIL_LAYER)
/mob/living/carbon/human/proc/get_vore_tail_image()
if(tail_style && istaurtail(tail_style) && tail_style:vore_tail_sprite_variant)
var/vs_fullness = vore_fullness_ex["taur belly"]
var/loaf_alt = lying && tail_style:belly_variant_when_loaf
var/fullness_icons = min(tail_style.fullness_icons, vs_fullness)
var/icon/vorebelly_s = new/icon(icon = tail_style.bellies_icon_path, icon_state = "Taur[tail_style:vore_tail_sprite_variant]-Belly-[fullness_icons][loaf_alt ? " loaf" : (struggle_anim_taur ? "" : " idle")]")
vorebelly_s.Blend(vore_sprite_color["taur belly"], vore_sprite_multiply["taur belly"] ? ICON_MULTIPLY : ICON_ADD)
var/image/working = image(vorebelly_s)
working.pixel_x = -16
if(tail_style.em_block)
working.overlays += em_block_image_generic(working)
return working
return null
/mob/living/carbon/human/proc/vore_tail_animation()
if(tail_style.struggle_anim && !struggle_anim_taur)
struggle_anim_taur = TRUE
update_vore_tail_sprite()
spawn(12)
struggle_anim_taur = FALSE
update_vore_tail_sprite()
/mob/living/carbon/human/proc/GetAppearanceFromPrefs(var/flavourtext, var/oocnotes)
/* Jank code that effectively creates the client's mob from save, then copies its appearance to our current mob.
Intended to be used with shapeshifter species so we don't reset their organs in doing so.*/

View File

@@ -1,63 +1,3 @@
/datum/sprite_accessory/tail
var/vore_tail_sprite_variant = ""
var/belly_variant_when_loaf = FALSE
var/fullness_icons = 0
var/struggle_anim = FALSE
var/bellies_icon_path = 'modular_chomp/icons/mob/vore/Taur_Bellies.dmi'
/datum/sprite_accessory/tail/taur/wolf
vore_tail_sprite_variant = "N"
fullness_icons = 3
/datum/sprite_accessory/tail/taur/naga/naga_2c
vore_tail_sprite_variant = "Naga"
fullness_icons = 1
/datum/sprite_accessory/tail/taur/horse
vore_tail_sprite_variant = "Horse"
fullness_icons = 1
/datum/sprite_accessory/tail/taur/cow
vore_tail_sprite_variant = "Cow"
fullness_icons = 1
/datum/sprite_accessory/tail/taur/lizard
vore_tail_sprite_variant = "Lizard"
fullness_icons = 1
/datum/sprite_accessory/tail/taur/lizard/synthlizard
vore_tail_sprite_variant = "SynthLiz"
fullness_icons = 1
/datum/sprite_accessory/tail/taur/feline
vore_tail_sprite_variant = "Feline"
belly_variant_when_loaf = TRUE
fullness_icons = 1
/datum/sprite_accessory/tail/taur/slug
vore_tail_sprite_variant = "Slug"
fullness_icons = 1
/datum/sprite_accessory/tail/taur/drake
vore_tail_sprite_variant = "Drake"
belly_variant_when_loaf = TRUE
fullness_icons = 3
/datum/sprite_accessory/tail/taur/otie
vore_tail_sprite_variant = "Otie"
belly_variant_when_loaf = TRUE
fullness_icons = 1
/datum/sprite_accessory/tail/taur/deer
vore_tail_sprite_variant = "Deer"
belly_variant_when_loaf = TRUE
fullness_icons = 1
/datum/sprite_accessory/tail/taur/skunk
vore_tail_sprite_variant = "Skunk"
belly_variant_when_loaf = TRUE
fullness_icons = 1
/datum/sprite_accessory/tail/taur/ch
icon = 'icons/mob/vore/taurs_ch.dmi'//Parent which allows us to not need to set icon every time.