1 /* ScummVM - Graphic Adventure Engine
2  *
3  * ScummVM is the legal property of its developers, whose names
4  * are too numerous to list here. Please refer to the COPYRIGHT
5  * file distributed with this source distribution.
6  *
7  * This program is free software; you can redistribute it and/or
8  * modify it under the terms of the GNU General Public License
9  * as published by the Free Software Foundation; either version 2
10  * of the License, or (at your option) any later version.
11  *
12  * This program is distributed in the hope that it will be useful,
13  * but WITHOUT ANY WARRANTY; without even the implied warranty of
14  * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
15  * GNU General Public License for more details.
16  *
17  * You should have received a copy of the GNU General Public License
18  * along with this program; if not, write to the Free Software
19  * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
20  *
21  */
22 
23 #ifndef NUVIE_SAVE_OBJ_LIST_H
24 #define NUVIE_SAVE_OBJ_LIST_H
25 
26 namespace Ultima {
27 namespace Nuvie {
28 
29 #define OBJLIST_OFFSET_PARTY_NAMES     0xf00
30 #define OBJLIST_OFFSET_PARTY_ROSTER    0xfe0
31 #define OBJLIST_OFFSET_NUM_IN_PARTY    0xff0
32 
33 //U6 specific offsets
34 #define OBJLIST_OFFSET_U6_MOVEMENT_POINTS 0x14f1
35 #define OBJLIST_OFFSET_U6_TALK_FLAGS   0x17f1
36 #define OBJLIST_OFFSET_U6_MOVEMENT_FLAGS 0x19f1
37 #define OBJLIST_OFFSET_U6_QUEST_FLAG   0x1bf1
38 #define OBJLIST_OFFSET_U6_REST_COUNTER 0x1bf2
39 #define OBJLIST_OFFSET_U6_GAMETIME     0x1bf3
40 #define OBJLIST_OFFSET_U6_KARMA        0x1bf9
41 
42 #define OBJLIST_OFFSET_U6_WIND_DIR     0x1bfa
43 #define OBJLIST_OFFSET_U6_TIMERS       0x1c03
44 #define OBJLIST_OFFSET_U6_ECLIPSE      0x1c12
45 #define OBJLIST_OFFSET_U6_ALCOHOL      0x1c17
46 #define OBJLIST_OFFSET_U6_MOONSTONES   0x1c1b
47 #define OBJLIST_OFFSET_U6_GARGISH_LANG 0x1c5f
48 
49 #define OBJLIST_OFFSET_U6_COMBAT_MODE  0x1c69
50 #define OBJLIST_OFFSET_U6_SOLO_MODE    0x1c6a
51 #define OBJLIST_OFFSET_U6_COMMAND_BAR  0x1c6c
52 #define OBJLIST_OFFSET_U6_GENDER       0x1c71
53 
54 //MD specific offsets
55 
56 #define OBJLIST_OFFSET_MD_MOVEMENT_POINTS    0x15f1
57 #define OBJLIST_OFFSET_MD_TALK_FLAGS         0x18f1
58 #define OBJLIST_OFFSET_MD_MOVEMENT_FLAGS     0x1af1
59 #define OBJLIST_OFFSET_MD_BLUE_BERRY_COUNTER 0x1d05
60 #define OBJLIST_OFFSET_MD_COMMAND_BAR        0x1d26
61 #define OBJLIST_OFFSET_MD_GENDER             0x1d27
62 #define OBJLIST_OFFSET_MD_BERRY_TIMERS       0x1d2f
63 
64 //WOU specific offsets (MD and SE)
65 
66 #define OBJLIST_OFFSET_WOU_GAMETIME     0x1cf3
67 
68 #define OBJLIST_PARTY_MODE 0xff
69 
70 //u6 wind direction
71 #define OBJLIST_U6_WIND_DIR_N  0
72 #define OBJLIST_U6_WIND_DIR_NE 1
73 #define OBJLIST_U6_WIND_DIR_E  2
74 #define OBJLIST_U6_WIND_DIR_SE 3
75 #define OBJLIST_U6_WIND_DIR_S  4
76 #define OBJLIST_U6_WIND_DIR_SW 5
77 #define OBJLIST_U6_WIND_DIR_W  6
78 #define OBJLIST_U6_WIND_DIR_NW 7
79 #define OBJLIST_U6_WIND_DIR_C  0xff
80 
81 #define OBJLIST_OFFSET_SE_COMMAND_BAR  0x1d6c
82 
83 } // End of namespace Nuvie
84 } // End of namespace Ultima
85 
86 #endif
87