diff --git a/code/__defines/lighting.dm b/code/__defines/lighting.dm index 60513c5a8f..8ad6fdfcf5 100644 --- a/code/__defines/lighting.dm +++ b/code/__defines/lighting.dm @@ -84,4 +84,4 @@ #define LIGHT_COLOR_INCANDESCENT_FLASHLIGHT "#FFCC66" //Fake ambient occlusion filter -#define AMBIENT_OCCLUSION filter(type="drop_shadow", x=0, y=-2, size=4, offset=4, color="#04080FAA") +#define AMBIENT_OCCLUSION filter(type="drop_shadow", x=0, y=-2, size=4, offset=3, color="#04080F80") diff --git a/code/modules/mob/living/carbon/human/species/species_vr.dm b/code/modules/mob/living/carbon/human/species/species_vr.dm index 1d0a73d669..c3831d5f55 100644 --- a/code/modules/mob/living/carbon/human/species/species_vr.dm +++ b/code/modules/mob/living/carbon/human/species/species_vr.dm @@ -18,6 +18,7 @@ var/wing_animation var/icobase_wing var/wikilink = null //link to wiki page for species + var/icon_height = 32 /datum/species/proc/update_attack_types() unarmed_attacks = list() diff --git a/code/modules/mob/living/carbon/human/species/station/station_special_vr.dm b/code/modules/mob/living/carbon/human/species/station/station_special_vr.dm index cdf1638453..e67a670d82 100644 --- a/code/modules/mob/living/carbon/human/species/station/station_special_vr.dm +++ b/code/modules/mob/living/carbon/human/species/station/station_special_vr.dm @@ -406,6 +406,7 @@ name_language = LANGUAGE_CANILUNZT primitive_form = "Wolpin" color_mult = 1 + icon_height = 64 min_age = 18 max_age = 200 diff --git a/code/modules/mob/living/simple_mob/subtypes/animal/giant_spider/giant_spider_vr.dm b/code/modules/mob/living/simple_mob/subtypes/animal/giant_spider/giant_spider_vr.dm index 4257976efc..a12a76a679 100644 --- a/code/modules/mob/living/simple_mob/subtypes/animal/giant_spider/giant_spider_vr.dm +++ b/code/modules/mob/living/simple_mob/subtypes/animal/giant_spider/giant_spider_vr.dm @@ -34,6 +34,7 @@ desc = "Absolutely gigantic, this creature is horror itself." tt_desc = "X Brachypelma phorus tyrannus" icon = 'icons/mob/64x64.dmi' + vis_height = 64 icon_state = "spider_queen" icon_living = "spider_queen" icon_dead = "spider_queen_dead" diff --git a/code/modules/mob/living/simple_mob/subtypes/animal/space/gaslamp_vr.dm b/code/modules/mob/living/simple_mob/subtypes/animal/space/gaslamp_vr.dm index 909c8034e5..4962920319 100644 --- a/code/modules/mob/living/simple_mob/subtypes/animal/space/gaslamp_vr.dm +++ b/code/modules/mob/living/simple_mob/subtypes/animal/space/gaslamp_vr.dm @@ -25,6 +25,7 @@ TODO: Make them light up and heat the air when exposed to oxygen. icon_living = "gaslamp" icon_dead = "gaslamp-dead" icon = 'icons/mob/vore32x64.dmi' + vis_height = 64 faction = "virgo3b" maxHealth = 100 diff --git a/code/modules/mob/living/simple_mob/subtypes/horror/Master.dm b/code/modules/mob/living/simple_mob/subtypes/horror/Master.dm index 50b454370f..4d2c3cb115 100644 --- a/code/modules/mob/living/simple_mob/subtypes/horror/Master.dm +++ b/code/modules/mob/living/simple_mob/subtypes/horror/Master.dm @@ -8,6 +8,7 @@ icon_rest = "Helix" faction = "horror" icon = 'icons/mob/horror_show/master.dmi' + vis_height = 64 icon_gib = "generic_gib" anchored = 1 diff --git a/code/modules/mob/living/simple_mob/subtypes/horror/shittytim.dm b/code/modules/mob/living/simple_mob/subtypes/horror/shittytim.dm index 105ff22315..3cc43aa070 100644 --- a/code/modules/mob/living/simple_mob/subtypes/horror/shittytim.dm +++ b/code/modules/mob/living/simple_mob/subtypes/horror/shittytim.dm @@ -8,6 +8,7 @@ icon_rest = "shitty_tim" faction = "horror" icon = 'icons/mob/horror_show/tallhorror.dmi' + vis_height = 64 icon_gib = "generic_gib" attack_sound = 'sound/h_sounds/youknowwhoitis.ogg' diff --git a/code/modules/mob/living/simple_mob/subtypes/horror/timling.dm b/code/modules/mob/living/simple_mob/subtypes/horror/timling.dm index 6985c3ec8c..0a1cd4f2be 100644 --- a/code/modules/mob/living/simple_mob/subtypes/horror/timling.dm +++ b/code/modules/mob/living/simple_mob/subtypes/horror/timling.dm @@ -8,6 +8,7 @@ icon_rest = "timling" faction = "horror" icon = 'icons/mob/horror_show/tallhorror.dmi' + vis_height = 64 icon_gib = "generic_gib" attack_sound = 'sound/h_sounds/youknowwhoitis.ogg' diff --git a/code/modules/mob/living/simple_mob/subtypes/vore/deathclaw.dm b/code/modules/mob/living/simple_mob/subtypes/vore/deathclaw.dm index 7b5bef5415..54f77c8025 100644 --- a/code/modules/mob/living/simple_mob/subtypes/vore/deathclaw.dm +++ b/code/modules/mob/living/simple_mob/subtypes/vore/deathclaw.dm @@ -13,6 +13,7 @@ icon_living = "deathclaw" icon_state = "deathclaw" icon = 'icons/mob/vore64x64.dmi' + vis_height = 64 attacktext = list("mauled") diff --git a/code/modules/mob/living/simple_mob/subtypes/vore/demon/demon.dm b/code/modules/mob/living/simple_mob/subtypes/vore/demon/demon.dm index f8ad8a2a4c..3a75269869 100644 --- a/code/modules/mob/living/simple_mob/subtypes/vore/demon/demon.dm +++ b/code/modules/mob/living/simple_mob/subtypes/vore/demon/demon.dm @@ -7,6 +7,7 @@ icon_dead = "boxfox_dead" icon_rest = "boxfox_rest" icon = 'icons/mob/demon_vr.dmi' + vis_height = 47 faction = "demon" maxHealth = 30 diff --git a/code/modules/mob/living/simple_mob/subtypes/vore/dragon.dm b/code/modules/mob/living/simple_mob/subtypes/vore/dragon.dm index b2c68d6f1c..50471465e3 100644 --- a/code/modules/mob/living/simple_mob/subtypes/vore/dragon.dm +++ b/code/modules/mob/living/simple_mob/subtypes/vore/dragon.dm @@ -6,6 +6,7 @@ icon_living = "reddragon" icon_state = "reddragon" icon = 'icons/mob/vore64x64.dmi' + vis_height = 64 faction = "dragon" maxHealth = 500 // Boss diff --git a/code/modules/mob/living/simple_mob/subtypes/vore/panther.dm b/code/modules/mob/living/simple_mob/subtypes/vore/panther.dm index 7c8439a5ab..82feecfd88 100644 --- a/code/modules/mob/living/simple_mob/subtypes/vore/panther.dm +++ b/code/modules/mob/living/simple_mob/subtypes/vore/panther.dm @@ -7,6 +7,7 @@ icon_living = "panther" icon_dead = "panther-dead" icon = 'icons/mob/vore64x64.dmi' + vis_height = 64 faction = "panther" maxHealth = 200 diff --git a/code/modules/mob/living/simple_mob/subtypes/vore/snake.dm b/code/modules/mob/living/simple_mob/subtypes/vore/snake.dm index 5b6bd24139..cb410fcc1c 100644 --- a/code/modules/mob/living/simple_mob/subtypes/vore/snake.dm +++ b/code/modules/mob/living/simple_mob/subtypes/vore/snake.dm @@ -6,6 +6,7 @@ icon_living = "snake" icon_state = "snake" icon = 'icons/mob/vore64x64.dmi' + vis_height = 64 faction = "snake" maxHealth = 200 diff --git a/code/modules/mob/living/simple_mob/subtypes/vore/zz_vore_overrides.dm b/code/modules/mob/living/simple_mob/subtypes/vore/zz_vore_overrides.dm index ef38ed0491..a39dd865a0 100644 --- a/code/modules/mob/living/simple_mob/subtypes/vore/zz_vore_overrides.dm +++ b/code/modules/mob/living/simple_mob/subtypes/vore/zz_vore_overrides.dm @@ -74,12 +74,14 @@ default_pixel_x = -16 pixel_x = -16 pixel_y = 0 + vis_height = 64 vore_capacity = 3 vore_pounce_chance = 75 /mob/living/simple_mob/animal/space/alien/sentinel/praetorian icon = 'icons/mob/vore64x64.dmi' + vis_height = 64 vore_icons = SA_ICON_LIVING | SA_ICON_REST /mob/living/simple_mob/animal/space/alien/queen/empress/mother diff --git a/code/modules/vore/eating/living_vr.dm b/code/modules/vore/eating/living_vr.dm index fd361677cc..467cfc9d17 100644 --- a/code/modules/vore/eating/living_vr.dm +++ b/code/modules/vore/eating/living_vr.dm @@ -29,6 +29,7 @@ var/can_be_drop_pred = TRUE // Mobs are pred by default. var/next_preyloop // For Fancy sound internal loop var/adminbus_trash = FALSE // For abusing trash eater for event shenanigans. + var/vis_height = 32 // Sprite height used for resize features. // // Hook for generic creation of stuff on new creatures diff --git a/code/modules/vore/resizing/resize_vr.dm b/code/modules/vore/resizing/resize_vr.dm index 8fc76eeb30..e43ce011d0 100644 --- a/code/modules/vore/resizing/resize_vr.dm +++ b/code/modules/vore/resizing/resize_vr.dm @@ -71,7 +71,7 @@ var/const/RESIZE_A_SMALLTINY = (RESIZE_SMALL + RESIZE_TINY) / 2 var/duration = (abs(change)+0.25) SECONDS var/matrix/resize = matrix() // Defines the matrix to change the player's size resize.Scale(new_size) //Change the size of the matrix - resize.Translate(0, 16 * (new_size - 1)) //Move the player up in the tile so their feet align with the bottom + resize.Translate(0, (vis_height/2) * (new_size - 1)) //Move the player up in the tile so their feet align with the bottom animate(src, transform = resize, time = duration) //Animate the player resizing var/aura_grow_to = change > 0 ? 2 : 0.5 @@ -85,9 +85,11 @@ var/const/RESIZE_A_SMALLTINY = (RESIZE_SMALL + RESIZE_TINY) / 2 update_transform() //Lame way /mob/living/carbon/human/resize(var/new_size, var/animate = TRUE) + if(species) + vis_height = species.icon_height . = ..() if(LAZYLEN(hud_list) && has_huds) - var/new_y_offset = 32 * (size_multiplier - 1) + var/new_y_offset = vis_height * (size_multiplier - 1) for(var/index = 1 to hud_list.len) var/image/HI = grab_hud(index) HI.pixel_y = new_y_offset