summaryrefslogtreecommitdiffstats
path: root/pacman-c++/actor.cpp
diff options
context:
space:
mode:
Diffstat (limited to 'pacman-c++/actor.cpp')
-rw-r--r--pacman-c++/actor.cpp27
1 files changed, 25 insertions, 2 deletions
diff --git a/pacman-c++/actor.cpp b/pacman-c++/actor.cpp
index 43368d6..bb062ea 100644
--- a/pacman-c++/actor.cpp
+++ b/pacman-c++/actor.cpp
@@ -118,8 +118,8 @@ bool Actor::isLocal()
118 118
119void Actor::move(Actor::Movement direction) 119void Actor::move(Actor::Movement direction)
120{ 120{
121 /*if (Constants::server) 121 if (Constants::server)
122 return moveByServer(direction);*/ 122 return moveByServer(direction);
123 123
124 /* stop current animation */ 124 /* stop current animation */
125 if (direction != m_direction) 125 if (direction != m_direction)
@@ -231,5 +231,28 @@ void Actor::finishRound()
231void Actor::moveByServer(Actor::Movement direction) 231void Actor::moveByServer(Actor::Movement direction)
232{ 232{
233 qDebug() << "move by server"; 233 qDebug() << "move by server";
234
235 QPointF endpos(0, 0);
236 switch(direction)
237 {
238 case Actor::None:
239 break;
240 case Actor::Left:
241 endpos.setX(static_cast<qreal>(Constants::field_size.width) * -1);
242 break;
243 case Actor::Right:
244 endpos.setX(Constants::field_size.width);
245 break;
246 case Actor::Up:
247 endpos.setY(static_cast<qreal>(Constants::field_size.height) * -1);
248 break;
249 case Actor::Down:
250 endpos.setY(Constants::field_size.height);
251 break;
252 default:
253 Q_ASSERT(false);
254 break;
255 }
256 setPos(pos() + endpos);
234 m_direction = direction; 257 m_direction = direction;
235} 258}