[MODULAR] Fixes an assortment of bugs related to the interaction menu and toys (#22272)

* Fixes an assortment of bugs related to the interaction menu and toys

* Fixes some bugs, raises the sprite up a bit

And adds one for the toggled version of the DD.

This item is such a mess.

* More fixes/tweaks

* removes this

* Revert "removes this"

This reverts commit b2e50e55cf4597b7eae411732a9c5be2f7ca3f8a.

* Fixes issue with removing one end from someone else causing a bad state

Keeping it simple as possible for now so it is not prone to breaking

* Update dildo.dm

* Sorry CI suite..

* very sorry

* ugh

* This is what happens when you rush

* This is not needed to do twice

* We can also do away with this proc

* I said I wasn't going to refactor further but this bit bothered me

Trimming the fat. I am certain that belt stuff is needed anymore. Also neatens up a bit.

Well tested, no bugs found

* Update modular_skyrat/modules/modular_items/lewd_items/code/lewd_items/vibrator.dm
This commit is contained in:
Bloop
2023-07-12 09:57:40 -07:00
committed by GitHub
parent 51450dda19
commit 8a49675874
12 changed files with 156 additions and 83 deletions
@@ -156,14 +156,14 @@
var/item_index = params["item_slot"]
var/mob/living/carbon/human/source = locate(params["userref"])
var/mob/living/carbon/human/target = locate(params["selfref"])
var/obj/item/new_item = source.get_active_held_item()
var/obj/item/existing_item = target.vars[item_index]
var/obj/item/clothing/sextoy/new_item = source.get_active_held_item()
var/obj/item/clothing/sextoy/existing_item = target.vars[item_index]
if(!existing_item && !new_item)
source.show_message(span_warning("No item to insert or remove!"))
return
if(!existing_item && !istype(new_item, /obj/item/clothing/sextoy))
if(!existing_item && !istype(new_item))
source.show_message(span_warning("The item you're holding is not a toy!"))
return
@@ -182,7 +182,7 @@
source,
5 SECONDS,
target,
interaction_key = "interation_[item_index]"
interaction_key = "interaction_[item_index]"
) && can_lewd_strip(source, target, item_index))
if(existing_item)
@@ -193,7 +193,8 @@
source.visible_message(span_purple("[source.name] [internal ? "inserts" : "attaches"] the [new_item.name] [into_or_onto] [target.name]'s [item_index]."), span_purple("You [insert_or_attach] the [new_item.name] [into_or_onto] [target.name]'s [item_index]."), span_purple("You hear someone [insert_or_attach] something [into_or_onto] someone nearby."), vision_distance = 1)
target.vars[item_index] = new_item
new_item.forceMove(target)
target.update_inv_lewd()
new_item.lewd_equipped(target, item_index)
target.update_inv_lewd()
else
source.show_message(span_warning("Failed to adjust [target.name]'s toys!"))