mirror of
https://github.com/libretro/scummvm.git
synced 2024-12-14 05:38:56 +00:00
XEEN: Fix spells list selection for Vertigo guild
This commit is contained in:
parent
500ed10658
commit
c1b094bba8
@ -1037,7 +1037,7 @@ const int DARK_SPELL_RANGES[12][2] = {
|
||||
{ 0, 20 }, { 16, 35 }, { 27, 37 }, { 29, 39 }
|
||||
};
|
||||
|
||||
const int CLOUDS_SPELL_OFFSETS[5][20] = {
|
||||
const int CLOUDS_GUILD_SPELLS[5][20] = {
|
||||
{
|
||||
1, 10, 20, 26, 27, 38, 40, 42, 45, 50,
|
||||
55, 59, 60, 61, 62, 68, 72, 75, 77, 77
|
||||
@ -2002,7 +2002,7 @@ void writeConstants(CCArchive &cc) {
|
||||
file.syncString(GUILD_OPTIONS);
|
||||
file.syncNumbers((const int *)MISC_SPELL_INDEX, 74);
|
||||
file.syncNumbers((const int *)SPELL_COSTS, 77);
|
||||
file.syncNumbers2D((const int *)CLOUDS_SPELL_OFFSETS, 5, 20);
|
||||
file.syncNumbers2D((const int *)CLOUDS_GUILD_SPELLS, 5, 20);
|
||||
file.syncNumbers2D((const int *)DARK_SPELL_OFFSETS, 3, 39);
|
||||
file.syncNumbers2D((const int *)DARK_SPELL_RANGES, 12, 2);
|
||||
file.syncNumbers((const int *)SPELL_GEM_COST, 77);
|
||||
|
@ -284,7 +284,7 @@ const char *SpellsDialog::setSpellText(Character *c, int mode) {
|
||||
if ((mode & 0x7f) == 0) {
|
||||
if (category != SPELLCAT_INVALID) {
|
||||
if (party._mazeId == 49 || party._mazeId == 37) {
|
||||
for (uint spellId = 0; spellId < 76; ++spellId) {
|
||||
for (uint spellId = 0; spellId < TOTAL_SPELLS; ++spellId) {
|
||||
int idx = 0;
|
||||
while (idx < CHAR_MAX_SPELLS && Res.SPELLS_ALLOWED[category][idx] != (int)spellId)
|
||||
++idx;
|
||||
@ -319,7 +319,7 @@ const char *SpellsDialog::setSpellText(Character *c, int mode) {
|
||||
} else {
|
||||
for (int spellId = 0; spellId < 20; ++spellId) {
|
||||
int idx = 0;
|
||||
while (Res.CLOUDS_SPELL_OFFSETS[party._mazeId - 29][spellId] !=
|
||||
while (Res.CLOUDS_GUILD_SPELLS[party._mazeId - 28][spellId] !=
|
||||
(int)Res.SPELLS_ALLOWED[category][idx] && idx < SPELLS_PER_CLASS)
|
||||
++idx;
|
||||
|
||||
|
@ -182,7 +182,7 @@ void Resources::loadData() {
|
||||
file.syncString(GUILD_OPTIONS);
|
||||
file.syncNumbers((int *)MISC_SPELL_INDEX, 74);
|
||||
file.syncNumbers((int *)SPELL_COSTS, 77);
|
||||
file.syncNumbers2D((int *)CLOUDS_SPELL_OFFSETS, 5, 20);
|
||||
file.syncNumbers2D((int *)CLOUDS_GUILD_SPELLS, 5, 20);
|
||||
file.syncNumbers2D((int *)DARK_SPELL_OFFSETS, 3, 39);
|
||||
file.syncNumbers2D((int *)DARK_SPELL_RANGES, 12, 2);
|
||||
file.syncNumbers((int *)SPELL_GEM_COST, 77);
|
||||
|
@ -236,7 +236,7 @@ public:
|
||||
const char *GUILD_OPTIONS;
|
||||
int MISC_SPELL_INDEX[74];
|
||||
int SPELL_COSTS[77];
|
||||
int CLOUDS_SPELL_OFFSETS[5][20];
|
||||
int CLOUDS_GUILD_SPELLS[5][20];
|
||||
int DARK_SPELL_OFFSETS[3][39];
|
||||
int DARK_SPELL_RANGES[12][2];
|
||||
int SPELL_LEVEL_OFFSETS[3][39];
|
||||
|
@ -56,7 +56,7 @@ enum MagicSpell {
|
||||
MS_SuppressDisease = 67, MS_SuppressPoison = 68, MS_Teleport = 69,
|
||||
MS_TimeDistortion = 70, MS_TownPortal = 71, MS_ToxicCloud = 72,
|
||||
MS_TurnUndead = 73, MS_WalkOnWater = 74, MS_WizardEye = 75,
|
||||
NO_SPELL = 76
|
||||
NO_SPELL = 76, TOTAL_SPELLS = 76
|
||||
};
|
||||
|
||||
class Spells {
|
||||
|
Loading…
Reference in New Issue
Block a user