FULLPIPE: Implement sceneHandler04_sub1()
This commit is contained in:
parent
14cb73789e
commit
6a2ee82699
4 changed files with 32 additions and 1 deletions
|
@ -185,6 +185,19 @@ bool BehaviorManager::setBehaviorEnabled(StaticANIObject *obj, int aniId, int qu
|
||||||
return true;
|
return true;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
void BehaviorManager::setFlagByStaticAniObject(StaticANIObject *ani, int flag) {
|
||||||
|
for (uint i = 0; i < _behaviors.size(); i++) {
|
||||||
|
BehaviorInfo *beh = _behaviors[i];
|
||||||
|
|
||||||
|
if (ani == beh->_ani) {
|
||||||
|
if (flag)
|
||||||
|
beh->_flags &= 0xfe;
|
||||||
|
else
|
||||||
|
beh->_flags |= 1;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
void BehaviorInfo::clear() {
|
void BehaviorInfo::clear() {
|
||||||
_ani = 0;
|
_ani = 0;
|
||||||
_staticsId = 0;
|
_staticsId = 0;
|
||||||
|
|
|
@ -79,6 +79,8 @@ class BehaviorManager : public CObject {
|
||||||
void updateStaticAniBehavior(StaticANIObject *ani, int delay, BehaviorEntry *beh);
|
void updateStaticAniBehavior(StaticANIObject *ani, int delay, BehaviorEntry *beh);
|
||||||
|
|
||||||
bool setBehaviorEnabled(StaticANIObject *obj, int aniId, int quId, int flag);
|
bool setBehaviorEnabled(StaticANIObject *obj, int aniId, int quId, int flag);
|
||||||
|
|
||||||
|
void setFlagByStaticAniObject(StaticANIObject *ani, int flag);
|
||||||
};
|
};
|
||||||
|
|
||||||
} // End of namespace Fullpipe
|
} // End of namespace Fullpipe
|
||||||
|
|
|
@ -189,6 +189,7 @@ namespace Fullpipe {
|
||||||
#define QU_PNK_CLICK 550
|
#define QU_PNK_CLICK 550
|
||||||
#define QU_SC3_ENTERLIFT 2779
|
#define QU_SC3_ENTERLIFT 2779
|
||||||
#define QU_SC3_EXITLIFT 2808
|
#define QU_SC3_EXITLIFT 2808
|
||||||
|
#define QU_SC4_MANFROMBOTTLE 2851
|
||||||
#define SC_1 301
|
#define SC_1 301
|
||||||
#define SC_10 653
|
#define SC_10 653
|
||||||
#define SC_11 654
|
#define SC_11 654
|
||||||
|
@ -276,6 +277,7 @@ namespace Fullpipe {
|
||||||
#define ST_LBN_9P 2778
|
#define ST_LBN_9P 2778
|
||||||
#define ST_MAN_EMPTY 476
|
#define ST_MAN_EMPTY 476
|
||||||
#define ST_MAN_RIGHT 325
|
#define ST_MAN_RIGHT 325
|
||||||
|
#define ST_MAN_SIT 1164
|
||||||
#define TrubaDown 697
|
#define TrubaDown 697
|
||||||
#define TrubaLeft 474
|
#define TrubaLeft 474
|
||||||
#define TrubaRight 696
|
#define TrubaRight 696
|
||||||
|
|
|
@ -289,7 +289,21 @@ void sceneHandler04_stopSound() {
|
||||||
}
|
}
|
||||||
|
|
||||||
void sceneHandler04_sub1(ExCommand *ex) {
|
void sceneHandler04_sub1(ExCommand *ex) {
|
||||||
warning("sceneHandler04_sub1()");
|
g_fullpipe->_aniMan->changeStatics2(ST_MAN_SIT);
|
||||||
|
|
||||||
|
MessageQueue *mq = new MessageQueue(g_fullpipe->_currentScene->getMessageQueueById(QU_SC4_MANFROMBOTTLE), 0, 0);
|
||||||
|
|
||||||
|
if (ex) {
|
||||||
|
ExCommand *newex = new ExCommand(ex);
|
||||||
|
|
||||||
|
mq->_exCommands.push_back(newex);
|
||||||
|
}
|
||||||
|
|
||||||
|
mq->_flags |= 1;
|
||||||
|
mq->chain(0);
|
||||||
|
|
||||||
|
g_vars->scene04_var10 = 0;
|
||||||
|
g_fullpipe->_behaviorManager->setFlagByStaticAniObject(g_fullpipe->_aniMan, 1);
|
||||||
}
|
}
|
||||||
|
|
||||||
void sceneHandler04_sub3() {
|
void sceneHandler04_sub3() {
|
||||||
|
|
Loading…
Add table
Add a link
Reference in a new issue