[Scummvm-git-logs] scummvm master -> 89ae351ca538620cf823f358e7eaa157c2283bac
dreammaster
paulfgilbert at gmail.com
Sat Sep 12 04:43:04 UTC 2020
This automated email contains information about 1 new commit which have been
pushed to the 'scummvm' repo located at https://github.com/scummvm/scummvm .
Summary:
89ae351ca5 GLK: COMPREHEND: Additions to game data loading
Commit: 89ae351ca538620cf823f358e7eaa157c2283bac
https://github.com/scummvm/scummvm/commit/89ae351ca538620cf823f358e7eaa157c2283bac
Author: Paul Gilbert (dreammaster at scummvm.org)
Date: 2020-09-11T21:38:02-07:00
Commit Message:
GLK: COMPREHEND: Additions to game data loading
Changed paths:
engines/glk/comprehend/game_data.cpp
engines/glk/comprehend/game_data.h
diff --git a/engines/glk/comprehend/game_data.cpp b/engines/glk/comprehend/game_data.cpp
index 9282eacc13..a834a21438 100644
--- a/engines/glk/comprehend/game_data.cpp
+++ b/engines/glk/comprehend/game_data.cpp
@@ -160,6 +160,8 @@ void GameData::clearGame() {
_currentReplaceWord = 0;
_updateFlags = 0;
_colorTable = 0;
+ _itemCount = 0;
+ _itemsWeight = 0;
_strings.clear();
_strings2.clear();
@@ -612,6 +614,9 @@ void GameData::parse_header(FileBuffer *fb) {
parse_variables(fb);
parse_flags(fb);
+ fb->skip(9);
+ _itemCount = fb->readByte();
+
_rooms.resize(header->room_direction_table[DIRECTION_SOUTH] -
header->room_direction_table[DIRECTION_NORTH] + 1);
diff --git a/engines/glk/comprehend/game_data.h b/engines/glk/comprehend/game_data.h
index de35e3b2a8..44dc87c288 100644
--- a/engines/glk/comprehend/game_data.h
+++ b/engines/glk/comprehend/game_data.h
@@ -30,7 +30,7 @@
namespace Glk {
namespace Comprehend {
-#define MAX_FLAGS 64
+#define MAX_FLAGS 256
#define MAX_VARIABLES 128
#define ARRAY_SIZE(a) (sizeof(a) / sizeof(a[0]))
@@ -118,7 +118,10 @@ enum {
OPCODE_DRAW_ROOM,
OPCODE_DRAW_OBJECT,
OPCODE_WAIT_KEY,
- OPCODE_TEST_FALSE
+ OPCODE_TEST_FALSE,
+ OPCODE_CAN_TAKE,
+ OPCODE_TOO_HEAVY,
+ OPCODE_NOT_MAX_WEIGHT
};
/* Game state update flags */
@@ -161,7 +164,7 @@ enum {
/* Item flags */
enum ItemFlag {
- ITEMF_WEIGHT_MASK = 0x3,
+ ITEMF_WEIGHT_MASK = 0x7,
ITEMF_CAN_TAKE = 1 << 3,
ITEMF_UNKNOWN = 1 << 6,
ITEMF_INVISIBLE = 1 << 7
@@ -364,6 +367,8 @@ public:
Common::Array<Room> _rooms;
uint8 _currentRoom;
uint8 _startRoom;
+ uint8 _itemCount;
+ uint8 _itemsWeight;
Common::Array<Item> _items;
More information about the Scummvm-git-logs
mailing list