diff --git a/Source/player.cpp b/Source/player.cpp index bd7ffcdfd..527a94bdd 100644 --- a/Source/player.cpp +++ b/Source/player.cpp @@ -729,22 +729,14 @@ void CreatePlayer(int pnum, char c) plr[pnum]._pStatPts = 0; plr[pnum].pTownWarps = 0; plr[pnum].pDungMsgs = 0; -#ifdef HELLFIRE plr[pnum].pDungMsgs2 = 0; -#endif plr[pnum].pLvlLoad = 0; plr[pnum].pDiabloKillLevel = 0; -#ifdef HELLFIRE plr[pnum].pDifficulty = DIFF_NORMAL; -#endif -#ifdef HELLFIRE if (plr[pnum]._pClass == PC_MONK) { plr[pnum]._pDamageMod = (plr[pnum]._pStrength + plr[pnum]._pDexterity) * plr[pnum]._pLevel / 150; } else if (plr[pnum]._pClass == PC_ROGUE || plr[pnum]._pClass == PC_BARD) { -#else - if (plr[pnum]._pClass == PC_ROGUE) { -#endif plr[pnum]._pDamageMod = plr[pnum]._pLevel * (plr[pnum]._pStrength + plr[pnum]._pDexterity) / 200; } else { plr[pnum]._pDamageMod = plr[pnum]._pStrength * plr[pnum]._pLevel / 100; @@ -753,18 +745,9 @@ void CreatePlayer(int pnum, char c) plr[pnum]._pBaseToBlk = ToBlkTbl[c]; plr[pnum]._pHitPoints = (plr[pnum]._pVitality + 10) << 6; - if (plr[pnum]._pClass == PC_WARRIOR -#ifdef HELLFIRE - || plr[pnum]._pClass == PC_BARBARIAN -#endif - ) { + if (plr[pnum]._pClass == PC_WARRIOR || plr[pnum]._pClass == PC_BARBARIAN) { plr[pnum]._pHitPoints <<= 1; -#ifdef HELLFIRE } else if (plr[pnum]._pClass == PC_ROGUE || plr[pnum]._pClass == PC_MONK || plr[pnum]._pClass == PC_BARD) { -#else - } - if (plr[pnum]._pClass == PC_ROGUE == PC_ROGUE) { -#endif plr[pnum]._pHitPoints += plr[pnum]._pHitPoints >> 1; } @@ -775,15 +758,9 @@ void CreatePlayer(int pnum, char c) plr[pnum]._pMana = plr[pnum]._pMagic << 6; if (plr[pnum]._pClass == PC_SORCERER) { plr[pnum]._pMana <<= 1; -#ifdef HELLFIRE } else if (plr[pnum]._pClass == PC_BARD) { plr[pnum]._pMana += plr[pnum]._pMana * 3 / 4; - } else if (plr[pnum]._pClass == PC_ROGUE - || plr[pnum]._pClass == PC_MONK) { -#else - } - if (plr[pnum]._pClass == PC_ROGUE) { -#endif + } else if (plr[pnum]._pClass == PC_ROGUE || plr[pnum]._pClass == PC_MONK) { plr[pnum]._pMana += plr[pnum]._pMana >> 1; } @@ -797,19 +774,15 @@ void CreatePlayer(int pnum, char c) plr[pnum]._pMaxExp = plr[pnum]._pExperience; plr[pnum]._pNextExper = ExpLvlsTbl[1]; plr[pnum]._pArmorClass = 0; -#ifdef HELLFIRE if (plr[pnum]._pClass == PC_BARBARIAN) { plr[pnum]._pMagResist = 1; plr[pnum]._pFireResist = 1; plr[pnum]._pLghtResist = 1; } else { -#endif plr[pnum]._pMagResist = 0; plr[pnum]._pFireResist = 0; plr[pnum]._pLghtResist = 0; -#ifdef HELLFIRE } -#endif plr[pnum]._pLightRad = 10; plr[pnum]._pInfraFlag = FALSE; @@ -1807,14 +1780,11 @@ void StartPlrHit(int pnum, int dam, BOOL forcehit) } drawhpflag = TRUE; -#ifdef HELLFIRE if (plr[pnum]._pClass == PC_BARBARIAN) { if (dam >> 6 < plr[pnum]._pLevel + plr[pnum]._pLevel / 4 && !forcehit) { return; } - } else -#endif - if (dam >> 6 < plr[pnum]._pLevel && !forcehit) { + } else if (dam >> 6 < plr[pnum]._pLevel && !forcehit) { return; } @@ -2014,9 +1984,7 @@ StartPlayerKill(int pnum, int earflag) } } } -#ifndef HELLFIRE SetPlayerHitPoints(pnum, 0); -#endif } void DropHalfPlayersGold(int pnum) @@ -2079,12 +2047,7 @@ void DropHalfPlayersGold(int pnum) force_redraw = 255; if (hGold > 0) { for (i = 0; i < plr[pnum]._pNumInv && hGold > 0; i++) { - if (plr[pnum].InvList[i]._itype == ITYPE_GOLD && -#ifndef HELLFIRE - plr[pnum].InvList[i]._ivalue != GOLD_MAX_LIMIT) { -#else - plr[pnum].InvList[i]._ivalue != MaxGold) { -#endif + if (plr[pnum].InvList[i]._itype == ITYPE_GOLD && plr[pnum].InvList[i]._ivalue != MaxGold) { if (hGold < plr[pnum].InvList[i]._ivalue) { plr[pnum].InvList[i]._ivalue -= hGold; SetGoldCurs(pnum, i); @@ -2640,10 +2603,8 @@ BOOL PlrHitMonst(int pnum, int m) BOOL rv, ret; int hit, hper, mind, maxd, ddp, dam, skdam, phanditype, tmac; hper = 0; -#ifdef HELLFIRE ret = FALSE; BOOL adjacentDamage = FALSE; -#endif if ((DWORD)m >= MAXMONSTERS) { app_fatal("PlrHitMonst: illegal monster %d", m); @@ -2661,7 +2622,6 @@ BOOL PlrHitMonst(int pnum, int m) return FALSE; } -#ifdef HELLFIRE if (pnum < 0) { adjacentDamage = TRUE; pnum = -pnum; @@ -2670,7 +2630,6 @@ BOOL PlrHitMonst(int pnum, int m) else hper -= (35 - plr[pnum]._pLevel) * 2; } -#endif if ((DWORD)pnum >= MAX_PLRS) { app_fatal("PlrHitMonst: illegal player %d", pnum); @@ -2684,8 +2643,7 @@ BOOL PlrHitMonst(int pnum, int m) } tmac = monster[m].mArmorClass; -#ifdef HELLFIRE - if (plr[pnum]._pIEnAc > 0) { + if (gbIsHellfire && plr[pnum]._pIEnAc > 0) { int _pIEnAc = plr[pnum]._pIEnAc - 1; if (_pIEnAc > 0) tmac >>= _pIEnAc; @@ -2698,10 +2656,9 @@ BOOL PlrHitMonst(int pnum, int m) if (tmac < 0) tmac = 0; + } else { + tmac -= plr[pnum]._pIEnAc; } -#else - tmac -= plr[pnum]._pIEnAc; -#endif hper += (plr[pnum]._pDexterity >> 1) + plr[pnum]._pLevel + 50 - tmac; if (plr[pnum]._pClass == PC_WARRIOR) { @@ -2734,15 +2691,9 @@ BOOL PlrHitMonst(int pnum, int m) dam = random_(5, maxd - mind + 1) + mind; dam += dam * plr[pnum]._pIBonusDam / 100; dam += plr[pnum]._pIBonusDamMod; -#ifdef HELLFIRE int dam2 = dam << 6; -#endif dam += plr[pnum]._pDamageMod; - if (plr[pnum]._pClass == PC_WARRIOR -#ifdef HELLFIRE - || plr[pnum]._pClass == PC_BARBARIAN -#endif - ) { + if (plr[pnum]._pClass == PC_WARRIOR || plr[pnum]._pClass == PC_BARBARIAN) { ddp = plr[pnum]._pLevel; if (random_(6, 100) < ddp) { dam <<= 1; @@ -2761,22 +2712,14 @@ BOOL PlrHitMonst(int pnum, int m) case MC_UNDEAD: if (phanditype == ITYPE_SWORD) { dam -= dam >> 1; - } -#ifdef HELLFIRE - else -#endif - if (phanditype == ITYPE_MACE) { + } else if (phanditype == ITYPE_MACE) { dam += dam >> 1; } break; case MC_ANIMAL: if (phanditype == ITYPE_MACE) { dam -= dam >> 1; - } -#ifdef HELLFIRE - else -#endif - if (phanditype == ITYPE_SWORD) { + } else if (phanditype == ITYPE_SWORD) { dam += dam >> 1; } break; @@ -2786,7 +2729,6 @@ BOOL PlrHitMonst(int pnum, int m) dam *= 3; } -#ifdef HELLFIRE if (plr[pnum].pDamAcFlags & 0x01 && random_(6, 100) < 5) { dam *= 3; } @@ -2794,10 +2736,8 @@ BOOL PlrHitMonst(int pnum, int m) if (plr[pnum].pDamAcFlags & 0x10 && monster[m].MType->mtype != MT_DIABLO && monster[m]._uniqtype == 0 && random_(6, 100) < 10) { monster_43C785(m); } -#endif dam <<= 6; -#ifdef HELLFIRE if (plr[pnum].pDamAcFlags & 0x08) { int r = random_(6, 201); if (r >= 100) @@ -2807,10 +2747,8 @@ BOOL PlrHitMonst(int pnum, int m) if (adjacentDamage) dam >>= 2; -#endif if (pnum == myplr) { -#ifdef HELLFIRE if (plr[pnum].pDamAcFlags & 0x04) { dam2 += plr[pnum]._pIGetHit << 6; if (dam2 >= 0) { @@ -2825,7 +2763,6 @@ BOOL PlrHitMonst(int pnum, int m) } dam <<= 1; } -#endif monster[m]._mhitpoints -= dam; } @@ -2970,11 +2907,7 @@ BOOL PlrHitPlr(int pnum, char p) dam += (dam * plr[pnum]._pIBonusDam) / 100; dam += plr[pnum]._pIBonusDamMod + plr[pnum]._pDamageMod; - if (plr[pnum]._pClass == PC_WARRIOR -#ifdef HELLFIRE - || plr[pnum]._pClass == PC_BARBARIAN -#endif - ) { + if (plr[pnum]._pClass == PC_WARRIOR || plr[pnum]._pClass == PC_BARBARIAN) { lvl = plr[pnum]._pLevel; if (random_(6, 100) < lvl) { dam <<= 1; @@ -3097,7 +3030,6 @@ BOOL PM_DoAttack(int pnum) } else if (dObject[dx][dy] > 0) { didhit = PlrHitObj(pnum, dx, dy); } -#ifdef HELLFIRE if ((plr[pnum]._pClass == PC_MONK && (plr[pnum].InvBody[INVLOC_HAND_LEFT]._itype == ITYPE_STAFF || plr[pnum].InvBody[INVLOC_HAND_RIGHT]._itype == ITYPE_STAFF)) || (plr[pnum]._pClass == PC_BARD @@ -3124,7 +3056,6 @@ BOOL PM_DoAttack(int pnum) didhit = TRUE; } } -#endif if (didhit && WeaponDur(pnum, 30)) { StartStand(pnum, plr[pnum]._pdir); @@ -3789,8 +3720,8 @@ void ValidatePlayer() gt = 0; for (i = 0; i < plr[myplr]._pNumInv; i++) { if (plr[myplr].InvList[i]._itype == ITYPE_GOLD) { - int maxGold = gbIsHellfire ? auricGold : GOLD_MAX_LIMIT; - if (plr[myplr].InvList[i]._ivalue > maxGold) { + int maxGold = gbIsHellfire ? auricGold : GOLD_MAX_LIMIT; + if (plr[myplr].InvList[i]._ivalue > maxGold) { plr[myplr].InvList[i]._ivalue = maxGold; } gt += plr[myplr].InvList[i]._ivalue; @@ -3976,64 +3907,51 @@ void ClrPlrPath(int pnum) BOOL PosOkPlayer(int pnum, int x, int y) { - BOOL PosOK; DWORD p; char bv; -#ifndef HELLFIRE - PosOK = FALSE; - if (x >= 0 && x < MAXDUNX && y >= 0 && y < MAXDUNY && !SolidLoc(x, y) && dPiece[x][y] != 0) { -#else + if (x < 0 || x >= MAXDUNX || y < 0 || y >= MAXDUNY) + return FALSE; if (dPiece[x][y] == 0) return FALSE; if (SolidLoc(x, y)) return FALSE; -#endif - if (dPlayer[x][y] != 0) { - if (dPlayer[x][y] > 0) { - p = dPlayer[x][y] - 1; - } else { - p = -(dPlayer[x][y] + 1); - } - if (p != pnum -#ifndef HELLFIRE - && p < MAX_PLRS -#endif - && plr[p]._pHitPoints != 0) { - return FALSE; - } + if (dPlayer[x][y] != 0) { + if (dPlayer[x][y] > 0) { + p = dPlayer[x][y] - 1; + } else { + p = -(dPlayer[x][y] + 1); } - - if (dMonster[x][y] != 0) { - if (currlevel == 0) { - return FALSE; - } - if (dMonster[x][y] <= 0) { - return FALSE; - } - if ((monster[dMonster[x][y] - 1]._mhitpoints >> 6) > 0) { - return FALSE; - } + if (p != pnum + && p < MAX_PLRS + && plr[p]._pHitPoints != 0) { + return FALSE; } + } - if (dObject[x][y] != 0) { - if (dObject[x][y] > 0) { - bv = dObject[x][y] - 1; - } else { - bv = -(dObject[x][y] + 1); - } - if (object[bv]._oSolidFlag) { - return FALSE; - } + if (dMonster[x][y] != 0) { + if (currlevel == 0) { + return FALSE; + } + if (dMonster[x][y] <= 0) { + return FALSE; + } + if ((monster[dMonster[x][y] - 1]._mhitpoints >> 6) > 0) { + return FALSE; } + } -#ifndef HELLFIRE - PosOK = TRUE; + if (dObject[x][y] != 0) { + if (dObject[x][y] > 0) { + bv = dObject[x][y] - 1; + } else { + bv = -(dObject[x][y] + 1); + } + if (object[bv]._oSolidFlag) { + return FALSE; + } } - if (!PosOK) - return FALSE; -#endif return TRUE; } @@ -4291,11 +4209,6 @@ void SyncInitPlrPos(int pnum) } } -#ifdef HELLFIRE - plr[pnum]._px += plrxoff2[i]; - plr[pnum]._py += plryoff2[i]; - dPlayer[plr[pnum]._px][plr[pnum]._py] = pnum + 1; -#else if (!PosOkPlayer(pnum, x, y)) { posOk = FALSE; for (range = 1; range < 50 && !posOk; range++) { @@ -4323,7 +4236,6 @@ void SyncInitPlrPos(int pnum) ViewX = x; ViewY = y; } -#endif } void SyncInitPlr(int pnum)