[Scummvm-cvs-logs] scummvm master -> 9f92561df3d24cec093559b733f83f69d492581f
sev-
sev at scummvm.org
Sat Oct 26 23:54:12 CEST 2013
This automated email contains information about 2 new commits which have been
pushed to the 'scummvm' repo located at https://github.com/scummvm/scummvm .
Summary:
7089444e0b FULLPIPE: Implement MovGraph2::method34()
9f92561df3 FULLPIPE: Implement StaticANIObject::getSomeXY()
Commit: 7089444e0b862fdfab5dc63a3058374cdd55c9cb
https://github.com/scummvm/scummvm/commit/7089444e0b862fdfab5dc63a3058374cdd55c9cb
Author: Eugene Sandulenko (sev at scummvm.org)
Date: 2013-10-26T14:50:49-07:00
Commit Message:
FULLPIPE: Implement MovGraph2::method34()
Changed paths:
engines/fullpipe/motion.cpp
diff --git a/engines/fullpipe/motion.cpp b/engines/fullpipe/motion.cpp
index 750c2de..aa7d02a 100644
--- a/engines/fullpipe/motion.cpp
+++ b/engines/fullpipe/motion.cpp
@@ -672,10 +672,45 @@ void MovGraph2::freeItems() {
warning("STUB: MovGraph2::freeItems()");
}
-MessageQueue *MovGraph2::method34(StaticANIObject *subj, int xpos, int ypos, int fuzzyMatch, int staticsId) {
- warning("STUB: MovGraph2::method34()");
+MessageQueue *MovGraph2::method34(StaticANIObject *ani, int xpos, int ypos, int fuzzyMatch, int staticsId) {
+ if (!ani->isIdle())
+ return 0;
- return 0;
+ if (ani->_flags & 0x100)
+ return 0;
+
+ MessageQueue *mq = doWalkTo(ani, xpos, ypos, fuzzyMatch, staticsId);
+
+ if (!mq)
+ return 0;
+
+ if (ani->_movement) {
+ if (mq->getCount() <= 1 || mq->getExCommandByIndex(0)->_messageKind != 22) {
+ PicAniInfo picAniInfo;
+
+ ani->getPicAniInfo(&picAniInfo);
+ ani->updateStepPos();
+ MessageQueue *mq1 = doWalkTo(ani, xpos, ypos, fuzzyMatch, staticsId);
+
+ ani->setPicAniInfo(&picAniInfo);
+
+ if (mq1) {
+ delete mq;
+
+ mq = mq1;
+ }
+ } else {
+ ani->_movement = 0;
+ }
+ }
+
+ if (!mq->chain(ani)) {
+ delete mq;
+
+ return 0;
+ }
+
+ return mq;
}
MessageQueue *MovGraph2::doWalkTo(StaticANIObject *obj, int xpos, int ypos, int fuzzyMatch, int staticsId) {
Commit: 9f92561df3d24cec093559b733f83f69d492581f
https://github.com/scummvm/scummvm/commit/9f92561df3d24cec093559b733f83f69d492581f
Author: Eugene Sandulenko (sev at scummvm.org)
Date: 2013-10-26T14:50:49-07:00
Commit Message:
FULLPIPE: Implement StaticANIObject::getSomeXY()
Changed paths:
engines/fullpipe/statics.cpp
engines/fullpipe/statics.h
diff --git a/engines/fullpipe/statics.cpp b/engines/fullpipe/statics.cpp
index f1107e5..0599125 100644
--- a/engines/fullpipe/statics.cpp
+++ b/engines/fullpipe/statics.cpp
@@ -649,6 +649,19 @@ Common::Point *StaticANIObject::getCurrDimensions(Common::Point &p) {
return &p;
}
+Common::Point *StaticANIObject::getSomeXY(Common::Point &p) {
+ if (_movement) {
+ _movement->getCurrDynamicPhaseXY(p);
+
+ return &p;
+ }
+
+ if (_statics)
+ _statics->getSomeXY(p);
+
+ return &p;
+}
+
void StaticANIObject::update(int counterdiff) {
int mqid;
diff --git a/engines/fullpipe/statics.h b/engines/fullpipe/statics.h
index 370f540..49ebc8e 100644
--- a/engines/fullpipe/statics.h
+++ b/engines/fullpipe/statics.h
@@ -204,6 +204,8 @@ class StaticANIObject : public GameObject {
Movement *getMovementByName(char *name);
Common::Point *getCurrDimensions(Common::Point &p);
+ Common::Point *getSomeXY(Common::Point &p);
+
void clearFlags();
void setFlags40(bool state);
bool isIdle();
More information about the Scummvm-git-logs
mailing list