FULLPIPE: More code to scene25

This commit is contained in:
Eugene Sandulenko 2014-01-05 13:20:22 +02:00
parent 2c4c18ade4
commit 52ec634415
2 changed files with 44 additions and 7 deletions

View File

@ -883,12 +883,19 @@ namespace Fullpipe {
#define PIC_SC25_RTRUBA 1853
#define QU_DRP25_TOFLOOR 3502
#define QU_DRP25_TOWATER 3504
#define QU_SC25_BACKTOTRUBA 2061
#define QU_SC25_ENTERUP_FLOOR 1904
#define QU_SC25_ENTERUP_WATER 1895
#define QU_SC25_LADDERUP 1925
#define QU_SC25_PUTBOARD 1896
#define QU_SC25_TRYWATER 1906
#define SND_25_006 4059
#define SND_25_025 4874
#define SND_25_026 4875
#define SND_25_027 4876
#define SND_25_029 5174
#define ST_DRP25_EMPTY 3501
#define ST_MAN_LADDERDOWN_R 3419
// Scene 30
#define ANI_LEG 2322

View File

@ -137,7 +137,13 @@ void sceneHandler25_startBearders() {
}
void sceneHandler25_enterMan() {
warning("STUB: sceneHandler25_enterMan()");
if (g_vars->scene25_var06) {
chainQueue(QU_SC25_ENTERUP_WATER, 1);
getCurrSceneSc2MotionController()->clearEnabled();
} else {
chainQueue(QU_SC25_ENTERUP_FLOOR, 1);
}
}
void sceneHandler25_enterTruba() {
@ -165,11 +171,26 @@ void sceneHandler25_rowHand() {
}
void sceneHandler25_putBoard() {
warning("STUB: sceneHandler25_putBoard()");
if (g_fp->_aniMan->_statics->_staticsId == ST_MAN_STANDLADDER
|| g_fp->_aniMan->_statics->_staticsId == ST_MAN_LADDERDOWN_R) {
g_fp->_aniMan->changeStatics2(ST_MAN_STANDLADDER);
g_fp->_aniMan->setOXY(281, 481);
chainQueue(QU_SC25_PUTBOARD, 1);
g_vars->scene25_var05 = 1;
g_vars->scene25_var12 = 0;
g_vars->scene25_var07 = 0;
}
}
void sceneHandler25_tryWater() {
warning("STUB: sceneHandler25_tryWater()");
if (g_fp->_aniMan->_statics->_staticsId == ST_MAN_STANDLADDER
|| g_fp->_aniMan->_statics->_staticsId == ST_MAN_LADDERDOWN_R) {
g_fp->_aniMan->changeStatics2(ST_MAN_STANDLADDER);
chainQueue(QU_SC25_TRYWATER, 1);
}
}
void sceneHandler25_tryRow(int code) {
@ -177,11 +198,20 @@ void sceneHandler25_tryRow(int code) {
}
void sceneHandler25_ladderUp() {
warning("STUB: sceneHandler25_ladderUp()");
if (g_fp->_aniMan->_statics->_staticsId == ST_MAN_STANDLADDER
|| g_fp->_aniMan->_statics->_staticsId == ST_MAN_LADDERDOWN_R) {
g_fp->_aniMan->changeStatics2(ST_MAN_STANDLADDER);
chainQueue(QU_SC25_LADDERUP, 1);
}
}
void sceneHandler25_backToPipe() {
warning("STUB: sceneHandler25_backToPipe()");
if (!g_fp->_aniMan->_movement && g_fp->_aniMan->_statics->_staticsId == (ST_MAN_RIGHT|0x4000)) {
g_fp->_aniMan->changeStatics2(ST_MAN_RIGHT|0x4000);
chainQueue(QU_SC25_BACKTOTRUBA, 1);
}
}
void sceneHandler25_sub01() {
@ -198,8 +228,8 @@ void sceneHandler25_sub03() {
warning("STUB: sceneHandler25_sub03()");
}
void sceneHandler25_sub04() {
warning("STUB: sceneHandler25_sub04()");
void sceneHandler25_sub04(int value) {
g_fp->getGameLoaderGameVar()->getSubVarByName("OBJSTATES")->getSubVarByName("SAVEGAME")->setSubVarAsInt("Entrance", value);
}
int sceneHandler25(ExCommand *cmd) {