One day it'll work and everything will be great
This commit is contained in:
@@ -38,38 +38,45 @@
|
||||
id = "BElarger"
|
||||
var/list/items = list()
|
||||
|
||||
/datum/status_effect/chem/BElarger/on_apply(mob/living/carbon/M)
|
||||
/datum/status_effect/chem/BElarger/on_apply(mob/living/carbon/M)//Removes clothes, they're too small to contain you. You belong to space now.
|
||||
var/mob/living/carbon/human/H = M
|
||||
if(H.w_uniform || H.wear_suit)
|
||||
playsound(M.loc, 'sound/items/poster_ripped.ogg', 50, 1)
|
||||
items |= M.get_equipped_items(TRUE)
|
||||
M.visible_message("<span class='boldnotice'>[M]'s chest suddenly bursts forth, ripping their clothes off!'</span>")
|
||||
to_chat(M, "<span class='warning'>Your clothes give, ripping into peices under the strain of your swelling breasts! Unless you manage to reduce the size of your breasts, there's no way you're going to be able to put anything on over these melons..!</b></span>")
|
||||
M.dropItemToGround(H.wear_suit)
|
||||
M.dropItemToGround(H.w_uniform)
|
||||
for(var/obj/item/W in H)
|
||||
if(W == H.w_uniform || W == H.wear_suit)
|
||||
H.dropItemToGround(W)
|
||||
playsound(owner.loc, 'sound/items/poster_ripped.ogg', 50, 1)
|
||||
//items |= owner.get_equipped_items(TRUE)
|
||||
owner.visible_message("<span class='boldnotice'>[M]'s chest suddenly bursts forth, ripping their clothes off!'</span>")
|
||||
to_chat(owner, "<span class='warning'>Your clothes give, ripping into peices under the strain of your swelling breasts! Unless you manage to reduce the size of your breasts, there's no way you're going to be able to put anything on over these melons..!</b></span>")
|
||||
//owner.dropItemToGround(owner.wear_suit)
|
||||
//owner.dropItemToGround(owner.w_uniform)
|
||||
|
||||
/datum/status_effect/chem/BElarger/tick(mob/living/carbon/M)
|
||||
/datum/status_effect/chem/BElarger/tick(mob/living/carbon/M)//If you try to wear clothes, you fail. Slows you down if you're comically huge
|
||||
var/obj/item/organ/genital/breasts/B = M.getorganslot("breasts")
|
||||
var/mob/living/carbon/human/H = M
|
||||
if(H.w_uniform || H.wear_suit)
|
||||
items |= M.get_equipped_items(TRUE)
|
||||
to_chat(M, "<span class='warning'>Your enormous breasts are way to large to fit anything over!</b></span>")
|
||||
M.dropItemToGround(H.wear_suit)
|
||||
M.dropItemToGround(H.w_uniform)
|
||||
message_admins("M: [M]")
|
||||
message_admins("H: [H]")
|
||||
message_admins("owner: [owner]")
|
||||
for(var/obj/item/W in H)
|
||||
if(W == H.w_uniform || W == H.wear_suit)
|
||||
H.dropItemToGround(W)
|
||||
//items |= owner.get_equipped_items(TRUE)
|
||||
to_chat(owner, "<span class='warning'>Your enormous breasts are way to large to fit anything over!</b></span>")
|
||||
//owner.dropItemToGround(owner.wear_suit)
|
||||
//owner.dropItemToGround(owner.w_uniform)
|
||||
switch(round(B.cached_size))
|
||||
if(9)
|
||||
if (!(B.breast_sizes[B.prev_size] == B.size))
|
||||
M.remove_movespeed_modifier("megamilk")
|
||||
M.next_move_modifier = 1
|
||||
owner.remove_movespeed_modifier("megamilk")
|
||||
owner.next_move_modifier = 1
|
||||
if(10 to INFINITY)
|
||||
if (!(B.breast_sizes[B.prev_size] == B.size))
|
||||
to_chat(M, "<span class='warning'>Your indulgent busom is so substantial, it's affecting your movements!</b></span>")
|
||||
M.add_movespeed_modifier("megamilk", TRUE, 100, NONE, override = TRUE, multiplicative_slowdown = (round(B.cached_size) - 8))
|
||||
M.next_move_modifier = (round(B.cached_size) - 8)
|
||||
owner.add_movespeed_modifier("megamilk", TRUE, 100, NONE, override = TRUE, multiplicative_slowdown = (round(B.cached_size) - 8))
|
||||
owner.next_move_modifier = (round(B.cached_size) - 8)
|
||||
|
||||
/datum/status_effect/chem/BElarger/on_remove(mob/living/carbon/M)
|
||||
M.remove_movespeed_modifier("megamilk")
|
||||
M.next_move_modifier = 1
|
||||
owner.remove_movespeed_modifier("megamilk")
|
||||
owner.next_move_modifier = 1
|
||||
|
||||
/datum/status_effect/chem/PElarger
|
||||
id = "PElarger"
|
||||
@@ -78,21 +85,25 @@
|
||||
|
||||
/datum/status_effect/chem/PElarger/on_apply(mob/living/carbon/M)
|
||||
var/mob/living/carbon/human/H = M
|
||||
if(H.w_uniform || H.wear_suit)
|
||||
for(var/obj/item/W in H)
|
||||
if(W == H.w_uniform || W == H.wear_suit)
|
||||
H.dropItemToGround(W)
|
||||
playsound(M.loc, 'sound/items/poster_ripped.ogg', 50, 1)
|
||||
//items |= M.get_equipped_items(TRUE)
|
||||
M.visible_message("<span class='boldnotice'>[M]'s penis suddenly bursts forth, ripping their clothes off!'</span>")
|
||||
owner.visible_message("<span class='boldnotice'>[M]'s penis suddenly bursts forth, ripping their clothes off!'</span>")
|
||||
to_chat(M, "<span class='warning'>Your clothes give, ripping into peices under the strain of your swelling penis! 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..!</b></span>")
|
||||
M.dropItemToGround(H.wear_suit)
|
||||
M.dropItemToGround(H.w_uniform)
|
||||
//owner.dropItemToGround(owner.wear_suit)
|
||||
//owner.dropItemToGround(owner.w_uniform)
|
||||
|
||||
/datum/status_effect/chem/PElarger/tick(mob/living/carbon/M)
|
||||
var/mob/living/carbon/human/H = M
|
||||
if(H.w_uniform || H.wear_suit)
|
||||
for(var/obj/item/W in H)
|
||||
if(W == H.w_uniform || W == H.wear_suit)
|
||||
H.dropItemToGround(W)
|
||||
//items |= M.get_equipped_items(TRUE)
|
||||
to_chat(M, "<span class='warning'>Your enormous package is way to large to fit anything over!</b></span>")
|
||||
M.dropItemToGround(H.wear_suit)
|
||||
M.dropItemToGround(H.w_uniform)
|
||||
to_chat(owner, "<span class='warning'>Your enormous package is way to large to fit anything over!</b></span>")
|
||||
//owner.dropItemToGround(owner.wear_suit)
|
||||
//owner.dropItemToGround(owner.w_uniform)
|
||||
|
||||
|
||||
/*Doesn't work
|
||||
|
||||
@@ -9,7 +9,7 @@
|
||||
size = BREASTS_SIZE_DEF
|
||||
var/cached_size = 3//for enlargement
|
||||
var/prev_size = 3//For flavour texts
|
||||
var/breast_sizes = list ("A", "B", "C", "D", "E", "F", "G", "H", "I", "J", "K", "L", "M", "N", "O", "flat")
|
||||
var/breast_sizes = list ("A", "B", "C", "D", "E", "F", "G", "H", "I", "J", "K", "L", "M", "N", "O", "huge", "flat")
|
||||
var/breast_values = list ("A" = 1, "B" = 2, "C" = 3, "D" = 4, "E" = 5, "F" = 6, "G" = 7, "H" = 8, "I" = 9, "J" = 10, "K" = 11, "L" = 12, "M" = 13, "N" = 14, "O" = 15, "huge" = 16, "flat" = 0)
|
||||
fluid_id = "milk"
|
||||
var/amount = 2
|
||||
@@ -51,10 +51,13 @@
|
||||
desc = "You see some breasts, they seem to be quite exotic."
|
||||
if(isnum(size))
|
||||
desc = "You see [pick("some serious honkers", "a real set of badonkers", "some dobonhonkeros", "massive dohoonkabhankoloos", "big old tonhongerekoogers", "giant bonkhonagahoogs", "humongous hungolomghnonoloughongous")]. Their volume is way beyond cupsize now, measuring in about [size]cm in diameter."
|
||||
else if (!size == "huge")
|
||||
desc += " You estimate that they're [uppertext(size)]-cups."
|
||||
else if (!isnum(size))
|
||||
if (size == "flat")
|
||||
desc += " They're very small and flatchested, however."
|
||||
else
|
||||
desc += " You estimate that they're [uppertext(size)]-cups."
|
||||
else
|
||||
desc += " They're very small and flatchested, however."
|
||||
|
||||
if(producing && aroused_state)
|
||||
desc += " They're leaking [fluid_id]."
|
||||
if(owner)
|
||||
@@ -67,33 +70,43 @@
|
||||
|
||||
|
||||
//Allows breasts to grow and change size, with sprite changes too.
|
||||
/obj/item/organ/genital/breasts/update_size(mob/living/carbon/M)//wah
|
||||
//maximum wah
|
||||
//Comical sizes slow you down in movement and actions.
|
||||
//Rediculous sizes remove hands.
|
||||
//Should I turn someone with meter wide... assets into a blob?
|
||||
//this is far too lewd wah
|
||||
/obj/item/organ/genital/breasts/update_size()//wah
|
||||
var/mob/living/carbon/human/H = owner
|
||||
message_admins("Breast size at start: [size], [cached_size], [owner]")
|
||||
//var/sprite_accessory/breasts = mob/living/carbon/M
|
||||
if(cached_size < 0)//I don't actually know what round() does to negative numbers, so to be safe!!
|
||||
var/obj/item/organ/genital/breasts/B = owner.getorganslot("breasts")
|
||||
to_chat(owner, "<span class='warning'>You feel your breasts shrinking away from your body as your chest flattens out.</b></span>")
|
||||
B.Remove(owner)
|
||||
switch(round(cached_size))
|
||||
if(0)
|
||||
size = "flat"
|
||||
if(owner.has_status_effect(/datum/status_effect/chem/BElarger))
|
||||
owner.remove_status_effect(/datum/status_effect/chem/BElarger)
|
||||
//if(H.has_status_effect(/datum/status_effect/chem/BElarger))
|
||||
H.remove_status_effect(/datum/status_effect/chem/BElarger)
|
||||
if(1 to 8)
|
||||
size = breast_sizes[round(cached_size)]
|
||||
if(owner.has_status_effect(/datum/status_effect/chem/BElarger))
|
||||
owner.remove_status_effect(/datum/status_effect/chem/BElarger)
|
||||
//if(H.has_status_effect(/datum/status_effect/chem/BElarger))
|
||||
H.remove_status_effect(/datum/status_effect/chem/BElarger)
|
||||
if(9 to 15)
|
||||
size = breast_sizes[round(cached_size)]
|
||||
if(owner.has_status_effect(/datum/status_effect/chem/BElarger))
|
||||
owner.apply_status_effect(/datum/status_effect/chem/BElarger)
|
||||
//if(!H.has_status_effect(/datum/status_effect/chem/BElarger))
|
||||
H.apply_status_effect(/datum/status_effect/chem/BElarger)
|
||||
if(16 to INFINITY)
|
||||
size = "huge"
|
||||
if (!(breast_sizes[prev_size] == size))
|
||||
size = cached_size
|
||||
message_admins("Breast size: [size], [cached_size], [owner]")
|
||||
message_admins("[breast_values[prev_size]] vs [breast_values[size]]")
|
||||
if (!(prev_size == breast_values[size]))
|
||||
if (breast_values[size] > breast_values[prev_size])
|
||||
to_chat(M, "<span class='warning'>Your breasts [pick("swell up to", "flourish into", "expand into", "burst forth into", "grow eagerly into", "amplify into")] a [uppertext(size)]-cup.</b></span>")
|
||||
to_chat(owner, "<span class='warning'>Your breasts [pick("swell up to", "flourish into", "expand into", "burst forth into", "grow eagerly into", "amplify into")] a [uppertext(size)]-cup.</b></span>")
|
||||
prev_size = cached_size
|
||||
else if (breast_values[size] > breast_values[prev_size])
|
||||
to_chat(M, "<span class='warning'>Your breasts [pick("shrink down to", "decrease into", "diminish into", "deflate into", "shrivel regretfully into", "shrivels into")] a [uppertext(size)]-cup.</b></span>")
|
||||
else if (breast_values[size] < breast_values[prev_size])
|
||||
to_chat(owner, "<span class='warning'>Your breasts [pick("shrink down to", "decrease into", "diminish into", "deflate into", "shrivel regretfully into", "shrivels into")] a [uppertext(size)]-cup.</b></span>")
|
||||
prev_size = cached_size
|
||||
if(cached_size < 0)
|
||||
var/obj/item/organ/genital/breasts/B = M.getorganslot("breasts")
|
||||
to_chat(M, "<span class='warning'>You feel your breasts shrinking away from your body as your chest flattens out.</b></span>")
|
||||
B.Remove(M)
|
||||
var/S = GLOB.breasts_shapes_list[shape]
|
||||
var/mutable_appearance/genital_overlay = mutable_appearance(S.icon)
|
||||
genital_overlay.icon_state = "breasts_[shape]_[size]_0_FRONT"
|
||||
icon_state = "breasts_[shape]_[size]"
|
||||
H.update_body()
|
||||
//breasts.icon_state = "breasts_[shape]_[size]_0_FRONT"
|
||||
|
||||
@@ -48,6 +48,7 @@
|
||||
color = "#[skintone2hex(H.skin_tone)]"
|
||||
else
|
||||
color = "#[owner.dna.features["cock_color"]]"
|
||||
owner.update_body()
|
||||
|
||||
/obj/item/organ/genital/penis/update_link()
|
||||
if(owner)
|
||||
|
||||
@@ -405,13 +405,13 @@
|
||||
holder.remove_reagent(src.id, 20)
|
||||
else
|
||||
to_chat(M, "<span class='notice'>The pentetic acid seems to have stopped the decay for now, clumping up the cells into a horrifying tumour.</span>")
|
||||
if(87 to INFINITY)//purges chemical fast, producing a "slime" for each one. Said slime is weak to fire.
|
||||
if(87 to INFINITY)//purges chemical fast, producing a "slime" for each one. Said slime is weak to fire. TODO: turn tumour slime into real variant.
|
||||
M.nutrition -= 100
|
||||
var/mob/living/simple_animal/slime/S = new(get_turf(M.loc),"grey")
|
||||
S.damage_coeff = list(BRUTE = ((1 / volume)**0.1) , BURN = 2, TOX = 1, CLONE = 1, STAMINA = 0, OXY = 1)
|
||||
S.name = "Living teratoma"
|
||||
S.real_name = "Living teratoma"
|
||||
S.rabid = 1
|
||||
S.real_name = "Living teratoma"//horrifying!!
|
||||
S.rabid = 1//Make them an angery boi
|
||||
//S.updateappearance(mutcolor_update=1)
|
||||
holder.remove_reagent(src.id, 20)
|
||||
M.adjustToxLoss(10, 0)
|
||||
@@ -431,17 +431,9 @@
|
||||
color = "#E60584" // rgb: 96, 0, 255
|
||||
taste_description = "a milky ice cream like flavour."
|
||||
overdose_threshold = 12
|
||||
metabolization_rate = 2
|
||||
//var/mob/living/carbon/M
|
||||
metabolization_rate = 0.5
|
||||
var/mob/living/carbon/human/H
|
||||
//var/mob/living/carbon/human/species/S
|
||||
/*
|
||||
var/obj/item/organ/genital/breasts/B
|
||||
var/obj/item/organ/genital/penis/P
|
||||
var/obj/item/organ/genital/testicles/T
|
||||
var/obj/item/organ/genital/vagina/V
|
||||
var/obj/item/organ/genital/womb/W
|
||||
*/
|
||||
|
||||
|
||||
|
||||
/datum/reagent/fermi/BElarger/on_mob_life(mob/living/carbon/M) //Increases breast size
|
||||
@@ -464,13 +456,14 @@
|
||||
nB.color = skintone2hex(H.skin_tone)
|
||||
nB.size = "flat"
|
||||
nB.cached_size = 0
|
||||
nB.prev_size = 0
|
||||
to_chat(M, "<span class='warning'>Your chest feels warm, tingling with newfound sensitivity.</b></span>")
|
||||
M.reagents.remove_reagent(src.id, 5)
|
||||
B = nB
|
||||
//If they have them, increase size. If size is comically big, limit movement and rip clothes.
|
||||
message_admins("Breast size: [B.size], [B.cached_size], [holder]")
|
||||
B.cached_size = B.cached_size + 0.1
|
||||
if (B.cached_size >= 8 && B.cached_size < 8.5)
|
||||
if (B.cached_size >= 8.5 && B.cached_size < 9)
|
||||
to_chat(M, "<span class='warning'>Your breasts begin to strain against your clothes tightly!</b></span>")
|
||||
M.adjustOxyLoss(10, 0)
|
||||
M.adjustBruteLoss(2, 0)
|
||||
@@ -502,6 +495,7 @@
|
||||
H.dna.species.no_equip = list(SLOT_WEAR_SUIT, SLOT_W_UNIFORM)
|
||||
else
|
||||
M.remove_status_effect(/datum/status_effect/chem/PElarger)
|
||||
P.update()
|
||||
if(!V)
|
||||
var/obj/item/organ/genital/vagina/nV = new
|
||||
nV.Insert(M)
|
||||
@@ -510,7 +504,6 @@
|
||||
var/obj/item/organ/genital/womb/nW = new
|
||||
nW.Insert(M)
|
||||
W = nW
|
||||
P.update()
|
||||
..()
|
||||
|
||||
/datum/reagent/fermi/PElarger // Due to popular demand...!
|
||||
@@ -520,7 +513,7 @@
|
||||
color = "#H60584" // rgb: 96, 0, 255
|
||||
taste_description = "a salty and sticky substance."
|
||||
overdose_threshold = 12
|
||||
metabolization_rate = 0.5 * REAGENTS_METABOLISM
|
||||
metabolization_rate = 0.5
|
||||
//var/mob/living/carbon/M
|
||||
//var/mob/living/carbon/human/species/S
|
||||
/*
|
||||
@@ -582,7 +575,8 @@
|
||||
M.visible_message("<span class='boldnotice'>[M] suddenly looks more masculine!</span>", "<span class='boldwarning'>You suddenly feel more masculine!</span>")
|
||||
|
||||
if(B)
|
||||
B.cached_size = B.cached_size - B.cached_size
|
||||
B.cached_size = B.cached_size - 0.1
|
||||
message_admins("Breast size: [B.size], [B.cached_size], [holder]")
|
||||
B.update()
|
||||
if(V)
|
||||
V.Remove(M)
|
||||
|
||||
Reference in New Issue
Block a user