Fixes a few RPD painting bugs

Changes RPD colors to be consistent with pipe painter & default pipes.
Makes the RPD properly update its neighbors on painting.
Offloads the neighbor updating logic from pipe_painter to a pipe proc.
Fixes #6783
This commit is contained in:
tkdrg
2015-01-04 04:35:36 -03:00
parent 3a10a3b198
commit 2eb366de89
6 changed files with 43 additions and 39 deletions
@@ -29,37 +29,9 @@
var/obj/machinery/atmospherics/pipe/P = A
P.color = modes[mode]
P.pipe_color = modes[mode]
P.stored.color = modes[mode]
user.visible_message("<span class='notice'>[user] paints \the [P] [mode].</span>","<span class='notice'>You paint \the [P] [mode].</span>")
//P.update_icon()
if(istype(A,/obj/machinery/atmospherics/pipe/simple))
var/obj/machinery/atmospherics/pipe/simple/pipe = A
if(pipe.node1)
pipe.node1.update_icon()
if(pipe.node2)
pipe.node2.update_icon()
else if(istype(A,/obj/machinery/atmospherics/pipe/manifold))
var/obj/machinery/atmospherics/pipe/manifold/pipe = A
if(pipe.node1)
pipe.node1.update_icon()
if(pipe.node2)
pipe.node2.update_icon()
if(pipe.node3)
pipe.node3.update_icon()
else if(istype(A,/obj/machinery/atmospherics/pipe/manifold4w))
var/obj/machinery/atmospherics/pipe/manifold4w/pipe = A
if(pipe.node1)
pipe.node1.update_icon()
if(pipe.node2)
pipe.node2.update_icon()
if(pipe.node3)
pipe.node3.update_icon()
if(pipe.node4)
pipe.node4.update_icon()
P.update_node_icon() //updates the neighbors
/obj/item/device/pipe_painter/attack_self(mob/user as mob)
mode = input("Which colour do you want to use?","Pipe painter") in modes
+9 -8
View File
@@ -140,13 +140,13 @@ var/global/list/RPD_recipes=list(
var/p_class = ATMOS_MODE
var/p_disposal = 0
var/list/paint_colors = list(
"grey" = "#cccccc",
"red" = "#800000",
"blue" = "#000080",
"cyan" = "#1C94C4",
"green" = "#00CC00",
"yellow" = "#FFCC00",
"purple" = "#822BFF"
"grey" = rgb(255,255,255),
"red" = rgb(255,0,0),
"blue" = rgb(0,0,255),
"cyan" = rgb(0,256,249),
"green" = rgb(30,255,0),
"yellow" = rgb(255,198,0),
"purple" = rgb(130,43,255)
)
var/paint_color="grey"
@@ -478,7 +478,8 @@ var/global/list/RPD_recipes=list(
P.pipe_color = paint_colors[paint_color]
P.stored.color = paint_colors[paint_color]
user.visible_message("<span class='notice'>[user] paints \the [P] [paint_color].</span>","<span class='notice'>You paint \the [P] [paint_color].</span>")
P.update_icon()
//P.update_icon()
P.update_node_icon()
return 1
if(EATING_MODE) // Eating pipes
// Must click on an actual pipe or meter.