Skip to content

Commit

Permalink
Late join antagonists will try to target late join players (#31560)
Browse files Browse the repository at this point in the history
  • Loading branch information
Cyberboss authored and ChangelingRain committed Oct 24, 2017
1 parent 91acc5f commit 5a4f56b
Show file tree
Hide file tree
Showing 3 changed files with 15 additions and 0 deletions.
1 change: 1 addition & 0 deletions code/datums/mind.dm
Expand Up @@ -64,6 +64,7 @@
var/mob/living/enslaved_to //If this mind's master is another mob (i.e. adamantine golems)
var/datum/language_holder/language_holder
var/unconvertable = FALSE
var/late_joiner = FALSE

/datum/mind/New(var/key)
src.key = key
Expand Down
13 changes: 13 additions & 0 deletions code/game/gamemodes/objective.dm
Expand Up @@ -54,9 +54,22 @@
/datum/objective/proc/find_target()
var/list/datum/mind/owners = get_owners()
var/list/possible_targets = list()
var/try_target_late_joiners = FALSE
for(var/I in owners)
var/datum/mind/O = I
if(O.late_joiner)
try_target_late_joiners = TRUE
for(var/datum/mind/possible_target in get_crewmember_minds())
if(!(possible_target in owners) && ishuman(possible_target.current) && (possible_target.current.stat != DEAD) && is_unique_objective(possible_target))
possible_targets += possible_target
if(try_target_late_joiners)
var/list/all_possible_targets = possible_targets.Copy()
for(var/I in all_possible_targets)
var/datum/mind/PT = I
if(!PT.late_joiner)
possible_targets -= PT
if(!possible_targets.len)
possible_targets = all_possible_targets
if(possible_targets.len > 0)
target = pick(possible_targets)
update_explanation_text()
Expand Down
1 change: 1 addition & 0 deletions code/modules/mob/dead/new_player/new_player.dm
Expand Up @@ -482,6 +482,7 @@
. = H
new_character = .
if(transfer_after)
mind.late_joiner = TRUE
transfer_character()

/mob/dead/new_player/proc/transfer_character()
Expand Down

0 comments on commit 5a4f56b

Please sign in to comment.