mirror of
https://github.com/Aurorastation/Aurora.3.git
synced 2026-01-22 23:32:33 +00:00
Crayons finally have crayon dust in them. Use a grinder to get it (syringes won't work).
Removed the "uses" var for crayons and made the number of times a crayon can be used (or chewed on) based on the amount of crayon dust remaining.
Normal crayons contain 10 units of crayon dust. One drawing consumes 0.5 dust (for 20 effective uses. Down from 30). Taking a bite transfer 2 units to you (For five bites). So where before you could bite a crayon 4 times and still use it 30 times, now if you bite a crayon 4 times (8 units) you can only use the nub to draw 4 times (2 units) before it's gone.
Mime crayons have 15 units of dust, rainbow crayons have 20.
Biogenerator can produce crayon boxes now. It can already produce wax and cardboard, so this isn't a stretch. People will have to interact with hydro or cargo to get a good amount of a specific color of dust.
Gave crayon dust colors unique flavors because why not. It's fun.
Fixes #6284
119 lines
4.0 KiB
Plaintext
119 lines
4.0 KiB
Plaintext
/obj/item/weapon/pen/crayon/red
|
|
icon_state = "crayonred"
|
|
colour = "#DA0000"
|
|
shadeColour = "#810C0C"
|
|
colourName = "red"
|
|
dust = "crayon_dust_red"
|
|
|
|
/obj/item/weapon/pen/crayon/orange
|
|
icon_state = "crayonorange"
|
|
colour = "#FF9300"
|
|
shadeColour = "#A55403"
|
|
colourName = "orange"
|
|
dust = "crayon_dust_orange"
|
|
|
|
/obj/item/weapon/pen/crayon/yellow
|
|
icon_state = "crayonyellow"
|
|
colour = "#FFF200"
|
|
shadeColour = "#886422"
|
|
colourName = "yellow"
|
|
dust = "crayon_dust_yellow"
|
|
|
|
/obj/item/weapon/pen/crayon/green
|
|
icon_state = "crayongreen"
|
|
colour = "#A8E61D"
|
|
shadeColour = "#61840F"
|
|
colourName = "green"
|
|
dust = "crayon_dust_green"
|
|
|
|
/obj/item/weapon/pen/crayon/blue
|
|
icon_state = "crayonblue"
|
|
colour = "#00B7EF"
|
|
shadeColour = "#0082A8"
|
|
colourName = "blue"
|
|
dust = "crayon_dust_blue"
|
|
|
|
/obj/item/weapon/pen/crayon/purple
|
|
icon_state = "crayonpurple"
|
|
colour = "#DA00FF"
|
|
shadeColour = "#810CFF"
|
|
colourName = "purple"
|
|
dust = "crayon_dust_purple"
|
|
|
|
/obj/item/weapon/pen/crayon/mime
|
|
icon_state = "crayonmime"
|
|
desc = "A very sad-looking crayon."
|
|
colour = "#FFFFFF"
|
|
shadeColour = "#000000"
|
|
colourName = "mime"
|
|
dust = "crayon_dust_grey"
|
|
chem_volume = 15
|
|
|
|
/obj/item/weapon/pen/crayon/mime/attack_self(mob/living/user as mob) //inversion
|
|
if(colour != "#FFFFFF" && shadeColour != "#000000")
|
|
colour = "#FFFFFF"
|
|
shadeColour = "#000000"
|
|
to_chat(user, "You will now draw in white and black with this crayon.")
|
|
else
|
|
colour = "#000000"
|
|
shadeColour = "#FFFFFF"
|
|
to_chat(user, "You will now draw in black and white with this crayon.")
|
|
return
|
|
|
|
/obj/item/weapon/pen/crayon/rainbow
|
|
icon_state = "crayonrainbow"
|
|
colour = "#FFF000"
|
|
shadeColour = "#000FFF"
|
|
colourName = "rainbow"
|
|
dust = "crayon_dust_brown"
|
|
chem_volume = 20
|
|
|
|
/obj/item/weapon/pen/crayon/rainbow/attack_self(mob/living/user as mob)
|
|
colour = input(user, "Please select the main colour.", "Crayon colour") as color
|
|
shadeColour = input(user, "Please select the shade colour.", "Crayon colour") as color
|
|
return
|
|
|
|
/obj/item/weapon/pen/crayon/afterattack(atom/target, mob/user as mob, proximity)
|
|
if(!proximity) return
|
|
if(istype(target,/turf/simulated/floor))
|
|
var/originaloc = user.loc
|
|
var/drawtype = input("Choose what you'd like to draw.", "Crayon scribbles") in list("graffiti","rune","letter","arrow")
|
|
if (user.loc != originaloc)
|
|
to_chat(user, "<span class='notice'>You moved!</span>")
|
|
return
|
|
|
|
switch(drawtype)
|
|
if("letter")
|
|
drawtype = input("Choose the letter.", "Crayon scribbles") in list("a","b","c","d","e","f","g","h","i","j","k","l","m","n","o","p","q","r","s","t","u","v","w","x","y","z")
|
|
to_chat(user, "You start drawing a letter on the [target.name].")
|
|
if("graffiti")
|
|
to_chat(user, "You start drawing graffiti on the [target.name].")
|
|
if("rune")
|
|
to_chat(user, "You start drawing a rune on the [target.name].")
|
|
if("arrow")
|
|
drawtype = input("Choose the arrow.", "Crayon scribbles") in list("left", "right", "up", "down")
|
|
to_chat(user, "You start drawing an arrow on the [target.name].")
|
|
if(instant || do_after(user, 50))
|
|
new /obj/effect/decal/cleanable/crayon(target,colour,shadeColour,drawtype)
|
|
to_chat(user, "You finish drawing.")
|
|
target.add_fingerprint(user) // Adds their fingerprints to the floor the crayon is drawn on.
|
|
if(reagents)
|
|
reagents.remove_reagent(dust,0.5) //using crayons reduces crayon dust in it.
|
|
if(reagents.total_volume <= 0)
|
|
to_chat(user, "<span class='warning'>You used up your crayon!</span>")
|
|
qdel(src)
|
|
return
|
|
|
|
/obj/item/weapon/pen/crayon/attack(mob/M as mob, mob/user as mob, var/target_zone)
|
|
if(M == user)
|
|
to_chat(user, "You take a bite of the crayon and swallow it.")
|
|
user.adjustNutritionLoss(-1)
|
|
reagents.trans_to_mob(user, 2, CHEM_INGEST)
|
|
if(reagents.total_volume <= 0)
|
|
to_chat(user, "<span class='warning'>You ate your crayon!</span>")
|
|
qdel(src)
|
|
else
|
|
..(M, user, target_zone)
|
|
|
|
/obj/item/weapon/pen/crayon/attack_self(var/mob/user)
|
|
return |