Electrovore virgo (#18986)

* Refactored and fixed the Electrovore code in compliance with the review and requests for fixes.

* Address review feedback for electrovore element and traits

* Removed unneeded return

Missed this while I was going through unresolved issues - unneeded return has been removed.

* Remove redundant check and use spark_effect helper

* Switched to spark_effect

Should clean up nicely.

* Swaps to !isitem

Changes from if(!istype(target, /obj/item)) to if(!isitem(target)) as requested.

* Spark Spread reinstated

Uses the proper, updated code block for spark_spread.

* ident

* should be fine

---------

Co-authored-by: Kashargul <144968721+Kashargul@users.noreply.github.com>
This commit is contained in:
ShoanaeaCKeye
2026-01-06 18:44:59 +01:00
committed by GitHub
co-authored by Kashargul
parent fbadd5fc2e
commit afd6ce3aba
5 changed files with 115 additions and 1 deletions
@@ -259,6 +259,35 @@
..()
add_verb(H, /mob/living/carbon/human/proc/bloodsuck)
/datum/trait/neutral/electrovore
name = "Electrovore, Obligate"
desc = "Makes you unable to gain nutrition from anything but electricity"
tutorial = "HELP intent lets you consume nutrition to charge a Cell by clicking it in your hand.<br>\
HARM intent drains battery charge and gives nutrition in exchange"
cost = 0
custom_only = FALSE
excludes = list(/datum/trait/neutral/electrovore_freeform)
/datum/trait/neutral/electrovore/apply(var/datum/species/S, var/mob/living/carbon/human/human)
..()
ADD_TRAIT(human, TRAIT_ELECTROVORE, ROUNDSTART_TRAIT)
ADD_TRAIT(human, TRAIT_ELECTROVORE_OBLIGATE, ROUNDSTART_TRAIT)
/datum/trait/neutral/electrovore_freeform
name = "Electrovore"
desc = "Allows you to drain power cells for nutrition."
tutorial = "This trait allows you to consume electricity!<br>\
Clicking a power cell in your hand on HARM intent drains its power for nutrition"
cost = 0
custom_only = FALSE
excludes = list(/datum/trait/neutral/electrovore)
/datum/trait/neutral/electrovore_freeform/apply(var/datum/species/S, var/mob/living/carbon/human/human)
..()
ADD_TRAIT(human, TRAIT_ELECTROVORE, ROUNDSTART_TRAIT)
/datum/trait/neutral/succubus_drain
name = "Succubus Drain"
desc = "Makes you able to gain nutrition from draining prey in your grasp."