ScummVM API documentation
items.h
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 modify
8
* it under the terms of the GNU General Public License as published by
9
* the Free Software Foundation, either version 3 of the License, or
10
* (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, see <http://www.gnu.org/licenses/>.
19
*
20
*/
21
22
#ifndef STARTREK_ITEMS_H
23
#define STARTREK_ITEMS_H
24
25
namespace
StarTrek
{
26
27
enum
Items {
28
OBJECT_IPHASERS = 64,
29
OBJECT_IPHASERK,
30
OBJECT_IHAND,
31
OBJECT_IROCK,
32
OBJECT_ISTRICOR,
33
OBJECT_IMTRICOR,
34
OBJECT_IDEADGUY,
35
OBJECT_ICOMM,
36
OBJECT_IPBC,
37
OBJECT_IRLG,
38
OBJECT_IWRENCH,
39
OBJECT_IINSULAT,
40
OBJECT_ISAMPLE,
41
OBJECT_ICURE,
42
OBJECT_IDISHES,
43
OBJECT_IRT,
44
OBJECT_IRTWB,
45
OBJECT_ICOMBBIT,
46
OBJECT_IJNKMETL,
47
OBJECT_IWIRING,
48
OBJECT_IWIRSCRP,
49
OBJECT_IPWF,
50
OBJECT_IPWE,
51
OBJECT_IDEADPH,
52
OBJECT_IBOMB,
53
OBJECT_IMETAL,
54
OBJECT_ISKULL,
55
OBJECT_IMINERAL,
56
OBJECT_IMETEOR,
57
OBJECT_ISHELLS,
58
OBJECT_IDEGRIME,
59
OBJECT_ILENSES,
60
OBJECT_IDISKS,
61
OBJECT_IANTIGRA,
62
OBJECT_IN2GAS,
63
OBJECT_IO2GAS,
64
OBJECT_IH2GAS,
65
OBJECT_IN2O,
66
OBJECT_INH3,
67
OBJECT_IH2O,
68
OBJECT_IWROD,
69
OBJECT_IIROD,
70
OBJECT_IREDGEM1,
71
OBJECT_IREDGEM2,
72
OBJECT_IREDGEM3,
73
OBJECT_IGRNGEM1,
74
OBJECT_IGRNGEM2,
75
OBJECT_IGRNGEM3,
76
OBJECT_IBLUGEM1,
77
OBJECT_IBLUGEM2,
78
OBJECT_IBLUGEM3,
79
OBJECT_ICONECT,
80
OBJECT_IS8ROCKS,
81
OBJECT_IIDCARD,
82
OBJECT_ISNAKE,
83
OBJECT_IFERN,
84
OBJECT_ICRYSTAL,
85
OBJECT_IKNIFE,
86
OBJECT_IDETOXIN,
87
OBJECT_IBERRY,
88
OBJECT_IDOOVER,
89
OBJECT_IALIENDV,
90
OBJECT_ICAPSULE,
91
OBJECT_IMEDKIT,
92
OBJECT_IBEAM,
93
OBJECT_IDRILL,
94
OBJECT_IHYPO,
95
OBJECT_IFUSION,
96
OBJECT_ICABLE1,
97
OBJECT_ICABLE2,
98
OBJECT_ILMD,
99
OBJECT_IDECK,
100
OBJECT_ITECH
101
};
102
103
struct
Item
{
104
bool
have;
105
int16 field2;
106
char
name[10];
107
int16 textIndex;
108
};
109
110
// This is copied to StarTrekEngine::_itemList when the engine initializes.
111
// (TODO: it's possible that only the "have" variable ever changes, in which case the
112
// whole thing doesn't need to be copied.)
113
const
Item
g_itemList[] = {
114
{
true
, 0x40,
"iphasers"
, 0x00 },
115
{
true
, 0x41,
"iphaserk"
, 0x01 },
116
{
false
, 0x42,
"ihand"
, 0x02 },
117
{
false
, 0x43,
"irock"
, 0x03 },
118
{
true
, 0x44,
"istricor"
, 0x04 },
119
{
true
, 0x45,
"imtricor"
, 0x05 },
120
{
false
, 0x46,
"ideadguy"
, 0x06 },
121
{
true
, 0x47,
"icomm"
, 0x07 },
122
{
false
, 0x48,
"ipbc"
, 0x08 },
123
{
false
, 0x49,
"iRLG"
, 0x09 },
124
{
false
, 0x4A,
"iWrench"
, 0x0A },
125
{
false
, 0x4B,
"iInsulat"
, 0x0B },
126
{
false
, 0x4C,
"iSample"
, 0x0C },
127
{
false
, 0x4D,
"iCure"
, 0x0D },
128
{
false
, 0x4E,
"iDishes"
, 0x0E },
129
{
false
, 0x4F,
"iRT"
, 0x0F },
130
{
false
, 0x50,
"iRTWB"
, 0x10 },
131
{
false
, 0x51,
"iCombBit"
, 0x11 },
132
{
false
, 0x52,
"iJnkmetl"
, 0x12 },
133
{
false
, 0x53,
"iWiring"
, 0x13 },
134
{
false
, 0x54,
"iWirscrp"
, 0x14 },
135
{
false
, 0x55,
"iPWF"
, 0x15 },
136
{
false
, 0x56,
"iPWE"
, 0x16 },
137
{
false
, 0x57,
"iDeadPh"
, 0x17 },
138
{
false
, 0x58,
"iBomb"
, 0x18 },
139
{
false
, 0x59,
"iMetal"
, 0x19 },
140
{
false
, 0x5A,
"iSkull"
, 0x1A },
141
{
false
, 0x5B,
"iMineral"
, 0x1B },
142
{
false
, 0x5C,
"iMeteor"
, 0x1C },
143
{
false
, 0x5D,
"iShells"
, 0x1D },
144
{
false
, 0x5E,
"iDeGrime"
, 0x1E },
145
{
false
, 0x5F,
"iLenses"
, 0x1F },
146
{
false
, 0x60,
"iDisks"
, 0x20 },
147
{
false
, 0x61,
"iAntigra"
, 0x21 },
148
{
false
, 0x62,
"iN2gas"
, 0x22 },
149
{
false
, 0x63,
"iO2gas"
, 0x23 },
150
{
false
, 0x64,
"iH2gas"
, 0x24 },
151
{
false
, 0x65,
"iN2O"
, 0x25 },
152
{
false
, 0x66,
"iNH3"
, 0x26 },
153
{
false
, 0x67,
"iH2O"
, 0x27 },
154
{
false
, 0x68,
"iWRod"
, 0x28 },
155
{
false
, 0x69,
"iIRod"
, 0x29 },
156
{
false
, 0x6A,
"iRedGem"
, 0x2A },
157
{
false
, 0x6B,
"iRedGem"
, 0x2B },
158
{
false
, 0x6C,
"iRedGem"
, 0x2C },
159
{
false
, 0x6D,
"iGrnGem"
, 0x2D },
160
{
false
, 0x6E,
"iGrnGem"
, 0x2E },
161
{
false
, 0x6F,
"iGrnGem"
, 0x2F },
162
{
false
, 0x70,
"iBluGem"
, 0x30 },
163
{
false
, 0x71,
"iBluGem"
, 0x31 },
164
{
false
, 0x72,
"iBluGem"
, 0x32 },
165
{
false
, 0x73,
"iConect"
, 0x33 },
166
{
false
, 0x74,
"iS8Rocks"
, 0x34 },
167
{
false
, 0x75,
"iIDCard"
, 0x35 },
168
{
false
, 0x76,
"iSnake"
, 0x36 },
169
{
false
, 0x77,
"iFern"
, 0x37 },
170
{
false
, 0x78,
"iCrystal"
, 0x38 },
171
{
false
, 0x79,
"iKnife"
, 0x39 },
172
{
false
, 0x7A,
"idetoxin"
, 0x3A },
173
{
false
, 0x7B,
"iberry"
, 0x3B },
174
{
false
, 0x7C,
"idoover"
, 0x3C },
175
{
false
, 0x7D,
"ialiendv"
, 0x3D },
176
{
false
, 0x7E,
"icapsule"
, 0x3E },
177
{
true
, 0x7F,
"imedkit"
, 0x3F },
178
{
false
, 0x80,
"iBeam"
, 0x40 },
179
{
false
, 0x81,
"iDrill"
, 0x41 },
180
{
false
, 0x82,
"iHypo"
, 0x42 },
181
{
false
, 0x83,
"iFusion"
, 0x43 },
182
{
false
, 0x84,
"iCable1"
, 0x44 },
183
{
false
, 0x85,
"iCable2"
, 0x45 },
184
{
false
, 0x86,
"iLMD"
, 0x46 },
185
{
false
, 0x87,
"iDeck"
, 0x47 },
186
{
false
, 0x88,
"iTech"
, 0x48 },
187
188
// 64 blank rows?
189
{
false
, 0x00,
""
, 0x00 },
190
{
false
, 0x00,
""
, 0x00 },
191
{
false
, 0x00,
""
, 0x00 },
192
{
false
, 0x00,
""
, 0x00 },
193
{
false
, 0x00,
""
, 0x00 },
194
{
false
, 0x00,
""
, 0x00 },
195
{
false
, 0x00,
""
, 0x00 },
196
{
false
, 0x00,
""
, 0x00 },
197
{
false
, 0x00,
""
, 0x00 },
198
{
false
, 0x00,
""
, 0x00 },
199
{
false
, 0x00,
""
, 0x00 },
200
{
false
, 0x00,
""
, 0x00 },
201
{
false
, 0x00,
""
, 0x00 },
202
{
false
, 0x00,
""
, 0x00 },
203
{
false
, 0x00,
""
, 0x00 },
204
{
false
, 0x00,
""
, 0x00 },
205
{
false
, 0x00,
""
, 0x00 },
206
{
false
, 0x00,
""
, 0x00 },
207
{
false
, 0x00,
""
, 0x00 },
208
{
false
, 0x00,
""
, 0x00 },
209
{
false
, 0x00,
""
, 0x00 },
210
{
false
, 0x00,
""
, 0x00 },
211
{
false
, 0x00,
""
, 0x00 },
212
{
false
, 0x00,
""
, 0x00 },
213
{
false
, 0x00,
""
, 0x00 },
214
{
false
, 0x00,
""
, 0x00 },
215
{
false
, 0x00,
""
, 0x00 },
216
{
false
, 0x00,
""
, 0x00 },
217
{
false
, 0x00,
""
, 0x00 },
218
{
false
, 0x00,
""
, 0x00 },
219
{
false
, 0x00,
""
, 0x00 },
220
{
false
, 0x00,
""
, 0x00 },
221
{
false
, 0x00,
""
, 0x00 },
222
{
false
, 0x00,
""
, 0x00 },
223
{
false
, 0x00,
""
, 0x00 },
224
{
false
, 0x00,
""
, 0x00 },
225
{
false
, 0x00,
""
, 0x00 },
226
{
false
, 0x00,
""
, 0x00 },
227
{
false
, 0x00,
""
, 0x00 },
228
{
false
, 0x00,
""
, 0x00 },
229
{
false
, 0x00,
""
, 0x00 },
230
{
false
, 0x00,
""
, 0x00 },
231
{
false
, 0x00,
""
, 0x00 },
232
{
false
, 0x00,
""
, 0x00 },
233
{
false
, 0x00,
""
, 0x00 },
234
{
false
, 0x00,
""
, 0x00 },
235
{
false
, 0x00,
""
, 0x00 },
236
{
false
, 0x00,
""
, 0x00 },
237
{
false
, 0x00,
""
, 0x00 },
238
{
false
, 0x00,
""
, 0x00 },
239
{
false
, 0x00,
""
, 0x00 },
240
{
false
, 0x00,
""
, 0x00 },
241
{
false
, 0x00,
""
, 0x00 },
242
{
false
, 0x00,
""
, 0x00 },
243
{
false
, 0x00,
""
, 0x00 },
244
{
false
, 0x00,
""
, 0x00 },
245
{
false
, 0x00,
""
, 0x00 },
246
{
false
, 0x00,
""
, 0x00 },
247
{
false
, 0x00,
""
, 0x00 },
248
{
false
, 0x00,
""
, 0x00 },
249
{
false
, 0x00,
""
, 0x00 },
250
{
false
, 0x00,
""
, 0x00 },
251
{
false
, 0x00,
""
, 0x00 },
252
{
false
, 0x00,
""
, 0x00 }
253
};
254
255
const
int
NUM_ITEMS =
ARRAYSIZE
(g_itemList) - 64;
// 0x49
256
257
}
// End of namespace StarTrek
258
259
#endif
ARRAYSIZE
#define ARRAYSIZE(x)
Definition:
util.h:91
StarTrek::Item
Definition:
items.h:103
StarTrek
Definition:
action.h:27
engines
startrek
items.h
Generated on Sat Nov 23 2024 09:09:56 for ScummVM API documentation by
1.8.13