spriteInfoSet_case183 -> spriteInfoSet_resetSprite and its implementation.

svn-id: r16869
This commit is contained in:
Eugene Sandulenko 2005-02-23 02:35:59 +00:00
parent d674eddefa
commit b53b1963a9
4 changed files with 25 additions and 5 deletions

View file

@ -916,7 +916,7 @@ protected:
void spriteInfoSet_field_14(int spriteId, int value); void spriteInfoSet_field_14(int spriteId, int value);
void spriteInfoSet_field_7C(int spriteId, int value); void spriteInfoSet_field_7C(int spriteId, int value);
void spriteInfoSet_field_80(int spriteId, int value); void spriteInfoSet_field_80(int spriteId, int value);
void spriteInfoSet_case183(int spriteId); void spriteInfoSet_resetSprite(int spriteId);
void spriteInfoSet_resState(int spriteId, int value); void spriteInfoSet_resState(int spriteId, int value);
void spriteInfoSet_tx_ty(int spriteId, int value1, int value2); void spriteInfoSet_tx_ty(int spriteId, int value1, int value2);
void spriteInfoSet_groupNum(int spriteId, int value); void spriteInfoSet_groupNum(int spriteId, int value);

View file

@ -1723,7 +1723,7 @@ void ScummEngine_v100he::o100_setSpriteInfo() {
spriteId++; spriteId++;
for (; spriteId <= _curMaxSpriteId; spriteId++) for (; spriteId <= _curMaxSpriteId; spriteId++)
spriteInfoSet_case183(spriteId); spriteInfoSet_resetSprite(spriteId);
break; break;
case 54: case 54:
pop(); pop();

View file

@ -1271,7 +1271,7 @@ void ScummEngine_v90he::o90_setSpriteInfo() {
spriteId++; spriteId++;
for (; spriteId <= _curMaxSpriteId; spriteId++) for (; spriteId <= _curMaxSpriteId; spriteId++)
spriteInfoSet_case183(spriteId); spriteInfoSet_resetSprite(spriteId);
break; break;
default: default:
error("o90_setSpriteInfo: Unknown case %d", subOp); error("o90_setSpriteInfo: Unknown case %d", subOp);

View file

@ -502,10 +502,30 @@ void ScummEngine_v90he::spriteInfoSet_resetClassFlags(int spriteId) {
_spriteTable[spriteId].class_flags = 0; _spriteTable[spriteId].class_flags = 0;
} }
void ScummEngine_v90he::spriteInfoSet_case183(int spriteId) { void ScummEngine_v90he::spriteInfoSet_resetSprite(int spriteId) {
checkRange(_varNumSprites, 1, spriteId, "Invalid sprite %d"); checkRange(_varNumSprites, 1, spriteId, "Invalid sprite %d");
// TODO _spriteTable[spriteId].rot_angle = 0;
_spriteTable[spriteId].zoom = 0;
spriteInfoSet_addImageToList(spriteId, 1, &spriteId);
_spriteTable[spriteId].field_54 = 0;
_spriteTable[spriteId].tx = 0;
_spriteTable[spriteId].ty = 0;
_spriteTable[spriteId].flags &= ~(kSF07 | kSFRotated);
_spriteTable[spriteId].flags |= kSF01 | kSFNeedRedraw;
_spriteTable[spriteId].dx = 0;
_spriteTable[spriteId].dy = 0;
_spriteTable[spriteId].field_44 = 0;
_spriteTable[spriteId].group_num = 0;
_spriteTable[spriteId].field_78 = 0;
_spriteTable[spriteId].field_64 = 0;
_spriteTable[spriteId].class_flags = 0;
_spriteTable[spriteId].field_14 = 0;
_spriteTable[spriteId].field_7C = 0;
_spriteTable[spriteId].field_80 = 0;
} }
void ScummEngine_v90he::spriteInfoSet_addImageToList(int spriteId, int imageNum, int *spriteIdptr) { void ScummEngine_v90he::spriteInfoSet_addImageToList(int spriteId, int imageNum, int *spriteIdptr) {