diff --git a/code/game/gamemodes/changeling/changeling.dm b/code/game/gamemodes/changeling/changeling.dm index 14fe9604..423c8c8d 100644 --- a/code/game/gamemodes/changeling/changeling.dm +++ b/code/game/gamemodes/changeling/changeling.dm @@ -91,11 +91,13 @@ GLOBAL_VAR(changeling_team_objective_type) //If this is not null, we hand our th user.shirt_color =chosen_prof.shirt_color user.socks = chosen_prof.socks user.socks_color =chosen_prof.socks_color + user.size_multiplier = chosen_prof.size_multiplier chosen_dna.transfer_identity(user, 1) user.updateappearance(mutcolor_update=1) user.update_body() user.domutcheck() + user.previous_size = chosen_prof.size_multiplier //vars hackery. not pretty, but better than the alternative. for(var/slot in GLOB.slots) diff --git a/code/modules/antagonists/changeling/changeling.dm b/code/modules/antagonists/changeling/changeling.dm index b6e3d66c..c140e2ef 100644 --- a/code/modules/antagonists/changeling/changeling.dm +++ b/code/modules/antagonists/changeling/changeling.dm @@ -274,6 +274,7 @@ prof.shirt_color = H.shirt_color prof.socks = H.socks prof.socks_color = H.socks_color + prof.size_multiplier = H.size_multiplier var/list/slots = list("head", "wear_mask", "back", "wear_suit", "w_uniform", "shoes", "belt", "gloves", "glasses", "ears", "wear_id", "s_store") for(var/slot in slots) @@ -511,6 +512,7 @@ var/shirt_color var/socks var/socks_color + var/size_multiplier /datum/changelingprofile/Destroy() qdel(dna) @@ -530,6 +532,7 @@ newprofile.underwear = underwear newprofile.undershirt = undershirt newprofile.socks = socks + newprofile.size_multiplier = size_multiplier /datum/antagonist/changeling/xenobio diff --git a/code/modules/mob/living/living.dm b/code/modules/mob/living/living.dm index f666d21f..26015c60 100644 --- a/code/modules/mob/living/living.dm +++ b/code/modules/mob/living/living.dm @@ -1252,7 +1252,3 @@ for(var/chem in healing_chems) reagents.add_reagent(chem, healing_chems[chem]) -//retard edits below -/mob/living - var/size_multiplier = 1 //multiplier for the mob's icon size atm - var/previous_size = 1 diff --git a/hyperstation/code/modules/resize/resizing.dm b/hyperstation/code/modules/resize/resizing.dm index a5621f14..45b0a7ee 100644 --- a/hyperstation/code/modules/resize/resizing.dm +++ b/hyperstation/code/modules/resize/resizing.dm @@ -7,6 +7,12 @@ var/const/RESIZE_SMALL = 0.75 var/const/RESIZE_TINY = 0.50 var/const/RESIZE_MICRO = 0.25 +//Moving these here - Jay +/mob/living + var/size_multiplier = 1 //multiplier for the mob's icon size atm + var/previous_size = 1 + + #define MOVESPEED_ID_SIZE "SIZECODE" #define MOVESPEED_ID_STOMP "STEPPY" diff --git a/modular_citadel/code/datums/status_effects/chems.dm b/modular_citadel/code/datums/status_effects/chems.dm index 592ef0b8..bfe6a06f 100644 --- a/modular_citadel/code/datums/status_effects/chems.dm +++ b/modular_citadel/code/datums/status_effects/chems.dm @@ -46,7 +46,8 @@ if(W == o.w_uniform || W == o.wear_suit) //Hyper change var/obj/item/clothing/W2 = W - if(!W2.roomy == 1) //If the clothes are "roomy" then don't do this. + var/datum/antagonist/changeling/changeling = o.mind.has_antag_datum(/datum/antagonist/changeling) + if(!(W2.roomy == 1 || changeling)) //If the clothes are "roomy" then don't do this. //Or if a changeling //Hyper change end o.dropItemToGround(W, TRUE) playsound(o.loc, 'sound/items/poster_ripped.ogg', 50, 1) @@ -72,7 +73,8 @@ if(W == o.w_uniform || W == o.wear_suit) //Hyper change// Check for a flag before we remove clothes. var/obj/item/clothing/W2 = W - if(!W2.roomy == 1) //If the clothes are "roomy" then don't do this. + var/datum/antagonist/changeling/changeling = o.mind.has_antag_datum(/datum/antagonist/changeling) + if(!(W2.roomy == 1 || changeling)) //If the clothes are "roomy" then don't do this. // Or a ling //End Hyper Change// o.dropItemToGround(W, TRUE) playsound(o.loc, 'sound/items/poster_ripped.ogg', 50, 1) @@ -136,17 +138,20 @@ //Hyper change// Check for a flag before we remove clothes. var/obj/item/clothing/suit = o.get_item_by_slot(SLOT_W_UNIFORM) var/obj/item/clothing/jacket = o.get_item_by_slot(SLOT_WEAR_SUIT) - if(!suit.roomy == 1 || !jacket.roomy == 1) //If the clothes are "roomy" then don't do this. - //End Hyper Change// - to_chat(o, "Your clothes give, ripping into peices under the strain of your swelling pecker! Unless you manage to reduce the size of your emancipated trouser snake, there's no way you're going to be able to put anything on over this girth..!") - owner.visible_message("[o]'s schlong suddenly bursts forth, ripping their clothes off!'") + var/datum/antagonist/changeling/changeling = o.mind.has_antag_datum(/datum/antagonist/changeling) + if(!(suit.roomy == 1 && jacket.roomy == 1)) //If the clothes are "roomy" then don't do this. + if(!changeling) //Or a changeling + //End Hyper Change// + to_chat(o, "Your clothes give, ripping into peices under the strain of your swelling pecker! Unless you manage to reduce the size of your emancipated trouser snake, there's no way you're going to be able to put anything on over this girth..!") + owner.visible_message("[o]'s schlong suddenly bursts forth, ripping their clothes off!'") else to_chat(o, "Your emancipated trouser snake is so ripe with girth, you seriously doubt you'll be able to fit any clothes over it.") for(var/obj/item/W in items) if(W == o.w_uniform || W == o.wear_suit) //Hyper change// Check for a flag before we remove clothes. var/obj/item/clothing/W2 = W - if(!W2.roomy == 1) //If the clothes are "roomy" then don't do this. + var/datum/antagonist/changeling/changeling = o.mind.has_antag_datum(/datum/antagonist/changeling) + if(!(W2.roomy == 1 || changeling)) //If the clothes are "roomy" then don't do this. //End Hyper Change// o.dropItemToGround(W, TRUE) playsound(o.loc, 'sound/items/poster_ripped.ogg', 50, 1) @@ -171,7 +176,8 @@ //Hyper change// Check for a flag before we remove clothes. if(istype(W, /obj/item/clothing)) var/obj/item/clothing/W2 = W - if(!W2.roomy == 1) //If the clothes are "roomy" then don't do this. + var/datum/antagonist/changeling/changeling = o.mind.has_antag_datum(/datum/antagonist/changeling) + if(!(W2.roomy == 1 || changeling)) //If the clothes are "roomy" then don't do this. //End Hyper Change// if (o.arousalloss > 32) // warning that your shaft is getting errect! if(W == o.w_uniform || W == o.wear_suit ) diff --git a/modular_citadel/code/modules/reagents/chemistry/reagents/enlargement.dm b/modular_citadel/code/modules/reagents/chemistry/reagents/enlargement.dm index 3a2928ec..5703ed8f 100644 --- a/modular_citadel/code/modules/reagents/chemistry/reagents/enlargement.dm +++ b/modular_citadel/code/modules/reagents/chemistry/reagents/enlargement.dm @@ -101,12 +101,14 @@ //Hyper change// Check for a flag before we remove clothes. var/obj/item/clothing/suit = H.get_item_by_slot(SLOT_W_UNIFORM) var/obj/item/clothing/jacket = H.get_item_by_slot(SLOT_WEAR_SUIT) - if(!suit.roomy == 1 || !jacket.roomy == 1) //If the clothes are "roomy" then don't do this. - //End Hyper Change// - var/target = M.get_bodypart(BODY_ZONE_CHEST) - to_chat(M, "Your breasts begin to strain against your clothes tightly!") - M.adjustOxyLoss(5, 0) - M.apply_damage(1, BRUTE, target) + if(!(suit.roomy == 1 && jacket.roomy == 1)) //If the clothes are "roomy" then don't do this. + var/datum/antagonist/changeling/changeling = M.mind.has_antag_datum(/datum/antagonist/changeling) + if(!changeling)//Changelings can in fact calm their tits + //End Hyper Change// + var/target = M.get_bodypart(BODY_ZONE_CHEST) + to_chat(M, "Your breasts begin to strain against your clothes tightly!") + M.adjustOxyLoss(5, 0) + M.apply_damage(1, BRUTE, target) B.update() ..() @@ -306,11 +308,13 @@ //Hyper change// Check for a flag before we remove clothes. var/obj/item/clothing/suit = H.get_item_by_slot(SLOT_W_UNIFORM) var/obj/item/clothing/jacket = H.get_item_by_slot(SLOT_WEAR_SUIT) - if(!suit.roomy == 1 || !jacket.roomy == 1) //If the clothes are "roomy" then don't do this. - //End Hyper Change// - var/target = M.get_bodypart(BODY_ZONE_CHEST) - to_chat(M, "Your cock begins to strain against your clothes tightly!") - M.apply_damage(1, BRUTE, target) + if((!suit.roomy == 1 || !jacket.roomy == 1)) //If the clothes are "roomy" then don't do this. + var/datum/antagonist/changeling/changeling = M.mind.has_antag_datum(/datum/antagonist/changeling) + if(!changeling)//Changelings keep it in their pants + //End Hyper Change// + var/target = M.get_bodypart(BODY_ZONE_CHEST) + to_chat(M, "Your cock begins to strain against your clothes tightly!") + M.apply_damage(1, BRUTE, target) T.update() //Hyper change - Make the ball size update P.update()