FULLPIPE: Implement sceneHandler27_batFallLogic()

This commit is contained in:
Eugene Sandulenko 2014-02-05 00:18:11 +02:00
parent 5a1c9bc717
commit a1a4e809f8
2 changed files with 19 additions and 3 deletions

View File

@ -1095,6 +1095,7 @@ namespace Fullpipe {
#define MSG_SC27_STARTBET 2047
#define MSG_SC27_STARTWIPE 2057
#define MSG_SC27_TAKEVENT 4584
#define MV_BTA_FALL 2049
#define MV_MAN27_FLOW 1990
#define MV_MAN27_THROWBET 1989
#define PIC_SC27_HITZONE2 4756
@ -1103,6 +1104,7 @@ namespace Fullpipe {
#define QU_SC27_SHOWBET 3368
#define SND_27_027 4128
#define SND_27_044 4687
#define ST_BTA_FALL 2054
#define ST_DRV_VENT 1996
#define ST_MID_BROOM 2022
#define ST_MID_SPADE 3489

View File

@ -332,10 +332,24 @@ void sceneHandler27_sub07() {
}
}
bool sceneHandler27_batFallLogic(int bat) {
warning("STUB: sceneHandler27_batFallLogic()");
bool sceneHandler27_batFallLogic(int batn) {
Bat *bat = g_vars->scene27_bats[batn];
return false;
int y = (bat->currY - 458.0) * 0.4848484848484849 + 734.0;
if (y >= bat->currX)
return false;
if (bat->currX - y > 15.0 || bat->ani->_statics->_staticsId == ST_BTA_FALL) {
bat->ani->_priority = 2020;
g_vars->scene27_var07.remove_at(batn);
g_vars->scene27_var07.push_back(bat);
} else if (!bat->ani->_movement) {
bat->ani->startAnim(MV_BTA_FALL, 0, -1);
}
return true;
}
bool sceneHandler27_batCalcDistance(int bat1, int bat2) {