From 2751ecedd2fbaf3320d3313f292da8f0bc2a804b Mon Sep 17 00:00:00 2001 From: Anders Jenbo Date: Sun, 12 Jan 2020 09:04:30 +0100 Subject: [PATCH] [hellfire] Add missing enums --- Source/control.cpp | 4 +-- Source/items.cpp | 2 +- Source/monster.cpp | 4 +-- Source/objects.cpp | 4 +-- Source/quests.cpp | 17 +++++----- enums.h | 83 +++++++++++++++++++++++++++++++++++++++++++++- 6 files changed, 97 insertions(+), 17 deletions(-) diff --git a/Source/control.cpp b/Source/control.cpp index bbeca292f..fe0d76856 100644 --- a/Source/control.cpp +++ b/Source/control.cpp @@ -1333,11 +1333,11 @@ void InitControlPan() #endif #ifdef HELLFIRE } else if (plr[myplr]._pClass == PC_MONK) { - SpellPages[0][0] = 46; // TODO: replace with hellfire enum when it gets added + SpellPages[0][0] = SPL_SEARCH; } else if (plr[myplr]._pClass == PC_BARD) { SpellPages[0][0] = SPL_IDENTIFY; } else if (plr[myplr]._pClass == PC_BARBARIAN) { - SpellPages[0][0] = 22; // TODO: replace with hellfire enum when it gets added + SpellPages[0][0] = SPL_BLODBOIL; #endif } pQLogCel = LoadFileInMem("Data\\Quest.CEL", NULL); diff --git a/Source/items.cpp b/Source/items.cpp index 7f9dd55d6..5e274c2a0 100644 --- a/Source/items.cpp +++ b/Source/items.cpp @@ -3671,7 +3671,7 @@ void PrintItemMisc(ItemStruct *x) strcpy(tempstr, "Right click to use"); AddPanelString(tempstr, TRUE); } - if (x->_iMiscId > 46 && x->_iMiscId < 52) { //TODO: apply enums + if (x->_iMiscId > IMISC_RUNEFIRST && x->_iMiscId < IMISC_RUNELAST) { PrintItemOil(x->_iMiscId); strcpy(tempstr, "Right click to use"); AddPanelString(tempstr, TRUE); diff --git a/Source/monster.cpp b/Source/monster.cpp index e9a072277..0e491201c 100644 --- a/Source/monster.cpp +++ b/Source/monster.cpp @@ -781,7 +781,7 @@ void PlaceUniqueMonst(int uniqindex, int miniontype, int unpackfilesize) } #ifdef HELLFIRE - if (uniqindex == 12) { // TODO: add indexes for hellfire unique monsters + if (uniqindex == UMT_NAKRUL) { if (UberRow == 0 || UberCol == 0) { UberDiabloMonsterIndex = -1; return; @@ -821,7 +821,7 @@ void PlaceUniqueMonst(int uniqindex, int miniontype, int unpackfilesize) Monst->mMagicRes = Uniq->mMagicRes; Monst->mtalkmsg = Uniq->mtalkmsg; #ifdef HELLFIRE - if (uniqindex == 10) // TODO: add indexes for hellfire unique monsters + if (uniqindex == UMT_HORKDMN) Monst->mlid = 0; else #endif diff --git a/Source/objects.cpp b/Source/objects.cpp index c347761cb..37444a3b0 100644 --- a/Source/objects.cpp +++ b/Source/objects.cpp @@ -2726,9 +2726,9 @@ void OperateSChambBk(int pnum, int i) textdef = QUEST_MBONER; #ifdef HELLFIRE } else if (plr[myplr]._pClass == PC_MONK) { - textdef = 0x103; // TODO: create and apply hellfire quest enum + textdef = QUEST_HBONER; } else if (plr[myplr]._pClass == PC_BARD) { - textdef = 0x107; // TODO: create and apply hellfire quest enum + textdef = QUEST_BBONER; } else if (plr[myplr]._pClass == PC_BARBARIAN) { textdef = QUEST_BONER; #endif diff --git a/Source/quests.cpp b/Source/quests.cpp index 9de17b7e7..7e15e0ef8 100644 --- a/Source/quests.cpp +++ b/Source/quests.cpp @@ -34,15 +34,14 @@ QuestData questlist[MAXQUESTS] = { { 6, -1, DTYPE_CATACOMBS, QTYPE_BONE, 100, 2, 0, QUEST_BONER, "The Chamber of Bone" }, { 15, 15, DTYPE_CATHEDRAL, QTYPE_VB, 100, 5, 1, QUEST_VILE1, "Archbishop Lazarus" }, #ifdef HELLFIRE - // TODO: apply msg enum in second to last column: - { 17, 17, DTYPE_NONE, QTYPE_GRAVE, 100, 0, 1, 0x111, "Grave Matters" }, - { 9, 9, DTYPE_NONE, QTYPE_FARMER, 100, 0, 1, 0x115, "Farmer's Orchard" }, - { 17, -1, DTYPE_NONE, QTYPE_GIRL, 100, 0, 0, 0x11B, "Little Girl" }, - { 19, -1, DTYPE_NONE, QTYPE_TRADER, 100, 0, 0, 0x132, "Wandering Trader" }, - { 17, 17, DTYPE_NONE, QTYPE_DEFILER,100, 0, 1, 0x11E, "The Defiler" }, - { 21, 21, DTYPE_NONE, QTYPE_NAKRUL, 100, 0, 1, 0x123, "Na-Krul" }, - { 21, -1, DTYPE_NONE, QTYPE_CORNSTN,100, 0, 0, 0x128, "Cornerstone of the World" }, - { 9, 9, DTYPE_NONE, QTYPE_JERSEY, 100, 0, 1, 0x12C, "The Jersey's Jersey" }, + { 17, 17, DTYPE_NONE, QTYPE_GRAVE, 100, 0, 1, QUEST_GRAVE7, "Grave Matters" }, + { 9, 9, DTYPE_NONE, QTYPE_FARMER, 100, 0, 1, QUEST_FARMER1, "Farmer's Orchard" }, + { 17, -1, DTYPE_NONE, QTYPE_GIRL, 100, 0, 0, QUEST_GIRL2, "Little Girl" }, + { 19, -1, DTYPE_NONE, QTYPE_TRADER, 100, 0, 0, QUEST_TRADER, "Wandering Trader" }, + { 17, 17, DTYPE_NONE, QTYPE_DEFILER,100, 0, 1, QUEST_DEFILER1, "The Defiler" }, + { 21, 21, DTYPE_NONE, QTYPE_NAKRUL, 100, 0, 1, QUEST_NAKRUL1, "Na-Krul" }, + { 21, -1, DTYPE_NONE, QTYPE_CORNSTN,100, 0, 0, QUEST_CORNSTN, "Cornerstone of the World" }, + { 9, 9, DTYPE_NONE, QTYPE_JERSEY, 100, 0, 1, QUEST_JERSEY4, "The Jersey's Jersey" }, #endif // clang-format on }; diff --git a/enums.h b/enums.h index 7ca5b47e4..ec249b192 100644 --- a/enums.h +++ b/enums.h @@ -2115,7 +2115,88 @@ typedef enum _speech_id { QUEST_BOOK31 = 0xFF, QUEST_BOOK32 = 0x100, QUEST_BOOK33 = 0x101, - QUEST_INTRO = 0x102 + QUEST_INTRO = 0x102, +#ifdef HELLFIRE + QUEST_HBONER = 0x103, + QUEST_HBLOODY = 0x104, + QUEST_HBLINDING = 0x105, + QUEST_HBLOODWAR = 0x106, + QUEST_BBONER = 0x107, + QUEST_BBLOODY = 0x108, + QUEST_BBLINDING = 0x109, + QUEST_BBLOODWAR = 0x10A, + QUEST_GRAVE1 = 0x10B, + QUEST_GRAVE2 = 0x10C, + QUEST_GRAVE3 = 0x10D, + QUEST_GRAVE4 = 0x10E, + QUEST_GRAVE5 = 0x10F, + QUEST_GRAVE6 = 0x110, + QUEST_GRAVE7 = 0x111, + QUEST_GRAVE8 = 0x112, + QUEST_GRAVE9 = 0x113, + QUEST_GRAVE10 = 0x114, + QUEST_FARMER1 = 0x115, + QUEST_FARMER2 = 0x116, + QUEST_FARMER3 = 0x117, + QUEST_FARMER4 = 0x118, + QUEST_FARMER5 = 0x119, + QUEST_GIRL1 = 0x11A, + QUEST_GIRL2 = 0x11B, + QUEST_GIRL3 = 0x11C, + QUEST_GIRL4 = 0x11D, + QUEST_DEFILER1 = 0x11E, + QUEST_DEFILER2 = 0x11F, + QUEST_DEFILER3 = 0x120, + QUEST_DEFILER4 = 0x121, + QUEST_DEFILER5 = 0x122, + QUEST_NAKRUL1 = 0x123, + QUEST_NAKRUL2 = 0x124, + QUEST_NAKRUL3 = 0x125, + QUEST_NAKRUL4 = 0x126, + QUEST_NAKRUL5 = 0x127, + QUEST_CORNSTN = 0x128, + QUEST_JERSEY1 = 0x129, + QUEST_JERSEY2 = 0x12A, + QUEST_JERSEY3 = 0x12B, + QUEST_JERSEY4 = 0x12C, + QUEST_JERSEY5 = 0x12D, + QUEST_JERSEY6 = 0x12E, + QUEST_JERSEY7 = 0x12F, + QUEST_JERSEY8 = 0x130, + QUEST_JERSEY9 = 0x131, + QUEST_TRADER = 0x132, + QUEST_FARMER6 = 0x133, + QUEST_FARMER7 = 0x134, + QUEST_FARMER8 = 0x135, + QUEST_FARMER9 = 0x136, + QUEST_FARMER10 = 0x137, + QUEST_JERSEY10 = 0x138, + QUEST_JERSEY11 = 0x139, + QUEST_JERSEY12 = 0x13A, + QUEST_JERSEY13 = 0x13B, + QUEST_SKLJRN = 0x13C, + QUEST_BOOK4 = 0x13D, + QUEST_BOOK5 = 0x13E, + QUEST_BOOK6 = 0x13F, + QUEST_BOOK7 = 0x140, + QUEST_BOOK8 = 0x141, + QUEST_BOOK9 = 0x142, + QUEST_BOOKA = 0x143, + QUEST_BOOKB = 0x144, + QUEST_BOOKC = 0x145, + QUEST_OBOOKA = 0x146, + QUEST_OBOOKB = 0x147, + QUEST_OBOOKC = 0x148, + QUEST_MBOOKA = 0x149, + QUEST_MBOOKB = 0x14A, + QUEST_MBOOKC = 0x14B, + QUEST_RBOOKA = 0x14C, + QUEST_RBOOKB = 0x14D, + QUEST_RBOOKC = 0x14E, + QUEST_BBOOKA = 0x14F, + QUEST_BBOOKB = 0x150, + QUEST_BBOOKC = 0x151, +#endif } _speech_id; typedef enum object_graphic_id {