- moved main polyobject array into FLevelLocals and simplified the setup process to not depend on P_SpawnMapThing.

Since the SpawnedThings array is still available when polyobjects are spawned it makes no sense to create an expensive linked list in P_SpawnMapThing.
This can be done far better by scanning through the array again and collect all matching items in a second array.
This commit is contained in:
Christoph Oelckers 2018-12-28 10:08:39 +01:00
commit 64595abe60
12 changed files with 72 additions and 126 deletions

View file

@ -108,6 +108,8 @@ TArray<FMapThing> MapThingsConverted;
bool ForceNodeBuild;
void PO_Init();
#define MISSING_TEXTURE_WARN_LIMIT 20
void BloodCrypt (void *data, int key, int len);

View file

@ -81,7 +81,7 @@ class MapLoader
TMap<unsigned, unsigned> MapThingsUserDataIndex; // from mapthing idx -> user data idx
TArray<FUDMFKey> MapThingsUserData;
int sidecount;
int sidecount = 0;
TArray<int> linemap;
TMap<int, EDLinedef> EDLines;
@ -130,6 +130,7 @@ class MapLoader
void ProcessSideTextures(bool checktranmap, side_t *sd, sector_t *sec, intmapsidedef_t *msd, int special, int tag, short *alpha, FMissingTextureTracker &missingtex);
void SetMapThingUserData(AActor *actor, unsigned udi);
void CreateBlockMap();
void PO_Init(void);
public:
void LoadMapinfoACSLump();