mirror of
https://github.com/libretro/scummvm.git
synced 2025-02-02 17:03:13 +00:00
FULLPIPE: Implement scene24_setPoolState()
This commit is contained in:
parent
0af0d2bc6a
commit
d751e719ac
@ -555,6 +555,12 @@ namespace Fullpipe {
|
||||
#define ANI_DROP_24 3505
|
||||
#define ANI_JET24 1837
|
||||
#define ANI_WATER24 1834
|
||||
#define QU_DRP24_TOFLOOR 3510
|
||||
#define QU_DRP24_TOWATER 3509
|
||||
#define QU_DRP24_TOWATER2 4046
|
||||
#define SND_24_006 4041
|
||||
#define SND_24_007 4042
|
||||
#define ST_DRP24_EMPTY 3507
|
||||
#define ST_WTR24_FLOWLOWER 1843
|
||||
|
||||
} // End of namespace Fullpipe
|
||||
|
@ -625,7 +625,7 @@ bool FullpipeEngine::sceneSwitcher(EntranceInfo *entrance) {
|
||||
scene->initObjectCursors("SC_24");
|
||||
setSceneMusicParameters(sceneVar);
|
||||
addMessageHandler(sceneHandler24, 2);
|
||||
scene24_sub_423DD0();
|
||||
scene24_setPoolState();
|
||||
_updateCursorCallback = defaultUpdateCursor;
|
||||
break;
|
||||
|
||||
|
@ -81,4 +81,26 @@ void scene24_initScene(Scene *sc) {
|
||||
g_fp->_currentScene = oldsc;
|
||||
}
|
||||
|
||||
void scene24_setPoolState() {
|
||||
if (g_fp->getObjectState(sO_Pool) == g_fp->getObjectEnumState(sO_Pool, sO_Overfull)) {
|
||||
g_fp->_behaviorManager->setFlagByStaticAniObject(g_vars->scene24_drop, 0);
|
||||
|
||||
g_fp->playSound(SND_24_007, 1);
|
||||
} else if (g_fp->getObjectState(sO_Pool) == g_fp->getObjectEnumState(sO_Pool, sO_Full)) {
|
||||
g_fp->_behaviorManager->setBehaviorEnabled(g_vars->scene24_drop, ST_DRP24_EMPTY, QU_DRP24_TOFLOOR, 0);
|
||||
g_fp->_behaviorManager->setBehaviorEnabled(g_vars->scene24_drop, ST_DRP24_EMPTY, QU_DRP24_TOWATER, 1);
|
||||
g_fp->_behaviorManager->setBehaviorEnabled(g_vars->scene24_drop, ST_DRP24_EMPTY, QU_DRP24_TOWATER2, 0);
|
||||
|
||||
g_fp->playSound(SND_24_006, 1);
|
||||
} else if (g_fp->getObjectState(sO_Pool) == g_fp->getObjectEnumState(sO_Pool, sO_HalfFull)) {
|
||||
g_fp->_behaviorManager->setBehaviorEnabled(g_vars->scene24_drop, ST_DRP24_EMPTY, QU_DRP24_TOFLOOR, 0);
|
||||
g_fp->_behaviorManager->setBehaviorEnabled(g_vars->scene24_drop, ST_DRP24_EMPTY, QU_DRP24_TOWATER, 0);
|
||||
g_fp->_behaviorManager->setBehaviorEnabled(g_vars->scene24_drop, ST_DRP24_EMPTY, QU_DRP24_TOWATER2, 1);
|
||||
} else {
|
||||
g_fp->_behaviorManager->setBehaviorEnabled(g_vars->scene24_drop, ST_DRP24_EMPTY, QU_DRP24_TOFLOOR, 1);
|
||||
g_fp->_behaviorManager->setBehaviorEnabled(g_vars->scene24_drop, ST_DRP24_EMPTY, QU_DRP24_TOWATER, 0);
|
||||
g_fp->_behaviorManager->setBehaviorEnabled(g_vars->scene24_drop, ST_DRP24_EMPTY, QU_DRP24_TOWATER2, 0);
|
||||
}
|
||||
}
|
||||
|
||||
} // End of namespace Fullpipe
|
||||
|
Loading…
x
Reference in New Issue
Block a user