22 #ifndef KYRA_KYRA_LOK_H 23 #define KYRA_KYRA_LOK_H 25 #include "kyra/kyra_v1.h" 26 #include "kyra/script/script.h" 27 #include "kyra/graphics/screen_lok.h" 28 #include "kyra/gui/gui_lok.h" 29 #include "kyra/engine/item.h" 34 class SoundDigital_MR;
45 uint16 currentAnimFrame;
46 int8 inventoryItems[10];
52 int8 xOffset, yOffset;
69 const uint8 *ptr =
nullptr;
98 friend class MusicPlayer;
109 Screen *screen()
override {
return _screen; }
111 GUI *gui()
const override {
return _gui; }
112 virtual Movie *createWSAMovie();
114 uint8 **shapes() {
return _shapes; }
115 Character *currentCharacter() {
return _currentCharacter; }
116 Character *characterList() {
return _characterList; }
117 uint16 brandonStatus() {
return _brandonStatusBit; }
120 uint16 getScene() {
return _currentRoom; }
123 int16 _northExitHeight;
128 const char *
const *seqWSATable() {
return _seq_WSATable; }
129 const char *
const *seqCPSTable() {
return _seq_CPSTable; }
130 const char *
const *seqCOLTable() {
return _seq_COLTable; }
131 const char *
const *seqTextsTable() {
return _seq_textsTable; }
133 const uint8 *
const *palTable1() {
return &_specialPalettes[0]; }
134 const uint8 *
const *palTable2() {
return &_specialPalettes[29]; }
143 bool seq_skipSequence()
const;
150 bool seq_introPublisherLogos();
151 bool seq_introLogos();
152 bool seq_introStory();
153 bool seq_introMalcolmTree();
154 bool seq_introKallakWriting();
155 bool seq_introKallakMalcolm();
158 void seq_createAmuletJewel(
int jewel,
int page,
int noSound,
int drawOnly);
159 void seq_brandonHealing();
160 void seq_brandonHealing2();
161 void seq_poisonDeathNow(
int now);
162 void seq_poisonDeathNowAnim();
163 void seq_playFluteAnimation();
164 void seq_winterScroll1();
165 void seq_winterScroll2();
166 void seq_makeBrandonInv();
167 void seq_makeBrandonNormal();
168 void seq_makeBrandonNormal2();
169 void seq_makeBrandonWisp();
170 void seq_dispelMagicAnimation();
171 void seq_fillFlaskWithWater(
int item,
int type);
172 void seq_playDrinkPotionAnim(
int item,
int makeFlaskEmpty,
int flags);
173 void seq_brandonToStone();
177 void seq_playEnding();
179 int handleMalcolmFlag();
180 int handleBeadState();
181 void initBeadState(
int x,
int y,
int x2,
int y2,
int unk1,
BeadState *ptr);
182 int processBead(
int x,
int y,
int &x2,
int &y2,
BeadState *ptr);
185 void seq_playCredits();
186 void seq_playCreditsAmiga();
190 void delayUntil(uint32 timestamp,
bool updateGameTimers =
false,
bool update =
false,
bool isMainLoop =
false)
override;
191 void delay(uint32 millis,
bool update =
false,
bool isMainLoop =
false)
override;
192 void delayWithTicks(
int ticks)
override;
194 bool skipFlag()
const override;
195 void resetSkipFlag(
bool removeEvent =
true)
override;
198 void registerDefaultSettings()
override;
199 void readSettings()
override;
200 void writeSettings()
override;
202 void snd_playSoundEffect(
int track,
int volume=0xFF)
override;
203 void snd_playWanderScoreViaMap(
int command,
int restart)
override;
204 void snd_playVoiceFile(
int id)
override;
205 void snd_voiceWaitForFinish(
bool ingame =
true);
206 uint32 snd_getVoicePlayTime();
209 int32 _speechPlayTime;
215 void processInput(
int xpos,
int ypos);
216 int processInputHelper(
int xpos,
int ypos);
217 int clickEventHandler(
int xpos,
int ypos);
218 void clickEventHandler2();
219 void updateMousePointer(
bool forceUpdate =
false);
220 bool hasClickedOnExit(
int xpos,
int ypos);
225 void startSceneScript(
int brandonAlive);
226 void setupSceneItems();
227 void initSceneData(
int facing,
int unk1,
int brandonAlive);
228 void initSceneObjectList(
int brandonAlive);
229 void initSceneScreen(
int brandonAlive);
230 void setupSceneResource(
int sceneId);
233 void enterNewScene(
int sceneId,
int facing,
int unk1,
int unk2,
int brandonAlive);
234 int handleSceneChange(
int xpos,
int ypos,
int unk1,
int frameReset);
235 int processSceneChange(
int *table,
int unk1,
int frameReset);
236 int changeScene(
int facing);
239 void transcendScenes(
int roomIndex,
int roomName);
240 void setSceneFile(
int roomIndex,
int roomName);
243 int findWay(
int x,
int y,
int toX,
int toY,
int *moveTable,
int moveTableSize)
override;
244 bool lineIsPassable(
int x,
int y)
override;
248 void addItemToRoom(uint16 sceneId, uint8 item,
int itemIndex,
int x,
int y);
251 void itemDropDown(
int x,
int y,
int destX,
int destY, byte freeItem,
int item);
252 int processItemDrop(uint16 sceneId, uint8 item,
int x,
int y,
int unk1,
int unk2);
253 void dropItem(
int unk1,
int item,
int x,
int y,
int unk2);
256 int countItemsInScene(uint16 sceneId);
257 void exchangeItemWithMouseItem(uint16 sceneId,
int itemIndex);
258 byte findFreeItemInScene(
int scene);
259 byte findItemAtPos(
int x,
int y);
262 void addToNoDropRects(
int x,
int y,
int w,
int h);
263 void clearNoDropRects();
264 int isDropable(
int x,
int y);
265 int checkNoDropRects(
int x,
int y);
268 void updatePlayerItemsForScene();
271 void backUpItemRect0(
int xpos,
int ypos);
272 void restoreItemRect0(
int xpos,
int ypos);
273 void backUpItemRect1(
int xpos,
int ypos);
274 void restoreItemRect1(
int xpos,
int ypos);
278 void placeItemInGenericMapScene(
int item,
int index);
281 void setHandItem(Item item)
override;
282 void removeHandItem()
override;
283 void setMouseItem(Item item);
285 int getItemListIndex(Item item);
288 void wipeDownMouseItem(
int xpos,
int ypos);
289 void itemSpecialFX(
int x,
int y,
int item);
290 void itemSpecialFX1(
int x,
int y,
int item);
291 void itemSpecialFX2(
int x,
int y,
int item);
292 void magicOutMouseItem(
int animIndex,
int itemPos);
293 void magicInMouseItem(
int animIndex,
int item,
int itemPos);
294 void specialMouseItemFX(
int shape,
int x,
int y,
int animIndex,
int tableIndex,
int loopStart,
int maxLoops);
295 void processSpecialMouseItemFX(
int shape,
int x,
int y,
int tableValue,
int loopStart,
int maxLoops);
299 void moveCharacterToPos(
int character,
int facing,
int xpos,
int ypos);
300 void setCharacterPositionWithUpdate(
int character);
301 int setCharacterPosition(
int character,
int *facingTable);
302 void setCharacterPositionHelper(
int character,
int *facingTable);
303 void setCharactersPositions(
int character);
306 void setBrandonPoisonFlags(
int reset);
307 void resetBrandonPoisonFlags();
311 void characterSays(
int vocFile,
const char *chatStr, int16 charNum, int16 chatDuration);
312 void waitForChatToFinish(
int vocFile,
int chatDuration,
const char *str, uint8 charNum,
const bool printText);
315 int initCharacterChat(int8 charNum);
316 void backupChatPartnerAnimFrame(int8 charNum);
317 void restoreChatPartnerAnimFrame(int8 charNum);
318 int8 getChatPartnerNum();
321 void endCharacterChat(int8 charNum, int16 arg_4);
325 int findDuplicateItemShape(
int shape);
326 void updateKyragemFading();
329 void loadMainScreen(
int page = 3);
330 void redrawInventory(
int page);
332 void drawSentenceCommand(
const char *sentence,
int unk1);
333 void updateSentenceCommand(
const char *str1,
const char *str2,
int unk1);
334 void updateTextFade();
338 void drawJewelPress(
int jewel,
int drawSpecial);
339 void drawJewelsFadeOutStart();
340 void drawJewelsFadeOutEnd(
int jewel);
343 void setupShapes123(
const Shape *shapeTable,
int endShape,
int flags);
344 void freeShapes123();
350 int checkForNPCScriptRun(
int xpos,
int ypos);
351 void runNpcScript(
int func);
353 void loadMouseShapes();
354 void loadCharacterShapes();
355 void loadSpecialEffectShapes();
357 void loadButtonShapes();
358 void initMainButtonList();
359 void setCharactersInDefaultScene();
360 void setupPanPages();
362 void closeFinalWsa();
365 void setupTimers()
override;
366 void timerUpdateHeadAnims(
int timerNum);
367 void timerTulipCreator(
int timerNum);
368 void timerRubyCreator(
int timerNum);
369 void timerAsInvisibleTimeout(
int timerNum);
370 void timerAsWillowispTimeout(
int timerNum);
371 void checkAmuletAnimFlags();
372 void timerRedrawAmulet(
int timerNum);
373 void timerLavenderRoseCreator(
int timerNum);
374 void timerAcornCreator(
int timerNum);
375 void timerBlueberryCreator(
int timerNum);
376 void timerFadeText(
int timerNum);
377 void timerWillowispFrameTimer(
int timerNum);
378 void timerInvisibleFrameTimer(
int timerNum);
380 void setTextFadeTimerCountdown(int16 countdown);
381 void setWalkspeed(uint8 newSpeed)
override;
383 void setItemCreationFlags(
int offset,
int count);
385 int buttonInventoryCallback(
Button *caller);
386 int buttonAmuletCallback(
Button *caller);
390 bool _abortIntroFlag;
392 bool _menuDirectlyToLoad;
393 uint8 *_itemBkgBackUp[2];
397 int _unkScreenVar1, _unkScreenVar2, _unkScreenVar3;
402 int _endSequenceSkipFlag;
403 int _endSequenceNeedLoading;
405 uint8 *_endSequenceBackUpRect;
408 int _lastDisplayedPanPage;
409 uint8 *_panPagesTable[20];
410 Movie *_finalA, *_finalB, *_finalC;
412 Movie *_movieObjects[10];
414 uint16 _entranceMouseCursorTracks[5];
415 uint16 _walkBlockNorth;
416 uint16 _walkBlockEast;
417 uint16 _walkBlockSouth;
418 uint16 _walkBlockWest;
421 int16 _scaleTable[145];
425 int8 _birthstoneGemTable[4];
426 int8 _idolGemsTable[3];
428 int8 _marbleVaseItem;
429 int8 _foyerItemTable[3];
432 int8 _crystalState[2];
434 uint16 _brandonStatusBit;
435 uint8 _brandonStatusBit0x02Flag;
436 uint8 _brandonStatusBit0x20Flag;
437 uint8 _brandonPoisonFlagsGFX[256];
438 int16 _brandonInvFlag;
439 uint8 _poisonDeathCounter;
443 uint16 _currentChatPartnerBackupFrame;
444 uint16 _currentCharAnimFrame;
446 int _characterFacingZeroCount[8];
447 int _characterFacingFourCount[8];
449 int8 *_sceneAnimTable[50];
451 uint8 _itemHtDat[145];
452 int _lastProcessedItem;
453 int _lastProcessedItemHeight;
459 int _scenePhasingFlag;
461 int _sceneChangeState;
465 int _pathfinderFlag2;
467 int *_movFacingTable;
469 int8 _talkingCharNum;
471 int8 _talkHeadAnimCharNum;
473 int _currentHeadFrameTableIndex;
474 int8 _disabledTalkAnimObject;
475 int8 _enabledTalkAnimObject;
476 uint8 _currSentenceColor[3];
477 int8 _startSentencePalIndex;
480 uint8 _configTextspeed;
482 Screen::FontId _defaultFont;
483 Screen::FontId _noteFont;
484 int _defaultLineSpacing;
505 uint16 _malcolmFrame;
506 uint32 _malcolmTimer1;
507 uint32 _malcolmTimer2;
509 uint32 _beadStateTimer1;
510 uint32 _beadStateTimer2;
515 uint16 nextOperation;
520 } _kyragemFadingState;
522 static const int8 _dosTrackMap[];
523 static const int _dosTrackMapSize;
524 static const int8 _amigaTrackMap[];
525 static const int _amigaTrackMapSize;
526 static const int8 _macHQTrackMap[];
527 static const int _macHQTrackMapSize;
528 static const int8 _macLQTrackMap[];
529 static const int _macLQTrackMapSize;
533 void initStaticResource();
535 const uint8 *_seq_Forest;
536 const uint8 *_seq_KallakWriting;
537 const uint8 *_seq_KyrandiaLogo;
538 const uint8 *_seq_KallakMalcolm;
539 const uint8 *_seq_MalcolmTree;
540 const uint8 *_seq_WestwoodLogo;
541 const uint8 *_seq_Demo1;
542 const uint8 *_seq_Demo2;
543 const uint8 *_seq_Demo3;
544 const uint8 *_seq_Demo4;
545 const uint8 *_seq_Reunion;
547 const char *
const *_seq_WSATable;
548 const char *
const *_seq_CPSTable;
549 const char *
const *_seq_COLTable;
550 const char *
const *_seq_textsTable;
552 const char *
const *_storyStrings;
554 int _seq_WSATable_Size;
555 int _seq_CPSTable_Size;
556 int _seq_COLTable_Size;
557 int _seq_textsTable_Size;
559 int _storyStringsSize;
561 const char *
const *_itemList;
562 const char *
const *_takenList;
563 const char *
const *_placedList;
564 const char *
const *_droppedList;
565 const char *
const *_noDropList;
566 const char *
const *_putDownFirst;
567 const char *
const *_waitForAmulet;
568 const char *
const *_blackJewel;
569 const char *
const *_poisonGone;
570 const char *
const *_healingTip;
571 const char *
const *_thePoison;
572 const char *
const *_fluteString;
573 const char *
const *_wispJewelStrings;
574 const char *
const *_magicJewelString;
575 const char *
const *_flaskFull;
576 const char *
const *_fullFlask;
577 const char *
const *_veryClever;
578 const char *
const *_homeString;
579 const char *
const *_newGameString;
583 int _placedList_Size;
584 int _droppedList_Size;
585 int _noDropList_Size;
586 int _putDownFirst_Size;
587 int _waitForAmulet_Size;
588 int _blackJewel_Size;
589 int _poisonGone_Size;
590 int _healingTip_Size;
592 int _fluteString_Size;
593 int _wispJewelStrings_Size;
594 int _magicJewelString_Size;
597 int _veryClever_Size;
598 int _homeString_Size;
599 int _newGameString_Size;
601 const char *
const *_characterImageTable;
602 int _characterImageTableSize;
604 const char *
const *_guiStrings;
607 const char *
const *_configStrings;
608 int _configStringsSize;
610 Shape *_defaultShapeTable;
611 int _defaultShapeTableSize;
613 const Shape *_healingShapeTable;
614 int _healingShapeTableSize;
615 const Shape *_healingShape2Table;
616 int _healingShape2TableSize;
618 const Shape *_posionDeathShapeTable;
619 int _posionDeathShapeTableSize;
621 const Shape *_fluteAnimShapeTable;
622 int _fluteAnimShapeTableSize;
624 const Shape *_winterScrollTable;
625 int _winterScrollTableSize;
626 const Shape *_winterScroll1Table;
627 int _winterScroll1TableSize;
628 const Shape *_winterScroll2Table;
629 int _winterScroll2TableSize;
631 const Shape *_drinkAnimationTable;
632 int _drinkAnimationTableSize;
634 const Shape *_brandonToWispTable;
635 int _brandonToWispTableSize;
637 const Shape *_magicAnimationTable;
638 int _magicAnimationTableSize;
640 const Shape *_brandonStoneTable;
641 int _brandonStoneTableSize;
645 const char *
const *_roomFilenameTable;
646 int _roomFilenameTableSize;
648 const uint8 *_amuleteAnim;
650 const uint8 *
const *_specialPalettes;
653 static const uint16 _itemPosX[];
654 static const uint8 _itemPosY[];
656 void setupButtonData();
658 Button **_buttonDataListPtr;
660 static const uint8 _magicMouseItemStartFrame[];
661 static const uint8 _magicMouseItemEndFrame[];
662 static const uint8 _magicMouseItemStartFrame2[];
663 static const uint8 _magicMouseItemEndFrame2[];
665 static const uint16 _amuletX[];
666 static const uint16 _amuletY[];
667 static const uint16 _amuletX2[];
668 static const uint16 _amuletY2[];
671 void setupZanthiaPalette(
int pal);
673 void setupOpcodeTable()
override;
676 int o1_magicInMouseItem(
EMCState *script);
677 int o1_characterSays(
EMCState *script);
679 int o1_drawSceneAnimShape(
EMCState *script);
680 int o1_runNPCScript(
EMCState *script);
681 int o1_setSpecialExitList(
EMCState *script);
682 int o1_walkPlayerToPoint(
EMCState *script);
683 int o1_dropItemInScene(
EMCState *script);
684 int o1_drawAnimShapeIntoScene(
EMCState *script);
685 int o1_savePageToDisk(
EMCState *script);
686 int o1_sceneAnimOn(
EMCState *script);
687 int o1_sceneAnimOff(
EMCState *script);
688 int o1_getElapsedSeconds(
EMCState *script);
689 int o1_mouseIsPointer(
EMCState *script);
690 int o1_runSceneAnimUntilDone(
EMCState *script);
691 int o1_fadeSpecialPalette(
EMCState *script);
692 int o1_phaseInSameScene(
EMCState *script);
693 int o1_setScenePhasingFlag(
EMCState *script);
694 int o1_resetScenePhasingFlag(
EMCState *script);
695 int o1_queryScenePhasingFlag(
EMCState *script);
696 int o1_sceneToDirection(
EMCState *script);
697 int o1_setBirthstoneGem(
EMCState *script);
698 int o1_placeItemInGenericMapScene(
EMCState *script);
699 int o1_setBrandonStatusBit(
EMCState *script);
701 int o1_getCharacterScene(
EMCState *script);
702 int o1_runNPCSubscript(
EMCState *script);
703 int o1_magicOutMouseItem(
EMCState *script);
704 int o1_internalAnimOn(
EMCState *script);
705 int o1_forceBrandonToNormal(
EMCState *script);
706 int o1_poisonDeathNow(
EMCState *script);
707 int o1_setScaleMode(
EMCState *script);
708 int o1_openWSAFile(
EMCState *script);
709 int o1_closeWSAFile(
EMCState *script);
710 int o1_runWSAFromBeginningToEnd(
EMCState *script);
711 int o1_displayWSAFrame(
EMCState *script);
712 int o1_enterNewScene(
EMCState *script);
713 int o1_setSpecialEnterXAndY(
EMCState *script);
714 int o1_runWSAFrames(
EMCState *script);
715 int o1_popBrandonIntoScene(
EMCState *script);
716 int o1_restoreAllObjectBackgrounds(
EMCState *script);
717 int o1_setCustomPaletteRange(
EMCState *script);
718 int o1_loadPageFromDisk(
EMCState *script);
719 int o1_customPrintTalkString(
EMCState *script);
720 int o1_restoreCustomPrintBackground(
EMCState *script);
721 int o1_getCharacterX(
EMCState *script);
722 int o1_getCharacterY(
EMCState *script);
723 int o1_setCharacterFacing(
EMCState *script);
724 int o1_copyWSARegion(
EMCState *script);
726 int o1_loadSoundFile(
EMCState *script);
727 int o1_displayWSAFrameOnHidPage(
EMCState *script);
728 int o1_displayWSASequentialFrames(
EMCState *script);
729 int o1_refreshCharacter(
EMCState *script);
730 int o1_internalAnimOff(
EMCState *script);
731 int o1_changeCharactersXAndY(
EMCState *script);
732 int o1_clearSceneAnimatorBeacon(
EMCState *script);
733 int o1_querySceneAnimatorBeacon(
EMCState *script);
734 int o1_refreshSceneAnimator(
EMCState *script);
735 int o1_placeItemInOffScene(
EMCState *script);
736 int o1_wipeDownMouseItem(
EMCState *script);
737 int o1_placeCharacterInOtherScene(
EMCState *script);
739 int o1_specificItemInInventory(
EMCState *script);
740 int o1_popMobileNPCIntoScene(
EMCState *script);
741 int o1_mobileCharacterInScene(
EMCState *script);
742 int o1_hideMobileCharacter(
EMCState *script);
743 int o1_unhideMobileCharacter(
EMCState *script);
744 int o1_setCharacterLocation(
EMCState *script);
745 int o1_walkCharacterToPoint(
EMCState *script);
746 int o1_specialEventDisplayBrynnsNote(
EMCState *script);
747 int o1_specialEventRemoveBrynnsNote(
EMCState *script);
748 int o1_setLogicPage(
EMCState *script);
750 int o1_preserveAllObjectBackgrounds(
EMCState *script);
751 int o1_updateSceneAnimations(
EMCState *script);
752 int o1_sceneAnimationActive(
EMCState *script);
753 int o1_setCharacterMovementDelay(
EMCState *script);
754 int o1_getCharacterFacing(
EMCState *script);
755 int o1_bkgdScrollSceneAndMasksRight(
EMCState *script);
756 int o1_dispelMagicAnimation(
EMCState *script);
757 int o1_findBrightestFireberry(
EMCState *script);
758 int o1_setFireberryGlowPalette(
EMCState *script);
759 int o1_setDeathHandlerFlag(
EMCState *script);
760 int o1_drinkPotionAnimation(
EMCState *script);
761 int o1_makeAmuletAppear(
EMCState *script);
762 int o1_drawItemShapeIntoScene(
EMCState *script);
763 int o1_setCharacterCurrentFrame(
EMCState *script);
764 int o1_waitForConfirmationMouseClick(
EMCState *script);
766 int o1_setSceneFile(
EMCState *script);
767 int o1_getItemInMarbleVase(
EMCState *script);
768 int o1_setItemInMarbleVase(
EMCState *script);
769 int o1_addItemToInventory(
EMCState *script);
771 int o1_shakeScreen(
EMCState *script);
772 int o1_createAmuletJewel(
EMCState *script);
773 int o1_setSceneAnimCurrXY(
EMCState *script);
774 int o1_poisonBrandonAndRemaps(
EMCState *script);
775 int o1_fillFlaskWithWater(
EMCState *script);
776 int o1_getCharacterMovementDelay(
EMCState *script);
777 int o1_getBirthstoneGem(
EMCState *script);
778 int o1_queryBrandonStatusBit(
EMCState *script);
779 int o1_playFluteAnimation(
EMCState *script);
780 int o1_playWinterScrollSequence(
EMCState *script);
781 int o1_getIdolGem(
EMCState *script);
782 int o1_setIdolGem(
EMCState *script);
783 int o1_totalItemsInScene(
EMCState *script);
784 int o1_restoreBrandonsMovementDelay(
EMCState *script);
785 int o1_setEntranceMouseCursorTrack(
EMCState *script);
786 int o1_itemAppearsOnGround(
EMCState *script);
787 int o1_setNoDrawShapesFlag(
EMCState *script);
788 int o1_fadeEntirePalette(
EMCState *script);
789 int o1_itemOnGroundHere(
EMCState *script);
790 int o1_queryCauldronState(
EMCState *script);
791 int o1_setCauldronState(
EMCState *script);
792 int o1_queryCrystalState(
EMCState *script);
793 int o1_setCrystalState(
EMCState *script);
794 int o1_setPaletteRange(
EMCState *script);
795 int o1_shrinkBrandonDown(
EMCState *script);
796 int o1_growBrandonUp(
EMCState *script);
797 int o1_setBrandonScaleXAndY(
EMCState *script);
798 int o1_resetScaleMode(
EMCState *script);
799 int o1_getScaleDepthTableValue(
EMCState *script);
800 int o1_setScaleDepthTableValue(
EMCState *script);
802 int o1_checkClickOnNPC(
EMCState *script);
803 int o1_getFoyerItem(
EMCState *script);
804 int o1_setFoyerItem(
EMCState *script);
805 int o1_setNoItemDropRegion(
EMCState *script);
806 int o1_walkMalcolmOn(
EMCState *script);
807 int o1_passiveProtection(
EMCState *script);
808 int o1_setPlayingLoop(
EMCState *script);
809 int o1_brandonToStoneSequence(
EMCState *script);
810 int o1_brandonHealingSequence(
EMCState *script);
811 int o1_protectCommandLine(
EMCState *script);
812 int o1_pauseMusicSeconds(
EMCState *script);
813 int o1_resetMaskRegion(
EMCState *script);
814 int o1_setPaletteChangeFlag(
EMCState *script);
Definition: kyra_lok.h:73
Definition: kyra_v1.h:126
Definition: kyra_lok.h:514
Definition: kyra_lok.h:56
Definition: kyra_lok.h:50
Definition: seqplayer_lok.h:29
Definition: wsamovie.h:31
Definition: detection.h:38
Definition: animator_lok.h:29
Definition: kyra_lok.h:97
Definition: screen_lok.h:31
Definition: detection.h:27
Definition: kyra_lok.h:41
Definition: debugger.h:54
Definition: kyra_lok.h:68
Definition: kyra_lok.h:84