updated some bugs/issues comments and removed wrong 'FIXME' markers.

svn-id: r20975
This commit is contained in:
Gregory Montoir 2006-02-28 22:20:13 +00:00
parent 0b0848e34c
commit e4ac92c2af
5 changed files with 18 additions and 21 deletions

View File

@ -364,19 +364,18 @@ void Cutaway::changeRooms(CutawayObject &object) {
_vm->logic()->oldRoom(_initialRoom);
// FIXME - the first cutaway is played at the end of the command 0x178. This
// command setups some persons and associates bob slots to them. They should be
// hidden as their y coordinate is > 150, but they aren't ! A (temporary)
// workaround is to display the room with the panel area enabled. Same problem
// for cutaway c62c.
// FIXME - Cutaway c41f is played at the end of the command 0x178. This command
// setups some persons and associates bob slots to them. They should be hidden as
// their y coordinate is > 150, but they aren't ! As a workaround, we display the room
// with the panel area enabled. We do the same problem for cutaway c62c.
int16 comPanel = _comPanel;
if ((strcmp(_basename, "c41f") == 0 && _temporaryRoom == 106 && object.room == 41) ||
(strcmp(_basename, "c62c") == 0 && _temporaryRoom == 105 && object.room == 41)) {
comPanel = 1;
}
// FIXME - in the original engine, panel is hidden once the 'head room' is displayed, we
// do it before (ie before palette fading)
// Hide panel before displaying the 'head room' (ie. before palette fading). This doesn't
// match the original engine, but looks better to me.
if (object.room == FAYE_HEAD || object.room == AZURA_HEAD || object.room == FRANK_HEAD) {
comPanel = 2;
}

View File

@ -1119,10 +1119,10 @@ BamScene::BamScene(QueenEngine *vm)
}
void BamScene::playSfx() {
// FIXME - we don't play all sfx here. This is only necessary for
// the fight bam, where the number of 'sfx bam frames' is too much
// Don't try to play all the sounds. This is only necessary for the
// fight bam, in which the number of 'sfx bam frames' is too much
// important / too much closer. The original game does not have
// this problem since their playSfx() function returns immediately
// this problem since its playSfx() function returns immediately
// if a sound is already being played.
if (_lastSoundIndex == 0 || _index - _lastSoundIndex >= SFX_SKIP) {
_vm->sound()->playSfx(_vm->logic()->currentRoomSfx(), false);

View File

@ -230,9 +230,9 @@ void Logic::initialise() {
_joeResponse.push_back(queen2jas.nextLine());
}
// FIXME - the spanish version adds some space characters (0x20) at the
// beginning and the end of the journal button captions. As we don't need
// that 'trick' to center horizontally the texts, we simply trim them.
// Spanish version adds some space characters (0x20) at the beginning
// and the end of the journal button captions. As the engine computes
// the text width to center it, we need to trim those strings.
if (_vm->resource()->getLanguage() == SPANISH) {
for (i = 30; i <= 35; i++) {
_joeResponse[i] = trim(_joeResponse[i]);
@ -1265,7 +1265,7 @@ void Logic::handlePinnacleRoom() {
_newRoom = objectData(_entryObj)->room;
// FIXME - only a few commands can be triggered from this room :
// Only a few commands can be triggered from this room :
// piton -> crash : 0x216 (obj1=0x2a, song=3)
// piton -> floda : 0x217 (obj1=0x29, song=16)
// piton -> bob : 0x219 (obj1=0x2f, song=6)

View File

@ -795,9 +795,8 @@ void Talk::speakSegment(
char voiceFileName[MAX_STRING_SIZE];
sprintf(voiceFileName, "%s%1x", voiceFilePrefix, index + 1);
// FIXME - it seems the french talkie version has a useless voice file ;
// the c30e_102 file is very similar to c30e_101, so there is no need to
// play it. This voice was used in room 30 (N8) when talking to Klunk.
// French talkie version has a useless voice file ; c30e_102 file is the same as c30e_101,
// so there is no need to play it. This voice was used in room 30 (N8) when talking to Klunk.
if (!(_vm->resource()->getLanguage() == FRENCH && !strcmp(voiceFileName, "c30e_102"))
&& _vm->sound()->speechOn())
_vm->sound()->playSfx(voiceFileName, true);

View File

@ -428,10 +428,9 @@ int16 Walk::calcC(int16 c1, int16 c2, int16 c3, int16 c4, int16 lastc) {
}
int16 Walk::findAreaPosition(int16 *x, int16 *y, bool recalibrate) {
// FIXME - in order to locate the nearest available area, the original
// algorithm computes the X (or Y) closest face distance for each available
// area. We simply added the case where the pointer is neither lying in the
// X range nor in the Y one.
// In order to locate the nearest available area, the original algorithm
// computes the horizontal and vertical distances for each available area.
// Unlike the original, we also compute the diagonal distance.
// To get an example of this in action, in the room D1, make Joe walking
// to the wall at the right of the window (just above the radiator). On the
// original game, Joe will go to the left door...