Cum inflation options and belly sizes.

fun
This commit is contained in:
QuoteFox
2021-05-10 18:28:22 +01:00
parent 75194c9b0c
commit 12ee6c6f43
10 changed files with 60 additions and 3 deletions
+2
View File
@@ -182,12 +182,14 @@
"has_cock" = FALSE,
"cock_shape" = pick(GLOB.cock_shapes_list),
"cock_length" = 6,
"belly_size" = 1,
"cock_girth_ratio" = COCK_GIRTH_RATIO_DEF,
"cock_color" = pick("FFFFFF","7F7F7F", "7FFF7F", "7F7FFF", "FF7F7F", "7FFFFF", "FF7FFF", "FFFF7F"),
"has_sheath" = FALSE,
"sheath_color" = pick("FFFFFF","7F7F7F", "7FFF7F", "7F7FFF", "FF7F7F", "7FFFFF", "FF7FFF", "FFFF7F"),
"has_belly" = FALSE,
"hide_belly" = FALSE,
"inflatable_belly" = FALSE,
"belly_color" = pick("FFFFFF","7F7F7F", "7FFF7F", "7F7FFF", "FF7F7F", "7FFFFF", "FF7FFF", "FFFF7F"),
"has_balls" = FALSE,
"balls_internal" = FALSE,
+15 -1
View File
@@ -133,12 +133,14 @@ GLOBAL_LIST_EMPTY(preferences_datums)
"has_cock" = FALSE,
"cock_shape" = "Human",
"cock_length" = 6,
"belly_size" = 1,
"cock_girth_ratio" = COCK_GIRTH_RATIO_DEF,
"cock_color" = "fff",
"has_sheath" = FALSE,
"sheath_color" = "fff",
"has_belly" = FALSE,
"hide_belly" = FALSE,
"inflatable_belly" = FALSE,
"belly_color" = "fff",
"has_balls" = FALSE,
"balls_internal" = FALSE,
@@ -907,6 +909,7 @@ GLOBAL_LIST_EMPTY(preferences_datums)
dat += "<h3>Belly</h3>"
dat += "<a style='display:block;width:50px' href='?_src_=prefs;preference=has_belly'>[features["has_belly"] == TRUE ? "Yes" : "No"]</a>"
if(features["has_belly"])
dat += "<b>Belly Size:</b> <a style='display:block;width:120px' href='?_src_=prefs;preference=belly_size;task=input'>[features["belly_size"]]</a>"
if(pref_species.use_skintones && features["genitals_use_skintone"] == TRUE)
dat += "<b>Color:</b></a><BR>"
dat += "<span style='border: 1px solid #161616; background-color: #[skintone2hex(skin_tone)];'>&nbsp;&nbsp;&nbsp;</span>(Skin tone overriding)<br>"
@@ -914,6 +917,7 @@ GLOBAL_LIST_EMPTY(preferences_datums)
dat += "<b>Color:</b></a><BR>"
dat += "<span style='border: 1px solid #161616; background-color: #[features["belly_color"]];'>&nbsp;&nbsp;&nbsp;</span> <a href='?_src_=prefs;preference=belly_color;task=input'>Change</a><br>"
dat += "<b>Hide on Round-Start:</b><a style='display:block;width:50px' href='?_src_=prefs;preference=hide_belly'>[features["hide_belly"] == 1 ? "Yes" : "No"]</a>"
dat += "<b>Inflation (Climax With):</b><a style='display:block;width:50px' href='?_src_=prefs;preference=inflatable_belly'>[features["inflatable_belly"] == 1 ? "Yes" : "No"]</a>"
dat += "</td>"
dat += "</td>"
@@ -1500,7 +1504,7 @@ GLOBAL_LIST_EMPTY(preferences_datums)
var/font_color = "#AAAAFF"
if(initial(Q.value) != 0)
font_color = initial(Q.value) > 0 ? "#AAFFAA" : "#FFAAAA"
if(compressed_quirks) //Hyperstation Edit: smol text
if(quirk_conflict)
dat += "<a><font size='1' color='red'>([quirk_cost]) [quirk_name])</font></a>"
@@ -2331,6 +2335,11 @@ GLOBAL_LIST_EMPTY(preferences_datums)
else
to_chat(user,"<span class='danger'>Invalid color. Your color is not bright enough.</span>")
if("belly_size")
var/new_bellysize = input(user, "Belly size :\n(1-3)", "Character Preference") as num|null
if(new_bellysize)
features["belly_size"] = clamp(new_bellysize, 1, 3)
if("vag_shape")
var/new_shape
new_shape = input(user, "Vagina Type", "Character Preference") as null|anything in GLOB.vagina_shapes_list
@@ -2465,6 +2474,11 @@ GLOBAL_LIST_EMPTY(preferences_datums)
features["has_belly"] = !features["has_belly"]
if(features["has_belly"] == FALSE)
features["hide_belly"] = FALSE
features["inflatable_belly"] = FALSE
features["belly_size"] = 1
if("inflatable_belly")
features["inflatable_belly"] = !features["inflatable_belly"]
if("hide_belly")
features["hide_belly"] = !features["hide_belly"]
if("has_balls")
@@ -400,6 +400,8 @@ SAVEFILE UPDATING/VERSIONING - 'Simplified', or rather, more coder-friendly ~Car
S["feature_cock_length"] >> features["cock_length"]
S["feature_cock_girth"] >> features["cock_girth"]
S["feature_has_sheath"] >> features["sheath_color"]
//belly size
S["feature_belly_size"] >> features["belly_size"]
//balls features
S["feature_has_balls"] >> features["has_balls"]
S["feature_balls_color"] >> features["balls_color"]
@@ -425,6 +427,7 @@ SAVEFILE UPDATING/VERSIONING - 'Simplified', or rather, more coder-friendly ~Car
S["feature_has_belly"] >> features["has_belly"]
S["feature_belly_color"] >> features["belly_color"]
S["feature_hide_belly"] >> features["hide_belly"]
S["feature_inflatable_belly"] >> features["inflatable_belly"]
//flavor text
//Let's make our players NOT cry desperately as we wipe their savefiles of their special snowflake texts:
@@ -36,6 +36,13 @@
dat += "<span class='linkOff'>Kiss</span></A>"
dat += "(Requires a partner)<BR>"
var/obj/item/organ/genital/belly/Belly = user.getorganslot("belly")
if(Belly)
if(Belly.inflatable)
dat += "<a href='byond://?src=[REF(src)];shrink_belly=1'>Deflate belly</A>"
dat += "(Shrink your belly down a size)<BR>"
if(user.pulling)
dat += "<a href='byond://?src=[REF(src)];climaxover=1'>Climax over [user.pulling]</A>" //you can cum on objects if you really want...
@@ -187,6 +194,15 @@
to_chat(usr, "<span class='warning'>You cannot do this alone!</span>")
return
if(href_list["shrink_belly"])
var/obj/item/organ/genital/belly/E = usr.getorganslot("belly")
if(E.size > 0)
to_chat(usr, "<span class='userlove'>You feel your belly diminish.</span>")
E.size -= 1
H.update_genitals()
else
to_chat(usr, "<span class='warning'>Your belly is already at the minimum size! </span>")
if(href_list["removecondom"])
H.menuremovecondom()
Binary file not shown.

