mirror of
https://github.com/vgstation-coders/vgstation13.git
synced 2025-12-10 10:21:11 +00:00
120 lines
3.5 KiB
Plaintext
120 lines
3.5 KiB
Plaintext
/*
|
|
Other mutation or disability spells can be found in
|
|
code\game\\dna\genes\vg_powers.dm //hulk is in this file
|
|
code\game\\dna\genes\goon_disabilities.dm
|
|
code\game\\dna\genes\goon_powers.dm
|
|
*/
|
|
/spell/targeted/genetic
|
|
name = "Genetic modifier"
|
|
desc = "This spell inflicts a set of mutations and disabilities upon the target."
|
|
user_type = USER_TYPE_GENETIC
|
|
spell_flags = IS_HARMFUL
|
|
|
|
var/disabilities = 0 //bits
|
|
var/list/mutations = list() //mutation strings
|
|
duration = 100 //deciseconds
|
|
|
|
|
|
/spell/targeted/genetic/cast(list/targets)
|
|
..()
|
|
for(var/mob/living/target in targets)
|
|
for(var/x in mutations)
|
|
target.mutations.Add(x)
|
|
target.disabilities |= disabilities
|
|
target.update_mutations() //update target's mutation overlays
|
|
spawn(duration)
|
|
for(var/x in mutations)
|
|
target.mutations.Remove(x)
|
|
target.disabilities &= ~disabilities
|
|
target.update_mutations()
|
|
return
|
|
|
|
/spell/targeted/genetic/blind
|
|
name = "Blind"
|
|
desc = "Temporarily blind a single person."
|
|
abbreviation = "BD"
|
|
specialization = SSOFFENSIVE
|
|
disabilities = 1
|
|
duration = 300
|
|
|
|
charge_max = 300
|
|
|
|
spell_flags = WAIT_FOR_CLICK | IS_HARMFUL
|
|
invocation = "STI KALY"
|
|
invocation_type = SpI_WHISPER
|
|
message = "<span class='danger'>Your eyes cry out in pain!</span>"
|
|
cooldown_min = 50
|
|
|
|
range = 7
|
|
max_targets = 1
|
|
|
|
amt_eye_blind = 10
|
|
amt_eye_blurry = 20
|
|
|
|
hud_state = "wiz_blind"
|
|
|
|
price = 0.5 * Sp_BASE_PRICE //Half of the normal spell price
|
|
user_type = USER_TYPE_WIZARD
|
|
|
|
/spell/targeted/genetic/mutate
|
|
name = "Mutate"
|
|
desc = "This spell causes you to turn into a hulk for a short while."
|
|
abbreviation = "MU"
|
|
specialization = SSUTILITY
|
|
|
|
school = "transmutation"
|
|
charge_max = 400
|
|
spell_flags = NEEDSCLOTHES | INCLUDEUSER
|
|
invocation = "BIRUZ BENNAR"
|
|
invocation_type = SpI_SHOUT
|
|
message = "<span class='notice'>You feel strong!</span>"
|
|
range = 0
|
|
max_targets = 1
|
|
|
|
mutations = list(M_HULK)
|
|
duration = 300
|
|
cooldown_min = 300 //25 deciseconds reduction per rank
|
|
|
|
hud_state = "wiz_hulk"
|
|
user_type = USER_TYPE_WIZARD
|
|
|
|
/spell/targeted/genetic/mutate/highlander
|
|
name = "Become Highlander"
|
|
desc = "Temporarily turn into a mighty highlander who cannot be stunned."
|
|
invocation = "SCOTLAND FOREVER!"
|
|
mutations = list(M_HULK)
|
|
message = "<span class='notice'>You feel powerful! Nobody can take you down! It's time to take some heads!</span>"
|
|
user_type = USER_TYPE_OTHER
|
|
|
|
/spell/targeted/genetic/eat_weed
|
|
name = "Eat Weeds"
|
|
desc = "Devour weeds from soil or a hydroponics tray, gaining nutriment."
|
|
spell_flags = INCLUDEUSER
|
|
message = ""
|
|
range = 0
|
|
duration = 0
|
|
max_targets = 1
|
|
//mutations = list(M_EATWEEDS) - Some day, maybe, if this is ported to Diona nymphs instead of a verb
|
|
hud_state = "produce"
|
|
override_icon = 'icons/obj/hydroponics/ambrosiavulgaris.dmi'
|
|
|
|
/spell/targeted/genetic/eat_weed/cast(list/targets, var/mob/user)
|
|
..()
|
|
if(!ishuman(user))
|
|
return //We'll have to add an exception for monkeys if this is ported to diona
|
|
var/mob/living/carbon/human/H = user
|
|
var/list/trays = list()
|
|
for(var/obj/machinery/portable_atmospherics/hydroponics/tray in range(1))
|
|
if(tray.weedlevel > 0)
|
|
trays += tray
|
|
|
|
var/obj/machinery/portable_atmospherics/hydroponics/target = input(H,"Select a tray:") as null|anything in trays
|
|
|
|
if(!isnull(gcDestroyed) || !target || target.weedlevel == 0)
|
|
return
|
|
|
|
H.reagents.add_reagent(NUTRIMENT, target.weedlevel)
|
|
target.weedlevel = 0
|
|
|
|
user.visible_message("<span class='warning'>[user] begins rooting through [target], ripping out weeds and eating them noisily.</span>","<span class='warning'>You begin rooting through [target], ripping out weeds and eating them noisily.</span>")
|