[Scummvm-cvs-logs] scummvm master -> d66bfb131caa1ef3eb57c7cf98d423444eaecb66

lordhoto lordhoto at gmail.com
Sun Jan 8 23:03:48 CET 2012


This automated email contains information about 1 new commit which have been
pushed to the 'scummvm' repo located at https://github.com/scummvm/scummvm .

Summary:
d66bfb131c KYRA: Cleanup v2 item animation a little bit.


Commit: d66bfb131caa1ef3eb57c7cf98d423444eaecb66
    https://github.com/scummvm/scummvm/commit/d66bfb131caa1ef3eb57c7cf98d423444eaecb66
Author: Johannes Schickel (lordhoto at scummvm.org)
Date: 2012-01-08T14:00:41-08:00

Commit Message:
KYRA: Cleanup v2 item animation a little bit.

Changed paths:
    engines/kyra/animator_hof.cpp
    engines/kyra/animator_mr.cpp
    engines/kyra/kyra_hof.cpp
    engines/kyra/kyra_hof.h
    engines/kyra/kyra_mr.h
    engines/kyra/kyra_v2.h
    engines/kyra/resource.h
    engines/kyra/sequences_hof.cpp
    engines/kyra/staticres.cpp



diff --git a/engines/kyra/animator_hof.cpp b/engines/kyra/animator_hof.cpp
index 741e358..5a2378f 100644
--- a/engines/kyra/animator_hof.cpp
+++ b/engines/kyra/animator_hof.cpp
@@ -115,15 +115,14 @@ void KyraEngine_HoF::refreshAnimObjects(int force) {
 void KyraEngine_HoF::updateItemAnimations() {
 	bool nextFrame = false;
 
-	if (_itemAnimData[0].itemIndex == -1 || _inventorySaved)
+	if (_itemAnimDefinition[0].itemIndex == -1 || _inventorySaved)
 		return;
 
-	const ItemAnimData_v2 *s = &_itemAnimData[_nextAnimItem];
+	const ItemAnimDefinition *s = &_itemAnimDefinition[_nextAnimItem];
 	ActiveItemAnim *a = &_activeItemAnim[_nextAnimItem];
-	_nextAnimItem = (_nextAnimItem + 1) % _itemAnimDataSize;
+	_nextAnimItem = (_nextAnimItem + 1) % _itemAnimDefinitionSize;
 
-	uint32 ctime = _system->getMillis();
-	if (ctime < a->nextFrame)
+	if (_system->getMillis() < a->nextFrameTime)
 		return;
 
 	uint16 shpIdx = s->frames[a->currentFrame].index + 64;
@@ -164,7 +163,7 @@ void KyraEngine_HoF::updateItemAnimations() {
 	}
 
 	if (nextFrame) {
-		a->nextFrame = _system->getMillis() + (s->frames[a->currentFrame].delay * _tickLength);
+		a->nextFrameTime = _system->getMillis() + (s->frames[a->currentFrame].delay * _tickLength);
 		a->currentFrame = (a->currentFrame + 1) % s->numFrames;
 	}
 }
diff --git a/engines/kyra/animator_mr.cpp b/engines/kyra/animator_mr.cpp
index 31c5cd1..29fa3ab 100644
--- a/engines/kyra/animator_mr.cpp
+++ b/engines/kyra/animator_mr.cpp
@@ -187,15 +187,14 @@ void KyraEngine_MR::refreshAnimObjects(int force) {
 void KyraEngine_MR::updateItemAnimations() {
 	bool nextFrame = false;
 
-	if (_itemAnimData[0].itemIndex == -1)
+	if (_itemAnimDefinition[0].itemIndex == -1)
 		return;
 
-	const ItemAnimData_v2 *s = &_itemAnimData[_nextAnimItem];
+	const ItemAnimDefinition *s = &_itemAnimDefinition[_nextAnimItem];
 	ActiveItemAnim *a = &_activeItemAnim[_nextAnimItem];
 	_nextAnimItem = (_nextAnimItem + 1) % 10;
 
-	uint32 ctime = _system->getMillis();
-	if (ctime < a->nextFrame)
+	if (_system->getMillis() < a->nextFrameTime)
 		return;
 
 	uint16 shpIdx = s->frames[a->currentFrame].index + 248;
@@ -230,7 +229,7 @@ void KyraEngine_MR::updateItemAnimations() {
 	}
 
 	if (nextFrame) {
-		a->nextFrame = _system->getMillis() + (s->frames[a->currentFrame].delay * _tickLength);
+		a->nextFrameTime = _system->getMillis() + (s->frames[a->currentFrame].delay * _tickLength);
 		a->currentFrame = (a->currentFrame + 1) % s->numFrames;
 	}
 }
diff --git a/engines/kyra/kyra_hof.cpp b/engines/kyra/kyra_hof.cpp
index c3c4e60..fd2c187 100644
--- a/engines/kyra/kyra_hof.cpp
+++ b/engines/kyra/kyra_hof.cpp
@@ -88,7 +88,7 @@ KyraEngine_HoF::KyraEngine_HoF(OSystem *system, const GameFlags &flags) : KyraEn
 	_currentTalkSections.ENDTim = 0;
 
 	memset(&_invWsa, 0, sizeof(_invWsa));
-	_itemAnimData = 0;
+	_itemAnimDefinition = 0;
 	_demoAnimData = 0;
 	_nextAnimItem = 0;
 
@@ -211,8 +211,8 @@ void KyraEngine_HoF::pauseEngineIntern(bool pause) {
 
 		_nextIdleAnim += pausedTime;
 
-		for (int x = 0; x < _itemAnimDataSize; x++)
-			_activeItemAnim[x].nextFrame += pausedTime;
+		for (int x = 0; x < _itemAnimDefinitionSize; x++)
+			_activeItemAnim[x].nextFrameTime += pausedTime;
 
 		_tim->refreshTimersAfterPause(pausedTime);
 	}
diff --git a/engines/kyra/kyra_hof.h b/engines/kyra/kyra_hof.h
index 4b8303b..320f930 100644
--- a/engines/kyra/kyra_hof.h
+++ b/engines/kyra/kyra_hof.h
@@ -874,8 +874,8 @@ protected:
 	const char * const *_ingameTimJpStr;
 	int _ingameTimJpStrSize;
 	const HofSeqData *_sequences;
-	const ItemAnimData_v2 *_itemAnimData;
-	int _itemAnimDataSize;
+	const ItemAnimDefinition *_itemAnimDefinition;
+	int _itemAnimDefinitionSize;
 	const ItemAnimData_v1 *_demoAnimData;
 	int _demoAnimSize;
 
diff --git a/engines/kyra/kyra_mr.h b/engines/kyra/kyra_mr.h
index 38ff271..7c02253 100644
--- a/engines/kyra/kyra_mr.h
+++ b/engines/kyra/kyra_mr.h
@@ -219,7 +219,7 @@ private:
 	bool _nextIdleType;
 	void showIdleAnim();
 
-	const ItemAnimData_v2 *_itemAnimData;
+	const ItemAnimDefinition *_itemAnimDefinition;
 	ActiveItemAnim _activeItemAnim[10];
 	int _nextAnimItem;
 
diff --git a/engines/kyra/kyra_v2.h b/engines/kyra/kyra_v2.h
index 3d7b9c4..72d7437 100644
--- a/engines/kyra/kyra_v2.h
+++ b/engines/kyra/kyra_v2.h
@@ -38,7 +38,7 @@ struct FrameControl {
 	uint16 delay;
 };
 
-struct ItemAnimData_v2 {
+struct ItemAnimDefinition {
 	Item itemIndex;
 	uint8 numFrames;
 	const FrameControl *frames;
@@ -46,7 +46,7 @@ struct ItemAnimData_v2 {
 
 struct ActiveItemAnim {
 	uint16 currentFrame;
-	uint32 nextFrame;
+	uint32 nextFrameTime;
 };
 
 class Screen_v2;
diff --git a/engines/kyra/resource.h b/engines/kyra/resource.h
index 5b0af98..5de1577 100644
--- a/engines/kyra/resource.h
+++ b/engines/kyra/resource.h
@@ -744,7 +744,7 @@ public:
 	const Room *loadRoomTable(int id, int &entries);
 	const HofSeqData *loadHofSequenceData(int id, int &entries);
 	const ItemAnimData_v1 *loadShapeAnimData_v1(int id, int &entries);
-	const ItemAnimData_v2 *loadShapeAnimData_v2(int id, int &entries);
+	const ItemAnimDefinition *loadItemAnimDefinition(int id, int &entries);
 #if defined(ENABLE_EOB) || defined(ENABLE_LOL)
 	const uint16 *loadRawDataBe16(int id, int &entries);
 	const uint32 *loadRawDataBe32(int id, int &entries);
@@ -787,7 +787,7 @@ private:
 	bool loadRoomTable(Common::SeekableReadStream &stream, void *&ptr, int &size);
 	bool loadHofSequenceData(Common::SeekableReadStream &stream, void *&ptr, int &size);
 	bool loadShapeAnimData_v1(Common::SeekableReadStream &stream, void *&ptr, int &size);
-	bool loadShapeAnimData_v2(Common::SeekableReadStream &stream, void *&ptr, int &size);
+	bool loadItemAnimDefinition(Common::SeekableReadStream &stream, void *&ptr, int &size);
 #if defined(ENABLE_EOB) || defined(ENABLE_LOL)
 	bool loadRawDataBe16(Common::SeekableReadStream &stream, void *&ptr, int &size);
 	bool loadRawDataBe32(Common::SeekableReadStream &stream, void *&ptr, int &size);
@@ -813,7 +813,7 @@ private:
 	void freeRoomTable(void *&ptr, int &size);
 	void freeHofSequenceData(void *&ptr, int &size);
 	void freeHofShapeAnimDataV1(void *&ptr, int &size);
-	void freeHofShapeAnimDataV2(void *&ptr, int &size);
+	void freeItemAnimDefinition(void *&ptr, int &size);
 #if defined(ENABLE_EOB) || defined(ENABLE_LOL)
 	void freeRawDataBe16(void *&ptr, int &size);
 	void freeRawDataBe32(void *&ptr, int &size);
@@ -840,7 +840,7 @@ private:
 
 		k2SeqData = 5,
 		k2ShpAnimDataV1 = 6,
-		k2ShpAnimDataV2 = 7,
+		k2ItemAnimDefinition = 7,
 
 		kLoLCharData = 8,
 		kLoLSpellData = 9,
diff --git a/engines/kyra/sequences_hof.cpp b/engines/kyra/sequences_hof.cpp
index b27f0df..2e5e20c 100644
--- a/engines/kyra/sequences_hof.cpp
+++ b/engines/kyra/sequences_hof.cpp
@@ -2773,7 +2773,7 @@ void KyraEngine_HoF::seq_init() {
 		return;
 
 	if (_flags.isDemo && !_flags.isTalkie) {
-		_demoAnimData = _staticres->loadShapeAnimData_v1(k2SeqplayShapeAnimData, _itemAnimDataSize);
+		_demoAnimData = _staticres->loadShapeAnimData_v1(k2SeqplayShapeAnimData, _itemAnimDefinitionSize);
 		uint8 *shp = _res->fileData("icons.shp", 0);
 		uint32 outsize = READ_LE_UINT16(shp + 4);
 		_animShapeFiledata = new uint8[outsize];
diff --git a/engines/kyra/staticres.cpp b/engines/kyra/staticres.cpp
index 6c95451..99ad6ea 100644
--- a/engines/kyra/staticres.cpp
+++ b/engines/kyra/staticres.cpp
@@ -247,7 +247,7 @@ bool StaticResource::init() {
 
 		{ k2SeqData, proc(loadHofSequenceData), proc(freeHofSequenceData) },
 		{ k2ShpAnimDataV1, proc(loadShapeAnimData_v1), proc(freeHofShapeAnimDataV1) },
-		{ k2ShpAnimDataV2, proc(loadShapeAnimData_v2), proc(freeHofShapeAnimDataV2) },
+		{ k2ItemAnimDefinition, proc(loadItemAnimDefinition), proc(freeItemAnimDefinition) },
 
 #ifdef ENABLE_LOL
 		{ kLoLCharData, proc(loadCharData), proc(freeCharData) },
@@ -316,8 +316,8 @@ const ItemAnimData_v1 *StaticResource::loadShapeAnimData_v1(int id, int &entries
 	return (const ItemAnimData_v1 *)getData(id, k2ShpAnimDataV1, entries);
 }
 
-const ItemAnimData_v2 *StaticResource::loadShapeAnimData_v2(int id, int &entries) {
-	return (const ItemAnimData_v2 *)getData(id, k2ShpAnimDataV2, entries);
+const ItemAnimDefinition *StaticResource::loadItemAnimDefinition(int id, int &entries) {
+	return (const ItemAnimDefinition *)getData(id, k2ItemAnimDefinition, entries);
 }
 
 bool StaticResource::prefetchId(int id) {
@@ -610,9 +610,9 @@ bool StaticResource::loadShapeAnimData_v1(Common::SeekableReadStream &stream, vo
 	return true;
 }
 
-bool StaticResource::loadShapeAnimData_v2(Common::SeekableReadStream &stream, void *&ptr, int &size) {
+bool StaticResource::loadItemAnimDefinition(Common::SeekableReadStream &stream, void *&ptr, int &size) {
 	size = stream.readByte();
-	ItemAnimData_v2 *loadTo = new ItemAnimData_v2[size];
+	ItemAnimDefinition *loadTo = new ItemAnimDefinition[size];
 	assert(loadTo);
 
 	for (int i = 0; i < size; i++) {
@@ -699,8 +699,8 @@ void StaticResource::freeHofShapeAnimDataV1(void *&ptr, int &size) {
 	size = 0;
 }
 
-void StaticResource::freeHofShapeAnimDataV2(void *&ptr, int &size) {
-	ItemAnimData_v2 *d = (ItemAnimData_v2 *)ptr;
+void StaticResource::freeItemAnimDefinition(void *&ptr, int &size) {
+	ItemAnimDefinition *d = (ItemAnimDefinition *)ptr;
 	for (int i = 0; i < size; i++)
 		delete[] d[i].frames;
 	delete[] d;
@@ -1007,7 +1007,7 @@ void KyraEngine_HoF::initStaticResource() {
 	_cdaTrackTableFinale = _staticres->loadRawData(k2SeqplayFinaleCDA, _cdaTrackTableFinaleSize);
 	_ingameTalkObjIndex = (const uint16 *)_staticres->loadRawData(k2IngameTalkObjIndex, _ingameTalkObjIndexSize);
 	_ingameTimJpStr = _staticres->loadStrings(k2IngameTimJpStrings, _ingameTimJpStrSize);
-	_itemAnimData = _staticres->loadShapeAnimData_v2(k2IngameShapeAnimData, _itemAnimDataSize);
+	_itemAnimDefinition = _staticres->loadItemAnimDefinition(k2IngameShapeAnimData, _itemAnimDefinitionSize);
 
 	// replace sequence talkie files with localized versions
 	const char *const *seqSoundList = _staticres->loadStrings(k2SeqplaySfxFiles, _sequenceSoundListSize);
@@ -1143,7 +1143,7 @@ void KyraEngine_MR::initStaticResource() {
 	_scoreTable = _staticres->loadRawData(k3ScoreTable, _scoreTableSize);
 	_sfxFileList = _staticres->loadStrings(k3SfxFiles, _sfxFileListSize);
 	_sfxFileMap = _staticres->loadRawData(k3SfxMap, _sfxFileMapSize);
-	_itemAnimData = _staticres->loadShapeAnimData_v2(k3ItemAnimData, tmp);
+	_itemAnimDefinition = _staticres->loadItemAnimDefinition(k3ItemAnimData, tmp);
 	_itemMagicTable = _staticres->loadRawData(k3ItemMagicTable, tmp);
 	_itemStringMap = _staticres->loadRawData(k3ItemStringMap, _itemStringMapSize);
 }






More information about the Scummvm-git-logs mailing list