From 97a84f9067c3b67ff97addb2f249d99a025af9bc Mon Sep 17 00:00:00 2001 From: qndel Date: Fri, 30 Aug 2019 17:31:36 +0200 Subject: [PATCH] [hellfire] ModifyPlrMag bin exact --- Source/player.cpp | 7 +- enums.h | 204 ++++++++++++++++++++++++---------------------- 2 files changed, 113 insertions(+), 98 deletions(-) diff --git a/Source/player.cpp b/Source/player.cpp index 498220ed6..23cc94677 100644 --- a/Source/player.cpp +++ b/Source/player.cpp @@ -3924,8 +3924,13 @@ void ModifyPlrMag(int p, int l) ms = l << 6; if (plr[p]._pClass == PC_SORCERER) { - ms *= 2; + ms <<= 1; + } +#ifdef HELLFIRE + else if (plr[p]._pClass == PC_BARD) { + ms += ms >> 1; } +#endif plr[p]._pMaxManaBase += ms; plr[p]._pMaxMana += ms; diff --git a/enums.h b/enums.h index e90aa5ec6..37c43b3ea 100644 --- a/enums.h +++ b/enums.h @@ -2342,103 +2342,113 @@ typedef enum spell_id { } spell_id; typedef enum _cmd_id { - CMD_STAND = 0, - CMD_WALKXY = 1, - CMD_ACK_PLRINFO = 2, - CMD_ADDSTR = 3, - CMD_ADDMAG = 4, - CMD_ADDDEX = 5, - CMD_ADDVIT = 6, - CMD_SBSPELL = 7, - CMD_GETITEM = 8, - CMD_AGETITEM = 9, - CMD_PUTITEM = 10, - CMD_RESPAWNITEM = 11, - CMD_ATTACKXY = 12, - CMD_RATTACKXY = 13, - CMD_SPELLXY = 14, - CMD_TSPELLXY = 15, - CMD_OPOBJXY = 16, - CMD_DISARMXY = 17, - CMD_ATTACKID = 18, - CMD_ATTACKPID = 19, - CMD_RATTACKID = 20, - CMD_RATTACKPID = 21, - CMD_SPELLID = 22, - CMD_SPELLPID = 23, - CMD_TSPELLID = 24, - CMD_TSPELLPID = 25, - CMD_RESURRECT = 26, - CMD_OPOBJT = 27, - CMD_KNOCKBACK = 28, - CMD_TALKXY = 29, - CMD_NEWLVL = 30, - CMD_WARP = 31, - CMD_CHEAT_EXPERIENCE = 32, - CMD_CHEAT_SPELL_LEVEL = 33, - CMD_DEBUG = 34, - CMD_SYNCDATA = 35, - CMD_MONSTDEATH = 36, - CMD_MONSTDAMAGE = 37, - CMD_PLRDEAD = 38, - CMD_REQUESTGITEM = 39, - CMD_REQUESTAGITEM = 40, - CMD_GOTOGETITEM = 41, - CMD_GOTOAGETITEM = 42, - CMD_OPENDOOR = 43, - CMD_CLOSEDOOR = 44, - CMD_OPERATEOBJ = 45, - CMD_PLROPOBJ = 46, - CMD_BREAKOBJ = 47, - CMD_CHANGEPLRITEMS = 48, - CMD_DELPLRITEMS = 49, - CMD_PLRDAMAGE = 50, - CMD_PLRLEVEL = 51, - CMD_DROPITEM = 52, - CMD_PLAYER_JOINLEVEL = 53, - CMD_SEND_PLRINFO = 54, - CMD_SATTACKXY = 55, - CMD_ACTIVATEPORTAL = 56, - CMD_DEACTIVATEPORTAL = 57, - CMD_DLEVEL_0 = 58, - CMD_DLEVEL_1 = 59, - CMD_DLEVEL_2 = 60, - CMD_DLEVEL_3 = 61, - CMD_DLEVEL_4 = 62, - CMD_DLEVEL_5 = 63, - CMD_DLEVEL_6 = 64, - CMD_DLEVEL_7 = 65, - CMD_DLEVEL_8 = 66, - CMD_DLEVEL_9 = 67, - CMD_DLEVEL_10 = 68, - CMD_DLEVEL_11 = 69, - CMD_DLEVEL_12 = 70, - CMD_DLEVEL_13 = 71, - CMD_DLEVEL_14 = 72, - CMD_DLEVEL_15 = 73, - CMD_DLEVEL_16 = 74, - CMD_DLEVEL_JUNK = 75, - CMD_DLEVEL_END = 76, - CMD_HEALOTHER = 77, - CMD_STRING = 78, - CMD_SETSTR = 79, - CMD_SETMAG = 80, - CMD_SETDEX = 81, - CMD_SETVIT = 82, - CMD_RETOWN = 83, - CMD_SPELLXYD = 84, - CMD_ITEMEXTRA = 85, - CMD_SYNCPUTITEM = 86, - CMD_KILLGOLEM = 87, - CMD_SYNCQUEST = 88, - CMD_ENDSHIELD = 89, - CMD_AWAKEGOLEM = 90, - CMD_NOVA = 91, - CMD_SETSHIELD = 92, - CMD_REMSHIELD = 93, - FAKE_CMD_SETID = 94, - FAKE_CMD_DROPID = 95, - NUM_CMDS = 96, + CMD_STAND, + CMD_WALKXY, + CMD_ACK_PLRINFO, + CMD_ADDSTR, + CMD_ADDMAG, + CMD_ADDDEX, + CMD_ADDVIT, + CMD_SBSPELL, + CMD_GETITEM, + CMD_AGETITEM, + CMD_PUTITEM, + CMD_RESPAWNITEM, + CMD_ATTACKXY, + CMD_RATTACKXY, + CMD_SPELLXY, + CMD_TSPELLXY, + CMD_OPOBJXY, + CMD_DISARMXY, + CMD_ATTACKID, + CMD_ATTACKPID, + CMD_RATTACKID, + CMD_RATTACKPID, + CMD_SPELLID, + CMD_SPELLPID, + CMD_TSPELLID, + CMD_TSPELLPID, + CMD_RESURRECT, + CMD_OPOBJT, + CMD_KNOCKBACK, + CMD_TALKXY, + CMD_NEWLVL, + CMD_WARP, + CMD_CHEAT_EXPERIENCE, + CMD_CHEAT_SPELL_LEVEL, + CMD_DEBUG, + CMD_SYNCDATA, + CMD_MONSTDEATH, + CMD_MONSTDAMAGE, + CMD_PLRDEAD, + CMD_REQUESTGITEM, + CMD_REQUESTAGITEM, + CMD_GOTOGETITEM, + CMD_GOTOAGETITEM, + CMD_OPENDOOR, + CMD_CLOSEDOOR, + CMD_OPERATEOBJ, + CMD_PLROPOBJ, + CMD_BREAKOBJ, + CMD_CHANGEPLRITEMS, + CMD_DELPLRITEMS, + CMD_PLRDAMAGE, + CMD_PLRLEVEL, + CMD_DROPITEM, + CMD_PLAYER_JOINLEVEL, + CMD_SEND_PLRINFO, + CMD_SATTACKXY, + CMD_ACTIVATEPORTAL, + CMD_DEACTIVATEPORTAL, + CMD_DLEVEL_0, + CMD_DLEVEL_1, + CMD_DLEVEL_2, + CMD_DLEVEL_3, + CMD_DLEVEL_4, + CMD_DLEVEL_5, + CMD_DLEVEL_6, + CMD_DLEVEL_7, + CMD_DLEVEL_8, + CMD_DLEVEL_9, + CMD_DLEVEL_10, + CMD_DLEVEL_11, + CMD_DLEVEL_12, + CMD_DLEVEL_13, + CMD_DLEVEL_14, + CMD_DLEVEL_15, + CMD_DLEVEL_16, +#ifdef HELLFIRE + CMD_DLEVEL_17, + CMD_DLEVEL_18, + CMD_DLEVEL_19, + CMD_DLEVEL_20, + CMD_DLEVEL_21, + CMD_DLEVEL_22, + CMD_DLEVEL_23, + CMD_DLEVEL_24, +#endif + CMD_DLEVEL_JUNK, + CMD_DLEVEL_END, + CMD_HEALOTHER, + CMD_STRING, + CMD_SETSTR, + CMD_SETMAG, + CMD_SETDEX, + CMD_SETVIT, + CMD_RETOWN, + CMD_SPELLXYD, + CMD_ITEMEXTRA, + CMD_SYNCPUTITEM, + CMD_KILLGOLEM, + CMD_SYNCQUEST, + CMD_ENDSHIELD, + CMD_AWAKEGOLEM, + CMD_NOVA, + CMD_SETSHIELD, + CMD_REMSHIELD, + FAKE_CMD_SETID, + FAKE_CMD_DROPID, + NUM_CMDS, } _cmd_id; typedef enum _talker_id {