27 const U6ObjectType U6ObjectTypes[] = {
29 { &U6UseCode::use_egg, OBJ_U6_EGG, 0, 0, USE_EVENT_USE, OBJTYPE_CONTAINER },
31 { &U6UseCode::use_door, OBJ_U6_OAKEN_DOOR, 255, 0, USE_EVENT_USE, OBJTYPE_NONE },
32 { &U6UseCode::use_door, OBJ_U6_WINDOWED_DOOR, 255, 0, USE_EVENT_USE, OBJTYPE_NONE },
33 { &U6UseCode::use_door, OBJ_U6_CEDAR_DOOR, 255, 0, USE_EVENT_USE, OBJTYPE_NONE },
34 { &U6UseCode::use_door, OBJ_U6_STEEL_DOOR, 255, 0, USE_EVENT_USE, OBJTYPE_NONE },
35 { &U6UseCode::use_key, OBJ_U6_KEY, 255, 0, USE_EVENT_USE, OBJTYPE_NONE },
36 { &U6UseCode::use_key, OBJ_U6_LOCK_PICK, 255, 0, USE_EVENT_USE | USE_EVENT_SEARCH | USE_EVENT_GET, OBJTYPE_NONE },
38 { &U6UseCode::magic_ring, OBJ_U6_PROTECTION_RING, 0, 0, USE_EVENT_READY, OBJTYPE_NONE },
39 { &U6UseCode::magic_ring, OBJ_U6_REGENERATION_RING, 0, 0, USE_EVENT_READY, OBJTYPE_NONE },
40 { &U6UseCode::magic_ring, OBJ_U6_INVISIBILITY_RING, 0, 0, USE_EVENT_READY, OBJTYPE_NONE },
42 { &U6UseCode::use_staff, OBJ_U6_STAFF, 255, 0, USE_EVENT_USE, OBJTYPE_NONE },
44 { &U6UseCode::storm_cloak, OBJ_U6_STORM_CLOAK, 0, 0, USE_EVENT_READY, OBJTYPE_NONE },
46 { &U6UseCode::look_sign, OBJ_U6_SIGN, 255, 0, USE_EVENT_LOOK, OBJTYPE_BOOK },
47 { &U6UseCode::look_sign, OBJ_U6_BOOK, 255, 0, USE_EVENT_LOOK, OBJTYPE_BOOK },
48 { &U6UseCode::look_sign, OBJ_U6_SCROLL, 255, 0, USE_EVENT_LOOK, OBJTYPE_BOOK },
49 { &U6UseCode::look_sign, OBJ_U6_PICTURE, 255, 0, USE_EVENT_LOOK, OBJTYPE_BOOK },
50 { &U6UseCode::look_sign, OBJ_U6_SIGN_ARROW, 255, 0, USE_EVENT_LOOK, OBJTYPE_BOOK },
51 { &U6UseCode::look_sign, OBJ_U6_TOMBSTONE, 255, 0, USE_EVENT_LOOK, OBJTYPE_BOOK },
52 { &U6UseCode::look_sign, OBJ_U6_CROSS, 255, 0, USE_EVENT_LOOK, OBJTYPE_BOOK },
53 { &U6UseCode::look_sign, OBJ_U6_CODEX, 0, 0, USE_EVENT_LOOK, OBJTYPE_BOOK },
54 { &U6UseCode::look_sign, OBJ_U6_BOOK_OF_CIRCLES, 255, 0, USE_EVENT_LOOK, OBJTYPE_BOOK },
56 { &U6UseCode::use_container, OBJ_U6_CRATE, 0, 0, USE_EVENT_SEARCH, OBJTYPE_CONTAINER },
57 { &U6UseCode::use_container, OBJ_U6_CRATE, 255, 0, USE_EVENT_USE, OBJTYPE_CONTAINER },
58 { &U6UseCode::use_container, OBJ_U6_BARREL, 0, 0, USE_EVENT_SEARCH, OBJTYPE_CONTAINER },
59 { &U6UseCode::use_container, OBJ_U6_BARREL, 255, 0, USE_EVENT_USE, OBJTYPE_CONTAINER },
60 { &U6UseCode::use_container, OBJ_U6_CHEST, 0, 0, USE_EVENT_SEARCH | USE_EVENT_USE, OBJTYPE_CONTAINER },
61 { &U6UseCode::use_container, OBJ_U6_CHEST, 255, 0, USE_EVENT_USE | USE_EVENT_GET, OBJTYPE_CONTAINER },
62 { &U6UseCode::use_secret_door, OBJ_U6_SECRET_DOOR, 255, 0, USE_EVENT_USE | USE_EVENT_SEARCH, OBJTYPE_NONE },
63 { &U6UseCode::use_container, OBJ_U6_BAG, 255, 0, USE_EVENT_SEARCH | USE_EVENT_USE, OBJTYPE_CONTAINER },
64 { &U6UseCode::use_container, OBJ_U6_BACKPACK, 255, 0, USE_EVENT_SEARCH | USE_EVENT_USE, OBJTYPE_CONTAINER },
65 { &U6UseCode::use_container, OBJ_U6_BASKET, 255, 0, USE_EVENT_SEARCH | USE_EVENT_USE, OBJTYPE_CONTAINER },
66 { &U6UseCode::use_container, OBJ_U6_DRAWER, 255, 0, USE_EVENT_SEARCH | USE_EVENT_USE, OBJTYPE_CONTAINER },
67 { &U6UseCode::use_container, OBJ_U6_DESK, 255, 0, USE_EVENT_SEARCH | USE_EVENT_USE, OBJTYPE_CONTAINER },
68 { &U6UseCode::use_container, OBJ_U6_STONE_LION, 1, 0, USE_EVENT_SEARCH | USE_EVENT_USE, OBJTYPE_NONE },
69 { &U6UseCode::use_container, OBJ_U6_MOUSE, 255, 0, USE_EVENT_SEARCH | USE_EVENT_USE, OBJTYPE_CONTAINER },
70 { &U6UseCode::use_container, OBJ_U6_GRAVE, 0, 0, USE_EVENT_SEARCH | USE_EVENT_USE, OBJTYPE_NONE },
71 { &U6UseCode::use_container, OBJ_U6_DEAD_ANIMAL, 255, 0, USE_EVENT_SEARCH | USE_EVENT_USE, OBJTYPE_CONTAINER },
72 { &U6UseCode::use_container, OBJ_U6_DEAD_BODY, 255, 0, USE_EVENT_SEARCH | USE_EVENT_USE, OBJTYPE_CONTAINER },
73 { &U6UseCode::use_container, OBJ_U6_DRAKE, 255, 0, USE_EVENT_SEARCH | USE_EVENT_USE, OBJTYPE_CONTAINER },
74 { &U6UseCode::use_container, OBJ_U6_DEAD_CYCLOPS, 255, 0, USE_EVENT_SEARCH | USE_EVENT_USE, OBJTYPE_CONTAINER },
75 { &U6UseCode::use_container, OBJ_U6_DEAD_GARGOYLE, 255, 0, USE_EVENT_SEARCH | USE_EVENT_USE, OBJTYPE_CONTAINER },
76 { &U6UseCode::use_container, OBJ_U6_REAPER, 255, 0, USE_EVENT_SEARCH | USE_EVENT_USE, OBJTYPE_CONTAINER },
77 { &U6UseCode::use_container, OBJ_U6_REMAINS, 255, 0, USE_EVENT_SEARCH | USE_EVENT_USE, OBJTYPE_CONTAINER },
78 { &U6UseCode::use_container, OBJ_U6_DEER, 255, 0, USE_EVENT_SEARCH | USE_EVENT_USE, OBJTYPE_CONTAINER },
79 { &U6UseCode::use_container, OBJ_U6_MONGBAT, 255, 0, USE_EVENT_SEARCH | USE_EVENT_USE, OBJTYPE_CONTAINER },
81 { &U6UseCode::use_passthrough, OBJ_U6_V_PASSTHROUGH, 255, 0, USE_EVENT_USE, OBJTYPE_NONE },
82 { &U6UseCode::use_passthrough, OBJ_U6_H_PASSTHROUGH, 255, 0, USE_EVENT_USE, OBJTYPE_NONE },
84 { &U6UseCode::use_switch, OBJ_U6_LEVER, 255, 0, USE_EVENT_USE, OBJTYPE_NONE },
85 { &U6UseCode::use_switch, OBJ_U6_SWITCH, 255, 0, USE_EVENT_USE, OBJTYPE_NONE },
87 { &U6UseCode::use_churn, OBJ_U6_CHURN, 255, 0, USE_EVENT_USE, OBJTYPE_NONE },
89 { &U6UseCode::use_fishing_pole, OBJ_U6_FISHING_POLE, 255, 0, USE_EVENT_USE, OBJTYPE_NONE },
92 { &U6UseCode::use_crank, OBJ_U6_CRANK, 255, 0, USE_EVENT_USE, OBJTYPE_NONE },
94 { &U6UseCode::use_container, OBJ_U6_BED, 255, 0, USE_EVENT_SEARCH, OBJTYPE_CONTAINER },
96 { &U6UseCode::use_firedevice, OBJ_U6_FIREPLACE, 255, 0, USE_EVENT_USE, OBJTYPE_NONE },
97 { &U6UseCode::use_firedevice, OBJ_U6_CANDLE, 255, 0, USE_EVENT_USE, OBJTYPE_NONE },
98 { &U6UseCode::use_firedevice, OBJ_U6_CANDELABRA, 255, 0, USE_EVENT_USE, OBJTYPE_NONE },
99 { &U6UseCode::use_firedevice, OBJ_U6_BRAZIER, 0, 0, USE_EVENT_USE, OBJTYPE_NONE },
100 { &U6UseCode::use_firedevice, OBJ_U6_BRAZIER, 1, 0, USE_EVENT_USE, OBJTYPE_NONE },
101 { &U6UseCode::holy_flame, OBJ_U6_BRAZIER, 2, 0, USE_EVENT_LOOK, OBJTYPE_NONE },
102 { &U6UseCode::torch, OBJ_U6_TORCH, 255, 0, USE_EVENT_USE | USE_EVENT_READY | USE_EVENT_GET | USE_EVENT_DROP, OBJTYPE_NONE },
103 { &U6UseCode::use_spellbook, OBJ_U6_SPELLBOOK, 255, 0, USE_EVENT_USE | USE_EVENT_LOOK, OBJTYPE_NONE },
105 { &U6UseCode::use_moonstone, OBJ_U6_MOONSTONE, 255, 0, USE_EVENT_USE | USE_EVENT_GET, OBJTYPE_NONE },
106 { &U6UseCode::use_orb, OBJ_U6_ORB_OF_THE_MOONS, 255, 0, USE_EVENT_USE, OBJTYPE_NONE },
107 { &U6UseCode::enter_moongate, OBJ_U6_MOONGATE, 1, 0, USE_EVENT_PASS, OBJTYPE_NONE },
108 { &U6UseCode::enter_moongate, OBJ_U6_RED_GATE, 1, 0, USE_EVENT_PASS, OBJTYPE_NONE },
109 { &U6UseCode::use_ladder, OBJ_U6_LADDER, 255, 0, USE_EVENT_USE, OBJTYPE_NONE },
110 { &U6UseCode::enter_dungeon, OBJ_U6_CAVE, 255, 0, USE_EVENT_PASS, OBJTYPE_NONE },
111 { &U6UseCode::enter_dungeon, OBJ_U6_HOLE, 255, 0, USE_EVENT_USE | USE_EVENT_PASS, OBJTYPE_NONE },
113 { &U6UseCode::look_clock, OBJ_U6_CLOCK, 255, 0, USE_EVENT_LOOK, OBJTYPE_NONE },
114 { &U6UseCode::look_clock, OBJ_U6_SUNDIAL, 255, 0, USE_EVENT_LOOK, OBJTYPE_NONE },
115 { &U6UseCode::look_mirror, OBJ_U6_MIRROR, 255, 0, USE_EVENT_LOOK, OBJTYPE_NONE },
116 { &U6UseCode::use_well, OBJ_U6_WELL, 255, 0, USE_EVENT_USE, OBJTYPE_NONE },
117 { &U6UseCode::use_powder_keg, OBJ_U6_POWDER_KEG, 255, 0, USE_EVENT_USE | USE_EVENT_MESSAGE, OBJTYPE_NONE },
118 { &U6UseCode::use_peer_gem, OBJ_U6_GEM, 0, 0, USE_EVENT_USE | USE_EVENT_MESSAGE, OBJTYPE_NONE },
120 { &U6UseCode::use_beehive, OBJ_U6_BEEHIVE, 255, 0, USE_EVENT_USE, OBJTYPE_NONE },
122 { &U6UseCode::use_potion, OBJ_U6_POTION, 255, 0, USE_EVENT_USE | USE_EVENT_MESSAGE, OBJTYPE_NONE },
123 { &U6UseCode::use_food, OBJ_U6_BUTTER, 0, 0, USE_EVENT_USE, OBJTYPE_FOOD },
124 { &U6UseCode::use_food, OBJ_U6_WINE, 0, 0, USE_EVENT_USE, OBJTYPE_FOOD },
125 { &U6UseCode::use_food, OBJ_U6_MEAD, 0, 0, USE_EVENT_USE, OBJTYPE_FOOD },
126 { &U6UseCode::use_food, OBJ_U6_ALE, 0, 0, USE_EVENT_USE, OBJTYPE_FOOD },
127 { &U6UseCode::use_food, OBJ_U6_BREAD, 0, 0, USE_EVENT_USE, OBJTYPE_FOOD },
128 { &U6UseCode::use_food, OBJ_U6_MEAT_PORTION, 0, 0, USE_EVENT_USE, OBJTYPE_FOOD },
129 { &U6UseCode::use_food, OBJ_U6_ROLLS, 0, 0, USE_EVENT_USE, OBJTYPE_FOOD },
130 { &U6UseCode::use_food, OBJ_U6_CAKE, 0, 0, USE_EVENT_USE, OBJTYPE_FOOD },
131 { &U6UseCode::use_food, OBJ_U6_CHEESE, 0, 0, USE_EVENT_USE, OBJTYPE_FOOD },
132 { &U6UseCode::use_food, OBJ_U6_RIBS, 0, 0, USE_EVENT_USE, OBJTYPE_FOOD },
133 { &U6UseCode::use_food, OBJ_U6_MEAT, 0, 0, USE_EVENT_USE, OBJTYPE_FOOD },
134 { &U6UseCode::use_food, OBJ_U6_GRAPES, 0, 0, USE_EVENT_USE, OBJTYPE_FOOD },
135 { &U6UseCode::use_food, OBJ_U6_HAM, 0, 0, USE_EVENT_USE, OBJTYPE_FOOD },
136 { &U6UseCode::use_food, OBJ_U6_GARLIC, 0, 0, USE_EVENT_USE, OBJTYPE_FOOD },
137 { &U6UseCode::use_food, OBJ_U6_HORSE_CHOPS, 0, 0, USE_EVENT_USE, OBJTYPE_FOOD },
138 { &U6UseCode::use_food, OBJ_U6_JAR_OF_HONEY, 0, 0, USE_EVENT_USE, OBJTYPE_FOOD },
139 { &U6UseCode::use_food, OBJ_U6_DRAGON_EGG, 0, 0, USE_EVENT_USE, OBJTYPE_FOOD },
140 { &U6UseCode::use_food, OBJ_U6_FISH, 0, 0, USE_EVENT_USE, OBJTYPE_FOOD },
142 { &U6UseCode::use_fan, OBJ_U6_FAN, 0, 0, USE_EVENT_USE, OBJTYPE_NONE },
143 { &U6UseCode::use_sextant, OBJ_U6_SEXTANT, 0, 0, USE_EVENT_USE, OBJTYPE_NONE },
145 { &U6UseCode::use_cow, OBJ_U6_COW, 255, 0, USE_EVENT_USE, OBJTYPE_NONE },
146 { &U6UseCode::use_horse, OBJ_U6_HORSE, 255, 0, USE_EVENT_USE, OBJTYPE_NONE },
147 { &U6UseCode::use_horse, OBJ_U6_HORSE_WITH_RIDER, 255, 0, USE_EVENT_USE, OBJTYPE_NONE },
149 { &U6UseCode::use_boat, OBJ_U6_SHIP, 255, 0, USE_EVENT_USE | USE_EVENT_SEARCH | USE_EVENT_LOOK, OBJTYPE_NONE },
150 { &U6UseCode::use_boat, OBJ_U6_SKIFF, 255, 0, USE_EVENT_USE | USE_EVENT_GET | USE_EVENT_LOOK, OBJTYPE_NONE },
151 { &U6UseCode::use_boat, OBJ_U6_RAFT, 0, 0, USE_EVENT_USE, OBJTYPE_NONE },
153 { &U6UseCode::use_balloon_plans, OBJ_U6_BALLOON_PLANS, 0, 0, USE_EVENT_USE | USE_EVENT_LOOK, OBJTYPE_NONE },
154 { &U6UseCode::use_balloon, OBJ_U6_BALLOON, 0, 0, USE_EVENT_USE, OBJTYPE_NONE },
155 { &U6UseCode::use_balloon, OBJ_U6_INFLATED_BALLOON, 255, 0, USE_EVENT_USE, OBJTYPE_NONE },
157 { &U6UseCode::pass_quest_barrier, OBJ_U6_QUEST_GATE, 0, 0, USE_EVENT_PASS, OBJTYPE_NONE },
159 { &U6UseCode::use_rune, OBJ_U6_RUNE_HONESTY, 0, 0, USE_EVENT_USE | USE_EVENT_MESSAGE, OBJTYPE_NONE },
160 { &U6UseCode::use_rune, OBJ_U6_RUNE_COMPASSION, 0, 0, USE_EVENT_USE | USE_EVENT_MESSAGE, OBJTYPE_NONE },
161 { &U6UseCode::use_rune, OBJ_U6_RUNE_VALOR, 0, 0, USE_EVENT_USE | USE_EVENT_MESSAGE, OBJTYPE_NONE },
162 { &U6UseCode::use_rune, OBJ_U6_RUNE_JUSTICE, 0, 0, USE_EVENT_USE | USE_EVENT_MESSAGE, OBJTYPE_NONE },
163 { &U6UseCode::use_rune, OBJ_U6_RUNE_SACRIFICE, 0, 0, USE_EVENT_USE | USE_EVENT_MESSAGE, OBJTYPE_NONE },
164 { &U6UseCode::use_rune, OBJ_U6_RUNE_HONOR, 0, 0, USE_EVENT_USE | USE_EVENT_MESSAGE, OBJTYPE_NONE },
165 { &U6UseCode::use_rune, OBJ_U6_RUNE_SPIRITUALITY, 0, 0, USE_EVENT_USE | USE_EVENT_MESSAGE, OBJTYPE_NONE },
166 { &U6UseCode::use_rune, OBJ_U6_RUNE_HUMILITY, 0, 0, USE_EVENT_USE | USE_EVENT_MESSAGE, OBJTYPE_NONE },
168 { &U6UseCode::use_firedevice, OBJ_U6_CAMPFIRE, 255, 0, USE_EVENT_USE, OBJTYPE_NONE },
170 { &U6UseCode::use_vortex_cube, OBJ_U6_VORTEX_CUBE, 0, 0, USE_EVENT_SEARCH | USE_EVENT_USE, OBJTYPE_CONTAINER },
171 { &U6UseCode::use_bell, OBJ_U6_PULL_CHAIN, 0, 0, USE_EVENT_USE, OBJTYPE_NONE },
172 { &U6UseCode::use_bell, OBJ_U6_BELL, 255, 0, USE_EVENT_USE, OBJTYPE_NONE },
173 { &U6UseCode::use_shovel, OBJ_U6_SHOVEL, 0, 0, USE_EVENT_USE, OBJTYPE_NONE },
174 { &U6UseCode::use_shovel, OBJ_U6_PICK, 0, 0, USE_EVENT_USE, OBJTYPE_NONE },
175 { &U6UseCode::use_fountain, OBJ_U6_FOUNTAIN, 0, 0, USE_EVENT_USE | USE_EVENT_MESSAGE, OBJTYPE_NONE },
176 { &U6UseCode::use_rubber_ducky, OBJ_U6_RUBBER_DUCKY, 0, 0, USE_EVENT_USE, OBJTYPE_NONE },
177 { &U6UseCode::use_cannon, OBJ_U6_CANNON, 255, 0, USE_EVENT_USE | USE_EVENT_MOVE | USE_EVENT_MESSAGE, OBJTYPE_NONE },
178 { &U6UseCode::amulet_of_submission, OBJ_U6_AMULET_OF_SUBMISSION, 0, 0, USE_EVENT_READY | USE_EVENT_DROP | USE_EVENT_MOVE, OBJTYPE_NONE },
179 { &U6UseCode::gargish_vocabulary, OBJ_U6_GARGISH_VOCABULARY, 0, 0, USE_EVENT_USE, OBJTYPE_NONE },
181 { &U6UseCode::use_crystal_ball, OBJ_U6_CRYSTAL_BALL, 0, 0, USE_EVENT_USE | USE_EVENT_MESSAGE, OBJTYPE_NONE },
183 { &U6UseCode::play_instrument, OBJ_U6_PANPIPES, 0, 0, USE_EVENT_USE, OBJTYPE_NONE },
184 { &U6UseCode::use_harpsichord, OBJ_U6_HARPSICHORD, 0, 0, USE_EVENT_SEARCH | USE_EVENT_USE, OBJTYPE_NONE },
185 { &U6UseCode::play_instrument, OBJ_U6_HARP, 0, 0, USE_EVENT_USE, OBJTYPE_NONE },
186 { &U6UseCode::play_instrument, OBJ_U6_LUTE, 0, 0, USE_EVENT_USE, OBJTYPE_NONE },
187 { &U6UseCode::play_instrument, OBJ_U6_XYLOPHONE, 0, 0, USE_EVENT_USE, OBJTYPE_NONE },
189 {
nullptr, OBJ_U6_NOTHING, 0, 0, 0, OBJTYPE_NONE }
Definition: detection.h:27