From 52482716190980add0f6416a2c1b8cf8899d98d9 Mon Sep 17 00:00:00 2001
From: MascaraSnake <jonassauer27@gmail.com>
Date: Tue, 28 Dec 2021 08:33:57 +0100
Subject: [PATCH] Adapt blast linedef executor to UDMF

---
 extras/conf/udb/Includes/SRB222_things.cfg | 5 +++++
 src/p_inter.c                              | 2 +-
 src/p_setup.c                              | 3 +++
 3 files changed, 9 insertions(+), 1 deletion(-)

diff --git a/extras/conf/udb/Includes/SRB222_things.cfg b/extras/conf/udb/Includes/SRB222_things.cfg
index 4453edace6..d2c13154dd 100644
--- a/extras/conf/udb/Includes/SRB222_things.cfg
+++ b/extras/conf/udb/Includes/SRB222_things.cfg
@@ -5099,6 +5099,11 @@ udmf
 			sprite = "TOADA0";
 			width = 32;
 			height = 16;
+			arg0
+			{
+				title = "Linedef tag";
+				type = 15;
+			}
 		}
 		757
 		{
diff --git a/src/p_inter.c b/src/p_inter.c
index 62f6080bc5..9a3562fc88 100644
--- a/src/p_inter.c
+++ b/src/p_inter.c
@@ -2771,7 +2771,7 @@ void P_KillMobj(mobj_t *target, mobj_t *inflictor, mobj_t *source, UINT8 damaget
 
 		case MT_BLASTEXECUTOR:
 			if (target->spawnpoint)
-				P_LinedefExecute(target->spawnpoint->angle, (source ? source : inflictor), target->subsector->sector);
+				P_LinedefExecute(target->spawnpoint->args[0], (source ? source : inflictor), target->subsector->sector);
 			break;
 
 		case MT_SPINBOBERT:
diff --git a/src/p_setup.c b/src/p_setup.c
index dfabc0e9f5..54f887d608 100644
--- a/src/p_setup.c
+++ b/src/p_setup.c
@@ -5048,6 +5048,9 @@ static void P_ConvertBinaryMap(void)
 			mapthings[i].type = 754;
 			break;
 		}
+		case 756: //Blast linedef executor
+			mapthings[i].args[0] = mapthings[i].angle;
+			break;
 		case 757: //Fan particle generator
 		{
 			INT32 j = Tag_FindLineSpecial(15, mapthings[i].angle);
-- 
GitLab