From be37311cb9d3d5fca78f62b0c934e8dadae8e60b Mon Sep 17 00:00:00 2001 From: monster860 Date: Tue, 21 Jun 2016 15:46:40 -0400 Subject: [PATCH] Fixes the opacity problem --- code/_onclick/hud/parallax.dm | 16 +++++++++++++++- code/modules/client/client defines.dm | 3 ++- 2 files changed, 17 insertions(+), 2 deletions(-) diff --git a/code/_onclick/hud/parallax.dm b/code/_onclick/hud/parallax.dm index bdd90e5b822..55c15179d46 100644 --- a/code/_onclick/hud/parallax.dm +++ b/code/_onclick/hud/parallax.dm @@ -13,7 +13,7 @@ var/list/parallax_on_clients = list() name = "space parallax" blend_mode = BLEND_ADD layer = AREA_LAYER - plane = PLANE_SPACE_PARALLAX//changing this var doesn't actually change the plane of its overlays + plane = PLANE_SPACE_PARALLAX var/parallax_speed = 0 /obj/screen/plane_master @@ -22,6 +22,7 @@ var/list/parallax_on_clients = list() /obj/screen/plane_master/parallax_master plane = PLANE_SPACE_PARALLAX + blend_mode = BLEND_MULTIPLY color = list( 1, 0, 0, 0, 0, 1, 0, 0, @@ -29,6 +30,15 @@ var/list/parallax_on_clients = list() 0, 0, 0, 0, 0, 0, 0, 1) +/obj/screen/plane_master/parallax_spacemaster // Turns space-turfs into white. The parallax plane multiplies itself by the white, causing the parallax to only show in areas with opacity. + plane = PLANE_SPACE_BACKGROUND + color = list( + 0, 0, 0, 0, + 0, 0, 0, 0, + 0, 0, 0, 0, + 1, 1, 1, 1, + 0, 0, 0, 0) + /obj/screen/plane_master/parallax_dustmaster plane = PLANE_SPACE_DUST @@ -73,11 +83,14 @@ var/list/parallax_on_clients = list() C.screen -= bgobj parallax_on_clients -= C C.screen -= C.parallax_master + C.screen -= C.parallax_spacemaster C.screen -= C.parallax_dustmaster return 0 if(!C.parallax_master) C.parallax_master = new /obj/screen/plane_master/parallax_master + if(!C.parallax_spacemaster) + C.parallax_spacemaster = new /obj/screen/plane_master/parallax_spacemaster if(!C.parallax_dustmaster) C.parallax_dustmaster = new /obj/screen/plane_master/parallax_dustmaster return 1 @@ -106,6 +119,7 @@ var/list/parallax_on_clients = list() C.screen |= bgobj C.screen |= C.parallax_master + C.screen |= C.parallax_spacemaster C.screen |= C.parallax_dustmaster C.parallax_dustmaster.color = list(0,0,0,0) if(C.prefs.space_dust) diff --git a/code/modules/client/client defines.dm b/code/modules/client/client defines.dm index d53a71e04f0..ab0a7ca87f7 100644 --- a/code/modules/client/client defines.dm +++ b/code/modules/client/client defines.dm @@ -94,4 +94,5 @@ var/list/parallax_offset = list() var/turf/previous_turf = null var/obj/screen/plane_master/parallax_master/parallax_master = null - var/obj/screen/plane_master/parallax_dustmaster/parallax_dustmaster = null \ No newline at end of file + var/obj/screen/plane_master/parallax_dustmaster/parallax_dustmaster = null + var/obj/screen/plane_master/parallax_spacemaster/parallax_spacemaster = null \ No newline at end of file