[MIRROR] Abductor / general "Summon Item" spell QoL [MDB IGNORE] (#22947)

* Abductor / general "Summon Item" spell QoL

* Update _unit_tests.dm

* Update _unit_tests.dm

---------

Co-authored-by: MrMelbert <51863163+MrMelbert@users.noreply.github.com>
Co-authored-by: Bloop <13398309+vinylspiders@users.noreply.github.com>
Co-authored-by: Pinta <68373373+softcerv@users.noreply.github.com>
This commit is contained in:
SkyratBot
2023-08-09 05:34:14 +02:00
committed by GitHub
parent f5cdd8b789
commit d80d42dd8a
6 changed files with 87 additions and 31 deletions
@@ -14,7 +14,6 @@
var/greet_text
/// Type path for the associated job datum.
var/role_job = /datum/job/abductor_agent
var/datum/action/cooldown/spell/summonitem/abductor/baton_return_spell
/datum/antagonist/abductor/New()
// lets get the loading started now, but don't block waiting for it
@@ -80,16 +79,11 @@
objectives += team.objectives
finalize_abductor()
ADD_TRAIT(owner, TRAIT_ABDUCTOR_TRAINING, ABDUCTOR_ANTAGONIST)
baton_return_spell = new(owner)
baton_return_spell.Grant(owner.current)
if(HAS_TRAIT(owner, TRAIT_ABDUCTOR_SCIENTIST_TRAINING))
baton_return_spell.Remove(owner.current)
return ..()
/datum/antagonist/abductor/on_removal()
owner.special_role = null
REMOVE_TRAIT(owner, TRAIT_ABDUCTOR_TRAINING, ABDUCTOR_ANTAGONIST)
baton_return_spell.Remove(owner.current)
return ..()
/datum/antagonist/abductor/greet()
@@ -24,11 +24,19 @@
for(var/obj/item/abductor/gizmo/G in B.contents)
console.AddGizmo(G)
/datum/outfit/abductor/post_equip(mob/living/carbon/human/H, visualsOnly = FALSE)
..()
if(!visualsOnly)
link_to_console(H)
/datum/outfit/abductor/post_equip(mob/living/carbon/human/user, visualsOnly = FALSE)
. = ..()
if(visualsOnly)
return
if(!isnull(user.mind))
link_to_console(user)
var/obj/item/melee/baton/abductor/batong = locate() in user
if(!isnull(batong))
var/datum/action/cooldown/spell/summonitem/abductor/ayy_summon = new(user.mind || user)
ayy_summon.mark_item(batong)
ayy_summon.Grant(user)
/datum/outfit/abductor/agent
name = "Abductor Agent"
@@ -49,11 +57,11 @@
/obj/item/abductor/gizmo = 1
)
/datum/outfit/abductor/scientist/post_equip(mob/living/carbon/human/H, visualsOnly = FALSE)
..()
if(!visualsOnly)
var/obj/item/implant/abductor/beamplant = new /obj/item/implant/abductor(H)
beamplant.implant(H)
/datum/outfit/abductor/scientist/post_equip(mob/living/carbon/human/user, visualsOnly = FALSE)
. = ..()
if(!visualsOnly && !isnull(user.mind))
var/obj/item/implant/abductor/beamplant = new /obj/item/implant/abductor(user)
beamplant.implant(user)
/datum/outfit/abductor/scientist/onemanteam
name = "Abductor Scientist (w/ agent gear)"