Files
GS13NG/code/game/objects/effects/decals/decal.dm
deathride58 757dfbbdc5 Ports Aurora's floor tile color turf decals (For mappers) (#34492)
* ports Aurora's floor tile color decals

* replaces aurora's decals with new ones that actually have detail, renames turf_decal/corner to turf_decal/tile

* corner > tile decal
2018-01-18 21:28:14 -06:00

43 lines
1.3 KiB
Plaintext

/obj/effect/decal
name = "decal"
anchored = TRUE
resistance_flags = FIRE_PROOF | UNACIDABLE | ACID_PROOF
/obj/effect/decal/Initialize()
. = ..()
if(!isturf(loc) || NeverShouldHaveComeHere(loc))
return INITIALIZE_HINT_QDEL
/obj/effect/decal/proc/NeverShouldHaveComeHere(turf/T)
return isspaceturf(T) || isclosedturf(T) || islava(T) || istype(T, /turf/open/water) || ischasm(T)
/obj/effect/decal/ex_act(severity, target)
qdel(src)
/obj/effect/decal/fire_act(exposed_temperature, exposed_volume)
if(!(resistance_flags & FIRE_PROOF)) //non fire proof decal or being burned by lava
qdel(src)
/obj/effect/decal/HandleTurfChange(turf/T)
..()
if(T == loc && NeverShouldHaveComeHere(T))
qdel(src)
//////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////
/obj/effect/turf_decal
icon = 'icons/turf/decals.dmi'
icon_state = "warningline"
layer = TURF_DECAL_LAYER
/obj/effect/turf_decal/Initialize()
..()
return INITIALIZE_HINT_QDEL
/obj/effect/turf_decal/ComponentInitialize()
. = ..()
var/turf/T = loc
if(!istype(T)) //you know this will happen somehow
CRASH("Turf decal initialized in an object/nullspace")
T.AddComponent(/datum/component/decal, icon, icon_state, dir, CLEAN_GOD, color)