mirror of
https://github.com/CHOMPStation2/CHOMPStation2.git
synced 2025-12-10 18:22:39 +00:00
Merge pull request #8071 from RKF45/newpaint
Generic Paint II: Fun with Paint
This commit is contained in:
@@ -898,10 +898,9 @@ var/list/all_supply_groups = list("Operations","Security","Hospitality","Enginee
|
||||
/obj/item/weapon/reagent_containers/glass/paint/green,
|
||||
/obj/item/weapon/reagent_containers/glass/paint/blue,
|
||||
/obj/item/weapon/reagent_containers/glass/paint/yellow,
|
||||
/obj/item/weapon/reagent_containers/glass/paint/violet,
|
||||
/obj/item/weapon/reagent_containers/glass/paint/purple,
|
||||
/obj/item/weapon/reagent_containers/glass/paint/black,
|
||||
/obj/item/weapon/reagent_containers/glass/paint/white,
|
||||
/obj/item/weapon/reagent_containers/glass/paint/remover,
|
||||
/obj/item/weapon/contraband/poster,
|
||||
/obj/item/weapon/wrapping_paper,
|
||||
/obj/item/weapon/wrapping_paper,
|
||||
|
||||
@@ -409,6 +409,7 @@ its easier to just keep the beam vertical.
|
||||
|
||||
|
||||
/atom/proc/clean_blood()
|
||||
src.color = initial(src.color) //paint
|
||||
src.germ_level = 0
|
||||
if(istype(blood_DNA, /list))
|
||||
del(blood_DNA)
|
||||
|
||||
@@ -114,6 +114,7 @@ For the other part of the code, check silicon say.dm. Particularly robot talk.*/
|
||||
hologram.anchored = 1//So space wind cannot drag it.
|
||||
hologram.name = "[A.name] (Hologram)"//If someone decides to right click.
|
||||
hologram.SetLuminosity(2) //hologram lighting
|
||||
hologram.color = color //painted holopad gives coloured holograms
|
||||
SetLuminosity(2) //pad lighting
|
||||
icon_state = "holopad1"
|
||||
A.holo = src
|
||||
|
||||
@@ -380,6 +380,10 @@
|
||||
viewers(user) << "\red <b>[user] is jamming the [src.name] up \his nose and into \his brain. It looks like \he's trying to commit suicide.</b>"
|
||||
return (BRUTELOSS|OXYLOSS)
|
||||
|
||||
New()
|
||||
name = "[colourName] crayon"
|
||||
..()
|
||||
|
||||
/*
|
||||
* Snap pops
|
||||
*/
|
||||
|
||||
@@ -1,4 +1,5 @@
|
||||
//NEVER USE THIS IT SUX -PETETHEGOAT
|
||||
//THE GOAT WAS RIGHT - RKF
|
||||
|
||||
var/global/list/cached_icons = list()
|
||||
|
||||
@@ -11,10 +12,10 @@ var/global/list/cached_icons = list()
|
||||
matter = list("metal" = 200)
|
||||
w_class = 3.0
|
||||
amount_per_transfer_from_this = 10
|
||||
possible_transfer_amounts = list(10,20,30,50,70)
|
||||
possible_transfer_amounts = list(10,20,30,60)
|
||||
volume = 60
|
||||
flags = OPENCONTAINER
|
||||
var/paint_type = ""
|
||||
var/paint_type = "red"
|
||||
|
||||
afterattack(turf/simulated/target, mob/user, proximity)
|
||||
if(!proximity) return
|
||||
@@ -28,24 +29,19 @@ var/global/list/cached_icons = list()
|
||||
return ..()
|
||||
|
||||
New()
|
||||
if(paint_type == "remover")
|
||||
name = "paint remover bucket"
|
||||
else if(paint_type && lentext(paint_type) > 0)
|
||||
if(paint_type && lentext(paint_type) > 0)
|
||||
name = paint_type + " " + name
|
||||
..()
|
||||
reagents.add_reagent("water", volume*3/5)
|
||||
reagents.add_reagent("plasticide", volume/5)
|
||||
if(paint_type == "white") //why don't white crayons exist
|
||||
reagents.add_reagent("aluminum", volume/5)
|
||||
else if (paint_type == "black")
|
||||
reagents.add_reagent("carbon", volume/5)
|
||||
else
|
||||
reagents.add_reagent("crayon_dust_[paint_type]", volume/5)
|
||||
reagents.handle_reactions()
|
||||
|
||||
on_reagent_change() //Until we have a generic "paint", this will give new colours to all paints in the can
|
||||
var/mixedcolor = mix_color_from_reagents(reagents.reagent_list)
|
||||
for(var/datum/reagent/paint/P in reagents.reagent_list)
|
||||
P.color = mixedcolor
|
||||
|
||||
red
|
||||
icon_state = "paint_red"
|
||||
paint_type = "red"
|
||||
@@ -62,110 +58,15 @@ var/global/list/cached_icons = list()
|
||||
icon_state = "paint_blue"
|
||||
paint_type = "blue"
|
||||
|
||||
violet
|
||||
purple
|
||||
icon_state = "paint_violet"
|
||||
paint_type = "purple"
|
||||
|
||||
black
|
||||
icon_state = "paint_black"
|
||||
paint_type = "gray"
|
||||
paint_type = "black"
|
||||
|
||||
white
|
||||
icon_state = "paint_white"
|
||||
paint_type = "white"
|
||||
|
||||
remover
|
||||
paint_type = "remover"
|
||||
/*
|
||||
/obj/item/weapon/paint
|
||||
gender= PLURAL
|
||||
name = "paint"
|
||||
desc = "Used to recolor floors and walls. Can not be removed by the janitor."
|
||||
icon = 'icons/obj/items.dmi'
|
||||
icon_state = "paint_neutral"
|
||||
color = "FFFFFF"
|
||||
item_state = "paintcan"
|
||||
w_class = 3.0
|
||||
|
||||
/obj/item/weapon/paint/afterattack(turf/target, mob/user as mob, proximity)
|
||||
if(!proximity) return
|
||||
if(!istype(target) || istype(target, /turf/space))
|
||||
return
|
||||
var/ind = "[initial(target.icon)][color]"
|
||||
if(!cached_icons[ind])
|
||||
var/icon/overlay = new/icon(initial(target.icon))
|
||||
overlay.Blend("#[color]",ICON_MULTIPLY)
|
||||
overlay.SetIntensity(1.4)
|
||||
target.icon = overlay
|
||||
cached_icons[ind] = target.icon
|
||||
else
|
||||
target.icon = cached_icons[ind]
|
||||
return
|
||||
|
||||
/obj/item/weapon/paint/paint_remover
|
||||
gender = PLURAL
|
||||
name = "paint remover"
|
||||
icon_state = "paint_neutral"
|
||||
|
||||
afterattack(turf/target, mob/user as mob)
|
||||
if(istype(target) && target.icon != initial(target.icon))
|
||||
target.icon = initial(target.icon)
|
||||
return
|
||||
*/
|
||||
/*
|
||||
datum/reagent/paint
|
||||
name = "Paint"
|
||||
id = "paint_"
|
||||
reagent_state = 2
|
||||
color = "#808080"
|
||||
description = "This paint will only adhere to floor tiles."
|
||||
|
||||
|
||||
|
||||
red
|
||||
name = "Red Paint"
|
||||
id = "paint_red"
|
||||
color = "#FE191A"
|
||||
|
||||
green
|
||||
name = "Green Paint"
|
||||
color = "#18A31A"
|
||||
id = "paint_green"
|
||||
|
||||
blue
|
||||
name = "Blue Paint"
|
||||
color = "#247CFF"
|
||||
id = "paint_blue"
|
||||
|
||||
yellow
|
||||
name = "Yellow Paint"
|
||||
color = "#FDFE7D"
|
||||
id = "paint_yellow"
|
||||
|
||||
violet
|
||||
name = "Violet Paint"
|
||||
color = "#CC0099"
|
||||
id = "paint_violet"
|
||||
|
||||
black
|
||||
name = "Black Paint"
|
||||
color = "#333333"
|
||||
id = "paint_black"
|
||||
|
||||
white
|
||||
name = "White Paint"
|
||||
color = "#F0F8FF"
|
||||
id = "paint_white"
|
||||
|
||||
datum/reagent/paint_remover
|
||||
name = "Paint Remover"
|
||||
id = "paint_remover"
|
||||
description = "Paint remover is used to remove floor paint from floor tiles."
|
||||
reagent_state = 2
|
||||
color = "#808080"
|
||||
|
||||
reaction_turf(var/turf/T, var/volume)
|
||||
if(istype(T) && T.icon != initial(T.icon))
|
||||
T.icon = initial(T.icon)
|
||||
return
|
||||
*/
|
||||
|
||||
@@ -8,6 +8,7 @@
|
||||
var/list/greencolor = new /list(contents)
|
||||
var/list/bluecolor = new /list(contents)
|
||||
var/i
|
||||
|
||||
//fill the list of weights
|
||||
for(i=1; i<=contents; i++)
|
||||
var/datum/reagent/re = reagent_list[i]
|
||||
@@ -16,6 +17,7 @@
|
||||
reagentweight *= 20 //Paint colours a mixture twenty times as much
|
||||
weight[i] = reagentweight
|
||||
|
||||
|
||||
//fill the lists of colours
|
||||
for(i=1; i<=contents; i++)
|
||||
var/datum/reagent/re = reagent_list[i]
|
||||
|
||||
@@ -1580,21 +1580,27 @@ datum
|
||||
paint
|
||||
name = "Paint"
|
||||
id = "paint"
|
||||
description = "This paint will stick to almost any object"
|
||||
description = "This paint will stick to almost any object."
|
||||
reagent_state = LIQUID
|
||||
color = "#808080"
|
||||
overdose = 15
|
||||
|
||||
reaction_turf(var/turf/T, var/volume)
|
||||
if(!istype(T) || istype(T, /turf/space))
|
||||
return
|
||||
T.color = color
|
||||
..()
|
||||
if(istype(T) && !istype(T, /turf/space))
|
||||
T.color = color
|
||||
|
||||
reaction_obj(var/obj/O, var/volume)
|
||||
..()
|
||||
if(istype(O,/obj/item/weapon/light))
|
||||
if(istype(O,/obj))
|
||||
O.color = color
|
||||
|
||||
reaction_mob(var/mob/M, var/method=TOUCH, var/volume)
|
||||
..()
|
||||
if(istype(M,/mob) && !istype(M,/mob/dead))
|
||||
//painting ghosts: not allowed
|
||||
M.color = color
|
||||
|
||||
|
||||
//////////////////////////Poison stuff///////////////////////
|
||||
|
||||
@@ -2631,7 +2637,7 @@ datum
|
||||
name = "Carrot juice"
|
||||
id = "carrotjuice"
|
||||
description = "It is just like a carrot but without crunching."
|
||||
color = "#973800" // rgb: 151, 56, 0
|
||||
color = "#FF8C00" // rgb: 255, 140, 0
|
||||
|
||||
glass_icon_state = "carrotjuice"
|
||||
glass_name = "glass of carrot juice"
|
||||
@@ -2701,7 +2707,7 @@ datum
|
||||
name = "Watermelon Juice"
|
||||
id = "watermelonjuice"
|
||||
description = "Delicious juice made from watermelon."
|
||||
color = "#863333" // rgb: 134, 51, 51
|
||||
color = "#B83333" // rgb: 184, 51, 51
|
||||
|
||||
glass_icon_state = "glass_red"
|
||||
glass_name = "glass of watermelon juice"
|
||||
@@ -2711,7 +2717,7 @@ datum
|
||||
name = "Lemon Juice"
|
||||
id = "lemonjuice"
|
||||
description = "This juice is VERY sour."
|
||||
color = "#863333" // rgb: 175, 175, 0
|
||||
color = "#AFAF00" // rgb: 175, 175, 0
|
||||
|
||||
glass_icon_state = "lemonjuice"
|
||||
glass_name = "glass of lemon juice"
|
||||
@@ -2721,7 +2727,7 @@ datum
|
||||
name = "Banana Juice"
|
||||
id = "banana"
|
||||
description = "The raw essence of a banana."
|
||||
color = "#863333" // rgb: 175, 175, 0
|
||||
color = "#C3AF00" // rgb: 195, 175, 0
|
||||
|
||||
glass_icon_state = "banana"
|
||||
glass_name = "glass of banana juice"
|
||||
|
||||
@@ -1414,14 +1414,17 @@ datum
|
||||
|
||||
//Ghetto reactions
|
||||
|
||||
/* Ideally the paint should take on the blood's colour (for each of the species)
|
||||
but I could not think of a way. - RKF
|
||||
|
||||
blood_paint
|
||||
name = "Blood paint"
|
||||
id = "blood_paint"
|
||||
result = "paint"
|
||||
resultcolor = "#FE191A"
|
||||
resultcolor = "#C80000"
|
||||
required_reagents = list("plasticide" = 1, "water" = 3, "blood" = 2)
|
||||
result_amount = 5
|
||||
|
||||
*/
|
||||
milk_paint
|
||||
name = "Milk paint"
|
||||
id = "milk_paint"
|
||||
@@ -1430,6 +1433,96 @@ datum
|
||||
required_reagents = list("plasticide" = 1, "water" = 3, "milk" = 5)
|
||||
result_amount = 5
|
||||
|
||||
orange_juice_paint
|
||||
name = "Orange juice paint"
|
||||
id = "orange_juice_paint"
|
||||
result = "paint"
|
||||
resultcolor = "#E78108"
|
||||
required_reagents = list("plasticide" = 1, "water" = 3, "orangejuice" = 5)
|
||||
result_amount = 5
|
||||
|
||||
tomato_juice_paint
|
||||
name = "Tomato juice paint"
|
||||
id = "tomato_juice_paint"
|
||||
result = "paint"
|
||||
resultcolor = "#731008"
|
||||
required_reagents = list("plasticide" = 1, "water" = 3, "tomatojuice" = 5)
|
||||
result_amount = 5
|
||||
|
||||
lime_juice_paint
|
||||
name = "Lime juice paint"
|
||||
id = "lime_juice_paint"
|
||||
result = "paint"
|
||||
resultcolor = "#365E30"
|
||||
required_reagents = list("plasticide" = 1, "water" = 3, "limejuice" = 5)
|
||||
result_amount = 5
|
||||
|
||||
carrot_juice_paint
|
||||
name = "Carrot juice paint"
|
||||
id = "carrot_juice_paint"
|
||||
result = "paint"
|
||||
resultcolor = "#973800"
|
||||
required_reagents = list("plasticide" = 1, "water" = 3, "carrotjuice" = 5)
|
||||
result_amount = 5
|
||||
|
||||
berry_juice_paint
|
||||
name = "Berry juice paint"
|
||||
id = "berry_juice_paint"
|
||||
result = "paint"
|
||||
resultcolor = "#990066"
|
||||
required_reagents = list("plasticide" = 1, "water" = 3, "berryjuice" = 5)
|
||||
result_amount = 5
|
||||
|
||||
grape_juice_paint
|
||||
name = "Grape juice paint"
|
||||
id = "grape_juice_paint"
|
||||
result = "paint"
|
||||
resultcolor = "#863333"
|
||||
required_reagents = list("plasticide" = 1, "water" = 3, "grapejuice" = 5)
|
||||
result_amount = 5
|
||||
|
||||
poisonberry_juice_paint
|
||||
name = "Poison berry juice paint"
|
||||
id = "poisonberry_juice_paint"
|
||||
result = "paint"
|
||||
resultcolor = "#863353"
|
||||
required_reagents = list("plasticide" = 1, "water" = 3, "poisonberryjuice" = 5)
|
||||
result_amount = 5
|
||||
|
||||
watermelon_juice_paint
|
||||
name = "Watermelon juice paint"
|
||||
id = "watermelon_juice_paint"
|
||||
result = "paint"
|
||||
resultcolor = "#B83333"
|
||||
required_reagents = list("plasticide" = 1, "water" = 3, "watermelonjuice" = 5)
|
||||
result_amount = 5
|
||||
|
||||
lemon_juice_paint
|
||||
name = "Lemon juice paint"
|
||||
id = "lemon_juice_paint"
|
||||
result = "paint"
|
||||
resultcolor = "#AFAF00"
|
||||
required_reagents = list("plasticide" = 1, "water" = 3, "lemonjuice" = 5)
|
||||
result_amount = 5
|
||||
|
||||
banana_juice_paint
|
||||
name = "Banana juice paint"
|
||||
id = "banana_juice_paint"
|
||||
result = "paint"
|
||||
resultcolor = "#C3AF00"
|
||||
required_reagents = list("plasticide" = 1, "water" = 3, "banana" = 5)
|
||||
result_amount = 5
|
||||
|
||||
potato_juice_paint
|
||||
name = "Potato juice paint"
|
||||
id = "potato_juice_paint"
|
||||
result = "paint"
|
||||
resultcolor = "#302000"
|
||||
required_reagents = list("plasticide" = 1, "water" = 3, "potatojuice" = 5)
|
||||
result_amount = 5
|
||||
|
||||
//Other paint
|
||||
|
||||
carbon_paint
|
||||
name = "Carbon paint"
|
||||
id = "carbon_paint"
|
||||
@@ -1438,8 +1531,6 @@ datum
|
||||
required_reagents = list("plasticide" = 1, "water" = 3, "carbon" = 1)
|
||||
result_amount = 5
|
||||
|
||||
//Aluminum "non-ghetto" white paint
|
||||
|
||||
aluminum_paint
|
||||
name = "Aluminum paint"
|
||||
id = "aluminum_paint"
|
||||
|
||||
Reference in New Issue
Block a user