From 90724e6306ec7e5c1550db4b60a72c4dd34e9fe6 Mon Sep 17 00:00:00 2001 From: AnturK Date: Fri, 8 May 2015 17:28:19 +0200 Subject: [PATCH] Adds resize variable for mobs --- code/__DEFINES/misc.dm | 3 ++- code/modules/mob/living/carbon/update_icons.dm | 4 ++++ .../mob/living/simple_animal/simple_animal.dm | 13 +++++++++++++ code/modules/mob/mob_defines.dm | 4 +++- 4 files changed, 22 insertions(+), 2 deletions(-) diff --git a/code/__DEFINES/misc.dm b/code/__DEFINES/misc.dm index 0081c384bd5..bbb172cfe83 100644 --- a/code/__DEFINES/misc.dm +++ b/code/__DEFINES/misc.dm @@ -158,4 +158,5 @@ #define FUZZY_CHANCE_HIGH 85 #define FUZZY_CHANCE_LOW 50 #define CHANCE_TALK 15 -#define MAXCOIL 30 \ No newline at end of file +#define MAXCOIL 30 +#define RESIZE_DEFAULT_SIZE 1 \ No newline at end of file diff --git a/code/modules/mob/living/carbon/update_icons.dm b/code/modules/mob/living/carbon/update_icons.dm index 40c8b4f11e2..2b2c3470a04 100644 --- a/code/modules/mob/living/carbon/update_icons.dm +++ b/code/modules/mob/living/carbon/update_icons.dm @@ -20,6 +20,10 @@ final_dir = pick(NORTH, SOUTH) //So you fall on your side rather than your face or ass lying_prev = lying //so we don't try to animate until there's been another change. + if(resize != RESIZE_DEFAULT_SIZE) + changed++ + ntransform.Scale(resize) + resize = RESIZE_DEFAULT_SIZE if(changed) animate(src, transform = ntransform, time = 2, pixel_y = final_pixel_y, dir = final_dir, easing = EASE_IN|EASE_OUT) diff --git a/code/modules/mob/living/simple_animal/simple_animal.dm b/code/modules/mob/living/simple_animal/simple_animal.dm index c65f76cd171..4c2abe52a30 100644 --- a/code/modules/mob/living/simple_animal/simple_animal.dm +++ b/code/modules/mob/living/simple_animal/simple_animal.dm @@ -488,4 +488,17 @@ canmove = 0 else canmove = 1 + update_transform() return canmove + +/mob/living/simple_animal/update_transform() + var/matrix/ntransform = matrix(transform) //aka transform.Copy() + var/changed = 0 + + if(resize != RESIZE_DEFAULT_SIZE) + changed++ + ntransform.Scale(resize) + resize = RESIZE_DEFAULT_SIZE + + if(changed) + animate(src, transform = ntransform, time = 2, easing = EASE_IN|EASE_OUT) diff --git a/code/modules/mob/mob_defines.dm b/code/modules/mob/mob_defines.dm index 308239422d8..24bd3e684ca 100644 --- a/code/modules/mob/mob_defines.dm +++ b/code/modules/mob/mob_defines.dm @@ -152,4 +152,6 @@ var/turf/listed_turf = null //the current turf being examined in the stat panel var/list/permanent_huds = list() - var/permanent_sight_flags = 0 \ No newline at end of file + var/permanent_sight_flags = 0 + + var/resize = 1 //Badminnery resize \ No newline at end of file