aboutsummaryrefslogtreecommitdiff
path: root/scumm/sprite_he.cpp
diff options
context:
space:
mode:
Diffstat (limited to 'scumm/sprite_he.cpp')
-rw-r--r--scumm/sprite_he.cpp51
1 files changed, 51 insertions, 0 deletions
diff --git a/scumm/sprite_he.cpp b/scumm/sprite_he.cpp
index c1a5f04110..b79fd7aaa1 100644
--- a/scumm/sprite_he.cpp
+++ b/scumm/sprite_he.cpp
@@ -35,6 +35,10 @@ void ScummEngine_v90he::allocateArrays() {
spritesAllocTables(_numSprites, 64, 64);
}
+//
+// spriteInfoGet functions
+//
+
int ScummEngine_v90he::spriteInfoGet_flags_1(int spriteId) {
checkRange(_numSprites, 1, spriteId, "_spriteTableGet_flags_1: Invalid sprite %d");
@@ -182,6 +186,53 @@ void ScummEngine_v90he::spriteInfoGet_field_2C_30(int spriteId, int32 &field_2C,
}
//
+// spriteGroupGet functions
+//
+
+int ScummEngine_v90he::spriteGroupGet_field_10(int spriteId) {
+ checkRange(_numSprites, 1, spriteId, "spriteInfoGet_field_10: Invalid sprite %d");
+
+ return _spriteGroups[spriteId].field_10;
+}
+
+int ScummEngine_v90he::spriteGroupGet_field_20(int spriteId) {
+ checkRange(_numSprites, 1, spriteId, "spriteInfoGet_field_20: Invalid sprite %d");
+
+ return _spriteGroups[spriteId].field_20;
+}
+
+int ScummEngine_v90he::spriteGroupGet_field_30(int spriteId) {
+ checkRange(_numSprites, 1, spriteId, "spriteInfoGet_field_30: Invalid sprite %d");
+
+ return _spriteGroups[spriteId].field_30;
+}
+
+int ScummEngine_v90he::spriteGroupGet_field_34(int spriteId) {
+ checkRange(_numSprites, 1, spriteId, "spriteInfoGet_field_34: Invalid sprite %d");
+
+ return _spriteGroups[spriteId].field_34;
+}
+
+int ScummEngine_v90he::spriteGroupGet_field_38(int spriteId) {
+ checkRange(_numSprites, 1, spriteId, "spriteInfoGet_field_38: Invalid sprite %d");
+
+ return _spriteGroups[spriteId].field_38;
+}
+
+int ScummEngine_v90he::spriteGroupGet_field_3C(int spriteId) {
+ checkRange(_numSprites, 1, spriteId, "spriteInfoGet_field_3C: Invalid sprite %d");
+
+ return _spriteGroups[spriteId].field_3C;
+}
+
+void ScummEngine_v90he::spriteGroupGet_tx_ty(int spriteId, int32 &tx, int32 &ty) {
+ checkRange(_numSprites, 1, spriteId, "spriteGroupGet_tx_ty: Invalid sprite %d");
+
+ tx = _spriteGroups[spriteId].tx;
+ ty = _spriteGroups[spriteId].ty;
+}
+
+//
// spriteInfoSet functions
//
void ScummEngine_v90he::spriteInfoSet_field_14(int spriteId, int value) {