SCI: More SongIterator refactoring.

* Added SongIterator::clone()
* got rid of songit_clone()
* removed SIMSG_CLONE and related code
* removed SongIterator::flags
* turned songit_new_tee into TeeSongIterator constructor

svn-id: r39288
This commit is contained in:
Max Horn 2009-03-10 02:41:56 +00:00
parent 073cc060e9
commit 842a42b1bd
4 changed files with 133 additions and 154 deletions

View file

@ -244,7 +244,7 @@ static void _update_single_song(sfx_state_t *self) {
_thaw_time(self); /* Recover song delay time */
if (newsong && player) {
SongIterator *clonesong = songit_clone(newsong->it, newsong->_delay);
SongIterator *clonesong = newsong->it->clone(newsong->_delay);
player->add_iterator(clonesong, newsong->_wakeupTime.msecs());
}
@ -314,7 +314,7 @@ static void _update_multi_song(sfx_state_t *self) {
if (self->debug & SFX_DEBUG_SONGS)
sciprintf("[SFX] Adding song %lx\n", newseeker->it->ID);
SongIterator *clonesong = songit_clone(newseeker->it, newseeker->_delay);
SongIterator *clonesong = newseeker->it->clone(newseeker->_delay);
player->add_iterator(clonesong, g_system->getMillis());
}
_sfx_set_song_status(self, newseeker,