From 83068074ae69ea286d23b0139d236d8252fb5155 Mon Sep 17 00:00:00 2001 From: James R Date: Wed, 29 Mar 2023 22:23:02 -0700 Subject: [PATCH] UDMF: add foflayer field to things TEXTMAP --- src/doomdata.h | 1 + src/p_setup.c | 7 +++++++ 2 files changed, 8 insertions(+) diff --git a/src/doomdata.h b/src/doomdata.h index 5dedf01d1..fe6a1bf37 100644 --- a/src/doomdata.h +++ b/src/doomdata.h @@ -222,6 +222,7 @@ typedef struct fixed_t scale; INT32 args[NUMMAPTHINGARGS]; char *stringargs[NUMMAPTHINGSTRINGARGS]; + UINT8 layer; // FOF layer to spawn on, see P_GetMobjSpawnHeight struct mobj_s *mobj; } mapthing_t; diff --git a/src/p_setup.c b/src/p_setup.c index 84e219e02..eb8482c1e 100644 --- a/src/p_setup.c +++ b/src/p_setup.c @@ -1426,6 +1426,7 @@ static void P_LoadThings(UINT8 *data) memset(mt->args, 0, NUMMAPTHINGARGS*sizeof(*mt->args)); memset(mt->stringargs, 0x00, NUMMAPTHINGSTRINGARGS*sizeof(*mt->stringargs)); mt->pitch = mt->roll = 0; + mt->layer = 0; mt->type &= 4095; @@ -1887,6 +1888,10 @@ static void ParseTextmapThingParameter(UINT32 i, const char *param, const char * else if (fastcmp(param, "flip") && fastcmp("true", val)) mapthings[i].options |= MTF_OBJECTFLIP; + //else if (fastcmp(param, "special")) + //mapthings[i].special = atol(val); + else if (fastcmp(param, "foflayer")) + mapthings[i].layer = atol(val); else if (fastncmp(param, "stringarg", 9) && strlen(param) > 9) { size_t argnum = atol(param + 9); @@ -2858,6 +2863,8 @@ static void P_LoadTextmap(void) mt->scale = FRACUNIT; memset(mt->args, 0, NUMMAPTHINGARGS*sizeof(*mt->args)); memset(mt->stringargs, 0x00, NUMMAPTHINGSTRINGARGS*sizeof(*mt->stringargs)); + //mt->special = 0; + mt->layer = 0; mt->mobj = NULL; TextmapParse(mapthingsPos[i], i, ParseTextmapThingParameter);