mirror of
https://github.com/ParadiseSS13/Paradise.git
synced 2025-12-31 20:53:34 +00:00
* the rest of the fucking owl * OK hands need work but otherwise good * fuck time out fix vampire after * temporary codersprite do not merge this lmao * codersprite up * pause, time out * deploy the antimagic * Update code/__HELPERS/trait_helpers.dm Co-authored-by: DGamerL <108773801+DGamerL@users.noreply.github.com> Signed-off-by: Qwertytoforty <52090703+Qwertytoforty@users.noreply.github.com> * Update code/datums/status_effects/buffs.dm Signed-off-by: Burzah <116982774+Burzah@users.noreply.github.com> * Update code/game/gamemodes/wizard/magic_tarot.dm Signed-off-by: Burzah <116982774+Burzah@users.noreply.github.com> --------- Signed-off-by: Qwertytoforty <52090703+Qwertytoforty@users.noreply.github.com> Signed-off-by: Burzah <116982774+Burzah@users.noreply.github.com> Co-authored-by: DGamerL <108773801+DGamerL@users.noreply.github.com> Co-authored-by: Burzah <116982774+Burzah@users.noreply.github.com>
73 lines
1.7 KiB
Plaintext
73 lines
1.7 KiB
Plaintext
/obj/effect/forcefield
|
|
desc = "A space wizard's magic wall."
|
|
name = "FORCEWALL"
|
|
icon = 'icons/effects/effects.dmi'
|
|
icon_state = "m_shield"
|
|
opacity = FALSE
|
|
density = TRUE
|
|
var/lifetime = 30 SECONDS
|
|
|
|
/obj/effect/forcefield/New()
|
|
..()
|
|
if(lifetime)
|
|
QDEL_IN(src, lifetime)
|
|
|
|
/obj/effect/forcefield/CanAtmosPass(direction)
|
|
return !density
|
|
|
|
/obj/effect/forcefield/wizard
|
|
var/mob/wizard
|
|
/// Flags for what antimagic can just ignore our forcefields
|
|
var/antimagic_flags = MAGIC_RESISTANCE
|
|
|
|
/obj/effect/forcefield/wizard/Initialize(mapload, mob/summoner)
|
|
. = ..()
|
|
wizard = summoner
|
|
|
|
/obj/effect/forcefield/wizard/CanPass(atom/movable/mover, border_dir)
|
|
if(mover == wizard)
|
|
return TRUE
|
|
if(isliving(mover))
|
|
var/mob/living/living_mover = mover
|
|
if(living_mover.can_block_magic(antimagic_flags, charge_cost = 0))
|
|
return TRUE
|
|
return FALSE
|
|
|
|
///////////Mimewalls///////////
|
|
|
|
/obj/structure/forcefield
|
|
name = "ain't supposed to see this"
|
|
desc = "file a github report if you do!"
|
|
icon = 'icons/effects/effects.dmi'
|
|
density = TRUE
|
|
anchored = TRUE
|
|
var/blocks_atmos = TRUE
|
|
|
|
/obj/structure/forcefield/Initialize(mapload)
|
|
. = ..()
|
|
if(blocks_atmos)
|
|
recalculate_atmos_connectivity()
|
|
|
|
/obj/structure/forcefield/Destroy()
|
|
if(blocks_atmos)
|
|
blocks_atmos = FALSE
|
|
recalculate_atmos_connectivity()
|
|
return ..()
|
|
|
|
/obj/structure/forcefield/CanAtmosPass(direction)
|
|
return !blocks_atmos
|
|
|
|
/obj/structure/forcefield/mime
|
|
icon = 'icons/effects/effects.dmi'
|
|
icon_state = "5"
|
|
name = "invisible wall"
|
|
alpha = 1
|
|
desc = "You have a bad feeling about this."
|
|
max_integrity = 80
|
|
|
|
/obj/effect/forcefield/mime
|
|
icon_state = null
|
|
name = "invisible blockade"
|
|
desc = "You might be here a while."
|
|
lifetime = 60 SECONDS
|