From 2064b4253af780ffe5a5f66515f6818dfce6fd64 Mon Sep 17 00:00:00 2001
From: MaxED <j.maxed@gmail.com>
Date: Tue, 23 Feb 2016 18:28:28 +0000
Subject: [PATCH] DECORATE: added "//$IgnoreRenderstyle" special comment.
 Updated ZDoom_DECORATE.cfg. Updated documentation ("DECORATE keys" page).

---
 Build/Scripting/ZDoom_DECORATE.cfg  | 1 +
 Help/gc_decoratekeys.html           | 5 +++++
 Source/Core/Config/ThingTypeInfo.cs | 3 ++-
 3 files changed, 8 insertions(+), 1 deletion(-)

diff --git a/Build/Scripting/ZDoom_DECORATE.cfg b/Build/Scripting/ZDoom_DECORATE.cfg
index 64054a701..06effbda9 100644
--- a/Build/Scripting/ZDoom_DECORATE.cfg
+++ b/Build/Scripting/ZDoom_DECORATE.cfg
@@ -29,6 +29,7 @@ keywords
 	$NotAngled = "$NotAngled";
 	$Category = "//$Category \"[EP]\"";
 	$Sprite = "//$Sprite \"[EP]\"";
+	$IgnoreRenderstyle = "//$IgnoreRenderstyle";
 	$Title = "//$Title \"[EP]\"";
 	$Arg0 = "//$Arg0 \"[EP]\"";
 	$Arg1 = "//$Arg1 \"[EP]\"";
diff --git a/Help/gc_decoratekeys.html b/Help/gc_decoratekeys.html
index 836ad68ed..772c7f4e8 100644
--- a/Help/gc_decoratekeys.html
+++ b/Help/gc_decoratekeys.html
@@ -31,6 +31,9 @@
     <strong>//$Title &lt;title&gt;</strong><br />
     Specifies which name to give to the actor. By default, a custom actor not identified in a configuration file will use the Tag property, and if not present, will default to the class name.<br />
     <br />
+    <strong>//$IgnoreRenderstyle</strong> - <span class="red">GZDB only</span>.<br />
+    "RenderStyle" DECORATE property will be ignored by the editor. Helpful when you want to see the sprite of an invivsible actor in Visual mode.<br />
+    <br />
     <strong><a name="argtitle" id="argtitle"></a>//$ArgN &lt;name&gt;</strong> - <span class="red">GZDB only</span>.<br />
     Allows to override default argument names for this actor.<br />
     <br />
@@ -87,6 +90,7 @@ Actor ChexShield : ResistanceRune replaces ResistanceRune 5104
 {
   //$Category &quot;Pickups/Chex Powerups&quot;
   //$Sprite ARMXA0
+	//$IgnoreRenderstyle
   //$Title "Chex Shield"
   //$Color 12
   //$NotAngled
@@ -115,6 +119,7 @@ Actor ChexShield : ResistanceRune replaces ResistanceRune 5104
 
   Height 44
   Radius 26
+	RenderStyle None
   Inventory.PickupMessage "Picked up the energized Chex armor!"
 
   States
diff --git a/Source/Core/Config/ThingTypeInfo.cs b/Source/Core/Config/ThingTypeInfo.cs
index 6ca6977a0..7692855aa 100644
--- a/Source/Core/Config/ThingTypeInfo.cs
+++ b/Source/Core/Config/ThingTypeInfo.cs
@@ -461,7 +461,8 @@ namespace CodeImp.DoomBuilder.Config
 			if(actor.HasPropertyWithValue("height")) height = actor.GetPropertyValueInt("height", 0);
 
 			//mxd. Renderstyle
-			if(actor.HasPropertyWithValue("renderstyle")) renderstyle = actor.GetPropertyValueString("renderstyle", 0).ToLower();
+			if(actor.HasPropertyWithValue("renderstyle") && !actor.HasProperty("$ignorerenderstyle"))
+				renderstyle = actor.GetPropertyValueString("renderstyle", 0).ToLower();
 
 			//mxd. Alpha
 			if(actor.HasPropertyWithValue("alpha"))
-- 
GitLab