From ea053f3b9421740efc3d73a2f864c5828dfa817e Mon Sep 17 00:00:00 2001 From: DGamerL <108773801+DGamerL@users.noreply.github.com> Date: Sun, 14 Apr 2024 01:38:20 +0200 Subject: [PATCH] New and improved version! --- code/game/gamemodes/objective.dm | 4 ++-- code/game/gamemodes/traitor/traitor.dm | 7 ++++--- 2 files changed, 6 insertions(+), 5 deletions(-) diff --git a/code/game/gamemodes/objective.dm b/code/game/gamemodes/objective.dm index bb6edb4bf3e..52886b98630 100644 --- a/code/game/gamemodes/objective.dm +++ b/code/game/gamemodes/objective.dm @@ -59,7 +59,7 @@ GLOBAL_LIST_INIT(potential_theft_objectives, (subtypesof(/datum/theft_objective) return completed /datum/objective/proc/found_target() - return target + return (delayed_objective ? TRUE : target) /** * This is for objectives that need to register signals, so place them in here. @@ -113,7 +113,7 @@ GLOBAL_LIST_INIT(potential_theft_objectives, (subtypesof(/datum/theft_objective) /datum/objective/proc/find_target(list/target_blacklist) - if(!needs_target) + if(!needs_target || delayed_objective) return var/list/possible_targets = list() diff --git a/code/game/gamemodes/traitor/traitor.dm b/code/game/gamemodes/traitor/traitor.dm index f16cb4d3e25..ac23485fdc6 100644 --- a/code/game/gamemodes/traitor/traitor.dm +++ b/code/game/gamemodes/traitor/traitor.dm @@ -86,10 +86,11 @@ continue for(var/datum/antagonist/traitor/traitor_datum in traitor_mind.antag_datums) for(var/datum/objective/objective in traitor_datum.objective_holder.objectives) + if(istype(objective, /datum/objective/hijack)) // This should have been shown already. Next objective. + continue objective.delayed_objective = FALSE - var/datum/objective/steal/possible_steal_objective = objective - if(istype(possible_steal_objective) && possible_steal_objective.steal_target.special_equipment) - possible_steal_objective.give_kit(possible_steal_objective.steal_target.special_equipment) + objective.find_target(traitor_datum.objective_holder.assigned_targets) + SEND_SOUND(traitor_mind.current, sound('sound/ambience/alarm4.ogg')) objective.update_explanation_text() var/list/messages = traitor_mind.prepare_announce_objectives()