[Scummvm-cvs-logs] SF.net SVN: scummvm: [28920] scummvm/trunk/engines/lure/hotspots.cpp
dreammaster at users.sourceforge.net
dreammaster at users.sourceforge.net
Sun Sep 16 10:03:18 CEST 2007
Revision: 28920
http://scummvm.svn.sourceforge.net/scummvm/?rev=28920&view=rev
Author: dreammaster
Date: 2007-09-16 01:03:18 -0700 (Sun, 16 Sep 2007)
Log Message:
-----------
Fix to make characters face upwards initially, and to stand straight when not actively moving
Modified Paths:
--------------
scummvm/trunk/engines/lure/hotspots.cpp
Modified: scummvm/trunk/engines/lure/hotspots.cpp
===================================================================
--- scummvm/trunk/engines/lure/hotspots.cpp 2007-09-16 04:31:15 UTC (rev 28919)
+++ scummvm/trunk/engines/lure/hotspots.cpp 2007-09-16 08:03:18 UTC (rev 28920)
@@ -77,6 +77,12 @@
_tickHandler = HotspotTickHandlers::getHandler(_data->tickProcOffset);
_nameBuffer[0] = '\0';
+ if (_hotspotId < FIRST_NONCHARACTER_ID) {
+ // Default characters to facing upwards until they start moving
+ _direction = UP;
+ setFrameNumber(_anim->upFrame);
+ }
+
_frameCtr = 0;
_skipFlag = false;
_charRectY = 0;
@@ -693,6 +699,8 @@
setOccupied(true);
}
}
+
+ resetDirection();
}
void Hotspot::updateMovement2(CharacterMode value) {
@@ -1091,6 +1099,29 @@
return true;
}
+void Hotspot::resetDirection() {
+ uint16 newFrameNumber;
+ switch (_direction) {
+ case UP:
+ newFrameNumber = _anim->upFrame;
+ break;
+ case DOWN:
+ newFrameNumber = _anim->downFrame;
+ break;
+ case LEFT:
+ newFrameNumber = _anim->leftFrame;
+ break;
+ case RIGHT:
+ newFrameNumber = _anim->rightFrame;
+ break;
+ default:
+ // No need to change
+ return;
+ }
+
+ setFrameNumber(newFrameNumber);
+}
+
/*-------------------------------------------------------------------------*/
typedef void (Hotspot::*ActionProcPtr)(HotspotData *hotspot);
@@ -2389,7 +2420,7 @@
switch (action) {
case NO_ACTION:
- h.setCharacterMode(CHARMODE_IDLE);
+ h.updateMovement2(CHARMODE_IDLE);
break;
case DISPATCH_ACTION:
This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site.
More information about the Scummvm-git-logs
mailing list