mirror of
https://github.com/CHOMPStation2/CHOMPStation2.git
synced 2025-12-10 10:12:45 +00:00
[MIRROR] Add a protean ability to absorb implants into themselves (#11247)
Co-authored-by: ShadowLarkens <shadowlarkens@gmail.com>
This commit is contained in:
committed by
GitHub
parent
1d9103c1a5
commit
123b401d1d
@@ -903,3 +903,43 @@
|
||||
icon = 'icons/obj/slimeborg/slimecore.dmi'
|
||||
icon_state = "core"
|
||||
to_call = /mob/living/carbon/human/proc/transparency_toggle
|
||||
|
||||
/obj/effect/protean_ability/absorb_implant
|
||||
ability_name = "Absorb Implant"
|
||||
desc = "Absorb an implant into your system."
|
||||
icon = 'icons/obj/surgery.dmi'
|
||||
icon_state = "heart-on"
|
||||
to_call = /mob/living/carbon/human/proc/absorb_implant
|
||||
|
||||
/mob/living/carbon/human/proc/absorb_implant()
|
||||
set name = "Absorb Implant"
|
||||
set category = "Abilities.Protean"
|
||||
if(stat || world.time < last_special)
|
||||
return
|
||||
last_special = world.time + 50
|
||||
|
||||
var/obj/item/organ/internal/augment/A = get_active_hand()
|
||||
if(!istype(A))
|
||||
to_chat(src, span_danger("You cannot integrate this into your body."))
|
||||
return
|
||||
|
||||
if(!(ORGAN_NANOFORM in A.target_parent_classes))
|
||||
to_chat(src, span_danger("This implant is incompatible with our nanoform."))
|
||||
return
|
||||
|
||||
var/obj/item/organ/external/target_organ = get_organ(zone_sel.selecting)
|
||||
if(!istype(target_organ) || target_organ.is_stump())
|
||||
to_chat(src, span_danger("Your [target_organ] is currently unsuitable for implants."))
|
||||
return
|
||||
|
||||
if(target_organ.organ_tag != A.parent_organ)
|
||||
to_chat(src, span_danger("[A] does not go in [target_organ]."))
|
||||
return
|
||||
|
||||
if(!unEquip(A))
|
||||
to_chat(src, span_danger("[A] is stuck to your hand."))
|
||||
return
|
||||
|
||||
A.replaced(src, target_organ)
|
||||
to_chat(src, span_notice("You absorb [A] into your [target_organ]."))
|
||||
log_admin("[key_name(src)] protean self-implanted [A].")
|
||||
|
||||
@@ -16,7 +16,7 @@
|
||||
|
||||
target_slot = slot_l_hand
|
||||
|
||||
target_parent_classes = list(ORGAN_FLESH, ORGAN_ROBOT)
|
||||
target_parent_classes = list(ORGAN_FLESH, ORGAN_ROBOT, ORGAN_NANOFORM)
|
||||
|
||||
integrated_object_type = /obj/item/gun/energy/laser/mounted/augment
|
||||
|
||||
|
||||
Reference in New Issue
Block a user