[Scummvm-git-logs] scummvm master -> a200d0421c4803c8a49acef090b9a973e961dc9d
sev-
noreply at scummvm.org
Tue Aug 26 22:50:13 UTC 2025
This automated email contains information about 1 new commit which have been
pushed to the 'scummvm' repo located at https://api.github.com/repos/scummvm/scummvm .
Summary:
a200d0421c DIRECTOR: Implemented writeSpriteDataD6()
Commit: a200d0421c4803c8a49acef090b9a973e961dc9d
https://github.com/scummvm/scummvm/commit/a200d0421c4803c8a49acef090b9a973e961dc9d
Author: Eugene Sandulenko (sev at scummvm.org)
Date: 2025-08-27T00:49:54+02:00
Commit Message:
DIRECTOR: Implemented writeSpriteDataD6()
Changed paths:
engines/director/frame.cpp
diff --git a/engines/director/frame.cpp b/engines/director/frame.cpp
index 6ae71e145c5..3b8117f4b1b 100644
--- a/engines/director/frame.cpp
+++ b/engines/director/frame.cpp
@@ -1155,7 +1155,7 @@ void readSpriteDataD5(Common::SeekableReadStreamEndian &stream, Sprite &sprite,
}
void writeSpriteDataD5(Common::SeekableWriteStream *writeStream, Sprite &sprite) {
- // Writing 20 bytes of sprite data
+ // Writing 24 bytes of sprite data
// The original data for a certain sprite might be less
writeStream->writeByte(sprite._spriteType); // 0
@@ -1378,7 +1378,29 @@ void readSpriteDataD6(Common::SeekableReadStreamEndian &stream, Sprite &sprite,
}
void writeSpriteDataD6(Common::SeekableWriteStream *writeStream, Sprite &sprite) {
- warning("STUB: writeSpriteDataD6()");
+ // Writing 24 bytes of sprite data
+ // The original data for a certain sprite might be less
+ writeStream->writeByte(sprite._spriteType); // 0
+
+ if (sprite._puppet) {
+ for (int i = 1; i < kSprChannelSizeD6; i++)
+ writeStream->writeByte(0);
+ } else {
+ writeStream->writeByte(sprite._inkData); // 1
+ writeStream->writeByte(sprite._foreColor); // 2
+ writeStream->writeByte(sprite._backColor); // 3
+ writeStream->writeSint16BE(sprite._castId.castLib); // 4, 5
+ writeStream->writeUint16BE(sprite._castId.member); // 6, 7
+ writeStream->writeUint32BE(sprite._spriteListIdx); // 8, 9, 10, 11
+ writeStream->writeUint16BE(sprite._startPoint.y); // 12, 13
+ writeStream->writeUint16BE(sprite._startPoint.x); // 14, 15
+ writeStream->writeUint16BE(sprite._height); // 16, 17
+ writeStream->writeUint16BE(sprite._width); // 18, 19
+ writeStream->writeByte(sprite._colorcode); // 20
+ writeStream->writeByte(sprite._blendAmount); // 21
+ writeStream->writeByte(sprite._thickness); // 22
+ writeStream->writeByte(0); // 23, unused
+ }
}
/**************************
More information about the Scummvm-git-logs
mailing list