[Scummvm-cvs-logs] CVS: scummvm/sky logic.cpp,1.49,1.50 compact.cpp,1.8,1.9 compact.h,1.5,1.6
Oliver Kiehl
olki at users.sourceforge.net
Mon May 26 12:56:08 CEST 2003
- Previous message: [Scummvm-cvs-logs] CVS: scummvm/sky logic.cpp,1.48,1.49 compact.cpp,1.7,1.8 compact.h,1.4,1.5 autoroute.cpp,1.8,1.9
- Next message: [Scummvm-cvs-logs] CVS: scummvm/scumm/smush smush_player.h,1.5,1.6
- Messages sorted by:
[ date ]
[ thread ]
[ subject ]
[ author ]
Update of /cvsroot/scummvm/scummvm/sky
In directory sc8-pr-cvs1:/tmp/cvs-serv21522
Modified Files:
logic.cpp compact.cpp compact.h
Log Message:
cleanup (add supportive function getTurnTable() )
Index: logic.cpp
===================================================================
RCS file: /cvsroot/scummvm/scummvm/sky/logic.cpp,v
retrieving revision 1.49
retrieving revision 1.50
diff -u -d -r1.49 -r1.50
--- logic.cpp 26 May 2003 19:38:44 -0000 1.49
+++ logic.cpp 26 May 2003 19:55:28 -0000 1.50
@@ -301,8 +301,7 @@
// ok, setup turning
_compact->extCompact->dir = *(sequence + 1);
- uint16 **tt = (uint16 **)SkyCompact::getCompactElem(_compact,
- C_TURN_TABLE + _compact->extCompact->megaSet + dir * 20);
+ uint16 **tt = SkyCompact::getTurnTable(_compact,_compact->extCompact->megaSet, dir);
if (tt[_compact->extCompact->dir]) {
_compact->extCompact->turnProg = tt[_compact->extCompact->dir];
_compact->logic = L_AR_TURNING;
@@ -1247,11 +1246,10 @@
uint32 SkyLogic::fnTurnTo(uint32 dir, uint32 b, uint32 c) {
// turn compact to direction dir
- uint16 curDir = _compact->extCompact->dir * 20; // get current direction
+ uint16 curDir = _compact->extCompact->dir; // get current direction
_compact->extCompact->dir = (uint16)(dir & 0xffff); // set new direction
- uint16 **tt = (uint16 **)SkyCompact::getCompactElem(_compact,
- C_TURN_TABLE + _compact->extCompact->megaSet + curDir);
+ uint16 **tt = SkyCompact::getTurnTable(_compact, _compact->extCompact->megaSet, curDir);
if (!tt[dir])
return 1; // keep going
Index: compact.cpp
===================================================================
RCS file: /cvsroot/scummvm/scummvm/sky/compact.cpp,v
retrieving revision 1.8
retrieving revision 1.9
diff -u -d -r1.8 -r1.9
--- compact.cpp 26 May 2003 19:38:48 -0000 1.8
+++ compact.cpp 26 May 2003 19:55:28 -0000 1.9
@@ -65,6 +65,24 @@
}
}
+uint16 **getTurnTable(Compact *cpt, uint16 megaSet, uint16 dir) {
+ MegaSet *m = getMegaSet(cpt, megaSet);
+ switch (dir) {
+ case 0:
+ return m->turnTable->turnTableUp;
+ case 1:
+ return m->turnTable->turnTableDown;
+ case 2:
+ return m->turnTable->turnTableLeft;
+ case 3:
+ return m->turnTable->turnTableRight;
+ case 4:
+ return m->turnTable->turnTableTalk;
+ default:
+ error("No TurnTable (%d) in MegaSet (%d)", dir, megaSet);
+ }
+}
+
uint16 *getSub(Compact *cpt, uint16 mode) {
switch (mode) {
case 0:
Index: compact.h
===================================================================
RCS file: /cvsroot/scummvm/scummvm/sky/compact.h,v
retrieving revision 1.5
retrieving revision 1.6
diff -u -d -r1.5 -r1.6
--- compact.h 26 May 2003 19:38:48 -0000 1.5
+++ compact.h 26 May 2003 19:55:28 -0000 1.6
@@ -28,6 +28,7 @@
namespace SkyCompact {
MegaSet *getMegaSet(Compact *cpt, uint16 megaSet);
+ uint16 **getTurnTable(Compact *cpt, uint16 megaSet, uint16 dir);
uint16 *getSub(Compact *cpt, uint16 mode);
void *getCompactElem(Compact *cpt, uint32 off);
- Previous message: [Scummvm-cvs-logs] CVS: scummvm/sky logic.cpp,1.48,1.49 compact.cpp,1.7,1.8 compact.h,1.4,1.5 autoroute.cpp,1.8,1.9
- Next message: [Scummvm-cvs-logs] CVS: scummvm/scumm/smush smush_player.h,1.5,1.6
- Messages sorted by:
[ date ]
[ thread ]
[ subject ]
[ author ]
More information about the Scummvm-git-logs
mailing list