22#ifndef ULTIMA8_USECODE_REMORSEINTRINSICS_H
23#define ULTIMA8_USECODE_REMORSEINTRINSICS_H
25#include "ultima/ultima8/gumps/weasel_gump.h"
26#include "ultima/ultima8/usecode/intrinsics.h"
27#include "ultima/ultima8/world/item.h"
35const Intrinsic RemorseIntrinsics[] = {
37 World::I_getAlertActive,
44 Item::I_isPartlyOnScreen,
49 Ultima8Engine::I_setAvatarInStasis,
52 MovieGump::I_playMovieCutsceneAlt,
56 MusicProcess::I_playMusic,
59 AudioProcess::I_playSFXCru,
62 UCMachine::I_rndRange,
63 Item::I_legalCreateAtCoords,
65 World::I_getControlledNPCNum,
67 Actor::I_getLastAnimSet,
74 Item::I_getEtherealTop,
78 Item::I_getClosestDirectionInRange,
80 World::I_gameDifficulty,
81 AudioProcess::I_playAmbientSFXCru,
85 Item::I_legalMoveToPoint,
86 CurrentMap::I_canExistAtPoint,
92 Item::I_getDirFromTo16,
95 MainActor::I_addItemCru,
96 AudioProcess::I_stopSFXCru,
98 AudioProcess::I_isSFXPlayingForObject,
101 Container::I_destroyContents,
105 CameraProcess::I_moveTo,
106 CameraProcess::I_setCenterOn,
107 Item::I_getRangeIfVisible,
108 AudioProcess::I_playSFXCru,
122 Actor::I_getCurrentActivityNo,
123 Actor::I_clrInCombat,
124 Actor::I_setDefaultActivity0,
125 Actor::I_setDefaultActivity1,
126 Actor::I_setDefaultActivity2,
127 Actor::I_setActivity,
128 World::I_setControlledNPCNum,
129 Item::I_getSurfaceWeight,
132 Actor::I_getLastAnimSet,
133 Item::I_legalCreateAtPoint,
135 CruStatusGump::I_hideStatusGump,
136 MovieGump::I_playMovieOverlay,
137 CruStatusGump::I_showStatusGump,
140 Actor::I_createActor,
143 Item::I_getFootpadData,
154 Item::I_isCompletelyOn,
156 Ultima8Engine::I_getCrusaderTeleporting,
157 Ultima8Engine::I_setCrusaderTeleporting,
158 Ultima8Engine::I_setCruStasis,
160 Ultima8Engine::I_clrCrusaderTeleporting,
161 Ultima8Engine::I_clrCruStasis,
162 AudioProcess::I_stopSFXCru,
163 PaletteFaderProcess::I_fadeToBlack,
164 MainActor::I_clrKeycards,
165 MainActor::I_teleportToEgg,
166 PaletteFaderProcess::I_fadeToGamePal,
167 Actor::I_clrImmortal,
169 Actor::I_setActivity,
174 MainActor::I_getMaxEnergy,
178 Actor::I_setImmortal,
179 CameraProcess::I_getCameraX,
180 CameraProcess::I_getCameraY,
184 Item::I_enterFastArea,
188 PaletteFaderProcess::I_jumpToAllBlack,
190 MusicProcess::I_stopMusic,
192 MovieGump::I_playMovieCutsceneAlt,
195 Ultima8Engine::I_moveKeyDownRecently,
196 MainActor::I_teleportToEgg,
197 PaletteFaderProcess::I_jumpToGreyScale,
198 World::I_resetVargasShield,
200 PaletteFaderProcess::I_jumpToNormalPalette,
201 PaletteFaderProcess::I_fadeToGamePal,
202 PaletteFaderProcess::I_fadeToGamePal,
203 PaletteFaderProcess::I_fadeToBlack,
204 PaletteFaderProcess::I_fadeToBlack,
205 PaletteFaderProcess::I_fadeToGivenColor,
209 Item::I_getUnkEggType,
216 MovieGump::I_playMovieCutsceneAlt,
217 AudioProcess::I_playSFX,
219 Item::I_getFamilyOfType,
225 Item::I_avatarStoleSomething,
227 Ultima8Engine::I_getCurrentTimerTick,
228 World::I_setAlertActive,
230 World::I_clrAlertActive,
231 Ultima8Engine::I_getAvatarInStasis,
232 MainActor::I_addItemCru,
233 Actor::I_getLastAnimSet,
235 CurrentMap::I_canExistAt,
245 KeypadGump::I_showKeypad,
247 SpriteProcess::I_createSprite,
248 Item::I_getDirFromItem,
252 MainActor::I_switchMap,
254 Actor::I_setActivity,
256 Item::I_setQAndCombine,
259 AudioProcess::I_stopAllSFX,
260 MovieGump::I_playMovieCutscene,
262 AudioProcess::I_playSFX,
264 CameraProcess::I_getCameraZ,
265 Actor::I_getLastAnimSet,
268 PaletteFaderProcess::I_jumpToAllWhite,
269 Actor::I_setActivity,
271 Actor::I_getLastActivityNo,
272 Actor::I_setCombatTactic,
276 Actor::I_getDefaultActivity0,
277 Actor::I_getDefaultActivity1,
278 Actor::I_getDefaultActivity2,
279 Actor::I_getLastAnimSet,
286 MainActor::I_getNumberOfCredits,
288 Item::I_popToContainer,
289 BatteryChargerProcess::I_create,
290 Kernel::I_getNumProcesses,
294 Actor::I_setActivity,
298 CruHealerProcess::I_create,
305 MainActor::I_hasKeycard,
306 ComputerGump::I_readComputer,
307 UCMachine::I_numToStr,
312 Item::I_isCrusTypeNPC,
329 UCMachine::I_numToStr,
332 Item::I_fireDistance,
347 Actor::I_getLastAnimSet,
349 UCMachine::I_numToStr,
350 Item::I_getDirToCoords,
356 Item::I_getFootpadData,
358 Actor::I_createActorCru,
360 Actor::I_clrImmortal,
361 Actor::I_setActivity,
364 WeaselGump::I_showWeaselGump,
373const Intrinsic RemorseDemoIntrinsics[] = {
374 World::I_getAlertActive,
381 Item::I_isPartlyOnScreen,
386 Ultima8Engine::I_setAvatarInStasis,
387 Item::I_getDirToItem,
389 MovieGump::I_playMovieCutsceneAlt,
393 MusicProcess::I_playMusic,
396 AudioProcess::I_playSFXCru,
399 UCMachine::I_rndRange,
400 Item::I_legalCreateAtCoords,
402 World::I_getControlledNPCNum,
404 Actor::I_getLastAnimSet,
411 Item::I_getEtherealTop,
415 Item::I_getClosestDirectionInRange,
417 World::I_gameDifficulty,
418 AudioProcess::I_playAmbientSFXCru,
419 Item::I_isCompletelyOn,
421 Container::I_destroyContents,
426 Item::I_legalMoveToPoint,
427 CurrentMap::I_canExistAtPoint,
432 Item::I_getDirFromTo16,
435 MainActor::I_addItemCru,
436 AudioProcess::I_stopSFXCru,
438 AudioProcess::I_isSFXPlayingForObject,
444 CameraProcess::I_moveTo,
445 CameraProcess::I_setCenterOn,
446 Item::I_getRangeIfVisible,
447 AudioProcess::I_playSFXCru,
461 Actor::I_getCurrentActivityNo,
462 Actor::I_clrInCombat,
463 Actor::I_setDefaultActivity0,
464 Actor::I_setDefaultActivity1,
465 Actor::I_setDefaultActivity2,
466 Actor::I_setActivity,
467 World::I_setControlledNPCNum,
468 Item::I_getSurfaceWeight,
471 Actor::I_getLastAnimSet,
472 Item::I_legalCreateAtPoint,
474 CruStatusGump::I_hideStatusGump,
476 MovieGump::I_playMovieOverlay,
477 CruStatusGump::I_showStatusGump,
479 Actor::I_createActor,
482 Item::I_getFootpadData,
494 Ultima8Engine::I_getCrusaderTeleporting,
495 Ultima8Engine::I_setCrusaderTeleporting,
496 Ultima8Engine::I_setCruStasis,
498 Ultima8Engine::I_clrCrusaderTeleporting,
499 Ultima8Engine::I_clrCruStasis,
500 AudioProcess::I_stopSFXCru,
501 PaletteFaderProcess::I_fadeToBlack,
502 MainActor::I_clrKeycards,
503 MainActor::I_teleportToEgg,
504 PaletteFaderProcess::I_fadeToGamePal,
505 Actor::I_clrImmortal,
507 Actor::I_setActivity,
512 MainActor::I_getMaxEnergy,
516 Actor::I_setImmortal,
517 CameraProcess::I_getCameraX,
518 CameraProcess::I_getCameraY,
522 Item::I_enterFastArea,
527 PaletteFaderProcess::I_jumpToAllBlack,
528 MusicProcess::I_stopMusic,
530 MovieGump::I_playMovieCutsceneAlt,
533 Ultima8Engine::I_moveKeyDownRecently,
534 MainActor::I_teleportToEgg,
535 PaletteFaderProcess::I_jumpToGreyScale,
536 World::I_resetVargasShield,
538 PaletteFaderProcess::I_jumpToNormalPalette,
539 PaletteFaderProcess::I_fadeToGamePal,
540 PaletteFaderProcess::I_fadeToGamePal,
541 PaletteFaderProcess::I_fadeToBlack,
542 PaletteFaderProcess::I_fadeToBlack,
544 PaletteFaderProcess::I_fadeToGivenColor,
547 Item::I_getUnkEggType,
554 MovieGump::I_playMovieCutsceneAlt,
555 AudioProcess::I_playSFX,
557 Item::I_getFamilyOfType,
563 Item::I_avatarStoleSomething,
565 Ultima8Engine::I_getCurrentTimerTick,
566 World::I_setAlertActive,
568 World::I_clrAlertActive,
569 Ultima8Engine::I_getAvatarInStasis,
570 MainActor::I_addItemCru,
571 Actor::I_getLastAnimSet,
573 CurrentMap::I_canExistAt,
583 KeypadGump::I_showKeypad,
585 SpriteProcess::I_createSprite,
586 Item::I_getDirFromItem,
590 Game::I_playDemoScreen,
592 Actor::I_setActivity,
593 Item::I_setQAndCombine,
596 AudioProcess::I_stopAllSFX,
597 MovieGump::I_playMovieCutscene,
599 AudioProcess::I_playSFX,
601 CameraProcess::I_getCameraZ,
602 Actor::I_getLastAnimSet,
605 PaletteFaderProcess::I_jumpToAllWhite,
606 Actor::I_setActivity,
608 Actor::I_getLastActivityNo,
609 Actor::I_setCombatTactic,
613 Actor::I_getDefaultActivity0,
614 Actor::I_getDefaultActivity1,
615 Actor::I_getDefaultActivity2,
616 Actor::I_getLastAnimSet,
623 MainActor::I_getNumberOfCredits,
625 Item::I_popToContainer,
626 BatteryChargerProcess::I_create,
627 Kernel::I_getNumProcesses,
631 Actor::I_setActivity,
635 CruHealerProcess::I_create,
642 MainActor::I_hasKeycard,
643 ComputerGump::I_readComputer,
644 UCMachine::I_numToStr,
649 Item::I_isCrusTypeNPC,
666 UCMachine::I_numToStr,
669 Item::I_fireDistance,
682 UCMachine::I_numToStr,
683 Item::I_getDirToCoords,
687 Item::I_getFootpadData,
689 Actor::I_createActorCru,
690 Actor::I_clrImmortal,
693 WeaselGump::I_showWeaselGump,
699 Actor::I_getLastAnimSet,
708const Intrinsic RemorseEsIntrinsics[] = {
709 ComputerGump::I_readComputer,
713 UCMachine::I_rndRange,
714 UCMachine::I_numToStr,
715 CruStatusGump::I_hideStatusGump,
717 MovieGump::I_playMovieOverlay,
718 CruStatusGump::I_showStatusGump,
719 Item::I_getDirToItem,
721 MovieGump::I_playMovieCutsceneAlt,
722 AudioProcess::I_playSFXCru,
723 World::I_getAlertActive,
728 Item::I_isPartlyOnScreen,
733 Ultima8Engine::I_setAvatarInStasis,
735 MusicProcess::I_playMusic,
740 Item::I_legalCreateAtCoords,
743 World::I_getControlledNPCNum,
745 Actor::I_getLastAnimSet,
751 Item::I_getEtherealTop,
755 Item::I_getClosestDirectionInRange,
757 World::I_gameDifficulty,
758 AudioProcess::I_playAmbientSFXCru,
760 Item::I_isCompletelyOn,
762 Container::I_destroyContents,
766 Item::I_legalMoveToPoint,
767 CurrentMap::I_canExistAtPoint,
772 Item::I_getDirFromTo16,
775 MainActor::I_addItemCru,
777 AudioProcess::I_stopSFXCru,
779 AudioProcess::I_isSFXPlayingForObject,
784 CameraProcess::I_moveTo,
785 CameraProcess::I_setCenterOn,
786 Item::I_getRangeIfVisible,
787 AudioProcess::I_playSFXCru,
802 Actor::I_getCurrentActivityNo,
803 Actor::I_clrInCombat,
804 Actor::I_setDefaultActivity0,
805 Actor::I_setDefaultActivity1,
806 Actor::I_setDefaultActivity2,
807 Actor::I_setActivity,
808 World::I_setControlledNPCNum,
809 Item::I_getSurfaceWeight,
813 Actor::I_getLastAnimSet,
814 Item::I_legalCreateAtPoint,
817 Actor::I_createActor,
820 Item::I_getFootpadData,
831 Ultima8Engine::I_getCrusaderTeleporting,
832 Ultima8Engine::I_setCrusaderTeleporting,
833 Ultima8Engine::I_setCruStasis,
835 Ultima8Engine::I_clrCrusaderTeleporting,
836 Ultima8Engine::I_clrCruStasis,
837 AudioProcess::I_stopSFXCru,
838 PaletteFaderProcess::I_fadeToBlack,
839 MainActor::I_clrKeycards,
840 MainActor::I_teleportToEgg,
841 PaletteFaderProcess::I_fadeToGamePal,
842 Actor::I_clrImmortal,
845 Actor::I_setActivity,
849 MainActor::I_getMaxEnergy,
853 Actor::I_setImmortal,
854 CameraProcess::I_getCameraX,
855 CameraProcess::I_getCameraY,
859 Item::I_enterFastArea,
864 PaletteFaderProcess::I_jumpToAllBlack,
865 MusicProcess::I_stopMusic,
867 MovieGump::I_playMovieCutsceneAlt,
870 Ultima8Engine::I_moveKeyDownRecently,
871 MainActor::I_teleportToEgg,
872 PaletteFaderProcess::I_jumpToGreyScale,
873 World::I_resetVargasShield,
875 PaletteFaderProcess::I_jumpToNormalPalette,
876 PaletteFaderProcess::I_fadeToGamePal,
877 PaletteFaderProcess::I_fadeToGamePal,
879 PaletteFaderProcess::I_fadeToBlack,
880 PaletteFaderProcess::I_fadeToBlack,
881 PaletteFaderProcess::I_fadeToGivenColor,
884 Item::I_getUnkEggType,
889 KeypadGump::I_showKeypad,
890 MovieGump::I_playMovieCutsceneAlt,
893 AudioProcess::I_playSFX,
896 Item::I_getFamilyOfType,
901 Item::I_avatarStoleSomething,
903 Ultima8Engine::I_getCurrentTimerTick,
904 World::I_setAlertActive,
906 World::I_clrAlertActive,
907 Ultima8Engine::I_getAvatarInStasis,
908 MainActor::I_addItemCru,
909 Actor::I_getLastAnimSet,
911 CurrentMap::I_canExistAt,
921 Item::I_getDirToCoords,
922 Item::I_popToContainer,
927 SpriteProcess::I_createSprite,
930 Item::I_getFootpadData,
932 Actor::I_createActorCru,
933 Actor::I_setActivity,
936 Actor::I_getLastAnimSet,
937 Item::I_getDirFromItem,
941 MainActor::I_switchMap,
942 Actor::I_setActivity,
944 Item::I_setQAndCombine,
947 AudioProcess::I_stopAllSFX,
948 MovieGump::I_playMovieCutscene,
950 AudioProcess::I_playSFX,
952 CameraProcess::I_getCameraZ,
953 Actor::I_getLastAnimSet,
956 PaletteFaderProcess::I_jumpToAllWhite,
958 Actor::I_setActivity,
960 Actor::I_getLastActivityNo,
961 Actor::I_setCombatTactic,
965 Actor::I_getDefaultActivity0,
966 Actor::I_getDefaultActivity1,
967 Actor::I_getDefaultActivity2,
968 Actor::I_getLastAnimSet,
972 MainActor::I_getNumberOfCredits,
981 BatteryChargerProcess::I_create,
982 Kernel::I_getNumProcesses,
984 Actor::I_setActivity,
988 CruHealerProcess::I_create,
995 MainActor::I_hasKeycard,
998 Actor::I_clrImmortal,
1003 Item::I_isCrusTypeNPC,
1021 Item::I_fireDistance,
1026 WeaselGump::I_showWeaselGump,
1027 Item::I_getTypeFlag,
1039const Intrinsic RemorseFrIntrinsics[] = {
1041 World::I_getAlertActive,
1044 Item::I_getMapArray,
1048 Item::I_isPartlyOnScreen,
1052 Actor::I_getUnkByte,
1053 Ultima8Engine::I_setAvatarInStasis,
1054 Item::I_getDirToItem,
1055 Actor::I_turnToward,
1056 MovieGump::I_playMovieCutsceneAlt,
1060 MusicProcess::I_playMusic,
1063 AudioProcess::I_playSFXCru,
1066 UCMachine::I_rndRange,
1067 Item::I_legalCreateAtCoords,
1069 World::I_getControlledNPCNum,
1071 Actor::I_getLastAnimSet,
1075 Item::I_popToCoords,
1078 Item::I_getEtherealTop,
1082 Item::I_getClosestDirectionInRange,
1084 World::I_gameDifficulty,
1085 AudioProcess::I_playAmbientSFXCru,
1086 Item::I_isCompletelyOn,
1088 Container::I_destroyContents,
1093 Item::I_legalMoveToPoint,
1094 CurrentMap::I_canExistAtPoint,
1099 Item::I_getDirFromTo16,
1100 Actor::I_isKneeling,
1102 MainActor::I_addItemCru,
1103 AudioProcess::I_stopSFXCru,
1105 AudioProcess::I_isSFXPlayingForObject,
1111 CameraProcess::I_moveTo,
1112 CameraProcess::I_setCenterOn,
1113 Item::I_getRangeIfVisible,
1114 AudioProcess::I_playSFXCru,
1128 Actor::I_getCurrentActivityNo,
1129 Actor::I_clrInCombat,
1130 Actor::I_setDefaultActivity0,
1131 Actor::I_setDefaultActivity1,
1132 Actor::I_setDefaultActivity2,
1133 Actor::I_setActivity,
1134 World::I_setControlledNPCNum,
1135 Item::I_getSurfaceWeight,
1138 Actor::I_getLastAnimSet,
1139 Item::I_legalCreateAtPoint,
1141 CruStatusGump::I_hideStatusGump,
1143 MovieGump::I_playMovieOverlay,
1144 CruStatusGump::I_showStatusGump,
1146 Actor::I_createActor,
1149 Item::I_getFootpadData,
1161 Ultima8Engine::I_getCrusaderTeleporting,
1162 Ultima8Engine::I_setCrusaderTeleporting,
1163 Ultima8Engine::I_setCruStasis,
1165 Ultima8Engine::I_clrCrusaderTeleporting,
1166 Ultima8Engine::I_clrCruStasis,
1167 AudioProcess::I_stopSFXCru,
1168 PaletteFaderProcess::I_fadeToBlack,
1169 MainActor::I_clrKeycards,
1170 MainActor::I_teleportToEgg,
1171 PaletteFaderProcess::I_fadeFromBlack,
1172 Actor::I_clrImmortal,
1174 Actor::I_setActivity,
1179 MainActor::I_getMaxEnergy,
1183 Actor::I_setImmortal,
1184 CameraProcess::I_getCameraX,
1185 CameraProcess::I_getCameraY,
1186 Item::I_setMapArray,
1189 Item::I_enterFastArea,
1194 PaletteFaderProcess::I_jumpToAllBlack,
1195 MusicProcess::I_stopMusic,
1197 MovieGump::I_playMovieCutsceneAlt,
1199 Game::I_playCredits,
1200 Ultima8Engine::I_moveKeyDownRecently,
1201 MainActor::I_teleportToEgg,
1202 PaletteFaderProcess::I_jumpToGreyScale,
1203 World::I_resetVargasShield,
1205 PaletteFaderProcess::I_jumpToNormalPalette,
1206 PaletteFaderProcess::I_fadeToGamePal,
1207 PaletteFaderProcess::I_fadeToGamePal,
1208 PaletteFaderProcess::I_fadeToBlack,
1209 PaletteFaderProcess::I_fadeToBlack,
1211 PaletteFaderProcess::I_fadeToGivenColor,
1214 Item::I_getUnkEggType,
1215 Egg::I_setEggXRange,
1219 Egg::I_getEggXRange,
1221 MovieGump::I_playMovieCutsceneAlt,
1222 AudioProcess::I_playSFX,
1224 Item::I_getFamilyOfType,
1230 Item::I_avatarStoleSomething,
1232 Ultima8Engine::I_getCurrentTimerTick,
1233 World::I_setAlertActive,
1235 World::I_clrAlertActive,
1236 Ultima8Engine::I_getAvatarInStasis,
1237 MainActor::I_addItemCru,
1238 Actor::I_getLastAnimSet,
1240 CurrentMap::I_canExistAt,
1250 KeypadGump::I_showKeypad,
1252 SpriteProcess::I_createSprite,
1253 Item::I_getDirFromItem,
1257 MainActor::I_switchMap,
1258 Actor::I_isInCombat,
1259 Actor::I_setActivity,
1260 Item::I_setQAndCombine,
1263 AudioProcess::I_stopAllSFX,
1264 MovieGump::I_playMovieCutscene,
1266 AudioProcess::I_playSFX,
1268 CameraProcess::I_getCameraZ,
1269 Actor::I_getLastAnimSet,
1272 PaletteFaderProcess::I_jumpToAllWhite,
1273 Actor::I_setActivity,
1275 Actor::I_getLastActivityNo,
1276 Actor::I_setCombatTactic,
1280 Actor::I_getDefaultActivity0,
1281 Actor::I_getDefaultActivity1,
1282 Actor::I_getDefaultActivity2,
1283 Actor::I_getLastAnimSet,
1285 Actor::I_setUnkByte,
1290 MainActor::I_getNumberOfCredits,
1292 Item::I_popToContainer,
1293 BatteryChargerProcess::I_create,
1294 Kernel::I_getNumProcesses,
1298 Actor::I_setActivity,
1302 CruHealerProcess::I_create,
1309 MainActor::I_hasKeycard,
1310 ComputerGump::I_readComputer,
1311 UCMachine::I_numToStr,
1316 Item::I_isCrusTypeNPC,
1333 UCMachine::I_numToStr,
1336 Item::I_fireDistance,
1341 Item::I_getTypeFlag,
1349 UCMachine::I_numToStr,
1350 Item::I_getDirToCoords,
1354 Item::I_getFootpadData,
1356 Actor::I_createActorCru,
1357 Actor::I_clrImmortal,
1360 WeaselGump::I_showWeaselGump,
1366 Actor::I_getLastAnimSet,