From 65d7b3c1eb4e274ba0787037ee75d2dc6cf0bf1c Mon Sep 17 00:00:00 2001 From: Anders Jenbo Date: Sat, 10 Jul 2021 14:59:23 +0200 Subject: [PATCH] Use AdvanceRndSeed() when changing RNG with out use --- Source/drlg_l1.cpp | 12 ++++++------ Source/drlg_l4.cpp | 4 ++-- Source/items.cpp | 6 +++--- Source/monster.cpp | 2 +- 4 files changed, 12 insertions(+), 12 deletions(-) diff --git a/Source/drlg_l1.cpp b/Source/drlg_l1.cpp index 493b7afd6..d8fd7709e 100644 --- a/Source/drlg_l1.cpp +++ b/Source/drlg_l1.cpp @@ -1375,42 +1375,42 @@ void AddWall() for (int i = 0; i < DMAXX; i++) { if (L5dflags[i][j] == 0) { if (dungeon[i][j] == 3) { - GenerateRnd(100); + AdvanceRndSeed(); int x = HorizontalWallOk(i, j); if (x != -1) { HorizontalWall(i, j, 2, x); } } if (dungeon[i][j] == 3) { - GenerateRnd(100); + AdvanceRndSeed(); int y = VerticalWallOk(i, j); if (y != -1) { VerticalWall(i, j, 1, y); } } if (dungeon[i][j] == 6) { - GenerateRnd(100); + AdvanceRndSeed(); int x = HorizontalWallOk(i, j); if (x != -1) { HorizontalWall(i, j, 4, x); } } if (dungeon[i][j] == 7) { - GenerateRnd(100); + AdvanceRndSeed(); int y = VerticalWallOk(i, j); if (y != -1) { VerticalWall(i, j, 4, y); } } if (dungeon[i][j] == 2) { - GenerateRnd(100); + AdvanceRndSeed(); int x = HorizontalWallOk(i, j); if (x != -1) { HorizontalWall(i, j, 2, x); } } if (dungeon[i][j] == 1) { - GenerateRnd(100); + AdvanceRndSeed(); int y = VerticalWallOk(i, j); if (y != -1) { VerticalWall(i, j, 1, y); diff --git a/Source/drlg_l4.cpp b/Source/drlg_l4.cpp index f4ea08e29..7bb8429ba 100644 --- a/Source/drlg_l4.cpp +++ b/Source/drlg_l4.cpp @@ -641,14 +641,14 @@ void AddWall() continue; } if (IsAnyOf(dungeon[i][j], 10, 12, 13, 15, 16, 21, 22)) { - GenerateRnd(100); + AdvanceRndSeed(); int x = HorizontalWallOk(i, j); if (x != -1) { HorizontalWall(i, j, x); } } if (IsAnyOf(dungeon[i][j], 8, 9, 11, 14, 15, 16, 21, 23)) { - GenerateRnd(100); + AdvanceRndSeed(); int y = VerticalWallOk(i, j); if (y != -1) { VerticalWall(i, j, y); diff --git a/Source/items.cpp b/Source/items.cpp index 35e3cb023..dc5934d36 100644 --- a/Source/items.cpp +++ b/Source/items.cpp @@ -1501,7 +1501,7 @@ _unique_items CheckUnique(int i, int lvl, int uper, bool recreate) if (numu == 0) return UITEM_INVALID; - GenerateRnd(10); /// BUGFIX: unused, last unique in array always gets chosen + AdvanceRndSeed(); uint8_t idata = 0; while (numu > 0) { if (uok[idata]) @@ -2384,7 +2384,7 @@ void RecreateWitchItem(int ii, int idx, int lvl, int iseed) GetItemAttrs(ii, idx, lvl); } else if (gbIsHellfire && idx >= 114 && idx <= 117) { SetRndSeed(iseed); - GenerateRnd(1); + AdvanceRndSeed(); GetItemAttrs(ii, idx, lvl); } else { SetRndSeed(iseed); @@ -4551,7 +4551,7 @@ void SpawnWitch(int lvl) memset(&Items[0], 0, sizeof(*Items)); Items[0]._iSeed = AdvanceRndSeed(); - GenerateRnd(1); + AdvanceRndSeed(); GetItemAttrs(0, i, lvl); witchitem[j] = Items[0]; diff --git a/Source/monster.cpp b/Source/monster.cpp index 6815a20d3..0b759cb5b 100644 --- a/Source/monster.cpp +++ b/Source/monster.cpp @@ -3197,7 +3197,7 @@ void MAI_Fireman(int i) monst->_mgoal = MGOAL_ATTACK2; } monst->_mdir = md; - GenerateRnd(100); + AdvanceRndSeed(); if (monst->_mmode != MM_STAND) return;