Browse Source

Initialize golems before objects

pull/3750/head
staphen 4 years ago committed by Anders Jenbo
parent
commit
bd0470994a
  1. 3
      Source/diablo.cpp
  2. 5
      Source/monster.cpp
  3. 1
      Source/monster.h

3
Source/diablo.cpp

@ -1915,6 +1915,7 @@ void LoadGameLevel(bool firstflag, lvl_entry lvldir)
if (firstflag || lvldir == ENTRY_LOAD || !myPlayer._pLvlVisited[currlevel] || gbIsMultiplayer) {
HoldThemeRooms();
[[maybe_unused]] uint32_t mid1Seed = GetLCGEngineState();
InitGolems();
InitObjects();
[[maybe_unused]] uint32_t mid2Seed = GetLCGEngineState();
IncProgress();
@ -1937,6 +1938,7 @@ void LoadGameLevel(bool firstflag, lvl_entry lvldir)
SavePreLighting();
} else {
HoldThemeRooms();
InitGolems();
InitMonsters();
InitMissiles();
InitCorpses();
@ -1972,6 +1974,7 @@ void LoadGameLevel(bool firstflag, lvl_entry lvldir)
IncProgress();
GetLevelMTypes();
IncProgress();
InitGolems();
InitMonsters();
IncProgress();
#ifdef VIRTUAL_GAMEPAD

5
Source/monster.cpp

@ -3797,13 +3797,16 @@ void monster_some_crypt()
monster._mmaxhp = hp;
}
void InitMonsters()
void InitGolems()
{
if (!setlevel) {
for (int i = 0; i < MAX_PLRS; i++)
AddMonster(GolemHoldingCell, Direction::South, 0, false);
}
}
void InitMonsters()
{
if (!gbIsSpawn && !setlevel && currlevel == 16)
LoadDiabMonsts();

1
Source/monster.h

@ -272,6 +272,7 @@ void InitLevelMonsters();
void GetLevelMTypes();
void InitMonsterGFX(int monst);
void monster_some_crypt();
void InitGolems();
void InitMonsters();
void SetMapMonsters(const uint16_t *dunData, Point startPosition);
int AddMonster(Point position, Direction dir, int mtype, bool inMap);

Loading…
Cancel
Save