adds permanent markers

also tweaks paint recipe to use ink instead of crayons.
This commit is contained in:
Billy Bangles
2018-03-19 20:20:31 -04:00
parent c1ed3a0c6c
commit 05fd53ebcc
8 changed files with 256 additions and 26 deletions

View File

@@ -39,6 +39,7 @@
name = "Arts and Crafts supplies"
contains = list(
/obj/item/weapon/storage/fancy/crayons,
/obj/item/weapon/storage/fancy/markers,
/obj/item/device/camera,
/obj/item/device/camera_film = 2,
/obj/item/weapon/storage/photo_album,

View File

@@ -46,11 +46,11 @@
if(colour != "#FFFFFF" && shadeColour != "#000000")
colour = "#FFFFFF"
shadeColour = "#000000"
user << "You will now draw in white and black with this crayon."
to_chat(usr,"You will now draw in white and black with this crayon.")
else
colour = "#000000"
shadeColour = "#FFFFFF"
user << "You will now draw in black and white with this crayon."
to_chat(usr,"You will now draw in black and white with this crayon.")
return
/obj/item/weapon/pen/crayon/rainbow
@@ -72,22 +72,22 @@
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")
user << "You start drawing a letter on the [target.name]."
to_chat(usr,"You start drawing a letter on the [target.name].")
if("graffiti")
user << "You start drawing graffiti on the [target.name]."
to_chat(usr,"You start drawing graffiti on the [target.name].")
if("rune")
user << "You start drawing a rune on the [target.name]."
to_chat(usr,"You start drawing a rune on the [target.name].")
if("arrow")
drawtype = input("Choose the arrow.", "Crayon scribbles") in list("left", "right", "up", "down")
user << "You start drawing an arrow on the [target.name]."
to_chat(usr,"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)
user << "You finish drawing."
to_chat(usr,"You finish drawing.")
target.add_fingerprint(user) // Adds their fingerprints to the floor the crayon is drawn on.
if(uses)
uses--
if(!uses)
user << "<span class='warning'>You used up your crayon!</span>"
to_chat(usr,"<span class='warning'>You used up your crayon!</span>")
qdel(src)
return
@@ -99,7 +99,93 @@
if(uses)
uses -= 5
if(uses <= 0)
user << "<span class='warning'>You ate your crayon!</span>"
to_chat(user,"<span class='warning'>You ate your crayon!</span>")
qdel(src)
else
..()
/obj/item/weapon/pen/crayon/marker/black
icon_state = "markerblack"
colour = "#2D2D2D"
shadeColour = "#000000"
colourName = "black"
/obj/item/weapon/pen/crayon/marker/red
icon_state = "markerred"
colour = "#DA0000"
shadeColour = "#810C0C"
colourName = "red"
/obj/item/weapon/pen/crayon/marker/orange
icon_state = "markerorange"
colour = "#FF9300"
shadeColour = "#A55403"
colourName = "orange"
/obj/item/weapon/pen/crayon/marker/yellow
icon_state = "markeryellow"
colour = "#FFF200"
shadeColour = "#886422"
colourName = "yellow"
/obj/item/weapon/pen/crayon/marker/green
icon_state = "markergreen"
colour = "#A8E61D"
shadeColour = "#61840F"
colourName = "green"
/obj/item/weapon/pen/crayon/marker/blue
icon_state = "markerblue"
colour = "#00B7EF"
shadeColour = "#0082A8"
colourName = "blue"
/obj/item/weapon/pen/crayon/marker/purple
icon_state = "markerpurple"
colour = "#DA00FF"
shadeColour = "#810CFF"
colourName = "purple"
/obj/item/weapon/pen/crayon/marker/mime
icon_state = "markermime"
desc = "A very sad-looking marker."
colour = "#FFFFFF"
shadeColour = "#000000"
colourName = "mime"
uses = 0
/obj/item/weapon/pen/crayon/marker/mime/attack_self(mob/living/user as mob) //inversion
if(colour != "#FFFFFF" && shadeColour != "#000000")
colour = "#FFFFFF"
shadeColour = "#000000"
to_chat(usr,"You will now draw in white and black with this marker.")
else
colour = "#000000"
shadeColour = "#FFFFFF"
to_chat(usr,"You will now draw in black and white with this marker.")
return
/obj/item/weapon/pen/crayon/marker/rainbow
icon_state = "markerrainbow"
colour = "#FFF000"
shadeColour = "#000FFF"
colourName = "rainbow"
uses = 0
/obj/item/weapon/pen/crayon/marker/rainbow/attack_self(mob/living/user as mob)
colour = input(user, "Please select the main colour.", "Marker colour") as color
shadeColour = input(user, "Please select the shade colour.", "Marker colour") as color
return
/obj/item/weapon/pen/crayon/marker/attack(mob/M as mob, mob/user as mob)
if(M == user)
to_chat(usr,"You take a bite of the marker and swallow it.")
user.nutrition += 1
user.reagents.add_reagent("marker_ink",6)
if(uses)
uses -= 5
if(uses <= 0)
to_chat(user,"<span class='warning'>You ate the marker!</span>")
qdel(src)
else
..()

View File

@@ -114,6 +114,48 @@
return
..()
/obj/item/weapon/storage/fancy/markers
name = "box of markers"
desc = "A very professional looking box of permanent markers."
icon = 'icons/obj/crayons.dmi'
icon_state = "markerbox"
w_class = ITEMSIZE_SMALL
icon_type = "marker"
can_hold = list(
/obj/item/weapon/pen/crayon/marker
)
starts_with = list(
/obj/item/weapon/pen/crayon/marker/black,
/obj/item/weapon/pen/crayon/marker/red,
/obj/item/weapon/pen/crayon/marker/orange,
/obj/item/weapon/pen/crayon/marker/yellow,
/obj/item/weapon/pen/crayon/marker/green,
/obj/item/weapon/pen/crayon/marker/blue,
/obj/item/weapon/pen/crayon/marker/purple
)
/obj/item/weapon/storage/fancy/markers/initialize()
. = ..()
update_icon()
/obj/item/weapon/storage/fancy/markers/update_icon()
var/mutable_appearance/ma = new(src)
ma.overlays = list()
for(var/obj/item/weapon/pen/crayon/marker/marker in contents)
ma.overlays += image('icons/obj/crayons.dmi',"m"+marker.colourName)
appearance = ma
/obj/item/weapon/storage/fancy/markers/attackby(obj/item/W as obj, mob/user as mob)
if(istype(W,/obj/item/weapon/pen/crayon/marker))
switch(W:colourName)
if("mime")
to_chat(usr,"This marker is too depressing to be contained in this box.")
return
if("rainbow")
to_chat(usr,"This marker is too childish to be contained in this box.")
return
..()
////////////
//CIG PACK//
////////////
@@ -253,15 +295,17 @@
reagents.trans_to_obj(C, (reagents.total_volume/contents.len))
..()
/obj/item/weapon/storage/rollingpapers
/obj/item/weapon/storage/fancy/rollingpapers
name = "rolling paper pack"
desc = "A small cardboard pack containing several folded rolling papers."
icon_state = "paperbox"
icon = 'icons/obj/cigarettes.dmi'
w_class = ITEMSIZE_TINY
throwforce = 1
throwforce = 2
slot_flags = SLOT_BELT
storage_slots = 14
can_hold = list(/obj/item/weapon/rollingpaper)
icon_type = "paper"
starts_with = list(/obj/item/weapon/rollingpaper = 14)
/*

View File

@@ -195,11 +195,18 @@
var/instant = 0
var/colourName = "red" //for updateIcon purposes
suicide_act(mob/user)
var/datum/gender/TU = gender_datums[user.get_visible_gender()]
viewers(user) << "<font color='red'><b>[user] is jamming the [src.name] up [TU.his] nose and into [TU.his] brain. It looks like [TU.he] [TU.is] trying to commit suicide.</b></font>"
return (BRUTELOSS|OXYLOSS)
/obj/item/weapon/pen/crayon/suicide_act(mob/user)
var/datum/gender/TU = gender_datums[user.get_visible_gender()]
viewers(user) << "<font color='red'><b>[user] is jamming the [src.name] up [TU.his] nose and into [TU.his] brain. It looks like [TU.he] [TU.is] trying to commit suicide.</b></font>"
return (BRUTELOSS|OXYLOSS)
New()
name = "[colourName] crayon"
..()
/obj/item/weapon/pen/crayon/New()
name = "[colourName] crayon"
/obj/item/weapon/pen/crayon/marker
name = "marker"
desc = "A chisel-tip permanent marker. Hopefully non-toxic."
icon_state = "markerred"
/obj/item/weapon/pen/crayon/marker/New()
name = "[colourName] marker"

View File

@@ -49,6 +49,60 @@
id = "crayon_dust_brown"
color = "#846F35"
/datum/reagent/marker_ink
name = "Marker ink"
id = "marker_ink"
description = "Intensely coloured ink used in markers."
taste_description = "extremely bitter"
reagent_state = LIQUID
color = "#888888"
overdose = 5
/datum/reagent/marker_ink/black
name = "Black marker ink"
id = "marker_ink_black"
color = "#000000"
/datum/reagent/marker_ink/red
name = "Red marker ink"
id = "marker_ink_red"
color = "#FE191A"
/datum/reagent/marker_ink/orange
name = "Orange marker ink"
id = "marker_ink_orange"
color = "#FFBE4F"
/datum/reagent/marker_ink/yellow
name = "Yellow marker ink"
id = "marker_ink_yellow"
color = "#FDFE7D"
/datum/reagent/marker_ink/green
name = "Green marker ink"
id = "marker_ink_green"
color = "#18A31A"
/datum/reagent/marker_ink/blue
name = "Blue marker ink"
id = "marker_ink_blue"
color = "#247CFF"
/datum/reagent/marker_ink/purple
name = "Purple marker ink"
id = "marker_ink_purple"
color = "#CC0099"
/datum/reagent/marker_ink/grey //Mime
name = "Grey marker ink"
id = "marker_ink_grey"
color = "#808080"
/datum/reagent/marker_ink/brown //Rainbow
name = "Brown marker ink"
id = "marker_ink_brown"
color = "#846F35"
/datum/reagent/paint
name = "Paint"
id = "paint"

View File

@@ -868,7 +868,7 @@
name = "Red paint"
id = "red_paint"
result = "paint"
required_reagents = list("plasticide" = 1, "water" = 3, "crayon_dust_red" = 1)
required_reagents = list("plasticide" = 1, "water" = 3, "marker_ink_red" = 1)
result_amount = 5
/datum/chemical_reaction/red_paint/send_data()
@@ -878,7 +878,7 @@
name = "Orange paint"
id = "orange_paint"
result = "paint"
required_reagents = list("plasticide" = 1, "water" = 3, "crayon_dust_orange" = 1)
required_reagents = list("plasticide" = 1, "water" = 3, "marker_ink_orange" = 1)
result_amount = 5
/datum/chemical_reaction/orange_paint/send_data()
@@ -888,7 +888,7 @@
name = "Yellow paint"
id = "yellow_paint"
result = "paint"
required_reagents = list("plasticide" = 1, "water" = 3, "crayon_dust_yellow" = 1)
required_reagents = list("plasticide" = 1, "water" = 3, "marker_ink_yellow" = 1)
result_amount = 5
/datum/chemical_reaction/yellow_paint/send_data()
@@ -898,7 +898,7 @@
name = "Green paint"
id = "green_paint"
result = "paint"
required_reagents = list("plasticide" = 1, "water" = 3, "crayon_dust_green" = 1)
required_reagents = list("plasticide" = 1, "water" = 3, "marker_ink_green" = 1)
result_amount = 5
/datum/chemical_reaction/green_paint/send_data()
@@ -908,7 +908,7 @@
name = "Blue paint"
id = "blue_paint"
result = "paint"
required_reagents = list("plasticide" = 1, "water" = 3, "crayon_dust_blue" = 1)
required_reagents = list("plasticide" = 1, "water" = 3, "marker_ink_blue" = 1)
result_amount = 5
/datum/chemical_reaction/blue_paint/send_data()
@@ -918,7 +918,7 @@
name = "Purple paint"
id = "purple_paint"
result = "paint"
required_reagents = list("plasticide" = 1, "water" = 3, "crayon_dust_purple" = 1)
required_reagents = list("plasticide" = 1, "water" = 3, "marker_ink_purple" = 1)
result_amount = 5
/datum/chemical_reaction/purple_paint/send_data()
@@ -928,7 +928,7 @@
name = "Grey paint"
id = "grey_paint"
result = "paint"
required_reagents = list("plasticide" = 1, "water" = 3, "crayon_dust_grey" = 1)
required_reagents = list("plasticide" = 1, "water" = 3, "marker_ink_grey" = 1)
result_amount = 5
/datum/chemical_reaction/grey_paint/send_data()
@@ -938,7 +938,7 @@
name = "Brown paint"
id = "brown_paint"
result = "paint"
required_reagents = list("plasticide" = 1, "water" = 3, "crayon_dust_brown" = 1)
required_reagents = list("plasticide" = 1, "water" = 3, "marker_ink_brown" = 1)
result_amount = 5
/datum/chemical_reaction/brown_paint/send_data()

View File

@@ -0,0 +1,38 @@
################################
# Example Changelog File
#
# Note: This file, and files beginning with ".", and files that don't end in ".yml" will not be read. If you change this file, you will look really dumb.
#
# Your changelog will be merged with a master changelog. (New stuff added only, and only on the date entry for the day it was merged.)
# When it is, any changes listed below will disappear.
#
# Valid Prefixes:
# bugfix
# wip (For works in progress)
# tweak
# soundadd
# sounddel
# rscadd (general adding of nice things)
# rscdel (general deleting of nice things)
# imageadd
# imagedel
# maptweak
# spellcheck (typo fixes)
# experiment
#################################
# Your name.
author: battlefieldCommander
# Optional: Remove this file after generating master changelog. Useful for PR changelogs that won't get used again.
delete-after: True
# Any changes you've made. See valid prefix list above.
# INDENT WITH TWO SPACES. NOT TABS. SPACES.
# SCREW THIS UP AND IT WON'T WORK.
# Also, all entries are changed into a single [] after a master changelog generation. Just remove the brackets when you add new entries.
# Please surround your changes in double quotes ("), as certain characters otherwise screws up compiling. The quotes will not show up in the changelog.
changes:
- rscadd: "Added permanent markers, an alternative to crayons."
- tweak: "The chemistry recipe for paint now uses marker ink instead of crayon dust."
- rscdel: "Removed crayon boxes from the map. They can still be ordered from cargo in case you need a snack."

Binary file not shown.

Before

Width:  |  Height:  |  Size: 732 B

After

Width:  |  Height:  |  Size: 5.0 KiB