[Scummvm-cvs-logs] scummvm master -> 4a0bfb751c05d3f30eee4c6c1c4bcdb78f5058db
sev-
sev at scummvm.org
Sat Jan 11 23:49:40 CET 2014
This automated email contains information about 3 new commits which have been
pushed to the 'scummvm' repo located at https://github.com/scummvm/scummvm .
Summary:
91baf35726 FULLPIPE: Implement StaticANIObject::calcNextStep()
2d3ac3100c FULLPIPE: Implement StaticANIObject::adjustSomeXY()
4a0bfb751c FULLPIPE: Implement StaticANIObject::preloadMovements()
Commit: 91baf35726d297b6ebf1e7917aba043125589601
https://github.com/scummvm/scummvm/commit/91baf35726d297b6ebf1e7917aba043125589601
Author: Eugene Sandulenko (sev at scummvm.org)
Date: 2014-01-11T14:48:10-08:00
Commit Message:
FULLPIPE: Implement StaticANIObject::calcNextStep()
Changed paths:
engines/fullpipe/statics.cpp
engines/fullpipe/statics.h
diff --git a/engines/fullpipe/statics.cpp b/engines/fullpipe/statics.cpp
index 87b3080..e0e6e4e 100644
--- a/engines/fullpipe/statics.cpp
+++ b/engines/fullpipe/statics.cpp
@@ -838,6 +838,44 @@ void StaticANIObject::updateStepPos() {
setOXY(ox + x, oy + y);
}
+Common::Point *StaticANIObject::calcNextStep(Common::Point *pRes) {
+ if (!_movement) {
+ pRes->x = 0;
+ pRes->y = 0;
+
+ return pRes;
+ }
+
+ Common::Point point;
+
+ _movement->calcSomeXY(point, 1);
+
+ int resX = point.x;
+ int resY = point.y;
+
+ int pointN, offset;
+
+ if (_someDynamicPhaseIndex <= 0) {
+ pointN = _stepArray.getCurrPointIndex();
+ offset = _stepArray.getPointsCount() - _stepArray.getCurrPointIndex();
+ } else {
+ pointN = _stepArray.getCurrPointIndex();
+ offset = 1 - _movement->_currDynamicPhaseIndex + _someDynamicPhaseIndex;
+ }
+
+ if (pointN >= 0) {
+ _stepArray.getPoint(&point, pointN, offset);
+
+ resX += point.x;
+ resY += point.y;
+ }
+
+ pRes->x = resX;
+ pRes->y = resY;
+
+ return pRes;
+}
+
void StaticANIObject::stopAnim_maybe() {
debug(6, "StaticANIObject::stopAnim_maybe()");
diff --git a/engines/fullpipe/statics.h b/engines/fullpipe/statics.h
index 3f1f14c..d38737f 100644
--- a/engines/fullpipe/statics.h
+++ b/engines/fullpipe/statics.h
@@ -247,6 +247,7 @@ public:
void updateStepPos();
void stopAnim_maybe();
+ Common::Point *calcNextStep(Common::Point *point);
MessageQueue *changeStatics1(int msgNum);
void changeStatics2(int objId);
Commit: 2d3ac3100c2e9fde135f9defb07a632632341242
https://github.com/scummvm/scummvm/commit/2d3ac3100c2e9fde135f9defb07a632632341242
Author: Eugene Sandulenko (sev at scummvm.org)
Date: 2014-01-11T14:48:11-08:00
Commit Message:
FULLPIPE: Implement StaticANIObject::adjustSomeXY()
Changed paths:
engines/fullpipe/statics.cpp
diff --git a/engines/fullpipe/statics.cpp b/engines/fullpipe/statics.cpp
index e0e6e4e..5f62cd4 100644
--- a/engines/fullpipe/statics.cpp
+++ b/engines/fullpipe/statics.cpp
@@ -944,7 +944,24 @@ void StaticANIObject::stopAnim_maybe() {
}
void StaticANIObject::adjustSomeXY() {
- warning("STUB: StaticANIObject::adjustSomeXY()");
+ if (_movement) {
+ Common::Point point;
+
+ _movement->calcSomeXY(point, 0);
+
+ int diff = abs(point.y) - abs(point.x);
+
+ _movement->calcSomeXY(point, 1);
+
+ if (diff > 0)
+ _ox += point.x;
+ else
+ _oy += point.y;
+
+ _statics = _movement->_staticsObj2;
+ _movement = 0;
+ _someDynamicPhaseIndex = -1;
+ }
}
MessageQueue *StaticANIObject::changeStatics1(int msgNum) {
Commit: 4a0bfb751c05d3f30eee4c6c1c4bcdb78f5058db
https://github.com/scummvm/scummvm/commit/4a0bfb751c05d3f30eee4c6c1c4bcdb78f5058db
Author: Eugene Sandulenko (sev at scummvm.org)
Date: 2014-01-11T14:48:11-08:00
Commit Message:
FULLPIPE: Implement StaticANIObject::preloadMovements()
Changed paths:
engines/fullpipe/statics.cpp
engines/fullpipe/statics.h
diff --git a/engines/fullpipe/statics.cpp b/engines/fullpipe/statics.cpp
index 5f62cd4..9c025dc 100644
--- a/engines/fullpipe/statics.cpp
+++ b/engines/fullpipe/statics.cpp
@@ -664,7 +664,16 @@ void StaticANIObject::initMovements() {
}
void StaticANIObject::preloadMovements(MovTable *mt) {
- warning("STUB: StaticANIObject::preloadMovements()");
+ if ( mt ) {
+ for (uint i = 0; i < _movements.size(); i++) {
+ Movement *mov = (Movement *)_movements[i];
+
+ if (mt->movs[i] == 1)
+ mov->loadPixelData();
+ else if (mt->movs[i] == 2)
+ mov->freePixelData();
+ }
+ }
}
Common::Point *StaticANIObject::getCurrDimensions(Common::Point &p) {
@@ -1680,6 +1689,10 @@ void Movement::loadPixelData() {
mov->_staticsObj1->getPixelData();
}
+void Movement::freePixelData() {
+ warning("STUB: Movement::freePixelData()");
+}
+
void Movement::removeFirstPhase() {
if (_updateFlag1) {
if (!_currDynamicPhaseIndex)
diff --git a/engines/fullpipe/statics.h b/engines/fullpipe/statics.h
index d38737f..a620daa 100644
--- a/engines/fullpipe/statics.h
+++ b/engines/fullpipe/statics.h
@@ -164,6 +164,7 @@ class Movement : public GameObject {
void gotoLastFrame();
void loadPixelData();
+ void freePixelData();
void draw(bool flipFlag, int angle);
};
More information about the Scummvm-git-logs
mailing list