Before

Width:  |  Height:  |  Size: 1.4 KiB

After

Width:  |  Height:  |  Size: 3.6 KiB

@@ -395,6 +395,17 @@
if(!remote && !in_range(src, L))
return
if(do_after(src, mb_time, target = src))
if(!spillage) //hyper inflation
var/obj/item/organ/genital/belly/B = L.getorganslot("belly")
if(B)
if(B.inflatable && total_fluids > 80) //requires a big cumshot to expand.
if(B.size < 3)
B.size += 1
to_chat(src, "<span class='userlove'>You feel your belly expand.</span>")
else
to_chat(src, "<span class='userlove'>You feel your belly strain.</span>")
var/obj/item/organ/genital/penis/P = G
if (P.condom)//condomed.
src.condomclimax()
@@ -409,6 +420,7 @@
src.visible_message("<span class='love'>[src] climaxes with someone, using [p_their()] [G.name]!</span>", \
"<span class='userlove'>You ejaculate with someone, using your [G.name].</span>", \
"<span class='userlove'>You have climaxed inside someone, using your [G.name].</span>")
to_chat(L, "<span class='userlove'>You feel someone ejeculate inside you.</span>")
SEND_SIGNAL(src, COMSIG_ADD_MOOD_EVENT, "orgasm", /datum/mood_event/orgasm)
SEND_SIGNAL(L, COMSIG_ADD_MOOD_EVENT, "orgasm", /datum/mood_event/orgasm)
@@ -423,6 +435,7 @@
L.mind.sexed = TRUE //sexed
to_chat(src, "<span class='userlove'>You feel deep satisfaction with yourself.</span>")
//Hyper - impreg
if(impreg)
//Role them odds, only people with the dicks can send the chance to the person with the settings enabled at the momment.
if(prob(L.impregchance))
@@ -6,12 +6,13 @@
zone = "chest"
slot = "belly"
w_class = 3
size = 1
size = 0
var/statuscheck = FALSE
shape = "Pair"
masturbation_verb = "massage"
can_climax = FALSE
var/sent_full_message = TRUE //defaults to 1 since they're full to start
var/inflatable = FALSE //For inflation connoisseurs
/obj/item/organ/genital/belly/on_life()
@@ -223,6 +223,8 @@
return FALSE
if(!getorganslot("belly"))
var/obj/item/organ/genital/belly/B = new
if(dna.features["belly_size"])
B.size = dna.features["belly_size"]-1
B.Insert(src)
if(B)
if(dna.species.use_skintones && dna.features["genitals_use_skintone"])
@@ -234,6 +236,9 @@
if(dna.features["hide_belly"]) //autohide bellies if they have the option ticked.
B.toggle_visibility("Always hidden")
if(dna.features["inflatable_belly"]) //autohide bellies if they have the option ticked.
B.inflatable = TRUE
/mob/living/carbon/human/proc/give_breasts()
@@ -72,7 +72,7 @@
path = /obj/item/shield/riot/roman/fake
cost = 2
/datum/gear/romanshield
/datum/gear/cheeseburger
name = "cheeseburger backpack"
category = SLOT_HANDS
path = /obj/item/storage/backpack/cheeseburgerbackpack
@@ -61,6 +61,8 @@
WRITE_FILE(S["feature_cock_length"], features["cock_length"])
WRITE_FILE(S["feature_cock_girth"], features["cock_girth"])
WRITE_FILE(S["feature_has_sheath"], features["sheath_color"])
//belly feature
WRITE_FILE(S["feature_belly_size"], features["belly_size"])
//balls features
WRITE_FILE(S["feature_has_balls"], features["has_balls"])
WRITE_FILE(S["feature_balls_color"], features["balls_color"])
@@ -93,6 +95,7 @@
WRITE_FILE(S["feature_has_belly"], features["has_belly"])
WRITE_FILE(S["feature_belly_color"], features["belly_color"])
WRITE_FILE(S["feature_hide_belly"], features["hide_belly"])
WRITE_FILE(S["feature_inflatable_belly"], features["inflatable_belly"])
//gear loadout
if(islist(chosen_gear))