mirror of
https://github.com/ParadiseSS13/Paradise.git
synced 2025-12-19 23:01:35 +00:00
* The Green Terror marches on * Update code/datums/spells/construct_spells.dm Co-authored-by: Henri215 <77684085+Henri215@users.noreply.github.com> * Update code/game/gamemodes/cult/cult_structures.dm Co-authored-by: Henri215 <77684085+Henri215@users.noreply.github.com> * Updated Icons * one extra i forgor --------- Co-authored-by: Henri215 <77684085+Henri215@users.noreply.github.com>
175 lines
6.1 KiB
Plaintext
175 lines
6.1 KiB
Plaintext
//////////////////////////////Construct Spells/////////////////////////
|
|
|
|
/obj/effect/proc_holder/spell/aoe/conjure/construct/lesser
|
|
base_cooldown = 1800
|
|
action_icon_state = "artificer"
|
|
action_background_icon_state = "bg_cult"
|
|
|
|
/obj/effect/proc_holder/spell/aoe/conjure/build
|
|
aoe_range = 0
|
|
|
|
/obj/effect/proc_holder/spell/aoe/conjure/build/floor
|
|
name = "Summon Cult Floor"
|
|
desc = "This spell constructs a cult floor"
|
|
action_icon_state = "floorconstruct"
|
|
action_background_icon_state = "bg_cult"
|
|
school = "conjuration"
|
|
base_cooldown = 20
|
|
clothes_req = FALSE
|
|
invocation = "none"
|
|
invocation_type = "none"
|
|
summon_type = list(/turf/simulated/floor/engine/cult)
|
|
centcom_cancast = FALSE //Stop crashing the server by spawning turfs on transit tiles
|
|
holy_area_cancast = FALSE //Stops cult magic from working on holy ground eg: chapel
|
|
|
|
/obj/effect/proc_holder/spell/aoe/conjure/build/wall
|
|
name = "Summon Cult Wall"
|
|
desc = "This spell constructs a cult wall"
|
|
action_icon_state = "cultforcewall"
|
|
action_background_icon_state = "bg_cult"
|
|
school = "conjuration"
|
|
base_cooldown = 100
|
|
clothes_req = FALSE
|
|
invocation = "none"
|
|
invocation_type = "none"
|
|
summon_type = list(/turf/simulated/wall/cult/artificer) //we don't want artificer-based runed metal farms
|
|
centcom_cancast = FALSE //Stop crashing the server by spawning turfs on transit tiles
|
|
holy_area_cancast = FALSE //Stops cult magic from working on holy ground eg: chapel
|
|
|
|
/obj/effect/proc_holder/spell/aoe/conjure/build/wall/reinforced
|
|
name = "Greater Construction"
|
|
desc = "This spell constructs a reinforced metal wall"
|
|
school = "conjuration"
|
|
base_cooldown = 300
|
|
clothes_req = FALSE
|
|
invocation = "none"
|
|
invocation_type = "none"
|
|
centcom_cancast = FALSE //Stop crashing the server by spawning turfs on transit tiles
|
|
holy_area_cancast = FALSE //Stops cult magic from working on holy ground eg: chapel
|
|
delay = 50
|
|
|
|
summon_type = list(/turf/simulated/wall/r_wall)
|
|
|
|
/obj/effect/proc_holder/spell/aoe/conjure/build/soulstone
|
|
name = "Summon Soulstone"
|
|
desc = "This spell uses vile sorcery to create a spirit-trapping soulstone."
|
|
action_icon_state = "summonsoulstone"
|
|
action_background_icon_state = "bg_cult"
|
|
school = "conjuration"
|
|
base_cooldown = 3000
|
|
clothes_req = FALSE
|
|
invocation = "none"
|
|
invocation_type = "none"
|
|
holy_area_cancast = FALSE //Stops cult magic from working on holy ground eg: chapel
|
|
|
|
summon_type = list(/obj/item/soulstone)
|
|
|
|
/obj/effect/proc_holder/spell/aoe/conjure/build/soulstone/holy
|
|
action_icon_state = "summonsoulstone_holy"
|
|
|
|
summon_type = list(/obj/item/soulstone/anybody/purified)
|
|
|
|
/obj/effect/proc_holder/spell/aoe/conjure/build/pylon
|
|
name = "Cult Pylon"
|
|
desc = "This spell uses dark magic to craft an unholy beacon. Heals cultists, and makes a handy light source."
|
|
action_icon_state = "pylon"
|
|
action_background_icon_state = "bg_cult"
|
|
school = "conjuration"
|
|
base_cooldown = 200
|
|
clothes_req = FALSE
|
|
invocation = "none"
|
|
invocation_type = "none"
|
|
holy_area_cancast = FALSE //Stops cult magic from working on holy ground eg: chapel
|
|
|
|
summon_type = list(/obj/structure/cult/functional/pylon)
|
|
|
|
|
|
/obj/effect/proc_holder/spell/aoe/conjure/build/lesserforcewall
|
|
name = "Shield"
|
|
desc = "This spell creates a temporary forcefield to shield yourself and allies from incoming fire"
|
|
action_icon_state = "cultforcewall"
|
|
action_background_icon_state = "bg_cult"
|
|
school = "transmutation"
|
|
base_cooldown = 300
|
|
clothes_req = FALSE
|
|
invocation = "none"
|
|
invocation_type = "none"
|
|
holy_area_cancast = FALSE //Stops cult magic from working on holy ground eg: chapel
|
|
summon_type = list(/obj/effect/forcefield/cult)
|
|
summon_lifespan = 200
|
|
|
|
/obj/effect/forcefield/cult
|
|
desc = "That eerie looking obstacle seems to have been pulled from another dimension through sheer force"
|
|
name = "eldritch wall"
|
|
icon = 'icons/effects/cult_effects.dmi'
|
|
icon_state = "m_shield_cult"
|
|
light_color = LIGHT_COLOR_PURE_RED
|
|
|
|
/obj/effect/proc_holder/spell/ethereal_jaunt/shift
|
|
name = "Phase Shift"
|
|
desc = "This spell allows you to pass through walls"
|
|
action_icon_state = "phaseshift"
|
|
action_background_icon_state = "bg_cult"
|
|
base_cooldown = 200
|
|
clothes_req = FALSE
|
|
invocation = "none"
|
|
invocation_type = "none"
|
|
holy_area_cancast = FALSE //Stops cult magic from working on holy ground eg: chapel
|
|
jaunt_in_time = 12
|
|
jaunt_in_type = /obj/effect/temp_visual/dir_setting/wraith
|
|
jaunt_out_type = /obj/effect/temp_visual/dir_setting/wraith/out
|
|
|
|
/obj/effect/proc_holder/spell/ethereal_jaunt/shift/do_jaunt(mob/living/target)
|
|
target.set_light(0)
|
|
..()
|
|
if(isconstruct(target))
|
|
var/mob/living/simple_animal/hostile/construct/C = target
|
|
if(C.holy)
|
|
C.set_light(3, 5, LIGHT_COLOR_DARK_BLUE)
|
|
else
|
|
C.set_light(2, 3, l_color = SSticker.cultdat ? SSticker.cultdat.construct_glow : LIGHT_COLOR_BLOOD_MAGIC)
|
|
|
|
/obj/effect/proc_holder/spell/ethereal_jaunt/shift/jaunt_steam(mobloc)
|
|
return
|
|
|
|
/obj/effect/proc_holder/spell/projectile/magic_missile/lesser
|
|
name = "Lesser Magic Missile"
|
|
desc = "This spell fires several, slow moving, magic projectiles at nearby targets."
|
|
action_background_icon_state = "bg_cult"
|
|
school = "evocation"
|
|
base_cooldown = 400
|
|
clothes_req = FALSE
|
|
invocation = "none"
|
|
invocation_type = "none"
|
|
holy_area_cancast = FALSE //Stops cult magic from working on holy ground eg: chapel
|
|
proj_lifespan = 10
|
|
proj_step_delay = 5
|
|
proj_type = "/obj/effect/proc_holder/spell/inflict_handler/magic_missile/lesser"
|
|
|
|
/obj/effect/proc_holder/spell/projectile/magic_missile/lesser/create_new_targeting()
|
|
var/datum/spell_targeting/targeted/T = new()
|
|
T.allowed_type = /mob/living
|
|
T.random_target = TRUE
|
|
T.max_targets = 6
|
|
return T
|
|
|
|
/obj/effect/proc_holder/spell/inflict_handler/magic_missile/lesser
|
|
amt_knockdown = 6 SECONDS
|
|
amt_weakened = 0
|
|
|
|
/obj/effect/proc_holder/spell/smoke/disable
|
|
name = "Paralysing Smoke"
|
|
desc = "This spell spawns a cloud of paralysing smoke."
|
|
action_icon_state = "parasmoke"
|
|
action_background_icon_state = "bg_cult"
|
|
school = "conjuration"
|
|
base_cooldown = 200
|
|
clothes_req = FALSE
|
|
invocation = "none"
|
|
invocation_type = "none"
|
|
holy_area_cancast = FALSE //Stops cult magic from working on holy ground eg: chapel
|
|
cooldown_min = 20 //25 deciseconds reduction per rank
|
|
|
|
smoke_type = SMOKE_SLEEPING
|
|
smoke_amt = 10
|