From aaabb9515d52bf9ee24d4531eb365e2124ea16d9 Mon Sep 17 00:00:00 2001
From: Qwertytoforty <52090703+Qwertytoforty@users.noreply.github.com>
Date: Thu, 14 Oct 2021 19:18:43 -0400
Subject: [PATCH 1/4] Makes mindslaves loose their mindslave status when their
owner cryos
---
code/game/gamemodes/objective.dm | 11 +++++++++++
1 file changed, 11 insertions(+)
diff --git a/code/game/gamemodes/objective.dm b/code/game/gamemodes/objective.dm
index 47c41d841fe..09cd6f62de8 100644
--- a/code/game/gamemodes/objective.dm
+++ b/code/game/gamemodes/objective.dm
@@ -205,6 +205,17 @@ GLOBAL_LIST_INIT(potential_theft_objectives, (subtypesof(/datum/theft_objective)
/datum/objective/protect/mindslave //subytpe for mindslave implants
+/datum/objective/protect/mindslave/on_target_cryo()
+ if(owner?.current)
+ to_chat(owner.current, "
You notice that your master has cryoed, and revert to your normal self, untill they return again. You are no longer a mindslave!")
+ SEND_SOUND(owner.current, sound('sound/ambience/alarm4.ogg'))
+ owner.objectives -= src
+ GLOB.all_objectives -= src
+ owner.remove_antag_datum(/datum/antagonist/mindslave)
+ SSticker.mode.implanted.Remove(owner)
+ log_admin("[key_name(usr)] mindslave master has cryo'd, and is no longer a mindslave.")
+ message_admins("[key_name_admin(usr)] mindslave master has cryo'd, and is no longer a mindslave.") //Since they were on antag hud earlier, this feels important to log
+ qdel(src)
/datum/objective/hijack
martyr_compatible = 0 //Technically you won't get both anyway.
From bff6ea69de298a03f22e3a0dce303c99e539bcdf Mon Sep 17 00:00:00 2001
From: Qwertytoforty <52090703+Qwertytoforty@users.noreply.github.com>
Date: Fri, 15 Oct 2021 10:54:19 -0400
Subject: [PATCH 2/4] Update code/game/gamemodes/objective.dm
Co-authored-by: SteelSlayer <42044220+SteelSlayer@users.noreply.github.com>
---
code/game/gamemodes/objective.dm | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)
diff --git a/code/game/gamemodes/objective.dm b/code/game/gamemodes/objective.dm
index 09cd6f62de8..1372996a865 100644
--- a/code/game/gamemodes/objective.dm
+++ b/code/game/gamemodes/objective.dm
@@ -207,7 +207,7 @@ GLOBAL_LIST_INIT(potential_theft_objectives, (subtypesof(/datum/theft_objective)
/datum/objective/protect/mindslave/on_target_cryo()
if(owner?.current)
- to_chat(owner.current, "
You notice that your master has cryoed, and revert to your normal self, untill they return again. You are no longer a mindslave!")
+ to_chat(owner.current, "
You notice that your master has cryo'd, and revert to your normal self, until they return again. You are no longer a mindslave!")
SEND_SOUND(owner.current, sound('sound/ambience/alarm4.ogg'))
owner.objectives -= src
GLOB.all_objectives -= src
From 29f6773231a6fe04e86700d52b076b909e6b8eb4 Mon Sep 17 00:00:00 2001
From: Qwertytoforty <52090703+Qwertytoforty@users.noreply.github.com>
Date: Fri, 15 Oct 2021 10:56:18 -0400
Subject: [PATCH 3/4] Removes uneeded steps, changes from usr to owner
---
code/game/gamemodes/objective.dm | 6 ++----
1 file changed, 2 insertions(+), 4 deletions(-)
diff --git a/code/game/gamemodes/objective.dm b/code/game/gamemodes/objective.dm
index 1372996a865..6c51a6f8cf3 100644
--- a/code/game/gamemodes/objective.dm
+++ b/code/game/gamemodes/objective.dm
@@ -209,12 +209,10 @@ GLOBAL_LIST_INIT(potential_theft_objectives, (subtypesof(/datum/theft_objective)
if(owner?.current)
to_chat(owner.current, "
You notice that your master has cryo'd, and revert to your normal self, until they return again. You are no longer a mindslave!")
SEND_SOUND(owner.current, sound('sound/ambience/alarm4.ogg'))
- owner.objectives -= src
- GLOB.all_objectives -= src
owner.remove_antag_datum(/datum/antagonist/mindslave)
SSticker.mode.implanted.Remove(owner)
- log_admin("[key_name(usr)] mindslave master has cryo'd, and is no longer a mindslave.")
- message_admins("[key_name_admin(usr)] mindslave master has cryo'd, and is no longer a mindslave.") //Since they were on antag hud earlier, this feels important to log
+ log_admin("[key_name(owner.current)]'s mindslave master has cryo'd, and is no longer a mindslave.")
+ message_admins("[key_name_admin(owner.current)]'s mindslave master has cryo'd, and is no longer a mindslave.") //Since they were on antag hud earlier, this feels important to log
qdel(src)
/datum/objective/hijack
From e4378149450ec7e79d5c1d47e9122baa1e63b69f Mon Sep 17 00:00:00 2001
From: Qwertytoforty <52090703+Qwertytoforty@users.noreply.github.com>
Date: Sun, 17 Oct 2021 09:32:19 -0400
Subject: [PATCH 4/4] Update code/game/gamemodes/objective.dm
Co-authored-by: S34N <12197162+S34NW@users.noreply.github.com>
---
code/game/gamemodes/objective.dm | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)
diff --git a/code/game/gamemodes/objective.dm b/code/game/gamemodes/objective.dm
index 6c51a6f8cf3..9dff5725b81 100644
--- a/code/game/gamemodes/objective.dm
+++ b/code/game/gamemodes/objective.dm
@@ -207,7 +207,7 @@ GLOBAL_LIST_INIT(potential_theft_objectives, (subtypesof(/datum/theft_objective)
/datum/objective/protect/mindslave/on_target_cryo()
if(owner?.current)
- to_chat(owner.current, "
You notice that your master has cryo'd, and revert to your normal self, until they return again. You are no longer a mindslave!")
+ to_chat(owner.current, "
You notice that your master has entered cryogenic storage, and revert to your normal self, until they return again. You are no longer a mindslave!")
SEND_SOUND(owner.current, sound('sound/ambience/alarm4.ogg'))
owner.remove_antag_datum(/datum/antagonist/mindslave)
SSticker.mode.implanted.Remove(owner)