ignore eligibility checks
This commit is contained in:
@@ -73,7 +73,7 @@ Credit where due:
|
||||
return TRUE
|
||||
return FALSE
|
||||
|
||||
/proc/add_servant_of_ratvar(mob/L, silent = FALSE, create_team = TRUE, neutered = FALSE)
|
||||
/proc/add_servant_of_ratvar(mob/L, silent = FALSE, create_team = TRUE, neutered = FALSE, ignore_eligibility = FALSE)
|
||||
if(!L || !L.mind)
|
||||
return
|
||||
var/update_type = /datum/antagonist/clockcult
|
||||
@@ -84,6 +84,7 @@ Credit where due:
|
||||
var/datum/antagonist/clockcult/C = new update_type(L.mind)
|
||||
C.make_team = create_team
|
||||
C.show_in_roundend = create_team //tutorial scarabs begone
|
||||
C.ignore_eligibility_check = ignore_eligibility
|
||||
|
||||
if(iscyborg(L))
|
||||
var/mob/living/silicon/robot/R = L
|
||||
|
||||
@@ -45,22 +45,10 @@
|
||||
/obj/item/clockwork/slab/traitor/attack_self(mob/living/user)
|
||||
if(!is_servant_of_ratvar(user) && !spent)
|
||||
to_chat(user, "<span class='userdanger'>You press your hand onto [src], golden tendrils of light latching onto you. Was this the best of ideas?</span>")
|
||||
if(add_servant_of_ratvar(user, FALSE, FALSE, TRUE))
|
||||
if(add_servant_of_ratvar(user, FALSE, FALSE, TRUE, TRUE))
|
||||
spent = TRUE
|
||||
else
|
||||
var/has_mindshield = locate(/obj/item/implant/mindshield) in user
|
||||
var/str = "It looks like your mind is protected. You can probably refund this with your uplink."
|
||||
if(has_mindshield)
|
||||
str = "It looks like your mind is shielded, offering you a choice."
|
||||
to_chat(user, "<span class='userdanger'>[src] pulses, the tendrils wrapping around your head. [str]</span>")
|
||||
if(alert(user, "Would you like to attempt to force the shielding influence from your mind? This will destroy your mindshield implant.", "Destroy mindshield?", "Yes", "No") == "Yes")
|
||||
if(spent || !user.CanReach(src) || user.incapacitated() || user.IsKnockdown() || user.IsStun())
|
||||
return
|
||||
qdel(has_mindshield)
|
||||
if(add_servant_of_ratvar(user, FALSE, FALSE, TRUE))
|
||||
spent = TRUE
|
||||
else
|
||||
to_chat(user, "<span class='userdanger'>[src] falls dark. It appears you weren't worthy.</span>")
|
||||
to_chat(user, "<span class='userdanger'>[src] falls dark. It appears you weren't worthy.</span>")
|
||||
return ..()
|
||||
|
||||
//ATTACK HAND IGNORING PARENT RETURN VALUE
|
||||
|
||||
@@ -9,6 +9,7 @@
|
||||
var/datum/team/clockcult/clock_team
|
||||
var/make_team = TRUE //This should be only false for tutorial scarabs
|
||||
var/neutered = FALSE //can not use round ending, gibbing, converting, or similar things with unmatched round impact
|
||||
var/ignore_eligibility_check = FALSE
|
||||
|
||||
/datum/antagonist/clockcult/silent
|
||||
silent = TRUE
|
||||
@@ -41,7 +42,7 @@
|
||||
|
||||
/datum/antagonist/clockcult/can_be_owned(datum/mind/new_owner)
|
||||
. = ..()
|
||||
if(.)
|
||||
if(. && !ignore_eligibility_check)
|
||||
. = is_eligible_servant(new_owner.current)
|
||||
|
||||
/datum/antagonist/clockcult/greet()
|
||||
|
||||
@@ -13,10 +13,14 @@
|
||||
var/give_equipment = FALSE
|
||||
var/datum/team/cult/cult_team
|
||||
var/neutered = FALSE //can not use round ending, gibbing, converting, or similar things with unmatched round impact
|
||||
var/ignore_eligibility_checks = FALSE
|
||||
|
||||
/datum/antagonist/cult/neutered
|
||||
neutered = TRUE
|
||||
|
||||
/datum/antagonist/cult/neutered/traitor
|
||||
ignore_eligibility_checks = TRUE
|
||||
|
||||
/datum/antagonist/cult/get_team()
|
||||
return cult_team
|
||||
|
||||
@@ -46,7 +50,7 @@
|
||||
|
||||
/datum/antagonist/cult/can_be_owned(datum/mind/new_owner)
|
||||
. = ..()
|
||||
if(. && !ignore_implant)
|
||||
if(. && !ignore_implant && !ignore_eligibility_checks)
|
||||
. = is_convertable_to_cult(new_owner.current,cult_team)
|
||||
|
||||
/datum/antagonist/cult/greet()
|
||||
|
||||
@@ -15,22 +15,10 @@
|
||||
/obj/item/tome/traitor/attack_self(mob/living/user)
|
||||
if(!iscultist(user) && !spent)
|
||||
to_chat(user, "<span class='userdanger'>You press your hand onto [src], sinister tendrils of corrupted magic swirling around you. Was this the best of ideas?</span>")
|
||||
if(user.mind.add_antag_datum(/datum/antagonist/cult/neutered))
|
||||
if(user.mind.add_antag_datum(/datum/antagonist/cult/neutered/traitor))
|
||||
spent = TRUE
|
||||
else
|
||||
var/has_mindshield = locate(/obj/item/implant/mindshield) in user
|
||||
var/str = "It looks like your mind is protected. You can probably refund this with your uplink."
|
||||
if(has_mindshield)
|
||||
str = "It looks like your mind is shielded, offering you a choice."
|
||||
to_chat(user, "<span class='userdanger'>[src] pulses, the tendrils wrapping around your head. [str]</span>")
|
||||
if(alert(user, "Would you like to attempt to force the shielding influence from your mind? This will destroy your mindshield implant.", "Destroy mindshield?", "Yes", "No") == "Yes")
|
||||
if(spent || !user.CanReach(src) || user.incapacitated() || user.IsKnockdown() || user.IsStun())
|
||||
return
|
||||
qdel(has_mindshield)
|
||||
if(user.mind.add_antag_datum(/datum/antagonist/cult/neutered))
|
||||
spent = TRUE
|
||||
else
|
||||
to_chat(user, "<span class='userdanger'>[src] falls dark. It appears you weren't worthy.</span>")
|
||||
to_chat(user, "<span class='userdanger'>[src] falls dark. It appears you weren't worthy.</span>")
|
||||
return ..()
|
||||
|
||||
/obj/item/melee/cultblade/dagger
|
||||
|
||||
Reference in New Issue
Block a user