aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorFlorian Kagerer2009-09-13 14:44:37 +0000
committerFlorian Kagerer2009-09-13 14:44:37 +0000
commit525c0844566b070d6070b4b441553a0b262a7786 (patch)
tree25bfa2a4262a3b840b4a8af38368027bb2df8a70
parenta0808e58badb13dc045e5eb30178445f9cdff86b (diff)
downloadscummvm-rg350-525c0844566b070d6070b4b441553a0b262a7786.tar.gz
scummvm-rg350-525c0844566b070d6070b4b441553a0b262a7786.tar.bz2
scummvm-rg350-525c0844566b070d6070b4b441553a0b262a7786.zip
LOL/Floppy: fixed size of menu boxes
svn-id: r44061
-rw-r--r--engines/kyra/lol.h4
-rw-r--r--engines/kyra/saveload_lol.cpp4
-rw-r--r--engines/kyra/script_lol.cpp4
-rw-r--r--engines/kyra/sprites_lol.cpp4
-rw-r--r--engines/kyra/staticres.cpp16
5 files changed, 18 insertions, 14 deletions
diff --git a/engines/kyra/lol.h b/engines/kyra/lol.h
index a3fb93b4a8..496bac3370 100644
--- a/engines/kyra/lol.h
+++ b/engines/kyra/lol.h
@@ -147,7 +147,7 @@ struct MonsterInPlay {
uint8 curDistWeapon;
int8 distAttackTick;
uint16 assignedItems;
- uint8 field_2A[4];
+ uint8 equipmentShapes[4];
};
struct ItemInPlay {
@@ -1335,7 +1335,7 @@ private:
uint8 *_pageBuffer1;
uint8 *_pageBuffer2;
-
+
// spells
typedef Common::Functor1Mem<ActiveSpell*, int, LoLEngine> SpellProc;
Common::Array<const SpellProc*> _spellProcs;
diff --git a/engines/kyra/saveload_lol.cpp b/engines/kyra/saveload_lol.cpp
index 30fc055a60..4e15c4495c 100644
--- a/engines/kyra/saveload_lol.cpp
+++ b/engines/kyra/saveload_lol.cpp
@@ -233,7 +233,7 @@ Common::Error LoLEngine::loadGameState(int slot) {
m->distAttackTick = in.readSByte();
m->assignedItems = in.readUint16BE();
m->properties = &_monsterProperties[m->type];
- in.read(m->field_2A, 4);
+ in.read(m->equipmentShapes, 4);
}
for (int ii = 0; ii < 8; ii++) {
@@ -413,7 +413,7 @@ Common::Error LoLEngine::saveGameState(int slot, const char *saveName, const Gra
out->writeByte(m->curDistWeapon);
out->writeSByte(m->distAttackTick);
out->writeUint16BE(m->assignedItems);
- out->write(m->field_2A, 4);
+ out->write(m->equipmentShapes, 4);
}
for (int ii = 0; ii < 8; ii++) {
diff --git a/engines/kyra/script_lol.cpp b/engines/kyra/script_lol.cpp
index 95e7a18c5d..5fb5f18116 100644
--- a/engines/kyra/script_lol.cpp
+++ b/engines/kyra/script_lol.cpp
@@ -852,7 +852,7 @@ int LoLEngine::olol_initMonster(EMCState *script) {
l->destDirection = l->direction;
for (int ii = 0; ii < 4; ii++)
- l->field_2A[ii] = stackPos(7 + ii);
+ l->equipmentShapes[ii] = stackPos(7 + ii);
checkSceneUpdateNeed(l->block);
return i;
@@ -2280,7 +2280,7 @@ int LoLEngine::olol_setMouseCursor(EMCState *script) {
int LoLEngine::olol_characterSays(EMCState *script) {
debugC(3, kDebugLevelScriptFuncs, "LoLEngine::olol_characterSays(%p) (%d, %d, %d)", (const void *)script, stackPos(0), stackPos(1), stackPos(2));
-
+
if (!_flags.isTalkie)
return 0;
diff --git a/engines/kyra/sprites_lol.cpp b/engines/kyra/sprites_lol.cpp
index 591c44daff..23652a766d 100644
--- a/engines/kyra/sprites_lol.cpp
+++ b/engines/kyra/sprites_lol.cpp
@@ -497,7 +497,7 @@ int LoLEngine::checkBlockForWallsAndSufficientSpace(int block, int x, int y, int
if (testWallFlag(block, -1, wallFlag))
return 1;
_monsterCurBlock = 0;
- }
+ }
if (!(testFlag & 2))
return 0;
@@ -667,7 +667,7 @@ void LoLEngine::drawMonster(uint16 id) {
uint8 *ovl2 = drawItemOrMonster(shp, ovl1, m->x + _monsterShiftOffs[m->shiftStep << 1], m->y + _monsterShiftOffs[(m->shiftStep << 1) + 1], 0, 0, flg | 1, -1, flip);
for (int i = 0; i < 4; i++) {
- int v = m->field_2A[i] - 1;
+ int v = m->equipmentShapes[i] - 1;
if (v == -1)
break;
diff --git a/engines/kyra/staticres.cpp b/engines/kyra/staticres.cpp
index 33b9315aa7..2d311324f8 100644
--- a/engines/kyra/staticres.cpp
+++ b/engines/kyra/staticres.cpp
@@ -2079,16 +2079,20 @@ void GUI_LoL::initStaticData() {
for (uint i = 0; i < ARRAYSIZE(_menuButtons); ++i)
GUI_V2_BUTTON(_menuButtons[i], i, 0, 0, 0, 0, 0, 0x4487, 0, 0, 0, 0, 0, 0xfe, 0x01, 0xfe, 0x01, 0xfe, 0x01, 0);
- GUI_LOL_MENU(_mainMenu, 9, 0x4000, 0, _vm->gameFlags().isTalkie ? 7 : 6, -1, -1, -1, -1);
+ if (_vm->gameFlags().isTalkie)
+ GUI_LOL_MENU(_mainMenu, 9, 0x4000, 0, 7, -1, -1, -1, -1);
+ else
+ GUI_LOL_MENU(_mainMenu, 17, 0x4000, 0, 6, -1, -1, -1, -1);
+
GUI_LOL_MENU_ITEM(_mainMenu.item[0], 0x4001, 16, 23, 176, 15, 0, 0);
GUI_LOL_MENU_ITEM(_mainMenu.item[1], 0x4002, 16, 40, 176, 15, 0, 0);
GUI_LOL_MENU_ITEM(_mainMenu.item[2], 0x4003, 16, 57, 176, 15, 0, 0);
GUI_LOL_MENU_ITEM(_mainMenu.item[3], 0x4004, 16, 74, 176, 15, 0, 0);
-
+
if (_vm->gameFlags().isTalkie) {
GUI_LOL_MENU_ITEM(_mainMenu.item[4], 0x42D9, 16, 91, 176, 15, 0, 0);
GUI_LOL_MENU_ITEM(_mainMenu.item[5], 0x4006, 16, 108, 176, 15, 0, 0);
- GUI_LOL_MENU_ITEM(_mainMenu.item[6], 0x4005, 88, 127, 104, 15, 0, 110);
+ GUI_LOL_MENU_ITEM(_mainMenu.item[6], 0x4005, 88, 127, 104, 15, 0, 110);
} else {
GUI_LOL_MENU_ITEM(_mainMenu.item[4], 0x4006, 16, 91, 176, 15, 0, 0);
GUI_LOL_MENU_ITEM(_mainMenu.item[5], 0x4005, 88, 110, 104, 15, 0, 110);
@@ -3214,7 +3218,7 @@ const ScreenDim Screen_LoL::_screenDimTable256C[] = {
{ 0x0B, 0x8C, 0x10, 0x2B, 0x3D, 0x01, 0x00, 0x00 }, // Main menu box (4 entries)
{ 0x04, 0x59, 0x20, 0x3C, 0x00, 0x00, 0x00, 0x00 },
{ 0x05, 0x6E, 0x1E, 0x0C, 0xFE, 0x01, 0x00, 0x00 },
- { 0x07, 0x19, 0x1A, 0x97, 0x00, 0x00, 0x00, 0x00 },
+ { 0x07, 0x19, 0x1A, 0x97, 0x00, 0x00, 0x00, 0x00 }, // Ingame main menu box CD version
{ 0x03, 0x1E, 0x22, 0x8C, 0x00, 0x00, 0x00, 0x00 },
{ 0x02, 0x48, 0x24, 0x34, 0x00, 0x00, 0x00, 0x00 },
{ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00 },
@@ -3230,7 +3234,7 @@ const ScreenDim Screen_LoL::_screenDimTable256C[] = {
{ 0x01, 0x20, 0x26, 0x80, 0xDC, 0xFD, 0x00, 0x00 }, // Credits
{ 0x09, 0x29, 0x08, 0x2C, 0x00, 0x00, 0x00, 0x00 },
{ 0x19, 0x29, 0x08, 0x2C, 0x00, 0x00, 0x00, 0x00 },
- { 0x01, 0x02, 0x26, 0x14, 0x00, 0x0F, 0x0E, 0x00 }
+ { 0x01, 0x02, 0x26, 0x14, 0x00, 0x0F, 0x0E, 0x00 },
};
const ScreenDim Screen_LoL::_screenDimTable16C[] = {
@@ -3259,7 +3263,7 @@ const ScreenDim Screen_LoL::_screenDimTable16C[] = {
{ 0x01, 0x20, 0x26, 0x80, 0xDC, 0xFD, 0x00, 0x00 }, // Credits (TODO: Check this!)
{ 0x09, 0x29, 0x08, 0x2C, 0x00, 0x00, 0x00, 0x00 },
{ 0x19, 0x29, 0x08, 0x2C, 0x00, 0x00, 0x00, 0x00 },
- { 0x01, 0x02, 0x26, 0x14, 0x00, 0x0F, 0x0E, 0x00 }
+ { 0x01, 0x02, 0x26, 0x14, 0x00, 0x0F, 0x0E, 0x00 },
};
const int Screen_LoL::_screenDimTableCount = ARRAYSIZE(Screen_LoL::_screenDimTable256C);