diff --git a/code/modules/mob/living/simple_animal/simple_animal.dm b/code/modules/mob/living/simple_animal/simple_animal.dm index dd6b6723d5..1f5cb25862 100644 --- a/code/modules/mob/living/simple_animal/simple_animal.dm +++ b/code/modules/mob/living/simple_animal/simple_animal.dm @@ -314,8 +314,9 @@ else ma.icon_state = initial(icon_state) - if(update_vore_icon()) // VOREStation edit - ma.icon_state = update_vore_icon() + var/vore_icon_state = update_vore_icon() //VOREStation edit + if(vore_icon_state) + ma.icon_state = vore_icon_state if(has_hands) if(r_hand_sprite) diff --git a/code/modules/mob/living/simple_animal/simple_animal_vr.dm b/code/modules/mob/living/simple_animal/simple_animal_vr.dm index 4f9ab80bf4..faae913d44 100644 --- a/code/modules/mob/living/simple_animal/simple_animal_vr.dm +++ b/code/modules/mob/living/simple_animal/simple_animal_vr.dm @@ -48,21 +48,17 @@ vore_fullness = min(vore_capacity, new_fullness) /mob/living/simple_animal/proc/update_vore_icon() - if(vore_active) - update_fullness() - if(!vore_fullness) - return 0 - else if((stat == CONSCIOUS) && (!icon_rest || !resting || !incapacitated(INCAPACITATION_DISABLED)) && (vore_icons & SA_ICON_LIVING)) - return "[icon_living]-[vore_fullness]" - else if(stat >= DEAD && (vore_icons & SA_ICON_DEAD)) - return "[icon_dead]-[vore_fullness]" - else if(((stat == UNCONSCIOUS) || resting || incapacitated(INCAPACITATION_DISABLED) ) && icon_rest && (vore_icons & SA_ICON_REST)) - return "[icon_rest]-[vore_fullness]" - return 0 - -/mob/living/simple_animal/lay_down() - ..() - update_icons() + if(!vore_active) + return 0 + update_fullness() + if(!vore_fullness) + return 0 + else if((stat == CONSCIOUS) && (!icon_rest || !resting || !incapacitated(INCAPACITATION_DISABLED)) && (vore_icons & SA_ICON_LIVING)) + return "[icon_living]-[vore_fullness]" + else if(stat >= DEAD && (vore_icons & SA_ICON_DEAD)) + return "[icon_dead]-[vore_fullness]" + else if(((stat == UNCONSCIOUS) || resting || incapacitated(INCAPACITATION_DISABLED) ) && icon_rest && (vore_icons & SA_ICON_REST)) + return "[icon_rest]-[vore_fullness]" /mob/living/simple_animal/proc/will_eat(var/mob/living/M) if(client) //You do this yourself, dick! diff --git a/code/modules/vore/resizing/resize_vr.dm b/code/modules/vore/resizing/resize_vr.dm index 28f398ff99..a9487ce8d7 100644 --- a/code/modules/vore/resizing/resize_vr.dm +++ b/code/modules/vore/resizing/resize_vr.dm @@ -45,6 +45,14 @@ var/const/RESIZE_A_SMALLTINY = (RESIZE_SMALL + RESIZE_TINY) / 2 M.Translate(0, 16*(size_multiplier-1)) src.transform = M +/mob/living/update_transform() + . = ..() + ASSERT(!ishuman(src)) + var/matrix/M = matrix() + M.Scale(size_multiplier) + M.Translate(0, 16*(size_multiplier-1)) + src.transform = M + /** * Get the effective size of a mob. * Currently this is based only on size_multiplier for micro/macro stuff, @@ -64,7 +72,7 @@ var/const/RESIZE_A_SMALLTINY = (RESIZE_SMALL + RESIZE_TINY) / 2 /mob/living/proc/resize(var/new_size, var/animate = TRUE) if(size_multiplier == new_size) return 1 - + size_multiplier = new_size //Change size_multiplier so that other items can interact with them if(animate) var/change = new_size - size_multiplier