From a3cfdccf685ecb9c1b8f9e4d95950d79f5462f9c Mon Sep 17 00:00:00 2001 From: Anders Jenbo Date: Wed, 4 Sep 2019 06:31:46 +0200 Subject: [PATCH 01/15] Add the e variable to AddPlrMonstExper --- Source/player.cpp | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/Source/player.cpp b/Source/player.cpp index 30662e52a..34661b5dc 100644 --- a/Source/player.cpp +++ b/Source/player.cpp @@ -808,7 +808,7 @@ void AddPlrExperience(int pnum, int lvl, int exp) void AddPlrMonstExper(int lvl, int exp, char pmask) { - int totplrs, i; + int totplrs, i, e; totplrs = 0; for (i = 0; i < MAX_PLRS; i++) { @@ -818,9 +818,9 @@ void AddPlrMonstExper(int lvl, int exp, char pmask) } if (totplrs) { - exp = exp / totplrs; + e = exp / totplrs; if (pmask & (1 << myplr)) - AddPlrExperience(myplr, lvl, exp); + AddPlrExperience(myplr, lvl, e); } } From 4e5b9312a66e49e95d2c1cb0aa092d98dd5b8e7a Mon Sep 17 00:00:00 2001 From: Anders Jenbo Date: Wed, 4 Sep 2019 21:14:23 +0200 Subject: [PATCH 02/15] Clean up PM_ChangeLightOff --- Source/player.cpp | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/Source/player.cpp b/Source/player.cpp index 30662e52a..f203ff428 100644 --- a/Source/player.cpp +++ b/Source/player.cpp @@ -1159,7 +1159,6 @@ void PM_ChangeLightOff(int pnum) } l = &LightList[plr[pnum]._plid]; - ymul = -1; x = 2 * plr[pnum]._pyoff + plr[pnum]._pxoff; y = 2 * plr[pnum]._pyoff - plr[pnum]._pxoff; if (x < 0) { @@ -1169,6 +1168,7 @@ void PM_ChangeLightOff(int pnum) xmul = 1; } if (y < 0) { + ymul = -1; y = -y; } else { ymul = 1; From ae0fdc2b6f1df46d12967695e9252100162a84cf Mon Sep 17 00:00:00 2001 From: qndel Date: Thu, 5 Sep 2019 14:30:56 +0200 Subject: [PATCH 03/15] MI_Fireball cleanup (#1525) --- Source/missiles.cpp | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/Source/missiles.cpp b/Source/missiles.cpp index 4b7176db6..72ad246a9 100644 --- a/Source/missiles.cpp +++ b/Source/missiles.cpp @@ -2819,8 +2819,8 @@ void MI_Fireball(int i) { int dam, id, px, py, mx, my; - dam = missile[i]._midam; id = missile[i]._misource; + dam = missile[i]._midam; missile[i]._mirange--; if (missile[i]._micaster == 0) { @@ -2886,7 +2886,7 @@ void MI_Fireball(int i) } else if (missile[i]._mix != missile[i]._miVar1 || missile[i]._miy != missile[i]._miVar2) { missile[i]._miVar1 = missile[i]._mix; missile[i]._miVar2 = missile[i]._miy; - ChangeLight(missile[i]._mlid, missile[i]._mix, missile[i]._miy, 8); + ChangeLight(missile[i]._mlid, missile[i]._miVar1, missile[i]._miVar2, 8); } } From 4899eeb96254919860dc7feaa953d18aa901ba27 Mon Sep 17 00:00:00 2001 From: qndel Date: Thu, 5 Sep 2019 14:23:29 +0200 Subject: [PATCH 04/15] AddFlash cleanup --- Source/missiles.cpp | 28 ++++++++++++++-------------- 1 file changed, 14 insertions(+), 14 deletions(-) diff --git a/Source/missiles.cpp b/Source/missiles.cpp index 72ad246a9..ed5797936 100644 --- a/Source/missiles.cpp +++ b/Source/missiles.cpp @@ -1606,22 +1606,22 @@ void AddFlash(int mi, int sx, int sy, int dx, int dy, int midir, char mienemy, i { int i; - if (!mienemy && id != -1) { - missile[mi]._midam = 0; - for (i = 0; i <= plr[id]._pLevel; i++) { - missile[mi]._midam += random(55, 20) + 1; - } - for (i = 0; i < missile[mi]._mispllvl; i++) { - missile[mi]._midam += missile[mi]._midam >> 3; - } - missile[mi]._midam += missile[mi]._midam >> 1; - UseMana(id, SPL_FLASH); - } else { - if (!mienemy) { - missile[mi]._midam = currlevel >> 1; + if (!mienemy) { + if (id != -1) { + missile[mi]._midam = 0; + for (i = 0; i <= plr[id]._pLevel; i++) { + missile[mi]._midam += random(55, 20) + 1; + } + for (i = missile[mi]._mispllvl; i > 0; i--) { + missile[mi]._midam += missile[mi]._midam >> 3; + } + missile[mi]._midam += missile[mi]._midam >> 1; + UseMana(id, SPL_FLASH); } else { - missile[mi]._midam = monster[id].mLevel << 1; + missile[mi]._midam = currlevel >> 1; } + } else { + missile[mi]._midam = monster[id].mLevel << 1; } missile[mi]._mirange = 19; } From 4d5d8479db95255d9d0f3eb0005261b1671f0120 Mon Sep 17 00:00:00 2001 From: qndel Date: Thu, 5 Sep 2019 14:36:04 +0200 Subject: [PATCH 05/15] MI_Golem cleanup --- Source/missiles.cpp | 6 ++++-- 1 file changed, 4 insertions(+), 2 deletions(-) diff --git a/Source/missiles.cpp b/Source/missiles.cpp index ed5797936..c55d94150 100644 --- a/Source/missiles.cpp +++ b/Source/missiles.cpp @@ -2504,6 +2504,7 @@ void MI_Golem(int i) { int CrawlNum[6] = { 0, 3, 12, 45, 94, 159 }; int tx, ty, dp, l, m, src, k, tid; + char *ct; src = missile[i]._misource; if (monster[src]._mx == 1 && !monster[src]._my) { @@ -2511,8 +2512,9 @@ void MI_Golem(int i) k = CrawlNum[l]; tid = k + 2; for (m = (BYTE)CrawlTable[k]; m > 0; m--) { - tx = missile[i]._miVar4 + CrawlTable[tid - 1]; - ty = missile[i]._miVar5 + CrawlTable[tid]; + ct = &CrawlTable[tid]; + tx = missile[i]._miVar4 + *(ct - 1); + ty = missile[i]._miVar5 + *ct; if (0 < tx && tx < MAXDUNX && 0 < ty && ty < MAXDUNY) { dp = dPiece[tx][ty]; if (LineClear(missile[i]._miVar1, missile[i]._miVar2, tx, ty)) { From 61acfa3963530e0d338e600fc8d7ff55cc2bfbbc Mon Sep 17 00:00:00 2001 From: qndel Date: Thu, 5 Sep 2019 14:55:35 +0200 Subject: [PATCH 06/15] MI_LArrow cleanup --- Source/missiles.cpp | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/Source/missiles.cpp b/Source/missiles.cpp index c55d94150..0fd397ce2 100644 --- a/Source/missiles.cpp +++ b/Source/missiles.cpp @@ -2608,7 +2608,7 @@ void MI_LArrow(int i) if (missile[i]._mix != missile[i]._miVar1 || missile[i]._miy != missile[i]._miVar2) { missile[i]._miVar1 = missile[i]._mix; missile[i]._miVar2 = missile[i]._miy; - ChangeLight(missile[i]._mlid, missile[i]._mix, missile[i]._miy, 5); + ChangeLight(missile[i]._mlid, missile[i]._miVar1, missile[i]._miVar2, 5); } } } From f331d3b5a4f2d650fc1206bd121a76c0fd7fe2cc Mon Sep 17 00:00:00 2001 From: Anders Jenbo Date: Thu, 5 Sep 2019 15:12:53 +0200 Subject: [PATCH 07/15] Backport Hellfire cleanups --- Source/missiles.cpp | 8 ++++---- Source/monster.cpp | 38 +++++++++++++++----------------------- Source/player.cpp | 36 ++++++++++++++++++------------------ Source/player.h | 2 +- 4 files changed, 38 insertions(+), 46 deletions(-) diff --git a/Source/missiles.cpp b/Source/missiles.cpp index 0fd397ce2..73c75e7b6 100644 --- a/Source/missiles.cpp +++ b/Source/missiles.cpp @@ -1835,9 +1835,9 @@ void AddFlare(int mi, int sx, int sy, int dx, int dy, int midir, char mienemy, i missile[mi]._mlid = AddLight(sx, sy, 8); if (!mienemy) { UseMana(id, SPL_FLARE); - drawhpflag = TRUE; plr[id]._pHitPoints -= 320; plr[id]._pHPBase -= 320; + drawhpflag = TRUE; if (plr[id]._pHitPoints <= 0) SyncPlrKill(id, 0); } else { @@ -1858,10 +1858,10 @@ void AddAcid(int mi, int sx, int sy, int dx, int dy, int midir, char mienemy, in { GetMissileVel(mi, sx, sy, dx, dy, 16); SetMissDir(mi, GetDirection16(sx, sy, dx, dy)); + missile[mi]._mirange = 5 * (monster[id]._mint + 4); missile[mi]._mlid = -1; missile[mi]._miVar1 = sx; missile[mi]._miVar2 = sy; - missile[mi]._mirange = 5 * (monster[id]._mint + 4); PutMissile(mi); } @@ -2104,11 +2104,11 @@ void AddFirewallC(int mi, int sx, int sy, int dx, int dy, int midir, char mienem k = dPiece[tx][ty]; if (LineClear(sx, sy, tx, ty)) { if ((sx != tx || sy != ty) && !(nSolidTable[k] | dObject[tx][ty])) { - missile[mi]._miDelFlag = FALSE; missile[mi]._miVar1 = tx; missile[mi]._miVar2 = ty; missile[mi]._miVar5 = tx; missile[mi]._miVar6 = ty; + missile[mi]._miDelFlag = FALSE; i = 6; break; } @@ -2466,7 +2466,7 @@ int AddMissile(int sx, int sy, int dx, int dy, int midir, int mitype, char micas missile[mi]._mirnd = 0; if (missiledata[mitype].mlSFX != -1) { - PlaySfxLoc(missiledata[mitype].mlSFX, sx, sy); + PlaySfxLoc(missiledata[mitype].mlSFX, missile[mi]._misx, missile[mi]._misy); } missiledata[mitype].mAddProc(mi, sx, sy, dx, dy, midir, micaster, id, midam); diff --git a/Source/monster.cpp b/Source/monster.cpp index 5c9bf9275..c684add59 100644 --- a/Source/monster.cpp +++ b/Source/monster.cpp @@ -398,16 +398,16 @@ void InitMonster(int i, int rd, int mtype, int x, int y) monster[i]._mfuty = y; monster[i]._moldx = x; monster[i]._moldy = y; - monster[i]._mmode = MM_STAND; monster[i]._mMTidx = mtype; + monster[i]._mmode = MM_STAND; monster[i].mName = monst->MData->mName; monster[i].MType = monst; monster[i].MData = monst->MData; monster[i]._mAnimData = monst->Anims[MA_STAND].Data[rd]; monster[i]._mAnimDelay = monst->Anims[MA_STAND].Rate; - monster[i]._mAnimCnt = random(88, monst->Anims[MA_STAND].Rate - 1); + monster[i]._mAnimCnt = random(88, monster[i]._mAnimDelay - 1); monster[i]._mAnimLen = monst->Anims[MA_STAND].Frames; - monster[i]._mAnimFrame = random(88, monst->Anims[MA_STAND].Frames - 1) + 1; + monster[i]._mAnimFrame = random(88, monster[i]._mAnimLen - 1) + 1; if (monst->mtype == MT_DIABLO) { monster[i]._mmaxhp = (random(88, 1) + 1666) << 6; @@ -429,11 +429,11 @@ void InitMonster(int i, int rd, int mtype, int x, int y) monster[i]._mgoalvar1 = 0; monster[i]._mgoalvar2 = 0; monster[i]._mgoalvar3 = 0; + monster[i].field_18 = 0; monster[i]._pathcount = 0; + monster[i]._mDelFlag = FALSE; monster[i]._uniqtype = 0; monster[i]._msquelch = 0; - monster[i].field_18 = 0; - monster[i]._mDelFlag = FALSE; monster[i]._mRndSeed = GetRndSeed(); monster[i]._mAISeed = GetRndSeed(); monster[i].mWhoHit = 0; @@ -460,28 +460,28 @@ void InitMonster(int i, int rd, int mtype, int x, int y) } if (gnDifficulty == DIFF_NIGHTMARE) { - monster[i].mLevel += 15; - monster[i].mHit += 85; - monster[i].mHit2 += 85; monster[i]._mmaxhp = 3 * monster[i]._mmaxhp + 64; monster[i]._mhitpoints = monster[i]._mmaxhp; + monster[i].mLevel += 15; monster[i].mExp = 2 * (monster[i].mExp + 1000); + monster[i].mHit += 85; monster[i].mMinDamage = 2 * (monster[i].mMinDamage + 2); monster[i].mMaxDamage = 2 * (monster[i].mMaxDamage + 2); + monster[i].mHit2 += 85; monster[i].mMinDamage2 = 2 * (monster[i].mMinDamage2 + 2); monster[i].mMaxDamage2 = 2 * (monster[i].mMaxDamage2 + 2); monster[i].mArmorClass += 50; } if (gnDifficulty == DIFF_HELL) { - monster[i].mLevel += 30; monster[i]._mmaxhp = 4 * monster[i]._mmaxhp + 192; monster[i]._mhitpoints = monster[i]._mmaxhp; - monster[i].mHit += 120; - monster[i].mHit2 += 120; + monster[i].mLevel += 30; monster[i].mExp = 4 * (monster[i].mExp + 1000); + monster[i].mHit += 120; monster[i].mMinDamage = 4 * monster[i].mMinDamage + 6; monster[i].mMaxDamage = 4 * monster[i].mMaxDamage + 6; + monster[i].mHit2 += 120; monster[i].mMinDamage2 = 4 * monster[i].mMinDamage2 + 6; monster[i].mMaxDamage2 = 4 * monster[i].mMaxDamage2 + 6; monster[i].mArmorClass += 80; @@ -849,22 +849,14 @@ void PlaceGroup(int mtype, int num, int leaderf, int leader) dMonster[monster[nummonsters]._mx][monster[nummonsters]._my] = 0; } - x1 = 0; - y1 = 0; - xp = 0; - yp = 0; if (leaderf & 1) { int offset = random(92, 8); - xp = monster[leader]._mx + offset_x[offset]; - yp = monster[leader]._my + offset_y[offset]; - x1 = xp; - y1 = yp; + x1 = xp = monster[leader]._mx + offset_x[offset]; + y1 = yp = monster[leader]._my + offset_y[offset]; } else { do { - xp = random(93, 80) + 16; - x1 = xp; - yp = random(93, 80) + 16; - y1 = yp; + x1 = xp = random(93, 80) + 16; + y1 = yp = random(93, 80) + 16; } while (!MonstPlace(xp, yp)); } diff --git a/Source/player.cpp b/Source/player.cpp index 06caa495a..9b8934201 100644 --- a/Source/player.cpp +++ b/Source/player.cpp @@ -32,10 +32,10 @@ int plrxoff[9] = { 0, 2, 0, 2, 1, 0, 1, 2, 1 }; int plryoff[9] = { 0, 2, 2, 0, 1, 1, 0, 1, 2 }; int plrxoff2[9] = { 0, 1, 0, 1, 2, 0, 1, 2, 2 }; int plryoff2[9] = { 0, 0, 1, 1, 0, 2, 2, 1, 2 }; -char PlrGFXAnimLens[3][11] = { +char PlrGFXAnimLens[][11] = { { 10, 16, 8, 2, 20, 20, 6, 20, 8, 9, 14 }, { 8, 18, 8, 4, 20, 16, 7, 20, 8, 10, 12 }, - { 8, 16, 8, 6, 20, 12, 8, 20, 8, 12, 8 } + { 8, 16, 8, 6, 20, 12, 8, 20, 8, 12, 8 }, }; int PWVel[3][3] = { { 2048, 1024, 512 }, @@ -329,7 +329,8 @@ void InitPlrGFXMem(int pnum) DWORD GetPlrGFXSize(char *szCel) { - int c, a, w; + int c; + const char *a, *w; DWORD dwSize, dwMaxSize; HANDLE hsFile; char pszName[256]; @@ -342,13 +343,13 @@ DWORD GetPlrGFXSize(char *szCel) if (c != 0) continue; #endif - for (a = 0; ArmourChar[a]; a++) { + for (a = &ArmourChar[0]; *a; a++) { #ifdef SPAWN - if (&ArmourChar[a] != &ArmourChar[0]) + if (a != &ArmourChar[0]) break; #endif - for (w = 0; WepChar[w]; w++) { // BUGFIX loads non-existing animagions; DT is only for N, BT is only for U, D & H - sprintf(Type, "%c%c%c", CharChar[c], ArmourChar[a], WepChar[w]); + for (w = &WepChar[0]; *w; w++) { // BUGFIX loads non-existing animagions; DT is only for N, BT is only for U, D & H + sprintf(Type, "%c%c%c", CharChar[c], *a, *w); sprintf(pszName, "PlrGFX\\%s\\%s\\%s%s.CL2", ClassStrTbl[c], Type, Type, szCel); if (WOpenFile(pszName, &hsFile, TRUE)) { /// ASSERT: assert(hsFile); @@ -422,8 +423,6 @@ void SetPlrAnims(int pnum) app_fatal("SetPlrAnims: illegal player %d", pnum); } - pc = plr[pnum]._pClass; - plr[pnum]._pNWidth = 96; plr[pnum]._pWWidth = 96; plr[pnum]._pAWidth = 128; @@ -432,6 +431,8 @@ void SetPlrAnims(int pnum) plr[pnum]._pDWidth = 128; plr[pnum]._pBWidth = 96; + pc = plr[pnum]._pClass; + if (leveltype == DTYPE_TOWN) { plr[pnum]._pNFrames = PlrGFXAnimLens[pc][7]; plr[pnum]._pWFrames = PlrGFXAnimLens[pc][8]; @@ -666,7 +667,7 @@ void CreatePlayer(int pnum, char c) plr[pnum]._pLvlChanging = FALSE; plr[pnum].pTownWarps = 0; plr[pnum].pLvlLoad = 0; - plr[pnum].pBattleNet = 0; + plr[pnum].pBattleNet = FALSE; plr[pnum].pManaShield = FALSE; InitDungMsgs(pnum); @@ -691,7 +692,6 @@ int CalcStatDiff(int pnum) void NextPlrLevel(int pnum) { - char l, c; int hp, mana; if ((DWORD)pnum >= MAX_PLRS) { @@ -699,8 +699,6 @@ void NextPlrLevel(int pnum) } plr[pnum]._pLevel++; - l = plr[pnum]._pLevel; - plr[pnum]._pMaxLvl++; if (CalcStatDiff(pnum) < 5) { @@ -709,11 +707,9 @@ void NextPlrLevel(int pnum) plr[pnum]._pStatPts += 5; } - plr[pnum]._pNextExper = ExpLvlsTbl[l]; - - c = plr[pnum]._pClass; + plr[pnum]._pNextExper = ExpLvlsTbl[plr[pnum]._pLevel]; - hp = c == PC_SORCERER ? 64 : 128; + hp = plr[pnum]._pClass == PC_SORCERER ? 64 : 128; if (gbMaxPlayers == 1) { hp++; } @@ -726,7 +722,11 @@ void NextPlrLevel(int pnum) drawhpflag = TRUE; } - mana = c != PC_WARRIOR ? 128 : 64; + if (plr[pnum]._pClass == PC_WARRIOR) + mana = 64; + else + mana = 128; + if (gbMaxPlayers == 1) { mana++; } diff --git a/Source/player.h b/Source/player.h index 193de42da..bc6943b7f 100644 --- a/Source/player.h +++ b/Source/player.h @@ -121,7 +121,7 @@ extern int plrxoff[9]; extern int plryoff[9]; extern int plrxoff2[9]; extern int plryoff2[9]; -extern char PlrGFXAnimLens[3][11]; +extern char PlrGFXAnimLens[][11]; extern int PWVel[3][3]; extern int AnimLenFromClass[3]; extern int StrengthTbl[3]; From 80fb61019f4ef108d8fc5f4b3e163c5c0ed47bdf Mon Sep 17 00:00:00 2001 From: jimmy-cell Date: Thu, 5 Sep 2019 20:12:27 +0300 Subject: [PATCH 08/15] SetPortalStats bin exact vanilla --- Source/portal.cpp | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/Source/portal.cpp b/Source/portal.cpp index 296fea10f..edf94618d 100644 --- a/Source/portal.cpp +++ b/Source/portal.cpp @@ -18,12 +18,12 @@ void InitPortals() void SetPortalStats(int i, BOOL o, int x, int y, int lvl, int lvltype) { - portal[i].setlvl = FALSE; + portal[i].open = o; portal[i].x = x; portal[i].y = y; - portal[i].open = o; portal[i].level = lvl; portal[i].ltype = lvltype; + portal[i].setlvl = FALSE; } void AddWarpMissile(int i, int x, int y) From f473ffbe7ff5206b994c9f01c04008f800f4d71e Mon Sep 17 00:00:00 2001 From: qndel Date: Thu, 5 Sep 2019 19:06:31 +0200 Subject: [PATCH 09/15] mpqapi_add_file cleanup --- Source/mpqapi.cpp | 9 ++------- 1 file changed, 2 insertions(+), 7 deletions(-) diff --git a/Source/mpqapi.cpp b/Source/mpqapi.cpp index dc58bfe35..ddf9bd850 100644 --- a/Source/mpqapi.cpp +++ b/Source/mpqapi.cpp @@ -266,17 +266,12 @@ _BLOCKENTRY *mpqapi_add_file(const char *pszName, _BLOCKENTRY *pBlk, int block_i h3 = Hash(pszName, 2); if (mpqapi_get_hash_index(h1, h2, h3, 0) != -1) app_fatal("Hash collision between \"%s\" and existing file\n", pszName); - i = 2048; hIdx = h1 & 0x7FF; - while (1) { - i--; + i = 2048; + while (i--) { if (sgpHashTbl[hIdx].block == -1 || sgpHashTbl[hIdx].block == -2) break; hIdx = (hIdx + 1) & 0x7FF; - if (!i) { - i = -1; - break; - } } if (i < 0) app_fatal("Out of hash space"); From 0e1a8689cb263faeac0d527afc1dc4e3b2041980 Mon Sep 17 00:00:00 2001 From: qndel Date: Thu, 5 Sep 2019 20:33:05 +0200 Subject: [PATCH 10/15] PrintPlrMsg cleanup --- Source/plrmsg.cpp | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/Source/plrmsg.cpp b/Source/plrmsg.cpp index 5369377f5..09c6fe840 100644 --- a/Source/plrmsg.cpp +++ b/Source/plrmsg.cpp @@ -110,8 +110,8 @@ void PrintPlrMsg(DWORD x, DWORD y, DWORD width, const char *str, BYTE col) while (*str) { BYTE c; int screen = PitchTbl[y] + x; - const char *sstr = str; DWORD len = 0; + const char *sstr = str; const char *endstr = sstr; while (1) { From b834c4e4181078db1a5a336897b902457a1f993a Mon Sep 17 00:00:00 2001 From: Anders Jenbo Date: Fri, 6 Sep 2019 22:52:11 +0200 Subject: [PATCH 11/15] Clean up RemovePlrMissiles --- Source/player.cpp | 17 ++++++++++------- 1 file changed, 10 insertions(+), 7 deletions(-) diff --git a/Source/player.cpp b/Source/player.cpp index 06caa495a..e316f3e95 100644 --- a/Source/player.cpp +++ b/Source/player.cpp @@ -1954,28 +1954,31 @@ void SyncPlrKill(int pnum, int earflag) void RemovePlrMissiles(int pnum) { - int mi, am; + int i, am; + int mx, my; if (currlevel != 0 && pnum == myplr && (monster[myplr]._mx != 1 || monster[myplr]._my != 0)) { M_StartKill(myplr, myplr); - AddDead(monster[myplr]._mx, monster[myplr]._my, monster[myplr].MType->mdeadval, (direction)monster[myplr]._mdir); - dMonster[monster[myplr]._mx][monster[myplr]._my] = 0; + AddDead(monster[myplr]._mx, monster[myplr]._my, (monster[myplr].MType)->mdeadval, monster[myplr]._mdir); + mx = monster[myplr]._mx; + my = monster[myplr]._my; + dMonster[mx][my] = 0; monster[myplr]._mDelFlag = TRUE; DeleteMonsterList(); } - for (mi = 0; mi < nummissiles; mi++) { - am = missileactive[mi]; + for (i = 0; i < nummissiles; i++) { + am = missileactive[i]; if (missile[am]._mitype == MIS_STONE && missile[am]._misource == pnum) { monster[missile[am]._miVar2]._mmode = missile[am]._miVar1; } if (missile[am]._mitype == MIS_MANASHIELD && missile[am]._misource == pnum) { ClearMissileSpot(am); - DeleteMissile(am, mi); + DeleteMissile(am, i); } if (missile[am]._mitype == MIS_ETHEREALIZE && missile[am]._misource == pnum) { ClearMissileSpot(am); - DeleteMissile(am, mi); + DeleteMissile(am, i); } } } From 607051c0b611e2fb0175bdea0fd3af84a7c9cc49 Mon Sep 17 00:00:00 2001 From: qndel Date: Sun, 8 Sep 2019 03:57:07 +0200 Subject: [PATCH 12/15] ItemNoFlippy cleanup --- Source/items.cpp | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/Source/items.cpp b/Source/items.cpp index 60c8bf49b..94703a975 100644 --- a/Source/items.cpp +++ b/Source/items.cpp @@ -3933,8 +3933,8 @@ int ItemNoFlippy() int r; r = itemactive[numitems - 1]; - item[r]._iAnimFlag = FALSE; item[r]._iAnimFrame = item[r]._iAnimLen; + item[r]._iAnimFlag = FALSE; item[r]._iSelFlag = 1; return r; From 7daee74e3d42c6b2d63c5aff07e01b6853224536 Mon Sep 17 00:00:00 2001 From: qndel Date: Sun, 8 Sep 2019 01:29:40 +0200 Subject: [PATCH 13/15] BreakCrux cleanup --- Source/objects.cpp | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/Source/objects.cpp b/Source/objects.cpp index d30428e54..7cdde39f1 100644 --- a/Source/objects.cpp +++ b/Source/objects.cpp @@ -4054,13 +4054,13 @@ void BreakCrux(int i) int j, oi; BOOL triggered; - object[i]._oBreak = -1; - object[i]._oSelFlag = 0; object[i]._oAnimFlag = 1; object[i]._oAnimFrame = 1; object[i]._oAnimDelay = 1; object[i]._oSolidFlag = TRUE; object[i]._oMissFlag = TRUE; + object[i]._oBreak = -1; + object[i]._oSelFlag = 0; triggered = TRUE; for (j = 0; j < nobjects; j++) { oi = objectactive[j]; From 9f3bb09635a5dbdfd2c71f35f4599555e25c8453 Mon Sep 17 00:00:00 2001 From: qndel Date: Sun, 8 Sep 2019 03:48:27 +0200 Subject: [PATCH 14/15] RecreateSmithItem cleanup --- Source/items.cpp | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/Source/items.cpp b/Source/items.cpp index 94703a975..66806a0c3 100644 --- a/Source/items.cpp +++ b/Source/items.cpp @@ -3813,8 +3813,8 @@ void RecreateSmithItem(int ii, int idx, int lvl, int iseed) itype = RndSmithItem(lvl) - 1; GetItemAttrs(ii, itype, lvl); - item[ii]._iCreateInfo = lvl | 0x400; item[ii]._iSeed = iseed; + item[ii]._iCreateInfo = lvl | 0x400; item[ii]._iIdentified = TRUE; } From d9fdfdaeec655d285119836476d04e091ba350f1 Mon Sep 17 00:00:00 2001 From: qndel Date: Sun, 8 Sep 2019 03:54:18 +0200 Subject: [PATCH 15/15] RecreateHealerItem cleanup --- Source/items.cpp | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/Source/items.cpp b/Source/items.cpp index 66806a0c3..94d8cdaa0 100644 --- a/Source/items.cpp +++ b/Source/items.cpp @@ -3882,8 +3882,8 @@ void RecreateHealerItem(int ii, int idx, int lvl, int iseed) GetItemAttrs(ii, itype, lvl); } - item[ii]._iCreateInfo = lvl | 0x4000; item[ii]._iSeed = iseed; + item[ii]._iCreateInfo = lvl | 0x4000; item[ii]._iIdentified = TRUE; }