MUTATIONOFJB: Fix play animation command.
This commit is contained in:
parent
66400e7422
commit
d18c83e8b8
6 changed files with 11 additions and 9 deletions
|
@ -40,8 +40,8 @@ bool PlayAnimationCommandParser::parse(const Common::String &line, ScriptParseCo
|
|||
if (line.size() < 11 || (!line.hasPrefix("FLB ") && !line.hasPrefix("FLX ")))
|
||||
return false;
|
||||
|
||||
const uint8 fromFrame = (uint8) atoi(line.c_str() + 4);
|
||||
const uint8 toFrame = (uint8) atoi(line.c_str() + 8);
|
||||
const int fromFrame = atoi(line.c_str() + 4);
|
||||
const int toFrame = atoi(line.c_str() + 8);
|
||||
|
||||
command = new PlayAnimationCommand(fromFrame, toFrame);
|
||||
return true;
|
||||
|
|
|
@ -37,14 +37,14 @@ public:
|
|||
|
||||
class PlayAnimationCommand : public SeqCommand {
|
||||
public:
|
||||
PlayAnimationCommand(uint8 fromFrame, uint8 toFrame) : _fromFrame(fromFrame), _toFrame(toFrame) {}
|
||||
PlayAnimationCommand(int fromFrame, int toFrame) : _fromFrame(fromFrame), _toFrame(toFrame) {}
|
||||
const Common::String &getName() const;
|
||||
|
||||
virtual ExecuteResult execute(ScriptExecutionContext &scriptExecCtx) override;
|
||||
virtual Common::String debugString() const override;
|
||||
private:
|
||||
uint8 _fromFrame;
|
||||
uint8 _toFrame;
|
||||
int _fromFrame;
|
||||
int _toFrame;
|
||||
};
|
||||
|
||||
}
|
||||
|
|
|
@ -40,7 +40,7 @@ bool SetObjectFrameCommandParser::parse(const Common::String &line, ScriptParseC
|
|||
return false;
|
||||
|
||||
const uint8 objectId = (uint8) atoi(line.c_str() + 8);
|
||||
const uint8 frame = (uint8) atoi(line.c_str() + 11);
|
||||
const unsigned int frame = atoi(line.c_str() + 11);
|
||||
|
||||
command = new SetObjectFrameCommand(objectId, frame);
|
||||
return true;
|
||||
|
|
|
@ -155,6 +155,7 @@ struct Object : public Common::Serializable {
|
|||
uint8 _numFrames;
|
||||
/**
|
||||
* Low 8 bits of the 16-bit starting room frame (FS register).
|
||||
* This is in the room frame space.
|
||||
*
|
||||
* @see _roomFrameMSB
|
||||
*/
|
||||
|
@ -168,7 +169,7 @@ struct Object : public Common::Serializable {
|
|||
/**
|
||||
* Current animation frame (CA register).
|
||||
*
|
||||
* @note Absolute index to the frame space. Numbered from 1.
|
||||
* @note Index in the shared object frame space. Numbered from 1.
|
||||
*/
|
||||
uint8 _currentFrame;
|
||||
/** X coordinate of the object rectangle (XX register). */
|
||||
|
@ -183,6 +184,7 @@ struct Object : public Common::Serializable {
|
|||
uint16 _WX;
|
||||
/**
|
||||
* High 8 bits of the 16-bit starting room frame (WY register).
|
||||
* This is in the room frame space.
|
||||
*
|
||||
* @see _roomFrameLSB
|
||||
*/
|
||||
|
|
|
@ -181,7 +181,7 @@ void Room::drawStatic(Static *const stat) {
|
|||
drawFrames(frame, frame, staticArea, 0xC0); // Hardcoded threshold.
|
||||
}
|
||||
|
||||
void Room::drawFrames(uint8 fromFrame, uint8 toFrame, const Common::Rect &area, uint8 threshold) {
|
||||
void Room::drawFrames(int fromFrame, int toFrame, const Common::Rect &area, uint8 threshold) {
|
||||
GameData &gameData = _game->getGameData();
|
||||
|
||||
Scene *const scene = gameData.getCurrentScene();
|
||||
|
|
|
@ -64,7 +64,7 @@ public:
|
|||
* @param stat Static.
|
||||
*/
|
||||
void drawStatic(Static *stat);
|
||||
void drawFrames(uint8 fromFrame, uint8 toFrame, const Common::Rect &area = Common::Rect(), uint8 threshold = 0xFF);
|
||||
void drawFrames(int fromFrame, int toFrame, const Common::Rect &area = Common::Rect(), uint8 threshold = 0xFF);
|
||||
void initialDraw();
|
||||
void redraw(bool useBackgroundBuffer = true);
|
||||
private:
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue