Files
Aurora.3/code/game/objects/items/draftingchalk.dm
Cody Brittain ddb14f4036 Planes & Layers part 1: The Re-Layering Redux (#18741)
This is part 1 of a project to, eventually, bring the render planes
system from /tg/ and bay into Aurora. This is a prerequisite and blocker
for many things the development team and community want to have, and
this was long overdue.

Many objects have been re-assigned layers, which are now thoroughly
defined. Maps have had their custom layer defines purged, as we should
be moving away from this in favor of saner definitions in the base
items.

This should be a test-merge due to the sheer amount of layers changed,
which will very likely create issues that I cannot possibly discover and
debug in a reasonable amount of time myself.

---------

Co-authored-by: Cody Brittain <cbrittain10@live.com>
2024-04-01 14:50:27 +00:00

120 lines
3.2 KiB
Plaintext

/obj/effect/decal/cleanable/draftingchalk
name = "chalk marking"
desc = "A line drawn in chalk."
icon = 'icons/obj/smooth/chalkline-smooth.dmi'
icon_state = "preview"
color = "#FFFFFF"
anchored = TRUE
smoothing_flags = SMOOTH_TRUE
/obj/effect/decal/cleanable/draftingchalk/Initialize(mapload)
. = ..()
if (mapload)
SSicon_smooth.add_to_queue(src)
else
smooth_icon(src)
for (var/obj/effect/decal/cleanable/draftingchalk/C in orange(1, src))
smooth_icon(C)
/obj/item/pen/drafting
name = "white drafting chalk"
desc = "A piece of white chalk for marking areas of floor."
icon = 'icons/obj/storage/fancy/crayon.dmi'
icon_state = "dchalk"
color = "#FFFFFF"
var/colorName = "whitec"
/obj/item/pen/drafting/attack_self(var/mob/user)
return
/obj/item/pen/drafting/afterattack(turf/target, mob/user, proximity)
if (!proximity || !istype(target, /turf/simulated) || target.density || target.is_hole)
return
to_chat(user, "You start marking a line on [target].")
if (!do_after(user, 1 SECONDS, target))
return
for (var/obj/effect/decal/cleanable/draftingchalk/C in target)
qdel(C)
to_chat(user, "You mark a line on [target].")
var/obj/effect/decal/cleanable/draftingchalk/C = new(target)
C.color = color
target.add_fingerprint(user)
/obj/item/pen/drafting/red
name = "red drafting chalk"
desc = "A piece of red chalk for marking areas of floor."
color = "#E75344"
colorName = "redc"
/obj/effect/decal/cleanable/draftingchalk/red
desc = "A line drawn in a red chalk."
color = "#E75344"
/obj/item/pen/drafting/yellow
name = "yellow drafting chalk"
desc = "A piece of yellow chalk for marking areas of floor."
color = "#E1CB47"
colorName = "yellowc"
/obj/effect/decal/cleanable/draftingchalk/yellow
desc = "A line drawn in a yellow chalk."
color = "#E1CB47"
/obj/item/pen/drafting/green
name = "green drafting chalk"
desc = "A piece of yellow chalk for marking areas of floor."
color = "#6CD48F"
colorName = "green"
/obj/effect/decal/cleanable/draftingchalk/green
desc = "A line drawn in a green chalk."
color = "#6CD48F"
/obj/item/pen/drafting/blue
name = "blue drafting chalk"
desc = "A piece of blue chalk for marking areas of floor."
color = "#9FC8F7"
colorName = "bluec"
/obj/effect/decal/cleanable/draftingchalk/blue
desc = "A line drawn in a blue chalk."
color = "#9FC8F7"
/obj/item/pen/drafting/purple
name = "purple drafting chalk"
desc = "A piece of purple chalk for marking areas of floor."
color = "#a489c2"
colorName = "purplec"
/obj/effect/decal/cleanable/draftingchalk/purple
desc = "A line drawn in a purple chalk."
color = "#a489c2"
/obj/item/storage/box/fancy/crayons/chalkbox
name = "box of drafting chalk"
desc = "A box of drafting chalk for drafting floor plans."
icon_state = "chalkbox"
icon_type = "chalk"
can_hold = list(
/obj/item/pen/drafting
)
/obj/item/storage/box/fancy/crayons/chalkbox/fill()
new /obj/item/pen/drafting/red(src)
new /obj/item/pen/drafting(src)
new /obj/item/pen/drafting/yellow(src)
new /obj/item/pen/drafting/green(src)
new /obj/item/pen/drafting/blue(src)
new /obj/item/pen/drafting/purple(src)
update_icon()
/obj/item/storage/box/fancy/crayons/chalkbox/update_icon()
cut_overlays()
for(var/obj/item/pen/drafting/chalk in contents)
add_overlay("[chalk.colorName]")