Merge pull request #981 from ariaworld/lewd-smallupdate

[Lewd] [Semi-Modular] - Human Erect Penis and Balls Sprites-Fix & More!
This commit is contained in:
BongaTheProto
2023-11-06 15:06:15 -05:00
committed by GitHub
22 changed files with 172 additions and 80 deletions
@@ -6,6 +6,18 @@
var/taur_dimension_y = 32
var/taur_dimension_x = 32
/*
* This is an example of a penis object in the code.
* The icon_state of the penis is structured as follows:
* "penis_human_4_1_FRONT"
* Where "human" is the type of the penis, "4" is the size stage of the penis, and "1" means it's the erect sprite, while "0" would be the soft one.
* If the sprite is like this: "penis_human_4_s_1_FRONT", the extra "_s" means it's used by the default skintones (the list of default skin tones that "Albino, Caucasian, etc.").
* Those "_s" sprites use a more pink-ish tone instead of white, to match the different default skin tones automatically,
* while the icon states without the "_s" are used by the custom skin tone.
* In the future, it would be best to solve this, as it creates useless duplicated icon states, and therefore heavier file sizes.
* It would be best to just have 1 set of icon states that apply themselves normally to both custom skin tone users and match default skin tone users,
* effectively removing the need of using the extra "_s". - Goku
*/
//DICKS,COCKS,PENISES,WHATEVER YOU WANT TO CALL THEM
/datum/sprite_accessory/penis
+23 -7
View File
@@ -7,15 +7,31 @@
w_class = WEIGHT_CLASS_SMALL
gas_transfer_coefficient = 0.9
equip_delay_other = 20
equip_delay_self = 20
mutantrace_variation = STYLE_MUZZLE
var/seamless = FALSE
/obj/item/clothing/mask/muzzle/attack_paw(mob/user)
if(iscarbon(user))
var/mob/living/carbon/C = user
if(src == C.wear_mask)
to_chat(user, "<span class='warning'>You need help taking this off!</span>")
return
..()
/obj/item/clothing/mask/muzzle/attack_paw(mob/user, act_intent, attackchain_flags)
if(iscarbon(user))
var/mob/living/carbon/C = user
if(src == C.wear_mask)
if(seamless)
to_chat(user, span_warning("You need help taking this off!"))
return
else
if(!do_after(C, 60, target = src))
return
..()
/obj/item/clothing/mask/muzzle/attackby(obj/item/K, mob/user, params)
if(istype(K, /obj/item/key/latex))
if(seamless != FALSE)
to_chat(user, span_notice("The latches suddenly loosen!"))
seamless = FALSE
else
to_chat(user, span_warning("The latches suddenly tighten!"))
seamless = TRUE
return
/obj/item/clothing/mask/surgical
name = "sterile mask"