diff options
author | Björn Steinbrink <B.Steinbrink@gmx.de> | 2006-07-24 14:49:24 +0000 |
---|---|---|
committer | Björn Steinbrink <B.Steinbrink@gmx.de> | 2006-07-24 14:49:24 +0000 |
commit | 59fa52906b1ac1f53e895f28e035d985cbee24a9 (patch) | |
tree | 9d5a1b4703cbb998aaea2ffeef066e05e596a5a4 /src/being.cpp | |
parent | 362a5f5db4a1c4792ddc4feca5e581edff439c34 (diff) | |
download | mana-59fa52906b1ac1f53e895f28e035d985cbee24a9.tar.gz mana-59fa52906b1ac1f53e895f28e035d985cbee24a9.tar.bz2 mana-59fa52906b1ac1f53e895f28e035d985cbee24a9.tar.xz mana-59fa52906b1ac1f53e895f28e035d985cbee24a9.zip |
Fixed setDirection() semantics.
Removed a printf-leftover.
Diffstat (limited to 'src/being.cpp')
-rw-r--r-- | src/being.cpp | 14 |
1 files changed, 8 insertions, 6 deletions
diff --git a/src/being.cpp b/src/being.cpp index 69057c09..8a55f2e2 100644 --- a/src/being.cpp +++ b/src/being.cpp @@ -230,7 +230,7 @@ Being::setAction(Action action) void Being::setDirection(Uint8 direction) { - mDirection |= direction; + mDirection = direction; std::string dir; if (direction & UP) @@ -268,15 +268,17 @@ Being::nextStep() PATH_NODE node = mPath.front(); mPath.pop_front(); - mDirection = 0; + int dir = 0; if (node.x > mX) - setDirection(RIGHT); + dir |= RIGHT; else if (node.x < mX) - setDirection(LEFT); + dir |= LEFT; if (node.y > mY) - setDirection(DOWN); + dir |= DOWN; else if (node.y < mY) - setDirection(UP); + dir |= UP; + + setDirection(dir); mX = node.x; mY = node.y; |