diff options
Diffstat (limited to 'engines/bladerunner/item.cpp')
-rw-r--r-- | engines/bladerunner/item.cpp | 62 |
1 files changed, 42 insertions, 20 deletions
diff --git a/engines/bladerunner/item.cpp b/engines/bladerunner/item.cpp index bf09efb0e6..9aa50e366f 100644 --- a/engines/bladerunner/item.cpp +++ b/engines/bladerunner/item.cpp @@ -174,26 +174,48 @@ bool Item::isUnderMouse(int mouseX, int mouseY) const { && mouseY <= _screenRectangle.bottom + 10; } -void Item::save(SaveFile &f) { - f.write(_setId); - f.write(_itemId); - _boundingBox.save(f); - f.write(_screenRectangle); - f.write(_animationId); - f.write(_position); - f.write(_facing); - f.write(_angle); - f.write(_width); - f.write(_height); - f.write(_screenX); - f.write(_screenY); - f.write(_depth); - f.write(_isTarget); - f.write(_isSpinning); - f.write(_facingChange); - f.write(0.0f); // _viewAngle - f.write(_isVisible); - f.write(_isPoliceMazeEnemy); +void Item::save(SaveFileWriteStream &f) { + f.writeInt(_setId); + f.writeInt(_itemId); + f.writeBoundingBox(_boundingBox); + f.writeRect(_screenRectangle); + f.writeInt(_animationId); + f.writeVector3(_position); + f.writeInt(_facing); + f.writeFloat(_angle); + f.writeInt(_width); + f.writeInt(_height); + f.writeInt(_screenX); + f.writeInt(_screenY); + f.writeFloat(_depth); + f.writeBool(_isTarget); + f.writeBool(_isSpinning); + f.writeInt(_facingChange); + f.writeFloat(0.0f); // _viewAngle + f.writeBool(_isVisible); + f.writeBool(_isPoliceMazeEnemy); +} + +void Item::load(SaveFileReadStream &f) { + _setId = f.readInt(); + _itemId = f.readInt(); + _boundingBox = f.readBoundingBox(); + _screenRectangle = f.readRect(); + _animationId = f.readInt(); + _position = f.readVector3(); + _facing = f.readInt(); + _angle = f.readFloat(); + _width = f.readInt(); + _height = f.readInt(); + _screenX = f.readInt(); + _screenY = f.readInt(); + _depth = f.readFloat(); + _isTarget = f.readBool(); + _isSpinning = f.readBool(); + _facingChange = f.readInt(); + f.skip(4); + _isVisible = f.readBool(); + _isPoliceMazeEnemy = f.readBool(); } } // End of namespace BladeRunner |