From 758f480faf47c57c4b650fbda37941b639a1b195 Mon Sep 17 00:00:00 2001
From: spherallic <spherallic@gmail.com>
Date: Mon, 4 Sep 2023 15:25:22 +0200
Subject: [PATCH] Render additive FOFs as such in Visual Mode

---
 Source/Plugins/BuilderModes/VisualModes/Effect3DFloor.cs | 9 +++++++++
 1 file changed, 9 insertions(+)

diff --git a/Source/Plugins/BuilderModes/VisualModes/Effect3DFloor.cs b/Source/Plugins/BuilderModes/VisualModes/Effect3DFloor.cs
index 6fa5d8eab..9e2a93a38 100755
--- a/Source/Plugins/BuilderModes/VisualModes/Effect3DFloor.cs
+++ b/Source/Plugins/BuilderModes/VisualModes/Effect3DFloor.cs
@@ -127,30 +127,39 @@ namespace CodeImp.DoomBuilder.BuilderModes
 				case "srb2_fofsolid":
 					alpha = General.Clamp(linedef.Args[1], 0, 255);
 					renderinside = (linedef.Args[3] & 4) == 4;
+					renderadditive = linedef.Args[2] == 1;
 					break;
 				case "srb2_fofwater":
 					alpha = General.Clamp(linedef.Args[1], 0, 255);
 					renderinside = true;
+					renderadditive = linedef.Args[2] == 1;
 					break;
 				case "srb2_fofcrumbling":
 					alpha = General.Clamp(linedef.Args[1], 0, 255);
 					renderinside = (linedef.Args[3] & 7) != 0;
+					renderadditive = linedef.Args[2] == 1;
 					break;
 				case "srb2_foflight":
+					alpha = 0;
+					ignorebottomheight = linedef.Args[1] == 1;
+					break;
 				case "srb2_fofintangibleinvisible":
 					alpha = 0;
 					break;
 				case "srb2_fofintangible":
 					alpha = General.Clamp(linedef.Args[1], 0, 255);
 					renderinside = (linedef.Args[3] & 4) != 4;
+					renderadditive = linedef.Args[2] == 1;
 					break;
 				case "srb2_fofbustable":
 				case "srb2_foflaser":
 					alpha = General.Clamp(linedef.Args[1], 0, 255);
+					renderadditive = linedef.Args[2] == 1;
 					break;
 				case "srb2_fofcustom":
 					alpha = General.Clamp(linedef.Args[1], 0, 255);
 					renderinside = (linedef.Args[3] & 1024) == 1024;
+					renderadditive = linedef.Args[2] == 1;
 					break;
 				case "sector_set3dfloor":
 					vavoomtype = linedef.Args[1] == (int)FloorTypes.VavoomStyle;
-- 
GitLab