Hurghh
This commit is contained in:
@@ -39,7 +39,7 @@
|
||||
var/list/items = list()
|
||||
|
||||
/datum/status_effect/chem/BElarger/on_apply(mob/living/carbon/M)
|
||||
var/mob/living/carbon/human/H
|
||||
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)
|
||||
@@ -49,31 +49,47 @@
|
||||
M.dropItemToGround(H.w_uniform)
|
||||
|
||||
/datum/status_effect/chem/BElarger/tick(mob/living/carbon/M)
|
||||
var/mob/living/carbon/human/H
|
||||
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)
|
||||
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
|
||||
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)
|
||||
|
||||
/datum/status_effect/chem/BElarger/on_remove(mob/living/carbon/M)
|
||||
M.remove_movespeed_modifier("megamilk")
|
||||
M.next_move_modifier = 1
|
||||
|
||||
/datum/status_effect/chem/PElarger
|
||||
id = "PElarger"
|
||||
var/list/items = list()
|
||||
//var/list/items = list()
|
||||
|
||||
|
||||
/datum/status_effect/chem/PElarger/on_apply(mob/living/carbon/M)
|
||||
var/mob/living/carbon/human/H
|
||||
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)
|
||||
//items |= M.get_equipped_items(TRUE)
|
||||
M.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)
|
||||
|
||||
/datum/status_effect/chem/PElarger/tick(mob/living/carbon/M)
|
||||
var/mob/living/carbon/human/H
|
||||
var/mob/living/carbon/human/H = M
|
||||
if(H.w_uniform || H.wear_suit)
|
||||
items |= M.get_equipped_items(TRUE)
|
||||
//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)
|
||||
|
||||
@@ -7,6 +7,10 @@
|
||||
slot = "breasts"
|
||||
w_class = 3
|
||||
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_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
|
||||
producing = TRUE
|
||||
@@ -19,6 +23,7 @@
|
||||
/obj/item/organ/genital/breasts/Initialize()
|
||||
. = ..()
|
||||
reagents.add_reagent(fluid_id, fluid_max_volume)
|
||||
prev_size = size
|
||||
|
||||
/obj/item/organ/genital/breasts/on_life()
|
||||
if(QDELETED(src))
|
||||
@@ -44,12 +49,12 @@
|
||||
desc = "You see a pair of breasts."
|
||||
else
|
||||
desc = "You see some breasts, they seem to be quite exotic."
|
||||
if (size <= 7)
|
||||
if (size == "huge")
|
||||
desc += " You estimate that they're [uppertext(size)]-cups."
|
||||
else if (size > 7)
|
||||
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
|
||||
desc += " You wouldn't measure them in cup sizes."
|
||||
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
|
||||
// desc += " You wouldn't measure them in cup sizes."
|
||||
if(producing && aroused_state)
|
||||
desc += " They're leaking [fluid_id]."
|
||||
if(owner)
|
||||
@@ -59,3 +64,32 @@
|
||||
color = "#[skintone2hex(H.skin_tone)]"
|
||||
else
|
||||
color = "#[owner.dna.features["breasts_color"]]"
|
||||
|
||||
/obj/item/organ/genital/breasts/update_size(mob/living/carbon/M)
|
||||
|
||||
switch(round(cached_size))
|
||||
if(0)
|
||||
size = "flat"
|
||||
if(!M.has_status_effect(/datum/status_effect/chem/BElarger))
|
||||
owner.remove_status_effect(/datum/status_effect/chem/BElarger)
|
||||
if(1 to 8)
|
||||
size = breast_sizes[round(cached_size)]
|
||||
if(!M.has_status_effect(/datum/status_effect/chem/BElarger))
|
||||
owner.remove_status_effect(/datum/status_effect/chem/BElarger)
|
||||
if(9 to 15)
|
||||
size = breast_sizes[round(cached_size)]
|
||||
if(M.has_status_effect(/datum/status_effect/chem/BElarger))
|
||||
owner.apply_status_effect(/datum/status_effect/chem/BElarger)
|
||||
if(16 to INFINITY)
|
||||
size = "huge"
|
||||
if (!(breast_sizes[prev_size] == 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>")
|
||||
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>")
|
||||
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)
|
||||
|
||||
@@ -86,7 +86,7 @@
|
||||
do_sparks(5,FALSE,src)
|
||||
do_teleport(M, get_turf(M), 10, asoundin = 'sound/effects/phasein.ogg')
|
||||
do_sparks(5,FALSE,src)
|
||||
holder.remove_reagent("eigenstate", 0.5, FALSE)//So you're not stuck for 10 minutes teleporting
|
||||
holder.remove_reagent(src.id, 0.5)//So you're not stuck for 10 minutes teleporting
|
||||
..() //loop function
|
||||
|
||||
|
||||
@@ -283,7 +283,7 @@
|
||||
M.nutrition = 150
|
||||
|
||||
reaction_mob(SM, )
|
||||
holder.remove_reagent("SDGF", 999)
|
||||
holder.remove_reagent(src.id, 999)
|
||||
//BALANCE: should I make them a pacifist, or give them some cellular damage or weaknesses?
|
||||
|
||||
//after_success(user, SM)
|
||||
@@ -328,7 +328,7 @@
|
||||
to_chat(M, "<span class='notice'>Your body splits away from the cell clone of yourself, leaving you with a drained and hollow feeling inside.</span>")
|
||||
M.apply_status_effect(/datum/status_effect/chem/SGDF)
|
||||
if(87 to INFINITY)
|
||||
holder.remove_reagent("SGDF", 1)//removes SGDF on completion.
|
||||
holder.remove_reagent(src.id, 1)//removes SGDF on completion.
|
||||
message_admins("Purging SGDF [volume]")
|
||||
message_admins("Growth nucleation occuring (SDGF), step [current_cycle] of 77")
|
||||
|
||||
@@ -402,7 +402,7 @@
|
||||
ZI.real_name = M.real_name//Give your offspring a big old kiss.
|
||||
ZI.name = M.real_name
|
||||
//ZI.updateappearance(mutcolor_update=1)
|
||||
M.reagents.remove_reagent("SDZF", 20)
|
||||
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.
|
||||
@@ -413,7 +413,7 @@
|
||||
S.real_name = "Living teratoma"
|
||||
S.rabid = 1
|
||||
//S.updateappearance(mutcolor_update=1)
|
||||
M.reagents.remove_reagent("SDZF", 20)
|
||||
holder.remove_reagent(src.id, 20)
|
||||
M.adjustToxLoss(10, 0)
|
||||
to_chat(M, "<span class='warning'>A large glob of the tumour suddenly splits itself from your body. You feel grossed out and slimey...</span>")
|
||||
message_admins("Growth nucleation occuring (SDGF), step [current_cycle] of 20")
|
||||
@@ -422,6 +422,7 @@
|
||||
|
||||
//breast englargement
|
||||
//Honestly the most requested chems
|
||||
//I'm not a very kinky person, sorry if it's not great
|
||||
//I tried to make it interesting..!!
|
||||
/datum/reagent/fermi/BElarger
|
||||
name = "Sucubus milk"
|
||||
@@ -461,50 +462,19 @@
|
||||
nB.color = "#[M.dna.features["breasts_color"]]"
|
||||
else
|
||||
nB.color = skintone2hex(H.skin_tone)
|
||||
nB.size = "a"
|
||||
nB.size = "flat"
|
||||
nB.cached_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)
|
||||
else //If they have them, increase size. If size is comically big, limit movement and rip clothes.
|
||||
message_admins("Breast size: [B.size], [holder]")
|
||||
if(B.size == "a")
|
||||
B.size = "b"
|
||||
to_chat(M, "<span class='warning'>You feel your breasts grow to a modest size.</b></span>")
|
||||
M.reagents.remove_reagent(src.id, 5)
|
||||
sleep(500)
|
||||
else if(B.size == "b")
|
||||
B.size = "c"
|
||||
to_chat(M, "<span class='warning'>Your breasts swell up to a substancial size.</b></span>")
|
||||
M.reagents.remove_reagent(src.id, 5)
|
||||
sleep(500)
|
||||
else if(B.size == "c")
|
||||
B.size = "d"
|
||||
to_chat(M, "<span class='warning'>Your breasts flourish into a full pair.</b></span>")
|
||||
M.reagents.remove_reagent(src.id, 5)
|
||||
sleep(500)
|
||||
else if(B.size == "d")
|
||||
B.size = "e"
|
||||
to_chat(M, "<span class='warning'>Your breasts expand into a large voluptuous pair!</b></span>")
|
||||
M.reagents.remove_reagent(src.id, 5)
|
||||
sleep(500)
|
||||
else if(B.size == "e")
|
||||
B.size = 7
|
||||
to_chat(M, "<span class='warning'>Your breasts burst forth into [pick("some serious honkers", "a real set of badonkers", "some dobonhonkeros", "massive dohoonkabhankoloos", "big old tonhongerekoogers", "giant bonkhonagahoogs", "humongous hungolomghnonoloughongous")].</b></span>")
|
||||
M.reagents.remove_reagent(src.id, 5)
|
||||
sleep(500)
|
||||
if(B.size >= 7)
|
||||
B.size = B.size + 0.1
|
||||
if (B.size > 9)
|
||||
//M.adjustOxyLoss((-50, 0)
|
||||
M.apply_status_effect(/datum/status_effect/chem/BElarger)
|
||||
M.add_movespeed_modifier("megamilk", TRUE, 100, NONE, override = TRUE, multiplicative_slowdown = (B.size - 8.1))
|
||||
M.next_move_modifier += 0.1
|
||||
else if (B.size > 8.5)
|
||||
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)
|
||||
sleep(500)
|
||||
//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)
|
||||
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)
|
||||
|
||||
B.update_appearance()
|
||||
B.update()
|
||||
..()
|
||||
|
||||
/datum/reagent/fermi/BElarger/overdose_start(mob/living/carbon/M) //Turns you into a female if male and ODing, doesn't touch nonbinary and object genders.
|
||||
@@ -611,23 +581,12 @@
|
||||
M.visible_message("<span class='boldnotice'>[M] suddenly looks more masculine!</span>", "<span class='boldwarning'>You suddenly feel more masculine!</span>")
|
||||
|
||||
if(B)
|
||||
B.size -= 0.1
|
||||
if (B.size < 0.1)
|
||||
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)
|
||||
else if (B.size >= 9)
|
||||
M.add_movespeed_modifier("megamilk", TRUE, 100, NONE, override = TRUE, multiplicative_slowdown = (B.size - 8.1))//Via la liberation
|
||||
M.next_move_modifier -= 0.1
|
||||
H.dna.species.no_equip = list(SLOT_WEAR_SUIT, SLOT_W_UNIFORM)
|
||||
if(V)
|
||||
V.Remove(M)
|
||||
if(W)
|
||||
W.Remove(M)
|
||||
B.update_appearance()
|
||||
else
|
||||
M.remove_status_effect(/datum/status_effect/chem/BElarger)
|
||||
|
||||
|
||||
B.cached_size = B.cached_size - B.cached_size
|
||||
B.update()
|
||||
if(V)
|
||||
V.Remove(M)
|
||||
if(W)
|
||||
W.Remove(M)
|
||||
if(!T)
|
||||
var/obj/item/organ/genital/testicles/nT = new
|
||||
nT.Insert(M)
|
||||
|
||||
Reference in New Issue
Block a user