mirror of
https://github.com/KabKebab/GS13.git
synced 2026-08-23 04:56:23 +01:00
New gential; Anus
Ass cheeks next. and works with fleshlights and vibrators.
This commit is contained in:
@@ -321,7 +321,7 @@
|
||||
src.visible_message("<span class='love'>[src] orgasms with [p_their()] [G.name]!</span>", \
|
||||
"<span class='userlove'>You climax with your [G.name].</span>", \
|
||||
"<span class='userlove'>You climax using your [G.name].</span>")
|
||||
|
||||
|
||||
SEND_SIGNAL(src, COMSIG_ADD_MOOD_EVENT, "orgasm", /datum/mood_event/orgasm)
|
||||
if(G.can_climax)
|
||||
setArousalLoss(min_arousal)
|
||||
@@ -522,10 +522,9 @@
|
||||
var/list/worn_stuff = get_equipped_items()
|
||||
|
||||
for(var/obj/item/organ/genital/G in T.internal_organs)
|
||||
if(G.can_climax) //filter out what you can't masturbate with
|
||||
if(G.is_exposed(worn_stuff)) //Nude or through_clothing
|
||||
if(!G.dontlist)
|
||||
genitals_list += G
|
||||
if(G.is_exposed(worn_stuff)) //Nude or through_clothing
|
||||
if(!G.dontlist)
|
||||
genitals_list += G
|
||||
if(genitals_list.len)
|
||||
ret_organ = input(src, "", "Genitals", null) as null|obj in genitals_list
|
||||
return ret_organ
|
||||
|
||||
@@ -0,0 +1,25 @@
|
||||
/obj/item/organ/genital/anus
|
||||
name = "anus"
|
||||
desc = ""
|
||||
zone = "groin"
|
||||
slot = "anus"
|
||||
w_class = 3
|
||||
size = 0
|
||||
var/statuscheck = FALSE
|
||||
masturbation_verb = "massage"
|
||||
can_climax = FALSE //no poo poo 4 u
|
||||
nochange = TRUE
|
||||
|
||||
|
||||
/obj/item/organ/genital/anus/Initialize()
|
||||
. = ..()
|
||||
|
||||
/obj/item/organ/genital/anus/on_life()
|
||||
if(QDELETED(src))
|
||||
return
|
||||
if(!owner)
|
||||
return
|
||||
|
||||
|
||||
|
||||
|
||||
@@ -25,6 +25,7 @@
|
||||
var/mode = "clothes"
|
||||
var/obj/item/equipment //for fun stuff that goes on the gentials/maybe rings down the line
|
||||
var/dontlist = FALSE
|
||||
var/nochange = FALSE //stops people changing visablity.
|
||||
|
||||
/obj/item/organ/genital/Initialize()
|
||||
. = ..()
|
||||
@@ -67,6 +68,8 @@
|
||||
return owner.is_chest_exposed()
|
||||
if("groin")
|
||||
return owner.is_groin_exposed()
|
||||
if("anus")
|
||||
return owner.is_groin_exposed()
|
||||
|
||||
return FALSE
|
||||
|
||||
@@ -150,6 +153,8 @@
|
||||
if (NOGENITALS in dna.species.species_traits)
|
||||
return
|
||||
//Order should be very important. FIRST vagina, THEN testicles, THEN penis, as this affects the order they are rendered in.
|
||||
if(dna.features["has_anus"])
|
||||
give_anus()
|
||||
if(dna.features["has_vag"])
|
||||
give_vagina()
|
||||
if(dna.features["has_womb"])
|
||||
@@ -239,6 +244,18 @@
|
||||
if(dna.features["inflatable_belly"]) //autohide bellies if they have the option ticked.
|
||||
B.inflatable = TRUE
|
||||
|
||||
/mob/living/carbon/human/proc/give_anus()
|
||||
if(!dna)
|
||||
return FALSE
|
||||
if(NOGENITALS in dna.species.species_traits)
|
||||
return FALSE
|
||||
if(!getorganslot("anus"))
|
||||
var/obj/item/organ/genital/anus/A = new
|
||||
A.Insert(src)
|
||||
if(A)
|
||||
A.color = "#[skintone2hex(skin_tone)]"
|
||||
A.update()
|
||||
|
||||
|
||||
|
||||
/mob/living/carbon/human/proc/give_breasts()
|
||||
|
||||
@@ -96,6 +96,8 @@
|
||||
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"])
|
||||
//anus
|
||||
WRITE_FILE(S["feature_has_anus"], features["has_anus"])
|
||||
|
||||
//gear loadout
|
||||
if(islist(chosen_gear))
|
||||
|
||||
Reference in New Issue
Block a user