mirror of
https://github.com/Bubberstation/Bubberstation.git
synced 2026-07-20 12:35:33 +01:00
Valentine antag fixes (#56905)
This commit is contained in:
@@ -19,6 +19,8 @@ GLOBAL_LIST_EMPTY(antagonists)
|
||||
var/hijack_speed = 0
|
||||
var/antag_hud_type
|
||||
var/antag_hud_name
|
||||
/// If set to true, the antag will not be added to the living antag list.
|
||||
var/soft_antag = FALSE
|
||||
|
||||
//Antag panel properties
|
||||
var/show_in_antagpanel = TRUE //This will hide adding this antag type in antag panel, use only for internal subtypes that shouldn't be added directly but still show if possessed by mind
|
||||
@@ -58,10 +60,10 @@ GLOBAL_LIST_EMPTY(antagonists)
|
||||
/datum/antagonist/proc/on_body_transfer(mob/living/old_body, mob/living/new_body)
|
||||
SHOULD_CALL_PARENT(TRUE)
|
||||
remove_innate_effects(old_body)
|
||||
if(old_body.stat != DEAD && !LAZYLEN(old_body.mind?.antag_datums))
|
||||
if(!soft_antag && old_body.stat != DEAD && !LAZYLEN(old_body.mind?.antag_datums))
|
||||
old_body.remove_from_current_living_antags()
|
||||
apply_innate_effects(new_body)
|
||||
if(new_body.stat != DEAD)
|
||||
if(!soft_antag && new_body.stat != DEAD)
|
||||
new_body.add_to_current_living_antags()
|
||||
|
||||
//This handles the application of antag huds/special abilities
|
||||
@@ -115,7 +117,7 @@ GLOBAL_LIST_EMPTY(antagonists)
|
||||
replace_banned_player()
|
||||
else if(owner.current.client?.holder && (CONFIG_GET(flag/auto_deadmin_antagonists) || owner.current.client.prefs?.toggles & DEADMIN_ANTAGONIST))
|
||||
owner.current.client.holder.auto_deadmin()
|
||||
if(owner.current.stat != DEAD)
|
||||
if(!soft_antag && owner.current.stat != DEAD)
|
||||
owner.current.add_to_current_living_antags()
|
||||
|
||||
/datum/antagonist/proc/is_banned(mob/M)
|
||||
@@ -143,7 +145,7 @@ GLOBAL_LIST_EMPTY(antagonists)
|
||||
remove_innate_effects()
|
||||
clear_antag_moodies()
|
||||
LAZYREMOVE(owner.antag_datums, src)
|
||||
if(!LAZYLEN(owner.antag_datums))
|
||||
if(!LAZYLEN(owner.antag_datums) && !soft_antag)
|
||||
owner.current.remove_from_current_living_antags()
|
||||
if(!silent && owner.current)
|
||||
farewell()
|
||||
|
||||
@@ -4,6 +4,7 @@
|
||||
show_in_antagpanel = FALSE
|
||||
prevent_roundtype_conversion = FALSE
|
||||
var/datum/mind/date
|
||||
soft_antag = TRUE
|
||||
|
||||
/datum/antagonist/valentine/proc/forge_objectives()
|
||||
var/datum/objective/protect/protect_objective = new /datum/objective/protect
|
||||
|
||||
Reference in New Issue
Block a user