Kitchen Sink P2 TGUI Prefs (#17579)

* Kitchen Sink V2

* tsx

* Update vorestation.dme

* Update 01_basic.dm

* Update 01_basic.dm

* Deletes the character  directory

* F & M tags

* Flexible

* Update misc.dm

* ICP

* more fixes

* missing sounds
This commit is contained in:
Cameron Lennox
2025-04-26 16:08:58 -04:00
committed by GitHub
parent ea488c4ba4
commit a0e9785d0d
62 changed files with 1210 additions and 397 deletions
@@ -28,19 +28,16 @@
to_chat(user,span_danger("The target's mind is too complex to be affected!"))
return
if(ishuman(M))
var/mob/living/carbon/human/H = M
if(H.resleeve_lock && user.ckey != H.resleeve_lock)
to_chat(src, span_danger("[H] cannot be impersonated!"))
return
if(M.stat == DEAD) //Are they dead?
to_chat(user,span_warning("A warning pops up on the device, informing you that [M] is dead, and, as such, the mind transfer can not be done."))
return
var/choice = tgui_alert(user,"This will swap your mind with the target's mind. This will result in them controlling your body, and you controlling their body. Continue?","Confirmation",list("Continue","Cancel"))
if(choice == "Continue" && user.get_active_hand() == src && user.Adjacent(M))
if(M.ckey && !M.client)
log_and_message_admins("attempted to body swap with [key_name(M)] while they were SSD!")
else
log_and_message_admins("attempted to body swap with [key_name(M)].")
user.visible_message(span_warning("[user] pushes the device up their forehead and [M]'s head, the device beginning to let out a series of light beeps!"),span_notice("You begin swap minds with [M]!"))
if(do_after(user,35 SECONDS,M))
if(user.mind && M.mind && M.stat != DEAD && user.stat != DEAD)
@@ -51,6 +48,12 @@
var/target_ooc_notes = M.ooc_notes
var/target_likes = M.ooc_notes_likes
var/target_dislikes = M.ooc_notes_dislikes
var/target_favs = M.ooc_notes_favs
var/target_maybes = M.ooc_notes_maybes
var/target_style = M.ooc_notes_style
var/user_favs = user.ooc_notes_favs
var/user_maybes = user.ooc_notes_maybes
var/user_style = user.ooc_notes_style
var/user_ooc_notes = user.ooc_notes
var/user_likes = user.ooc_notes_likes
var/user_dislikes = user.ooc_notes_dislikes
@@ -67,6 +70,20 @@
M.ooc_notes = user_ooc_notes //Let's keep their OOC notes over to their new body.
M.ooc_notes_likes = user_likes
M.ooc_notes_dislikes = user_dislikes
M.ooc_notes_favs = user_favs
M.ooc_notes_maybes = user_maybes
M.ooc_notes_style = user_style
user.ooc_notes_favs = target_favs
user.ooc_notes_maybes = target_maybes
user.ooc_notes_style = target_style
if(M.tf_mob_holder == user)
M.tf_mob_holder = null
else
M.tf_mob_holder = user
if(user.tf_mob_holder == M)
user.tf_mob_holder = null
else
user.tf_mob_holder = M
user.ooc_notes = target_ooc_notes
user.ooc_notes_likes = target_likes
user.ooc_notes_dislikes = target_dislikes
@@ -18,8 +18,11 @@ var/global/mob/living/carbon/human/dummy/mannequin/sleevemate_mob
var/datum/mind/stored_mind
var/ooc_notes = null //For holding prefs
var/ooc_notes_favs = null
var/ooc_notes_likes = null
var/ooc_notes_maybes = null
var/ooc_notes_dislikes = null
var/ooc_notes_style = FALSE
// Resleeving database this machine interacts with. Blank for default database
// Needs a matching /datum/transcore_db with key defined in code
@@ -45,6 +48,9 @@ var/global/mob/living/carbon/human/dummy/mannequin/sleevemate_mob
ooc_notes = M.ooc_notes
ooc_notes_likes = M.ooc_notes_likes
ooc_notes_dislikes = M.ooc_notes_dislikes
ooc_notes_favs = M.ooc_notes_favs
ooc_notes_maybes = M.ooc_notes_maybes
ooc_notes_style = M.ooc_notes_style
stored_mind = M.mind
M.ghostize()
stored_mind.current = null
@@ -56,6 +62,9 @@ var/global/mob/living/carbon/human/dummy/mannequin/sleevemate_mob
M.ooc_notes = ooc_notes
M.ooc_notes_likes = ooc_notes_likes
M.ooc_notes_dislikes = ooc_notes_dislikes
M.ooc_notes_favs = ooc_notes_favs
M.ooc_notes_maybes = ooc_notes_maybes
M.ooc_notes_style = ooc_notes_style
clear_mind()