mirror of
https://github.com/libretro/scummvm.git
synced 2025-02-04 09:56:30 +00:00
NEVERHOOD: More changes to the Klayman class:
- Rename some stuff - Reorder methods (in the Klayman header only until I'm happy with it :)
This commit is contained in:
parent
3ef691f1af
commit
debc7e953d
@ -60,7 +60,7 @@ Klayman::Klayman(NeverhoodEngine *vm, Entity *parentScene, int16 x, int16 y, int
|
||||
_isWalkingOpenDoorNotified(false), _countdown1(0), _tapesToInsert(0), _keysToInsert(0), /*_field118(0), */_status2(0), _acceptInput(true),
|
||||
_attachedSprite(NULL), _isWalking(false), _status3(1), _parentScene(parentScene), _isSneaking(false), _isLargeStep(false),
|
||||
_flagF6(false), _isLeverDown(false), _isSittingInTeleporter(false), _flagFA(false), _ladderStatus(0), _pathPoints(NULL), _soundFlag(false),
|
||||
_idleTableNum(0), _otherSprite(NULL), _moveObjectCountdown(0), _readyToSpit(false) {
|
||||
_idleTableNum(0), _otherSprite(NULL), _moveObjectCountdown(0), _readyToSpit(false), _walkResumeFrameIncr(0) {
|
||||
|
||||
// TODO DirtySurface
|
||||
createSurface(surfacePriority, 320, 200);
|
||||
@ -301,21 +301,21 @@ void Klayman::upSitIdleTeleporter() {
|
||||
} else if (++_blinkCounter >= _blinkCounterMax) {
|
||||
_blinkCounter = 0;
|
||||
_blinkCounterMax = _vm->_rnd->getRandomNumber(64 - 1) + 24;
|
||||
stIdleSitBlink();
|
||||
stSitIdleTeleporterBlink();
|
||||
}
|
||||
}
|
||||
|
||||
void Klayman::stIdleSitBlink() {
|
||||
void Klayman::stSitIdleTeleporterBlink() {
|
||||
_status2 = 0;
|
||||
_acceptInput = true;
|
||||
startAnimation(0x5C24C018, 0, -1);
|
||||
SetUpdateHandler(&Klayman::update);
|
||||
SetMessageHandler(&Klayman::hmLowLevelAnimation);
|
||||
SetSpriteUpdate(NULL);
|
||||
NextState(&Klayman::stIdleSitBlinkSecond);
|
||||
NextState(&Klayman::stSitIdleTeleporterBlinkSecond);
|
||||
}
|
||||
|
||||
void Klayman::stIdleSitBlinkSecond() {
|
||||
void Klayman::stSitIdleTeleporterBlinkSecond() {
|
||||
_status2 = 0;
|
||||
_acceptInput = true;
|
||||
startAnimation(0x5C24C018, 0, -1);
|
||||
@ -331,7 +331,7 @@ void Klayman::stPickUpNeedle() {
|
||||
_acceptInput = false;
|
||||
startAnimation(0x1449C169, 0, -1);
|
||||
SetUpdateHandler(&Klayman::update);
|
||||
SetMessageHandler(&Klayman::hmPickUpGeneric);
|
||||
SetMessageHandler(&Klayman::hmPickUpObject);
|
||||
SetSpriteUpdate(NULL);
|
||||
}
|
||||
}
|
||||
@ -675,7 +675,7 @@ bool Klayman::stStartAction(AnimationCb callback3) {
|
||||
startAnimation(0x5C7080D4, 0, -1);
|
||||
SetUpdateHandler(&Klayman::update);
|
||||
SetMessageHandler(&Klayman::hmStartAction);
|
||||
SetSpriteUpdate(&Klayman::spriteUpdate41F250);
|
||||
SetSpriteUpdate(&Klayman::suAction);
|
||||
NextState(callback3);
|
||||
return true;
|
||||
} else {
|
||||
@ -684,7 +684,7 @@ bool Klayman::stStartAction(AnimationCb callback3) {
|
||||
}
|
||||
}
|
||||
|
||||
void Klayman::spriteUpdate41F250() {
|
||||
void Klayman::suAction() {
|
||||
|
||||
int16 xdiff = _destX - _x;
|
||||
|
||||
@ -715,7 +715,7 @@ void Klayman::spriteUpdate41F250() {
|
||||
|
||||
}
|
||||
|
||||
void Klayman::suWalking() {
|
||||
void Klayman::suSneaking() {
|
||||
|
||||
int16 xdiff = _destX - _x;
|
||||
|
||||
@ -770,11 +770,11 @@ void Klayman::stSneak() {
|
||||
startAnimation(0x5C48C506, 0, -1);
|
||||
SetUpdateHandler(&Klayman::update);
|
||||
SetMessageHandler(&Klayman::hmSneaking);
|
||||
SetSpriteUpdate(&Klayman::suWalking);
|
||||
FinalizeState(&Klayman::stWalkingDone);
|
||||
SetSpriteUpdate(&Klayman::suSneaking);
|
||||
FinalizeState(&Klayman::evSneakingDone);
|
||||
}
|
||||
|
||||
void Klayman::stWalkingDone() {
|
||||
void Klayman::evSneakingDone() {
|
||||
_isSneaking = false;
|
||||
}
|
||||
|
||||
@ -810,12 +810,12 @@ void Klayman::stStartWalking() {
|
||||
SetUpdateHandler(&Klayman::update);
|
||||
SetMessageHandler(&Klayman::hmStartWalking);
|
||||
SetSpriteUpdate(&Klayman::suWalkingTestExit);
|
||||
FinalizeState(&Klayman::stStartWalkingDone);
|
||||
NextState(&Klayman::stWalking);
|
||||
FinalizeState(&Klayman::evStartWalkingDone);
|
||||
NextState(&Klayman::stWalkingFirst);
|
||||
}
|
||||
}
|
||||
|
||||
void Klayman::stStartWalkingDone() {
|
||||
void Klayman::evStartWalkingDone() {
|
||||
_isWalking = false;
|
||||
}
|
||||
|
||||
@ -833,19 +833,19 @@ uint32 Klayman::hmStartWalking(int messageNum, const MessageParam ¶m, Entity
|
||||
return messageResult;
|
||||
}
|
||||
|
||||
void Klayman::stWalking() {
|
||||
void Klayman::stWalkingFirst() {
|
||||
_status2 = 0;
|
||||
_isWalking = true;
|
||||
_acceptInput = true;
|
||||
startAnimation(0x1A249001, 0, -1);
|
||||
SetUpdateHandler(&Klayman::update);
|
||||
SetMessageHandler(&Klayman::hmWalking);
|
||||
SetSpriteUpdate(&Klayman::spriteUpdate41F300);
|
||||
FinalizeState(&Klayman::stStartWalkingDone);
|
||||
NextState(&Klayman::stUpdateWalking);
|
||||
SetSpriteUpdate(&Klayman::suWalkingFirst);
|
||||
FinalizeState(&Klayman::evStartWalkingDone);
|
||||
NextState(&Klayman::stUpdateWalkingFirst);
|
||||
}
|
||||
|
||||
void Klayman::spriteUpdate41F300() {
|
||||
void Klayman::suWalkingFirst() {
|
||||
SetSpriteUpdate(&Klayman::suWalkingTestExit);
|
||||
_deltaX = 0;
|
||||
}
|
||||
@ -864,7 +864,7 @@ uint32 Klayman::hmWalking(int messageNum, const MessageParam ¶m, Entity *sen
|
||||
return messageResult;
|
||||
}
|
||||
|
||||
void Klayman::stUpdateWalking() {
|
||||
void Klayman::stUpdateWalkingFirst() {
|
||||
if (_status3 == 2) {
|
||||
gotoNextStateExt();
|
||||
} else if (_status3 == 3) {
|
||||
@ -891,8 +891,8 @@ void Klayman::stUpdateWalking() {
|
||||
}
|
||||
SetUpdateHandler(&Klayman::update);
|
||||
SetMessageHandler(&Klayman::hmSneaking);
|
||||
SetSpriteUpdate(&Klayman::suWalking);
|
||||
FinalizeState(&Klayman::stWalkingDone);
|
||||
SetSpriteUpdate(&Klayman::suSneaking);
|
||||
FinalizeState(&Klayman::evSneakingDone);
|
||||
}
|
||||
}
|
||||
|
||||
@ -962,12 +962,12 @@ void Klayman::stPickUpGeneric() {
|
||||
_acceptInput = false;
|
||||
startAnimation(0x1C28C178, 0, -1);
|
||||
SetUpdateHandler(&Klayman::update);
|
||||
SetMessageHandler(&Klayman::hmPickUpGeneric);
|
||||
SetMessageHandler(&Klayman::hmPickUpObject);
|
||||
SetSpriteUpdate(NULL);
|
||||
}
|
||||
}
|
||||
|
||||
uint32 Klayman::hmPickUpGeneric(int messageNum, const MessageParam ¶m, Entity *sender) {
|
||||
uint32 Klayman::hmPickUpObject(int messageNum, const MessageParam ¶m, Entity *sender) {
|
||||
uint32 messageResult = hmLowLevelAnimation(messageNum, param, sender);
|
||||
switch (messageNum) {
|
||||
case 0x100D:
|
||||
@ -991,8 +991,8 @@ uint32 Klayman::hmPickUpGeneric(int messageNum, const MessageParam ¶m, Entit
|
||||
|
||||
}
|
||||
|
||||
void Klayman::stTurnPressButton() {
|
||||
if (!stStartAction(AnimationCallback(&Klayman::stTurnPressButton))) {
|
||||
void Klayman::stPressButton() {
|
||||
if (!stStartAction(AnimationCallback(&Klayman::stPressButton))) {
|
||||
_status2 = 2;
|
||||
_acceptInput = true;
|
||||
startAnimation(0x1C02B03D, 0, -1);
|
||||
@ -1018,8 +1018,8 @@ uint32 Klayman::hmPressButton(int messageNum, const MessageParam ¶m, Entity
|
||||
return messageResult;
|
||||
}
|
||||
|
||||
void Klayman::stStampFloorButton() {
|
||||
if (!stStartAction(AnimationCallback(&Klayman::stStampFloorButton))) {
|
||||
void Klayman::stPressFloorButton() {
|
||||
if (!stStartAction(AnimationCallback(&Klayman::stPressFloorButton))) {
|
||||
_status2 = 2;
|
||||
_acceptInput = true;
|
||||
startAnimation(0x1C16B033, 0, -1);
|
||||
@ -1036,7 +1036,7 @@ void Klayman::stPressButtonSide() {
|
||||
startAnimation(0x1CD89029, 0, -1);
|
||||
SetUpdateHandler(&Klayman::update);
|
||||
SetMessageHandler(&Klayman::hmPressButton);
|
||||
SetSpriteUpdate(&Klayman::spriteUpdate41F250);
|
||||
SetSpriteUpdate(&Klayman::suAction);
|
||||
}
|
||||
}
|
||||
|
||||
@ -1093,7 +1093,7 @@ void Klayman::stStartWalkingSmall() {
|
||||
SetUpdateHandler(&Klayman::update);
|
||||
SetMessageHandler(&Klayman::hmWalkingSmall);
|
||||
SetSpriteUpdate(&Klayman::suWalkingTestExit);
|
||||
FinalizeState(&Klayman::stStartWalkingDone);
|
||||
FinalizeState(&Klayman::evStartWalkingDone);
|
||||
}
|
||||
|
||||
uint32 Klayman::hmWalkingSmall(int messageNum, const MessageParam ¶m, Entity *sender) {
|
||||
@ -1221,7 +1221,7 @@ void Klayman::stPullCord() {
|
||||
_acceptInput = false;
|
||||
startAnimation(0x3F28E094, 0, -1);
|
||||
SetUpdateHandler(&Klayman::update);
|
||||
SetMessageHandler(&Klayman::hmPullCord);
|
||||
SetMessageHandler(&Klayman::hmPullReleaseCord);
|
||||
SetSpriteUpdate(NULL);
|
||||
NextState(&Klayman::stReleaseCord);
|
||||
}
|
||||
@ -1231,11 +1231,11 @@ void Klayman::stReleaseCord() {
|
||||
_acceptInput = false;
|
||||
startAnimation(0x3A28C094, 0, -1);
|
||||
SetUpdateHandler(&Klayman::update);
|
||||
SetMessageHandler(&Klayman::hmPullCord);
|
||||
SetMessageHandler(&Klayman::hmPullReleaseCord);
|
||||
SetSpriteUpdate(NULL);
|
||||
}
|
||||
|
||||
uint32 Klayman::hmPullCord(int messageNum, const MessageParam ¶m, Entity *sender) {
|
||||
uint32 Klayman::hmPullReleaseCord(int messageNum, const MessageParam ¶m, Entity *sender) {
|
||||
uint32 messageResult = hmLowLevelAnimation(messageNum, param, sender);
|
||||
switch (messageNum) {
|
||||
case 0x100D:
|
||||
@ -1286,16 +1286,16 @@ uint32 Klayman::hmUseTube(int messageNum, const MessageParam ¶m, Entity *sen
|
||||
return messageResult;
|
||||
}
|
||||
|
||||
void Klayman::stWalkingExt() {
|
||||
void Klayman::stWalkingFirstExt() {
|
||||
_status2 = 0;
|
||||
_isWalking = true;
|
||||
_acceptInput = true;
|
||||
startAnimation(0x5A2CBC00, 0, -1);
|
||||
SetUpdateHandler(&Klayman::update);
|
||||
SetMessageHandler(&Klayman::hmWalking);
|
||||
SetSpriteUpdate(&Klayman::spriteUpdate41F300);
|
||||
NextState(&Klayman::stUpdateWalking);
|
||||
FinalizeState(&Klayman::stStartWalkingDone);
|
||||
SetSpriteUpdate(&Klayman::suWalkingFirst);
|
||||
NextState(&Klayman::stUpdateWalkingFirst);
|
||||
FinalizeState(&Klayman::evStartWalkingDone);
|
||||
}
|
||||
|
||||
void Klayman::stStartWalkingExt() {
|
||||
@ -1308,8 +1308,8 @@ void Klayman::stStartWalkingExt() {
|
||||
SetUpdateHandler(&Klayman::update);
|
||||
SetMessageHandler(&Klayman::hmStartWalking);
|
||||
SetSpriteUpdate(&Klayman::suWalkingTestExit);
|
||||
FinalizeState(&Klayman::stStartWalkingDone);
|
||||
NextState(&Klayman::stWalkingExt);
|
||||
FinalizeState(&Klayman::evStartWalkingDone);
|
||||
NextState(&Klayman::stWalkingFirstExt);
|
||||
}
|
||||
}
|
||||
|
||||
@ -1588,7 +1588,7 @@ void Klayman::stJumpToRing3() {
|
||||
SetUpdateHandler(&Klayman::update);
|
||||
SetSpriteUpdate(&Klayman::suUpdateDestX);
|
||||
SetMessageHandler(&Klayman::hmJumpToRing3);
|
||||
NextState(&Klayman::stHoldRing);
|
||||
NextState(&Klayman::stHoldRing3);
|
||||
sendMessage(_attachedSprite, 0x482B, 0);
|
||||
}
|
||||
}
|
||||
@ -1611,16 +1611,16 @@ uint32 Klayman::hmJumpToRing3(int messageNum, const MessageParam ¶m, Entity
|
||||
return messageResult;
|
||||
}
|
||||
|
||||
void Klayman::stHoldRing() {
|
||||
void Klayman::stHoldRing3() {
|
||||
_status2 = 0;
|
||||
_acceptInput = true;
|
||||
startAnimation(0x4A293FB0, 0, -1);
|
||||
SetUpdateHandler(&Klayman::update);
|
||||
SetMessageHandler(&Klayman::hmHoldRing);
|
||||
SetMessageHandler(&Klayman::hmHoldRing3);
|
||||
SetSpriteUpdate(NULL);
|
||||
}
|
||||
|
||||
uint32 Klayman::hmHoldRing(int messageNum, const MessageParam ¶m, Entity *sender) {
|
||||
uint32 Klayman::hmHoldRing3(int messageNum, const MessageParam ¶m, Entity *sender) {
|
||||
if (messageNum == 0x1008) {
|
||||
stReleaseRing();
|
||||
return 0;
|
||||
@ -1702,21 +1702,21 @@ void Klayman::stClimbLadderHalf() {
|
||||
_acceptInput = false;
|
||||
startAnimationByHash(0x3A292504, 0x02421405, 0);
|
||||
SetUpdateHandler(&Klayman::update);
|
||||
SetMessageHandler(&Klayman::handleMessage41DFD0);
|
||||
SetMessageHandler(&Klayman::hmClimbLadderHalf);
|
||||
SetSpriteUpdate(&Klayman::suUpdateDestX);
|
||||
} else if (_ladderStatus == 2) {
|
||||
_ladderStatus = 0;
|
||||
_acceptInput = false;
|
||||
startAnimationByHash(0x122D1505, 0x02421405, 0);
|
||||
SetUpdateHandler(&Klayman::update);
|
||||
SetMessageHandler(&Klayman::handleMessage41DFD0);
|
||||
SetMessageHandler(&Klayman::hmClimbLadderHalf);
|
||||
SetSpriteUpdate(&Klayman::suUpdateDestX);
|
||||
} else {
|
||||
gotoNextStateExt();
|
||||
}
|
||||
}
|
||||
|
||||
uint32 Klayman::handleMessage41DFD0(int messageNum, const MessageParam ¶m, Entity *sender) {
|
||||
uint32 Klayman::hmClimbLadderHalf(int messageNum, const MessageParam ¶m, Entity *sender) {
|
||||
uint32 messageResult = hmLowLevelAnimation(messageNum, param, sender);
|
||||
switch (messageNum) {
|
||||
case 0x100D:
|
||||
@ -2077,10 +2077,10 @@ void Klayman::stReleaseLever() {
|
||||
|
||||
void Klayman::stLetGoOfLever() {
|
||||
startAnimation(0x0928C048, 0, -1);
|
||||
FinalizeState(&Klayman::cbLeverReleasedEvent);
|
||||
FinalizeState(&Klayman::evLeverReleasedEvent);
|
||||
}
|
||||
|
||||
void Klayman::cbLeverReleasedEvent() {
|
||||
void Klayman::evLeverReleasedEvent() {
|
||||
sendMessage(_attachedSprite, 0x482A, 0);
|
||||
}
|
||||
|
||||
@ -2101,7 +2101,7 @@ void Klayman::stInsertDisk() {
|
||||
} else {
|
||||
startAnimation(0xD8C8D100, 0, -1);
|
||||
SetUpdateHandler(&Klayman::update);
|
||||
SetSpriteUpdate(&Klayman::spriteUpdate41F250);
|
||||
SetSpriteUpdate(&Klayman::suAction);
|
||||
SetMessageHandler(&Klayman::hmInsertDisk);
|
||||
_acceptInput = false;
|
||||
_tapesToInsert--;
|
||||
@ -2249,8 +2249,8 @@ void Klayman::stJumpToGrabRelease() {
|
||||
_acceptInput = false;
|
||||
startAnimationByHash(0x00AB8C10, 0x320AC306, 0);
|
||||
SetUpdateHandler(&Klayman::update);
|
||||
SetSpriteUpdate(NULL);
|
||||
SetMessageHandler(&Klayman::hmJumpToGrabRelease);
|
||||
SetSpriteUpdate(NULL);
|
||||
NextState(&Klayman::stReleaseRing);
|
||||
}
|
||||
|
||||
@ -2276,7 +2276,7 @@ void Klayman::stIdleTeleporterHands() {
|
||||
SetUpdateHandler(&Klayman::update);
|
||||
SetMessageHandler(&Klayman::hmLowLevelAnimation);
|
||||
SetSpriteUpdate(NULL);
|
||||
NextState(&Klayman::stIdleSitBlinkSecond);
|
||||
NextState(&Klayman::stSitIdleTeleporterBlinkSecond);
|
||||
}
|
||||
|
||||
void Klayman::stDoIdleTeleporterHands2() {
|
||||
@ -2290,7 +2290,7 @@ void Klayman::stIdleTeleporterHands2() {
|
||||
SetUpdateHandler(&Klayman::update);
|
||||
SetMessageHandler(&Klayman::hmLowLevelAnimation);
|
||||
SetSpriteUpdate(NULL);
|
||||
NextState(&Klayman::stIdleSitBlinkSecond);
|
||||
NextState(&Klayman::stSitIdleTeleporterBlinkSecond);
|
||||
}
|
||||
|
||||
void Klayman::teleporterAppear(uint32 fileHash) {
|
||||
@ -2519,7 +2519,7 @@ void Klayman::stInsertKey() {
|
||||
_acceptInput = false;
|
||||
startAnimation(0xDC409440, 0, -1);
|
||||
SetUpdateHandler(&Klayman::update);
|
||||
SetSpriteUpdate(&Klayman::spriteUpdate41F250);
|
||||
SetSpriteUpdate(&Klayman::suAction);
|
||||
SetMessageHandler(&Klayman::hmInsertKey);
|
||||
_keysToInsert--;
|
||||
}
|
||||
@ -2676,7 +2676,7 @@ void Klayman::suRidePlatformDown() {
|
||||
}
|
||||
|
||||
void Klayman::stRidePlatformDown() {
|
||||
if (!stStartActionFromIdle(AnimationCallback(&KmScene2206::stRidePlatformDown))) {
|
||||
if (!stStartActionFromIdle(AnimationCallback(&Klayman::stRidePlatformDown))) {
|
||||
_status2 = 1;
|
||||
sendMessage(_parentScene, 0x4803, 0);
|
||||
_acceptInput = false;
|
||||
@ -2697,7 +2697,7 @@ void Klayman::stCrashDown() {
|
||||
SetUpdateHandler(&Klayman::update);
|
||||
SetSpriteUpdate(NULL);
|
||||
SetMessageHandler(&Klayman::hmLowLevelAnimation);
|
||||
NextState(&KmScene1305::stCrashDownFinished);
|
||||
NextState(&Klayman::stCrashDownFinished);
|
||||
}
|
||||
|
||||
void Klayman::stCrashDownFinished() {
|
||||
@ -2902,6 +2902,18 @@ void Klayman::stSpitOutFall0() {
|
||||
sendMessage(_parentScene, 0x8000, 0);
|
||||
}
|
||||
|
||||
void Klayman::stSpitOutFall2() {
|
||||
_countdown1 = 1;
|
||||
_status2 = 0;
|
||||
_acceptInput = false;
|
||||
startAnimation(0x9308C132, 0, -1);
|
||||
SetUpdateHandler(&Klayman::upSpitOutFall);
|
||||
SetMessageHandler(&Klayman::hmLowLevelAnimation);
|
||||
SetSpriteUpdate(&Klayman::suFallDown);
|
||||
NextState(&Klayman::stFalling);
|
||||
sendMessage(_parentScene, 0x8000, 0);
|
||||
}
|
||||
|
||||
void Klayman::stFalling() {
|
||||
sendMessage(_parentScene, 0x1024, 1);
|
||||
playSound(0, 0x41648271);
|
||||
@ -2919,18 +2931,6 @@ void Klayman::stFalling() {
|
||||
sendMessage(_parentScene, 0x8001, 0);
|
||||
}
|
||||
|
||||
void Klayman::stSpitOutFall2() {
|
||||
_countdown1 = 1;
|
||||
_status2 = 0;
|
||||
_acceptInput = false;
|
||||
startAnimation(0x9308C132, 0, -1);
|
||||
SetUpdateHandler(&Klayman::upSpitOutFall);
|
||||
SetMessageHandler(&Klayman::hmLowLevelAnimation);
|
||||
SetSpriteUpdate(&Klayman::suFallDown);
|
||||
NextState(&Klayman::stFalling);
|
||||
sendMessage(_parentScene, 0x8000, 0);
|
||||
}
|
||||
|
||||
void Klayman::stFallTouchdown() {
|
||||
setDoDeltaX(2);
|
||||
stTryStandIdle();
|
||||
@ -2971,7 +2971,7 @@ void Klayman::stPressDoorButton() {
|
||||
startAnimation(0x1CD89029, 0, -1);
|
||||
SetUpdateHandler(&Klayman::update);
|
||||
SetMessageHandler(&Klayman::hmPressDoorButton);
|
||||
SetSpriteUpdate(&Klayman::spriteUpdate41F250);
|
||||
SetSpriteUpdate(&Klayman::suAction);
|
||||
}
|
||||
|
||||
void Klayman::stHitByBoxingGlove() {
|
||||
@ -2981,10 +2981,10 @@ void Klayman::stHitByBoxingGlove() {
|
||||
SetUpdateHandler(&Klayman::update);
|
||||
SetMessageHandler(&Klayman::hmHitByBoxingGlove);
|
||||
SetSpriteUpdate(&AnimatedSprite::updateDeltaXY);
|
||||
FinalizeState(&Klayman::stHitByBoxingGloveDone);
|
||||
FinalizeState(&Klayman::evHitByBoxingGloveDone);
|
||||
}
|
||||
|
||||
void Klayman::stHitByBoxingGloveDone() {
|
||||
void Klayman::evHitByBoxingGloveDone() {
|
||||
sendMessage(_parentScene, 0x1024, 1);
|
||||
}
|
||||
|
||||
@ -2998,7 +2998,7 @@ void Klayman::stMoveVenusFlyTrap() {
|
||||
SetUpdateHandler(&Klayman::update);
|
||||
SetMessageHandler(&Klayman::hmMoveVenusFlyTrap);
|
||||
SetSpriteUpdate(&AnimatedSprite::updateDeltaXY);
|
||||
FinalizeState(&Klayman::stMoveVenusFlyTrapDone);
|
||||
FinalizeState(&Klayman::evMoveVenusFlyTrapDone);
|
||||
}
|
||||
}
|
||||
|
||||
@ -3009,10 +3009,10 @@ void Klayman::stContinueMovingVenusFlyTrap() {
|
||||
SetUpdateHandler(&Klayman::update);
|
||||
SetMessageHandler(&Klayman::hmMoveVenusFlyTrap);
|
||||
SetSpriteUpdate(&AnimatedSprite::updateDeltaXY);
|
||||
FinalizeState(&Klayman::stMoveVenusFlyTrapDone);
|
||||
FinalizeState(&Klayman::evMoveVenusFlyTrapDone);
|
||||
}
|
||||
|
||||
void Klayman::stMoveVenusFlyTrapDone() {
|
||||
void Klayman::evMoveVenusFlyTrapDone() {
|
||||
sendMessage(_attachedSprite, 0x482A, 0);
|
||||
}
|
||||
|
||||
@ -3292,9 +3292,9 @@ void Klayman::startWalkingResume(int16 frameIncr) {
|
||||
startAnimation(0x1A249001, frameIndex, -1);
|
||||
SetUpdateHandler(&Klayman::update);
|
||||
SetMessageHandler(&Klayman::hmWalking);
|
||||
SetSpriteUpdate(&Klayman::spriteUpdate41F300);
|
||||
NextState(&Klayman::stUpdateWalking);
|
||||
FinalizeState(&Klayman::stStartWalkingDone);
|
||||
SetSpriteUpdate(&Klayman::suWalkingFirst);
|
||||
NextState(&Klayman::stUpdateWalkingFirst);
|
||||
FinalizeState(&Klayman::evStartWalkingDone);
|
||||
}
|
||||
|
||||
//##############################################################################
|
||||
@ -3326,9 +3326,9 @@ uint32 KmScene1001::xHandleMessage(int messageNum, const MessageParam ¶m) {
|
||||
break;
|
||||
case NM_KLAYMAN_PRESS_BUTTON:
|
||||
if (param.asInteger() == 1) {
|
||||
GotoState(&Klayman::stTurnPressButton);
|
||||
GotoState(&Klayman::stPressButton);
|
||||
} else if (param.asInteger() == 2) {
|
||||
GotoState(&Klayman::stStampFloorButton);
|
||||
GotoState(&Klayman::stPressFloorButton);
|
||||
} else {
|
||||
GotoState(&Klayman::stPressButtonSide);
|
||||
}
|
||||
@ -3592,7 +3592,7 @@ uint32 KmScene1109::xHandleMessage(int messageNum, const MessageParam ¶m) {
|
||||
case 0x4804:
|
||||
if (param.asInteger() != 0) {
|
||||
_destX = param.asInteger();
|
||||
GotoState(&Klayman::stWalking);
|
||||
GotoState(&Klayman::stWalkingFirst);
|
||||
} else {
|
||||
GotoState(&Klayman::stPeekWall);
|
||||
}
|
||||
@ -3838,9 +3838,9 @@ uint32 KmScene1306::xHandleMessage(int messageNum, const MessageParam ¶m) {
|
||||
break;
|
||||
case NM_KLAYMAN_PRESS_BUTTON:
|
||||
if (param.asInteger() == 1) {
|
||||
GotoState(&Klayman::stTurnPressButton);
|
||||
GotoState(&Klayman::stPressButton);
|
||||
} else if (param.asInteger() == 2) {
|
||||
GotoState(&Klayman::stStampFloorButton);
|
||||
GotoState(&Klayman::stPressFloorButton);
|
||||
} else {
|
||||
GotoState(&Klayman::stPressButtonSide);
|
||||
}
|
||||
@ -4031,9 +4031,9 @@ uint32 KmScene1401::xHandleMessage(int messageNum, const MessageParam ¶m) {
|
||||
break;
|
||||
case NM_KLAYMAN_PRESS_BUTTON:
|
||||
if (param.asInteger() == 1) {
|
||||
GotoState(&Klayman::stTurnPressButton);
|
||||
GotoState(&Klayman::stPressButton);
|
||||
} else if (param.asInteger() == 2) {
|
||||
GotoState(&Klayman::stStampFloorButton);
|
||||
GotoState(&Klayman::stPressFloorButton);
|
||||
} else {
|
||||
GotoState(&Klayman::stPressButtonSide);
|
||||
}
|
||||
@ -4510,7 +4510,7 @@ uint32 KmScene2001::xHandleMessage(int messageNum, const MessageParam ¶m) {
|
||||
case 0x4804:
|
||||
if (param.asInteger() != 0) {
|
||||
_destX = param.asInteger();
|
||||
GotoState(&Klayman::stWalking);
|
||||
GotoState(&Klayman::stWalkingFirst);
|
||||
} else
|
||||
GotoState(&Klayman::stPeekWall);
|
||||
break;
|
||||
@ -4587,9 +4587,9 @@ uint32 KmScene2101::xHandleMessage(int messageNum, const MessageParam ¶m) {
|
||||
break;
|
||||
case NM_KLAYMAN_PRESS_BUTTON:
|
||||
if (param.asInteger() == 1) {
|
||||
GotoState(&Klayman::stTurnPressButton);
|
||||
GotoState(&Klayman::stPressButton);
|
||||
} else if (param.asInteger() == 2) {
|
||||
GotoState(&Klayman::stStampFloorButton);
|
||||
GotoState(&Klayman::stPressFloorButton);
|
||||
} else {
|
||||
GotoState(&Klayman::stPressButtonSide);
|
||||
}
|
||||
@ -4734,9 +4734,9 @@ uint32 KmScene2203::xHandleMessage(int messageNum, const MessageParam ¶m) {
|
||||
break;
|
||||
case NM_KLAYMAN_PRESS_BUTTON:
|
||||
if (param.asInteger() == 1) {
|
||||
GotoState(&Klayman::stTurnPressButton);
|
||||
GotoState(&Klayman::stPressButton);
|
||||
} else if (param.asInteger() == 2) {
|
||||
GotoState(&Klayman::stStampFloorButton);
|
||||
GotoState(&Klayman::stPressFloorButton);
|
||||
} else {
|
||||
GotoState(&Klayman::stPressButtonSide);
|
||||
}
|
||||
@ -4836,6 +4836,7 @@ void KmScene2205::stStartWalkingResume() {
|
||||
KmScene2206::KmScene2206(NeverhoodEngine *vm, Entity *parentScene, int16 x, int16 y)
|
||||
: Klayman(vm, parentScene, x, y, 1000, 1000) {
|
||||
|
||||
_walkResumeFrameIncr = 1;
|
||||
_vm->_soundMan->addSound(0x80101800, 0xD3B02847);
|
||||
}
|
||||
|
||||
@ -4876,9 +4877,9 @@ uint32 KmScene2206::xHandleMessage(int messageNum, const MessageParam ¶m) {
|
||||
break;
|
||||
case NM_KLAYMAN_PRESS_BUTTON:
|
||||
if (param.asInteger() == 1) {
|
||||
GotoState(&Klayman::stTurnPressButton);
|
||||
GotoState(&Klayman::stPressButton);
|
||||
} else if (param.asInteger() == 2) {
|
||||
GotoState(&Klayman::stStampFloorButton);
|
||||
GotoState(&Klayman::stPressFloorButton);
|
||||
} else {
|
||||
GotoState(&Klayman::stPressButtonSide);
|
||||
}
|
||||
@ -4971,9 +4972,9 @@ uint32 KmScene2207::xHandleMessage(int messageNum, const MessageParam ¶m) {
|
||||
break;
|
||||
case NM_KLAYMAN_PRESS_BUTTON:
|
||||
if (param.asInteger() == 1) {
|
||||
GotoState(&Klayman::stTurnPressButton);
|
||||
GotoState(&Klayman::stPressButton);
|
||||
} else if (param.asInteger() == 2) {
|
||||
GotoState(&Klayman::stStampFloorButton);
|
||||
GotoState(&Klayman::stPressFloorButton);
|
||||
} else {
|
||||
GotoState(&Klayman::stPressButtonSide);
|
||||
}
|
||||
@ -5213,9 +5214,9 @@ uint32 KmScene2401::xHandleMessage(int messageNum, const MessageParam ¶m) {
|
||||
break;
|
||||
case NM_KLAYMAN_PRESS_BUTTON:
|
||||
if (param.asInteger() == 1) {
|
||||
GotoState(&Klayman::stTurnPressButton);
|
||||
GotoState(&Klayman::stPressButton);
|
||||
} else if (param.asInteger() == 2) {
|
||||
GotoState(&Klayman::stStampFloorButton);
|
||||
GotoState(&Klayman::stPressFloorButton);
|
||||
} else {
|
||||
GotoState(&Klayman::stPressButtonSide);
|
||||
}
|
||||
@ -5300,7 +5301,7 @@ uint32 KmScene2402::xHandleMessage(int messageNum, const MessageParam ¶m) {
|
||||
case 0x4804:
|
||||
if (param.asInteger() != 0) {
|
||||
_destX = param.asInteger();
|
||||
GotoState(&Klayman::stWalking);
|
||||
GotoState(&Klayman::stWalkingFirst);
|
||||
} else {
|
||||
GotoState(&Klayman::stPeekWall);
|
||||
}
|
||||
@ -5310,9 +5311,9 @@ uint32 KmScene2402::xHandleMessage(int messageNum, const MessageParam ¶m) {
|
||||
break;
|
||||
case NM_KLAYMAN_PRESS_BUTTON:
|
||||
if (param.asInteger() == 1) {
|
||||
GotoState(&Klayman::stTurnPressButton);
|
||||
GotoState(&Klayman::stPressButton);
|
||||
} else if (param.asInteger() == 2) {
|
||||
GotoState(&Klayman::stStampFloorButton);
|
||||
GotoState(&Klayman::stPressFloorButton);
|
||||
} else {
|
||||
GotoState(&Klayman::stPressButtonSide);
|
||||
}
|
||||
@ -5374,9 +5375,9 @@ uint32 KmScene2403::xHandleMessage(int messageNum, const MessageParam ¶m) {
|
||||
break;
|
||||
case NM_KLAYMAN_PRESS_BUTTON:
|
||||
if (param.asInteger() == 1) {
|
||||
GotoState(&Klayman::stTurnPressButton);
|
||||
GotoState(&Klayman::stPressButton);
|
||||
} else if (param.asInteger() == 2) {
|
||||
GotoState(&Klayman::stStampFloorButton);
|
||||
GotoState(&Klayman::stPressFloorButton);
|
||||
} else {
|
||||
GotoState(&Klayman::stPressButtonSide);
|
||||
}
|
||||
@ -5455,7 +5456,7 @@ uint32 KmScene2406::xHandleMessage(int messageNum, const MessageParam ¶m) {
|
||||
case 0x4804:
|
||||
if (param.asInteger() != 0) {
|
||||
_destX = param.asInteger();
|
||||
GotoState(&Klayman::stWalking);
|
||||
GotoState(&Klayman::stWalkingFirst);
|
||||
} else {
|
||||
GotoState(&Klayman::stPeekWall);
|
||||
}
|
||||
|
@ -52,87 +52,311 @@ public:
|
||||
|
||||
void update();
|
||||
|
||||
void startIdleAnimation(uint32 fileHash, AnimationCb callback);
|
||||
void upIdleAnimation();
|
||||
|
||||
void stDoIdlePickEar();
|
||||
void stIdlePickEar();
|
||||
void evIdlePickEarDone();
|
||||
uint32 hmIdlePickEar(int messageNum, const MessageParam ¶m, Entity *sender);
|
||||
|
||||
void stDoIdleSpinHead();
|
||||
void stIdleSpinHead();
|
||||
uint32 hmIdleSpinHead(int messageNum, const MessageParam ¶m, Entity *sender);
|
||||
|
||||
void stDoIdleArms();
|
||||
void stIdleArms();
|
||||
void evIdleArmsDone();
|
||||
uint32 hmIdleArms(int messageNum, const MessageParam ¶m, Entity *sender);
|
||||
|
||||
void stDoIdleChest();
|
||||
void stIdleChest();
|
||||
uint32 hmIdleChest(int messageNum, const MessageParam ¶m, Entity *sender);
|
||||
|
||||
void stDoIdleHeadOff();
|
||||
void stIdleHeadOff();
|
||||
uint32 hmIdleHeadOff(int messageNum, const MessageParam ¶m, Entity *sender);
|
||||
|
||||
void stDoIdleTeleporterHands();
|
||||
void stIdleTeleporterHands();
|
||||
|
||||
void stDoIdleTeleporterHands2();
|
||||
void stIdleTeleporterHands2();
|
||||
|
||||
void stTryStandIdle();
|
||||
void stWakeUp();
|
||||
void stSleeping();
|
||||
void stPickUpGeneric();
|
||||
void stTurnPressButton();
|
||||
void stStampFloorButton();
|
||||
void stPressButtonSide();
|
||||
void stLargeStep();
|
||||
void stWonderAboutHalf();
|
||||
void stWonderAboutAfter();
|
||||
void stTurnToUseHalf();
|
||||
void stTurnAwayFromUse();
|
||||
void stWonderAbout();
|
||||
void stPeekWall();
|
||||
void stJumpToRing1();
|
||||
void setupJumpToRing();
|
||||
void stHangOnRing();
|
||||
void stJumpToRing2();
|
||||
void stJumpToRing3();
|
||||
void stHoldRing();
|
||||
void stReleaseRing();
|
||||
void stJumpToRing4();
|
||||
void stContinueClimbLadderUp();
|
||||
void stStartClimbLadderDown();
|
||||
void stClimbLadderHalf();
|
||||
void stStartClimbLadderUp();
|
||||
void stStandAround();
|
||||
void upStandIdle();
|
||||
void stIdleBlink();
|
||||
|
||||
bool stStartAction(AnimationCb callback3);
|
||||
bool stStartActionFromIdle(AnimationCb callback);
|
||||
uint32 hmStartAction(int messageNum, const MessageParam ¶m, Entity *sender);
|
||||
|
||||
void stSneak();
|
||||
uint32 hmSneaking(int messageNum, const MessageParam ¶m, Entity *sender);
|
||||
void suSneaking();
|
||||
void evSneakingDone();
|
||||
|
||||
void stStartWalking();
|
||||
void stStartWalkingExt();
|
||||
void stWalkingOpenDoor();
|
||||
void suWalkingOpenDoor();
|
||||
void stStepOver();
|
||||
uint32 hmStartWalking(int messageNum, const MessageParam ¶m, Entity *sender);
|
||||
void evStartWalkingDone();
|
||||
|
||||
void stWalkingFirst();
|
||||
void stWalkingFirstExt();
|
||||
void startWalkingResume(int16 frameIncr);
|
||||
void stUpdateWalkingFirst();
|
||||
uint32 hmWalking(int messageNum, const MessageParam ¶m, Entity *sender);
|
||||
void suWalkingFirst();
|
||||
|
||||
void stWalkToFrontNoStep();
|
||||
void stWalkToFront();
|
||||
void stTurnToFront();
|
||||
void stTurnToBack();
|
||||
void stLandOnFeet();
|
||||
uint32 hmWalkToFront(int messageNum, const MessageParam ¶m, Entity *sender);
|
||||
|
||||
void stTurnToBackToUse();
|
||||
void stClayDoorOpen();
|
||||
void stTurnToUse();
|
||||
void stReturnFromUse();
|
||||
void stWalkingOpenDoor();
|
||||
void stSitIdleTeleporter();
|
||||
void stIdleSitBlink();
|
||||
void stIdleSitBlinkSecond();
|
||||
uint32 hmTurnToBackToUse(int messageNum, const MessageParam ¶m, Entity *sender);
|
||||
|
||||
void stPickUpGeneric();
|
||||
void stPickUpNeedle();
|
||||
uint32 hmPickUpObject(int messageNum, const MessageParam ¶m, Entity *sender);
|
||||
|
||||
void stPickUpTube();
|
||||
void stTurnToUseInTeleporter();
|
||||
void stReturnFromUseInTeleporter();
|
||||
void stStepOver();
|
||||
void stSitInTeleporter();
|
||||
void stGetUpFromTeleporter();
|
||||
void stMoveObjectSkipTurnFaceObject();
|
||||
void evMoveObjectTurnDone();
|
||||
void stMoveObjectSkipTurn();
|
||||
void stMoveObjectFaceObject();
|
||||
uint32 hmPickUpTube(int messageNum, const MessageParam ¶m, Entity *sender);
|
||||
|
||||
void stTurnToUse();
|
||||
void stTurnToUseHalf();
|
||||
void stTurnAwayFromUse();
|
||||
void stReturnFromUse();
|
||||
void stTurnToUseExt();
|
||||
uint32 hmTurnToUse(int messageNum, const MessageParam ¶m, Entity *sender);
|
||||
|
||||
void stLargeStep();
|
||||
uint32 hmLargeStep(int messageNum, const MessageParam ¶m, Entity *sender);
|
||||
|
||||
void stInsertKey();
|
||||
uint32 hmInsertKey(int messageNum, const MessageParam ¶m, Entity *sender);
|
||||
|
||||
void stReadNote();
|
||||
uint32 hmReadNote(int messageNum, const MessageParam ¶m, Entity *sender);
|
||||
|
||||
void stHitByDoor();
|
||||
uint32 hmHitByDoor(int messageNum, const MessageParam ¶m, Entity *sender);
|
||||
|
||||
void stPeekWall();
|
||||
uint32 hmPeekWall(int messageNum, const MessageParam ¶m, Entity *sender);
|
||||
|
||||
void stPeekWallReturn();
|
||||
uint32 hmPeekWallReturn(int messageNum, const MessageParam ¶m, Entity *sender);
|
||||
|
||||
void stPeekWallBlink();
|
||||
void upPeekWallBlink();
|
||||
|
||||
void stPeekWall1();
|
||||
|
||||
void stPeekWall2();
|
||||
|
||||
void stPullHammerLever();
|
||||
uint32 hmPullHammerLever(int messageNum, const MessageParam ¶m, Entity *sender);
|
||||
|
||||
void stRidePlatformDown();
|
||||
void suRidePlatformDown();
|
||||
|
||||
void stCrashDown();
|
||||
void stCrashDownFinished();
|
||||
|
||||
void stShrink();
|
||||
uint32 hmShrink(int messageNum, const MessageParam ¶m, Entity *sender);
|
||||
|
||||
void stGrow();
|
||||
uint32 hmGrow(int messageNum, const MessageParam ¶m, Entity *sender);
|
||||
|
||||
void stDrinkPotion();
|
||||
uint32 hmDrinkPotion(int messageNum, const MessageParam ¶m, Entity *sender);
|
||||
|
||||
void stPullCord();
|
||||
void stReleaseCord();
|
||||
uint32 hmPullReleaseCord(int messageNum, const MessageParam ¶m, Entity *sender);
|
||||
|
||||
void stUseTube();
|
||||
uint32 hmUseTube(int messageNum, const MessageParam ¶m, Entity *sender);
|
||||
|
||||
void stUseLever();
|
||||
void stPullLeverDown();
|
||||
void stHoldLeverDown();
|
||||
void stUseLeverRelease();
|
||||
void stReleaseLever();
|
||||
void stInteractLever();
|
||||
uint32 hmLever(int messageNum, const MessageParam ¶m, Entity *sender);
|
||||
|
||||
void stLetGoOfLever();
|
||||
void cbLeverReleasedEvent();
|
||||
void evLeverReleasedEvent();
|
||||
|
||||
void stWakeUp();
|
||||
|
||||
void stSleeping();
|
||||
uint32 hmSleeping(int messageNum, const MessageParam ¶m, Entity *sender);
|
||||
|
||||
void stPressButton();
|
||||
void stPressFloorButton();
|
||||
void stPressButtonSide();
|
||||
uint32 hmPressButton(int messageNum, const MessageParam ¶m, Entity *sender);
|
||||
|
||||
void stWonderAbout();
|
||||
void stWonderAboutHalf();
|
||||
void stWonderAboutAfter();
|
||||
|
||||
void stStandWonderAbout();
|
||||
|
||||
void stStartClimbLadderUp();
|
||||
void stStartClimbLadderDown();
|
||||
uint32 hmClimbLadderUpDown(int messageNum, const MessageParam ¶m, Entity *sender);
|
||||
|
||||
void stContinueClimbLadderUp();
|
||||
|
||||
void stClimbLadderHalf();
|
||||
uint32 hmClimbLadderHalf(int messageNum, const MessageParam ¶m, Entity *sender);
|
||||
|
||||
void setupJumpToRing();
|
||||
void stJumpToRing1();
|
||||
void stJumpToRing2();
|
||||
void stJumpToRing4();
|
||||
uint32 hmJumpToRing(int messageNum, const MessageParam ¶m, Entity *sender);
|
||||
|
||||
void stHangOnRing();
|
||||
|
||||
void stJumpToRing3();
|
||||
uint32 hmJumpToRing3(int messageNum, const MessageParam ¶m, Entity *sender);
|
||||
|
||||
void stHoldRing3();
|
||||
uint32 hmHoldRing3(int messageNum, const MessageParam ¶m, Entity *sender);
|
||||
|
||||
void stReleaseRing();
|
||||
|
||||
void stLandOnFeet();
|
||||
uint32 hmLandOnFeet(int messageNum, const MessageParam ¶m, Entity *sender);
|
||||
|
||||
void stPullLeverDown();
|
||||
void stHoldLeverDown();
|
||||
|
||||
void stInsertDisk();
|
||||
void stWalking();
|
||||
void stUpdateWalking();
|
||||
void stStartWalkingDone();
|
||||
uint32 hmInsertDisk(int messageNum, const MessageParam ¶m, Entity *sender);
|
||||
|
||||
void stMoveObjectSkipTurnFaceObject();
|
||||
void stMoveObjectSkipTurn();
|
||||
void stMoveObjectFaceObject();
|
||||
uint32 hmMoveObjectTurn(int messageNum, const MessageParam ¶m, Entity *sender);
|
||||
void evMoveObjectTurnDone();
|
||||
|
||||
void stJumpToGrab();
|
||||
void stJumpToGrabFall();
|
||||
uint32 hmJumpToGrab(int messageNum, const MessageParam ¶m, Entity *sender);
|
||||
void suJumpToGrab();
|
||||
|
||||
void stJumpToGrabRelease();
|
||||
uint32 hmJumpToGrabRelease(int messageNum, const MessageParam ¶m, Entity *sender);
|
||||
|
||||
void stSitInTeleporter();
|
||||
uint32 hmSitInTeleporter(int messageNum, const MessageParam ¶m, Entity *sender);
|
||||
|
||||
void stSitIdleTeleporter();
|
||||
void upSitIdleTeleporter();
|
||||
|
||||
void stSitIdleTeleporterBlink();
|
||||
|
||||
void stSitIdleTeleporterBlinkSecond();
|
||||
|
||||
void stTurnToUseInTeleporter();
|
||||
|
||||
void stReturnFromUseInTeleporter();
|
||||
|
||||
void stGetUpFromTeleporter();
|
||||
|
||||
void teleporterAppear(uint32 fileHash);
|
||||
void teleporterDisappear(uint32 fileHash);
|
||||
uint32 hmTeleporterAppearDisappear(int messageNum, const MessageParam ¶m, Entity *sender);
|
||||
|
||||
void stClayDoorOpen();
|
||||
uint32 hmClayDoorOpen(int messageNum, const MessageParam ¶m, Entity *sender);
|
||||
|
||||
void stFallSkipJump();
|
||||
void suFallSkipJump();
|
||||
|
||||
void stMoveObject();
|
||||
void stContinueMoveObject();
|
||||
uint32 hmMoveObject(int messageNum, const MessageParam ¶m, Entity *sender);
|
||||
void upMoveObject();
|
||||
|
||||
void stCloseEyes();
|
||||
|
||||
void stTumbleHeadless();
|
||||
uint32 hmTumbleHeadless(int messageNum, const MessageParam ¶m, Entity *sender);
|
||||
|
||||
void stFetchMatch();
|
||||
void stLightMatch();
|
||||
uint32 hmMatch(int messageNum, const MessageParam ¶m, Entity *sender);
|
||||
|
||||
void stHitByBoxingGlove();
|
||||
uint32 hmHitByBoxingGlove(int messageNum, const MessageParam ¶m, Entity *sender);
|
||||
void evHitByBoxingGloveDone();
|
||||
|
||||
void stStandIdleSmall();
|
||||
void stWonderAboutSmall();
|
||||
void stWonderAboutHalfSmall();
|
||||
void stWonderAboutAfterSmall();
|
||||
|
||||
void stWalkToFrontNoStepSmall();
|
||||
void stWalkToFrontSmall();
|
||||
void stWalkToFront2Small();
|
||||
void stTurnToBackHalfSmall();
|
||||
void stTurnToBackWalkSmall();
|
||||
void stTurnToBackSmall();
|
||||
uint32 hmWalkFrontBackSmall(int messageNum, const MessageParam ¶m, Entity *sender);
|
||||
|
||||
void sub421230();//stGrow??
|
||||
uint32 handleMessage41F1D0(int messageNum, const MessageParam ¶m, Entity *sender);
|
||||
|
||||
void stJumpToRingVenusFlyTrap();
|
||||
uint32 hmJumpToRingVenusFlyTrap(int messageNum, const MessageParam ¶m, Entity *sender);
|
||||
|
||||
void stDropFromRing();
|
||||
|
||||
void stStandIdleSpecial();
|
||||
uint32 hmStandIdleSpecial(int messageNum, const MessageParam ¶m, Entity *sender);
|
||||
|
||||
void stPressDoorButton();
|
||||
uint32 hmPressDoorButton(int messageNum, const MessageParam ¶m, Entity *sender);
|
||||
|
||||
void stSpitOutFall0();
|
||||
void stSpitOutFall2();
|
||||
void suFallDown();
|
||||
void upSpitOutFall();
|
||||
|
||||
void stJumpAndFall();
|
||||
uint32 hmJumpAndFall(int messageNum, const MessageParam ¶m, Entity *sender);
|
||||
|
||||
void stFalling();
|
||||
void stFallTouchdown();
|
||||
|
||||
void stMoveVenusFlyTrap();
|
||||
void stContinueMovingVenusFlyTrap();
|
||||
uint32 hmMoveVenusFlyTrap(int messageNum, const MessageParam ¶m, Entity *sender);
|
||||
uint32 hmFirstMoveVenusFlyTrap(int messageNum, const MessageParam ¶m, Entity *sender);
|
||||
void evMoveVenusFlyTrapDone();
|
||||
|
||||
////////////////////////////////////////////////////////////////////////////
|
||||
|
||||
void stopWalking();
|
||||
|
||||
void spriteUpdate41F250();
|
||||
void suWalking();
|
||||
void suAction();
|
||||
void suLargeStep();
|
||||
void suUpdateDestX();
|
||||
void suWalkingOpenDoor();
|
||||
void spriteUpdate41F300();
|
||||
void suWalkingTestExit();
|
||||
|
||||
uint32 hmLowLevel(int messageNum, const MessageParam ¶m, Entity *sender);
|
||||
uint32 hmLowLevelAnimation(int messageNum, const MessageParam ¶m, Entity *sender);
|
||||
uint32 hmWalking(int messageNum, const MessageParam ¶m, Entity *sender);
|
||||
uint32 hmLever(int messageNum, const MessageParam ¶m, Entity *sender);
|
||||
|
||||
void setKlaymanIdleTable(const KlaymanIdleTableItem *table, int tableCount);
|
||||
void setKlaymanIdleTable1();
|
||||
@ -141,134 +365,17 @@ public:
|
||||
|
||||
void setSoundFlag(bool value) { _soundFlag = value; }
|
||||
|
||||
void stStandIdleSmall();
|
||||
void stWonderAboutAfterSmall();
|
||||
void stWonderAboutHalfSmall();
|
||||
void stWonderAboutSmall();
|
||||
void stWalkToFrontNoStepSmall();
|
||||
void stWalkToFront2Small();
|
||||
void stWalkToFrontSmall();
|
||||
void stTurnToBackHalfSmall();
|
||||
void stTurnToBackWalkSmall();
|
||||
void stTurnToBackSmall();
|
||||
void stPullCord();
|
||||
void stReleaseCord();
|
||||
uint32 hmPullCord(int messageNum, const MessageParam ¶m, Entity *sender);
|
||||
void stUseTube();
|
||||
uint32 hmUseTube(int messageNum, const MessageParam ¶m, Entity *sender);
|
||||
void stWalkingExt();
|
||||
void stStartWalkingExt();
|
||||
|
||||
void stJumpToGrab();
|
||||
void suJumpToGrab();
|
||||
uint32 hmJumpToGrab(int messageNum, const MessageParam ¶m, Entity *sender);
|
||||
|
||||
void sub421230();//stGrow??
|
||||
uint32 handleMessage41F1D0(int messageNum, const MessageParam ¶m, Entity *sender);
|
||||
|
||||
void stTurnToUseExt();
|
||||
void stJumpToGrabFall();
|
||||
|
||||
void stJumpToGrabRelease();
|
||||
uint32 hmJumpToGrabRelease(int messageNum, const MessageParam ¶m, Entity *sender);
|
||||
|
||||
void stDoIdleTeleporterHands();
|
||||
void stIdleTeleporterHands();
|
||||
|
||||
void stDoIdleTeleporterHands2();
|
||||
void stIdleTeleporterHands2();
|
||||
|
||||
void teleporterAppear(uint32 fileHash);
|
||||
void teleporterDisappear(uint32 fileHash);
|
||||
uint32 hmTeleporterAppearDisappear(int messageNum, const MessageParam ¶m, Entity *sender);
|
||||
|
||||
uint32 hmShrink(int messageNum, const MessageParam ¶m, Entity *sender);
|
||||
void stShrink();
|
||||
|
||||
void stStandWonderAbout();
|
||||
|
||||
uint32 hmDrinkPotion(int messageNum, const MessageParam ¶m, Entity *sender);
|
||||
uint32 hmGrow(int messageNum, const MessageParam ¶m, Entity *sender);
|
||||
void stGrow();
|
||||
void stDrinkPotion();
|
||||
|
||||
uint32 hmInsertKey(int messageNum, const MessageParam ¶m, Entity *sender);
|
||||
void stInsertKey();
|
||||
|
||||
uint32 hmReadNote(int messageNum, const MessageParam ¶m, Entity *sender);
|
||||
void stReadNote();
|
||||
|
||||
uint32 hmHitByDoor(int messageNum, const MessageParam ¶m, Entity *sender);
|
||||
void stHitByDoor();
|
||||
|
||||
uint32 hmPeekWallReturn(int messageNum, const MessageParam ¶m, Entity *sender);
|
||||
void upPeekWallBlink();
|
||||
void stPeekWall1();
|
||||
void stPeekWall2();
|
||||
void stPeekWallBlink();
|
||||
void stPeekWallReturn();
|
||||
|
||||
void stPullHammerLever();
|
||||
uint32 hmPullHammerLever(int messageNum, const MessageParam ¶m, Entity *sender);
|
||||
|
||||
void suRidePlatformDown();
|
||||
void stRidePlatformDown();
|
||||
|
||||
void stCrashDown();
|
||||
void stCrashDownFinished();
|
||||
|
||||
void upSpitOutFall();
|
||||
uint32 hmJumpToRingVenusFlyTrap(int messageNum, const MessageParam ¶m, Entity *sender);
|
||||
uint32 hmStandIdleSpecial(int messageNum, const MessageParam ¶m, Entity *sender);
|
||||
uint32 hmPressDoorButton(int messageNum, const MessageParam ¶m, Entity *sender);
|
||||
uint32 hmMoveVenusFlyTrap(int messageNum, const MessageParam ¶m, Entity *sender);
|
||||
uint32 hmFirstMoveVenusFlyTrap(int messageNum, const MessageParam ¶m, Entity *sender);
|
||||
uint32 hmHitByBoxingGlove(int messageNum, const MessageParam ¶m, Entity *sender);
|
||||
uint32 hmJumpAndFall(int messageNum, const MessageParam ¶m, Entity *sender);
|
||||
void suFallDown();
|
||||
void stJumpToRingVenusFlyTrap();
|
||||
void stStandIdleSpecial();
|
||||
void stSpitOutFall0();
|
||||
void stFalling();
|
||||
void stSpitOutFall2();
|
||||
void stFallTouchdown();
|
||||
void stJumpAndFall();
|
||||
void stDropFromRing();
|
||||
void stPressDoorButton();
|
||||
void stHitByBoxingGlove();
|
||||
void stHitByBoxingGloveDone();
|
||||
void stMoveVenusFlyTrap();
|
||||
void stContinueMovingVenusFlyTrap();
|
||||
void stMoveVenusFlyTrapDone();
|
||||
|
||||
void suFallSkipJump();
|
||||
void stFallSkipJump();
|
||||
|
||||
void upMoveObject();
|
||||
uint32 hmMatch(int messageNum, const MessageParam ¶m, Entity *sender);
|
||||
void stFetchMatch();
|
||||
void stLightMatch();
|
||||
uint32 hmMoveObject(int messageNum, const MessageParam ¶m, Entity *sender);
|
||||
uint32 hmTumbleHeadless(int messageNum, const MessageParam ¶m, Entity *sender);
|
||||
void stMoveObject();
|
||||
void stContinueMoveObject();
|
||||
void stTumbleHeadless();
|
||||
void stCloseEyes();
|
||||
|
||||
uint32 hmSpit(int messageNum, const MessageParam ¶m, Entity *sender);
|
||||
void stTrySpitIntoPipe();
|
||||
void spitIntoPipe();
|
||||
void stTrySpitIntoPipe();
|
||||
void stContSpitIntoPipe();
|
||||
uint32 hmSpit(int messageNum, const MessageParam ¶m, Entity *sender);
|
||||
|
||||
void suRidePlatform();
|
||||
void stRidePlatform();
|
||||
void stInteractLever();
|
||||
void suRidePlatform();
|
||||
void stPullLever();
|
||||
void stLookLeverDown();
|
||||
void stWaitLeverDown();
|
||||
|
||||
void startWalkingResume(int16 frameIncr);
|
||||
|
||||
protected:
|
||||
Entity *_parentScene;
|
||||
Sprite *_attachedSprite;
|
||||
@ -305,6 +412,8 @@ protected:
|
||||
Sprite *_otherSprite;
|
||||
int _idleTableNum;
|
||||
|
||||
int16 _walkResumeFrameIncr;
|
||||
|
||||
int _moveObjectCountdown;
|
||||
|
||||
bool _canSpitPipe;
|
||||
@ -326,77 +435,14 @@ protected:
|
||||
void sub41CC40(int16 x1, int16 x2);
|
||||
void sub41CCE0(int16 x);
|
||||
|
||||
bool stStartActionFromIdle(AnimationCb callback);
|
||||
void gotoNextStateExt();
|
||||
void sub41C770();
|
||||
void sub41C790();
|
||||
|
||||
void stIdlePickEar();
|
||||
void evIdlePickEarDone();
|
||||
uint32 hmIdlePickEar(int messageNum, const MessageParam ¶m, Entity *sender);
|
||||
|
||||
void stIdleSpinHead();
|
||||
uint32 hmIdleSpinHead(int messageNum, const MessageParam ¶m, Entity *sender);
|
||||
|
||||
void stIdleArms();
|
||||
void evIdleArmsDone();
|
||||
uint32 hmIdleArms(int messageNum, const MessageParam ¶m, Entity *sender);
|
||||
|
||||
void stIdleChest();
|
||||
uint32 hmIdleChest(int messageNum, const MessageParam ¶m, Entity *sender);
|
||||
|
||||
void stIdleHeadOff();
|
||||
uint32 hmIdleHeadOff(int messageNum, const MessageParam ¶m, Entity *sender);
|
||||
|
||||
void startIdleAnimation(uint32 fileHash, AnimationCb callback);
|
||||
void upIdleAnimation();
|
||||
|
||||
void upStandIdle();
|
||||
|
||||
void stIdleBlink();
|
||||
void stStandAround();
|
||||
|
||||
uint32 hmStartAction(int messageNum, const MessageParam ¶m, Entity *sender);
|
||||
|
||||
uint32 hmSleeping(int messageNum, const MessageParam ¶m, Entity *sender);
|
||||
|
||||
bool stStartAction(AnimationCb callback3);
|
||||
|
||||
void stSneak();
|
||||
void stWalkingDone();
|
||||
uint32 hmSneaking(int messageNum, const MessageParam ¶m, Entity *sender);
|
||||
void stStartWalking();
|
||||
uint32 hmStartWalking(int messageNum, const MessageParam ¶m, Entity *sender);
|
||||
|
||||
uint32 hmPickUpGeneric(int messageNum, const MessageParam ¶m, Entity *sender);
|
||||
|
||||
uint32 hmPressButton(int messageNum, const MessageParam ¶m, Entity *sender);
|
||||
|
||||
void stLargeStepDone();
|
||||
|
||||
uint32 hmLargeStep(int messageNum, const MessageParam ¶m, Entity *sender);
|
||||
uint32 hmTurnToUse(int messageNum, const MessageParam ¶m, Entity *sender);
|
||||
uint32 hmPeekWall(int messageNum, const MessageParam ¶m, Entity *sender);
|
||||
uint32 hmJumpToRing(int messageNum, const MessageParam ¶m, Entity *sender);
|
||||
uint32 hmJumpToRing3(int messageNum, const MessageParam ¶m, Entity *sender);
|
||||
uint32 hmHoldRing(int messageNum, const MessageParam ¶m, Entity *sender);
|
||||
uint32 handleMessage41DFD0(int messageNum, const MessageParam ¶m, Entity *sender);
|
||||
uint32 hmClimbLadderUpDown(int messageNum, const MessageParam ¶m, Entity *sender);
|
||||
uint32 hmWalkToFront(int messageNum, const MessageParam ¶m, Entity *sender);
|
||||
uint32 hmLandOnFeet(int messageNum, const MessageParam ¶m, Entity *sender);
|
||||
uint32 hmTurnToBackToUse(int messageNum, const MessageParam ¶m, Entity *sender);
|
||||
uint32 hmPickUpTube(int messageNum, const MessageParam ¶m, Entity *sender);
|
||||
uint32 hmSitInTeleporter(int messageNum, const MessageParam ¶m, Entity *sender);
|
||||
uint32 hmMoveObjectTurn(int messageNum, const MessageParam ¶m, Entity *sender);
|
||||
uint32 hmClayDoorOpen(int messageNum, const MessageParam ¶m, Entity *sender);
|
||||
|
||||
void upSitIdleTeleporter();
|
||||
|
||||
uint32 hmInsertDisk(int messageNum, const MessageParam ¶m, Entity *sender);
|
||||
|
||||
void stStartWalkingSmall();
|
||||
uint32 hmWalkingSmall(int messageNum, const MessageParam ¶m, Entity *sender);
|
||||
uint32 hmWalkFrontBackSmall(int messageNum, const MessageParam ¶m, Entity *sender);
|
||||
|
||||
void walkAlongPathPoints();
|
||||
|
||||
|
Loading…
x
Reference in New Issue
Block a user