diff --git a/code/__DEFINES/~skyrat_defines/lewd_defines.dm b/code/__DEFINES/~skyrat_defines/lewd_defines.dm index 7674131b090..0a889a8889b 100644 --- a/code/__DEFINES/~skyrat_defines/lewd_defines.dm +++ b/code/__DEFINES/~skyrat_defines/lewd_defines.dm @@ -30,3 +30,11 @@ #define BREAST_SIZE_O "O" #define BREAST_SIZE_P "P" #define BREAST_SIZE_BEYOND_MEASUREMENT "beyond measurement" + +//ERP Size Areas +#define SIZE_WHITELISTED_AREAS list(\ + /area/centcom/interlink/dorm_rooms,\ + /area/centcom/holding/cafe/dorms,\ + /area/misc/hilbertshotel,\ + /area/station/commons/dorms,\ + ) diff --git a/code/modules/reagents/chemistry/reagents/other_reagents.dm b/code/modules/reagents/chemistry/reagents/other_reagents.dm index a065c87a766..9413251617c 100644 --- a/code/modules/reagents/chemistry/reagents/other_reagents.dm +++ b/code/modules/reagents/chemistry/reagents/other_reagents.dm @@ -2566,18 +2566,32 @@ /datum/reagent/growthserum/on_mob_life(mob/living/carbon/affected_mob, seconds_per_tick, times_fired) . = ..() var/newsize = current_size - switch(volume) - if(0 to 19) - newsize = 1.25*RESIZE_DEFAULT_SIZE - if(20 to 49) - newsize = 1.5*RESIZE_DEFAULT_SIZE - if(50 to 99) - newsize = 2*RESIZE_DEFAULT_SIZE - if(100 to 199) - newsize = 2.5*RESIZE_DEFAULT_SIZE - if(200 to INFINITY) - newsize = 3.5*RESIZE_DEFAULT_SIZE - + //BUBBER EDIT ADDITION START - CAPPING GROWTH SERUM + var/valid_area = is_type_in_list(get_area(affected_mob), SIZE_WHITELISTED_AREAS) + if(valid_area) + switch(volume) + if(0 to 19) + newsize = 1.25*RESIZE_DEFAULT_SIZE + if(20 to 49) + newsize = 1.5*RESIZE_DEFAULT_SIZE + if(50 to 99) + newsize = 2*RESIZE_DEFAULT_SIZE + if(100 to 199) + newsize = 2.5*RESIZE_DEFAULT_SIZE + if(200 to INFINITY) + newsize = 3.5*RESIZE_DEFAULT_SIZE + else + if(affected_mob.has_quirk(/datum/quirk/oversized)) + newsize = RESIZE_DEFAULT_SIZE + else + switch(volume) + if(0 to 19) + newsize = 1.25*RESIZE_DEFAULT_SIZE + if(20 to 49) + newsize = 1.5*RESIZE_DEFAULT_SIZE + if(50 to INFINITY) + newsize = 2*RESIZE_DEFAULT_SIZE + //BUBBER EDIT ADDITION END - CAPPING GROWTH SERUM affected_mob.update_transform(newsize/current_size) current_size = newsize diff --git a/modular_skyrat/modules/modular_items/lewd_items/code/lewd_items/size_items.dm b/modular_skyrat/modules/modular_items/lewd_items/code/lewd_items/size_items.dm index d50cf6342ff..df8587c405b 100644 --- a/modular_skyrat/modules/modular_items/lewd_items/code/lewd_items/size_items.dm +++ b/modular_skyrat/modules/modular_items/lewd_items/code/lewd_items/size_items.dm @@ -1,10 +1,3 @@ -/// What areas are we allowed to use size items in? -#define SIZE_WHITELISTED_AREAS list(\ - /area/centcom/interlink/dorm_rooms,\ - /area/centcom/holding/cafe/dorms,\ - /area/misc/hilbertshotel,\ -) - /obj/item/clothing/neck/size_collar name = "size collar" desc = "A shiny black collar embeded with technology that allows the user to change their own size." @@ -133,5 +126,3 @@ UnregisterSignal(parent, COMSIG_ENTER_AREA) return ..() - -#undef SIZE_WHITELISTED_AREAS