diff options
author | Paul Gilbert | 2010-04-23 10:28:30 +0000 |
---|---|---|
committer | Paul Gilbert | 2010-04-23 10:28:30 +0000 |
commit | 328d571bba73525174531edcb2f68d28417e9aac (patch) | |
tree | b8b336fa271a3d212b73fbecd6cf609dbf6ac6bb /engines/m4/mads_scene.cpp | |
parent | 1243217547de55a9a83a2fadf88e73406b2769c6 (diff) | |
download | scummvm-rg350-328d571bba73525174531edcb2f68d28417e9aac.tar.gz scummvm-rg350-328d571bba73525174531edcb2f68d28417e9aac.tar.bz2 scummvm-rg350-328d571bba73525174531edcb2f68d28417e9aac.zip |
Implemented extra timer methods and a DynamicHotspots class
svn-id: r48776
Diffstat (limited to 'engines/m4/mads_scene.cpp')
-rw-r--r-- | engines/m4/mads_scene.cpp | 73 |
1 files changed, 0 insertions, 73 deletions
diff --git a/engines/m4/mads_scene.cpp b/engines/m4/mads_scene.cpp index 499ea880af..ad6370e08f 100644 --- a/engines/m4/mads_scene.cpp +++ b/engines/m4/mads_scene.cpp @@ -619,79 +619,6 @@ void MadsAction::set() { /*--------------------------------------------------------------------------*/ -MadsTimerList::MadsTimerList() { - for (int i = 0; i < TIMER_LIST_SIZE; ++i) { - MadsTimerEntry rec; - rec.active = 0; - rec.walkObjectIndex = -1; - _entries.push_back(rec); - } -} - -bool MadsTimerList::unk2(int index, int v1, int v2, int v3) { - if (_entries[index].len27 >= TIMER_ENTRY_SUBSET_MAX) - return true; - - int subIndex = _entries[index].len27++; - _entries[index].fld27[subIndex] = v1; - _entries[index].fld2C[subIndex] = v2; - _entries[index].field36 = v3; - - return false; -} - -int MadsTimerList::add(int spriteListIndex, int v0, int frameIndex, char field_24, int timeoutTicks, int extraTicks, int numTicks, - int height, int width, char field_12, char scale, char depth, int field_C, int field_A, int numSprites, - int spriteNum) { - - // Find a free slot - uint timerIndex = 0; - while ((timerIndex < _entries.size()) && (_entries[timerIndex].active)) - ++timerIndex; - if (timerIndex == _entries.size()) - error("TimerList full"); - - if (spriteNum <= 0) - spriteNum = 1; - if (numSprites == 0) - numSprites = _madsVm->scene()->_spriteSlots.getSprite(spriteListIndex).getCount(); - if (spriteNum == numSprites) - field_C = 0; - - // Set the list entry fields - _entries[timerIndex].active = true; - _entries[timerIndex].spriteListIndex = spriteListIndex; - _entries[timerIndex].field_2 = v0; - _entries[timerIndex].frameIndex = frameIndex; - _entries[timerIndex].spriteNum = spriteNum; - _entries[timerIndex].numSprites = numSprites; - _entries[timerIndex].field_A = field_A; - _entries[timerIndex].field_C = field_C; - _entries[timerIndex].depth = depth; - _entries[timerIndex].scale = scale; - _entries[timerIndex].field_12 = field_12; - _entries[timerIndex].width = width; - _entries[timerIndex].height = height; - _entries[timerIndex].numTicks = numTicks; - _entries[timerIndex].extraTicks = extraTicks; - - _entries[timerIndex].timeout = g_system->getMillis() + timeoutTicks * GAME_FRAME_DELAY; - - _entries[timerIndex].field_24 = field_24; - _entries[timerIndex].field_25 = 0; - _entries[timerIndex].field_13 = 0; - _entries[timerIndex].walkObjectIndex = -1; - _entries[timerIndex].len27 = 0; - _entries[timerIndex].field_3B = 0; //word_84206 - - for (int i = 0; i < 3; ++i) - _entries[timerIndex].actionNouns[i] = _madsVm->scene()->actionNouns[i]; - - return timerIndex; -} - -/*--------------------------------------------------------------------------*/ - void MadsSceneResources::load(int sId) { const char *sceneInfoStr = MADSResourceManager::getResourceName(RESPREFIX_RM, sId, ".DAT"); Common::SeekableReadStream *rawStream = _vm->_resourceManager->get(sceneInfoStr); |