One day it'll work and everything will be great

This commit is contained in:
Fermi
2019-04-28 03:42:10 +01:00
parent f8495ae96a
commit ab317d95aa
4 changed files with 87 additions and 68 deletions
@@ -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)