From 7667effa9635b0c25088305fe89c15a9805d6dbb Mon Sep 17 00:00:00 2001 From: manuel Date: Mon, 11 Apr 2011 16:58:36 +0200 Subject: - server doesn't neet mainwidget.cpp - removed local mode (doesn't work anyway) - made movement more like orginal pacman --- pacman-c++/actor.cpp | 27 +++++++++++++++++++++++++-- 1 file changed, 25 insertions(+), 2 deletions(-) (limited to 'pacman-c++/actor.cpp') 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() void Actor::move(Actor::Movement direction) { - /*if (Constants::server) - return moveByServer(direction);*/ + if (Constants::server) + return moveByServer(direction); /* stop current animation */ if (direction != m_direction) @@ -231,5 +231,28 @@ void Actor::finishRound() void Actor::moveByServer(Actor::Movement direction) { qDebug() << "move by server"; + + QPointF endpos(0, 0); + switch(direction) + { + case Actor::None: + break; + case Actor::Left: + endpos.setX(static_cast(Constants::field_size.width) * -1); + break; + case Actor::Right: + endpos.setX(Constants::field_size.width); + break; + case Actor::Up: + endpos.setY(static_cast(Constants::field_size.height) * -1); + break; + case Actor::Down: + endpos.setY(Constants::field_size.height); + break; + default: + Q_ASSERT(false); + break; + } + setPos(pos() + endpos); m_direction = direction; } -- cgit v1.2.3