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 PINK_CONSTANTS_H
24 #define PINK_CONSTANTS_H
25 
26 namespace Pink {
27 
28 enum {
29 	kMaxClassLength = 32,
30 	kMaxStringLength = 128,
31 	kNullObject = 0
32 };
33 
34 enum {
35 	kActionHide,
36 	kActionLoop,
37 	kActionPlay,
38 	kActionPlayWithSfx,
39 	kActionSfx,
40 	kActionSound,
41 	kActionStill,
42 	kActionTalk,
43 	kActionText,
44 	kActor,
45 	kAudioInfoPDAButton,
46 	kConditionGameVariable,
47 	kConditionInventoryItemOwner,
48 	kConditionModuleVariable,
49 	kConditionNotInventoryItemOwner,
50 	kConditionNotModuleVariable,
51 	kConditionNotPageVariable,
52 	kConditionPageVariable,
53 	kCursorActor,
54 	kGamePage,
55 	kHandlerLeftClick,
56 	kHandlerStartPage,
57 	kHandlerTimer,
58 	kHandlerTimerActions,
59 	kHandlerTimerSequences,
60 	kHandlerUseClick,
61 	kInventoryActor,
62 	kInventoryItem,
63 	kLeadActor,
64 	kModuleProxy,
65 	kPDAButtonActor,
66 	kParlSqPink,
67 	kPubPink,
68 	kSeqTimer,
69 	kSequence,
70 	kSequenceAudio,
71 	kSequenceItem,
72 	kSequenceItemDefaultAction,
73 	kSequenceItemLeader,
74 	kSequenceItemLeaderAudio,
75 	kSideEffectExit,
76 	kSideEffectGameVariable,
77 	kSideEffectInventoryItemOwner,
78 	kSideEffectLocation,
79 	kSideEffectModuleVariable,
80 	kSideEffectPageVariable,
81 	kSideEffectRandomPageVariable,
82 	kSupportingActor,
83 	kWalkAction,
84 	kWalkLocation
85 };
86 
87 enum {
88 	kCursorsCount = 13
89 };
90 
91 enum {
92 	kLoadingCursor = 0,
93 	kDefaultCursor = 1,
94 	kClickableFirstFrameCursor = 2,
95 	kClickableSecondFrameCursor = 3,
96 	kNotClickableCursor = 4,
97 	kHoldingItemCursor = 5,
98 	kPDADefaultCursor = 6,
99 	kPDAClickableFirstFrameCursor = 7,
100 	kPDAClickableSecondFrameCursor = 8,
101 	kExitLeftCursor = 9,
102 	kExitRightCursor = 10,
103 	kExitForwardCursor = 11,
104 	kExitDownCursor = 12 // only in Hokus Pokus
105 };
106 
107 
108 // values are from Hokus Pokus
109 enum {
110 	kPokusLoadingCursorID = 135,
111 	kPokusExitForwardCursorID = 138,
112 	kPokusExitDownCursorID = 139,
113 	kPokusExitLeftCursorID = 133,
114 	kPokusExitRightCursorID = 134,
115 	kPokusClickableFirstCursorID = 137,
116 	kPokusClickableSecondCursorID = 136,
117 	kPokusClickableThirdCursorID = 145,
118 	kPokusNotClickableCursorID = 140,
119 	kPokusHoldingItemCursorID = 147,
120 	kPokusPDADefaultCursorID = 141,
121 	kPokusPDAClickableFirstFrameCursorID = 144,
122 	kPokusPDAClickableSecondFrameCursorID = 146
123 };
124 
125 // from Peril
126 // it contains cursors whose ids differ
127 enum {
128 	kPerilClickableThirdCursorID = 140,
129 	kPerilNotClickableCursorID = 139,
130 	kPerilHoldingItemCursorID = 101,
131 	kPerilPDAClickableFirstFrameCursorID = 142,
132 	kPerilPDAClickableSecondFrameCursorID = 143
133 };
134 
135 enum {
136 	kLoadingSave = 1,
137 	kLoadingNewGame = 0
138 };
139 
140 enum {
141 	kOrbMajorVersion = 2,
142 	kOrbMinorVersion = 0,
143 	kBroMajorVersion = 1,
144 	kBroMinorVersion = 0
145 };
146 
147 enum {
148 	kTimersUpdateTime = 100,
149 	kCursorsUpdateTime = 200
150 };
151 
152 enum {
153 	kSampleRate = 22050
154 };
155 
156 static const char * const kPinkGame = "PinkGame";
157 
158 static const char * const kPeril = "peril";
159 
160 static const char * const kCloseAction = "Close";
161 static const char * const kIdleAction = "Idle";
162 static const char * const kOpenAction = "Open";
163 static const char * const kShowAction = "Show";
164 static const char * const kHideAction = "Hide";
165 static const char * const kInactiveAction = "Inactive";
166 
167 static const char * const kInventoryWindowActor = "InventoryWindow";
168 static const char * const kInventoryItemActor = "InventoryItem";
169 static const char * const kInventoryRightArrowActor = "InventoryRightArrow";
170 static const char * const kInventoryLeftArrowActor = "InventoryLeftArrow";
171 
172 static const char * const kAudioInfoActor = "AudioInfo";
173 static const char * const kPdaButtonActor = "PDAButton";
174 
175 static const char * const kCursorNameExit = "Exit";
176 static const char * const kCursorNameExitUp = "ExitUp";
177 static const char * const kCursorNameExitLeft = "ExitLeft";
178 static const char * const kCursorNameExitRight = "ExitRight";
179 static const char * const kCursorNameExitForward = "ExitForward";
180 static const char * const kCursorNameExitBackWards = "ExitBackwards";
181 
182 static const char * const kClickable = "Clickable";
183 static const char * const kCursor = "Cursor";
184 
185 static const char * const kFoodPuzzle = "FoodPuzzle";
186 static const char * const kJackson = "Jackson";
187 static const char * const kBolted = "Bolted";
188 static const char * const kDrunkLocation = "DrunkLocation";
189 static const char * const kDrunk = "Drunk";
190 
191 static const char * const kBoy = "Boy";
192 static const char * const kSirBaldley = "SirBaldley";
193 static const char * const kBoyBlocked = "BoyBlocked";
194 
195 static const char * const kUndefinedValue = "UNDEFINED";
196 static const char * const kTrueValue = "TRUE";
197 
198 static const char * const kCountryWheel = "CountryWheel";
199 static const char * const kDomainWheel = "DomainWheel";
200 
201 static const char * const kLocator = "Locator";
202 
203 static const char * const kPreviousPageButton = "PreviousPageButton";
204 static const char * const kDomainButton = "DomainButton";
205 static const char * const kNavigatorButton = "NavigatorButton";
206 
207 static const char * const kNavigatePage = "NAVIGATE";
208 
209 static const char * const kSfx = "SFX";
210 
211 static const char * const kRightHand = "RightHand";
212 static const char * const kLeftHand = "LeftHand";
213 
214 static const char * const kLeft1Name = "Left1";
215 static const char * const kLeft2Name = "Left2";
216 static const char * const kLeft3Name = "Left3";
217 static const char * const kLeft4Name = "Left4";
218 
219 } // End of namespace Pink
220 
221 #endif
222