22 #ifndef DRAGONS_SPECIALOPCODES_H 23 #define DRAGONS_SPECIALOPCODES_H 25 #include "common/func.h" 26 #include "common/str.h" 31 #define DRAGONS_NUM_SPECIAL_OPCODES 0x8c 41 void run(int16 opcode);
49 uint32 curSequenceIndex;
50 uint32 numTotalSequences;
51 uint32 sequenceDuration;
53 uint16 iniIDTbl[8][5];
54 uint16 sequenceIDTbl[8][5];
59 iniID = sequenceID = 0;
61 curSequence = curSequenceIndex = numTotalSequences = sequenceDuration = 0;
63 for (uint i = 0; i < 8; i++) {
65 for (
int j = 0; j < 5; j++) {
67 sequenceIDTbl[i][j] = 0;
76 SpecialOpcode *_opcodes[DRAGONS_NUM_SPECIAL_OPCODES];
78 int16 _specialOpCounter;
80 uint16 _uint16_t_80083154;
83 int16 getSpecialOpCounter();
84 void setSpecialOpCounter(int16 newValue);
91 void spcCatapultMiniGame();
92 void spcThumbWrestlingMiniGame();
93 void spcClearEngineFlag10();
94 void spcSetEngineFlag10();
96 void spcRabbitsMiniGame();
97 void spcDancingMiniGame();
98 void spcCastleGardenLogic();
103 void spcFadeScreen();
104 void spcLadyOfTheLakeCapturedSceneLogic();
105 void spcStopLadyOfTheLakeCapturedSceneLogic();
106 void spc11ShakeScreen();
107 void spcHandleInventionBookTransition();
108 void spcUnk13InventionBookCloseRelated();
109 void spcClearEngineFlag8();
110 void spcSetEngineFlag8();
112 void spcKnightPoolReflectionLogic();
114 void spcWalkOnStilts();
115 void spcActivatePizzaMakerActor();
116 void spcDeactivatePizzaMakerActor();
117 void spcPizzaMakerActorStopWorking();
118 void spcDragonArrivesAtTournament();
119 void spcDragonCatapultMiniGame();
120 void spcStGeorgeDragonLanded();
122 void spcSetEngineFlag0x20000();
123 void spcClearEngineFlag0x20000();
124 void spcSetEngineFlag0x200000();
125 void spcClearEngineFlag0x200000();
126 void spcFlickerSetPriority2();
127 void spcMenInMinesSceneLogic();
128 void spcStopMenInMinesSceneLogic();
129 void spcMonksAtBarSceneLogic();
130 void spcStopMonksAtBarSceneLogic();
132 void spcFlameBedroomEscapeSceneLogic();
133 void spcStopFlameBedroomEscapeSceneLogic();
135 void spcCastleMoatFull();
136 void spcCastleRestoreScalePoints();
137 void spcCastleMoatUpdateActorSceneScalePoints();
138 void spcCastleGateMoatDrainedSceneLogic();
142 void spcFlickerClearFlag0x80();
145 void spcTownAngryVillagersSceneLogic();
146 void spcBlackDragonCrashThroughGate();
147 void spcSetEngineFlag0x2000000();
148 void spcClearEngineFlag0x2000000();
150 void spcZigmondFraudSceneLogic();
152 void spcZigmondFraudSceneLogic1();
153 void spcBrokenBlackDragonSceneLogic();
154 void spcDodoUnderAttackSceneLogic();
155 void spcForestWithoutDodoSceneLogic();
157 void spcBlackDragonOnHillSceneLogic();
159 void spcHedgehogTest();
160 void spcLoadScene1();
162 void spcKnightsSavedCastleCutScene();
163 void spcFlickerReturnsCutScene();
164 void spcKnightsSavedAgainCutScene();
167 void spcCloseInventory();
168 void spcOpenInventionBook();
169 void spcCloseInventionBook();
170 void spcClearEngineFlag0x4000000();
171 void spcSetEngineFlag0x4000000();
172 void spcSetCursorSequenceIdToZero();
174 void spcFlickerSetFlag0x80();
180 void spcCastleBuildBlackDragonSceneLogic();
181 void spcStopSceneUpdateFunction();
182 void spcSetInventorySequenceTo5();
183 void spcResetInventorySequence();
184 void spcUnk65ScenePaletteRelated();
186 void spcTournamentSetCamera();
187 void spcTournamentCutScene();
188 void spcInsideBlackDragonUpdatePalette();
189 void spcCastleGateSceneLogic();
190 void spcTransitionToMap();
191 void spcTransitionFromMap();
192 void spcCaveOfDilemmaSceneLogic();
194 void spcLoadLadyOfTheLakeActor();
195 void spcFadeCreditsToBackStageScene();
196 void spcRunCredits();
197 void spcEndCreditsAndRestartGame();
198 void spcUseClickerOnLever();
200 void spcJesterInLibrarySceneLogic();
202 void spcBlackDragonDialogForCamelhot();
203 void spcSetCameraXToZero();
204 void spcDiamondIntroSequenceLogic();
205 void spcLoadFileS10a6act();
206 void spcLoadFileS10a7act();
207 void spcFlickerPutOnStGeorgeArmor();
208 void spcUnk80FlickerArmorOn();
209 void spcShakeScreenSceneLogic();
210 void spcClearTextFromScreen();
211 void spcStopScreenShakeUpdater();
212 void spcInsideBlackDragonScreenShake();
213 void spc85SetScene1To0x35();
214 void spc86SetScene1To0x33();
215 void spc87SetScene1To0x17();
216 void spc88SetScene1To0x16();
217 void spcSetUnkFlag2();
218 void spcClearUnkFlag2();
221 void setupTableBasedSceneUpdateFunction(uint16 initialCounter, uint16 numSequences, uint16 sequenceDuration);
223 void panCamera(int16 mode);
224 void pizzaMakerStopWorking();
226 void clearSceneUpdateFunction();
227 void mapTransition(uint16 mode);
233 void castleFogUpdateFunction();
234 void menInMinesSceneUpdateFunction();
235 void monksAtBarSceneUpdateFunction();
236 void flameEscapeSceneUpdateFunction();
237 void pizzaUpdateFunction();
238 void tableBasedSceneUpdateFunction();
239 void castleBuildingBlackDragon2UpdateFunction();
240 void shakeScreenUpdateFunction();
241 void ladyOfTheLakeCapturedUpdateFunction();
242 void caveOfDilemmaUpdateFunction();
243 void moatDrainedSceneUpdateFunction();
247 #endif // DRAGONS_SPECIALOPCODES_H
Definition: specialopcodes.h:37
Definition: specialopcodes.h:43
Definition: dragons.h:167