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.cpp38
1 files changed, 6 insertions, 32 deletions
diff --git a/pacman-c++/actor.cpp b/pacman-c++/actor.cpp
index 56e8e86..3af304c 100644
--- a/pacman-c++/actor.cpp
+++ b/pacman-c++/actor.cpp
@@ -10,7 +10,7 @@ static QVariant myBooleanInterpolator(const bool &start, const bool &end, qreal
10 10
11Actor::Actor(Color::Color color, bool local, QGraphicsItem *parent) 11Actor::Actor(Color::Color color, bool local, QGraphicsItem *parent)
12 : GameEntity(color, parent),m_direction(Actor::None), m_local(local), 12 : GameEntity(color, parent),m_direction(Actor::None), m_local(local),
13 m_wakaPlayer1(NULL), m_wakaPlayer2(NULL), m_roundPoints(0), m_gamePoints(0) 13 m_wakaPlayer(NULL), m_roundPoints(0), m_gamePoints(0)
14{ 14{
15 /* DON'T set any pixmap here. we've a pixmap in the animation 15 /* DON'T set any pixmap here. we've a pixmap in the animation
16 * but we need a sprite for the collision detection 16 * but we need a sprite for the collision detection
@@ -56,19 +56,7 @@ Actor::Actor(Color::Color color, bool local, QGraphicsItem *parent)
56 56
57 /* setup waka sound */ 57 /* setup waka sound */
58 if (local) 58 if (local)
59 { 59 m_wakaPlayer = new GaplessAudioPlayer(Sound::WakaWaka, 100, this);
60 m_wakaPlayer1 = new AudioPlayer(this);
61 m_wakaPlayer2 = new AudioPlayer(this);
62 if (m_wakaPlayer1->isWorking() && m_wakaPlayer2->isWorking())
63 {
64 m_wakaPlayer1->setPrefinishMark(100);
65 m_wakaPlayer2->setPrefinishMark(100);
66 connect(m_wakaPlayer1, SIGNAL(prefinishMarkReached(qint32)), this, SLOT(startPlayer2()));
67 connect(m_wakaPlayer2, SIGNAL(prefinishMarkReached(qint32)), this, SLOT(startPlayer1()));
68 AudioManager::self()->registerAudioPlayer(m_wakaPlayer1);
69 AudioManager::self()->registerAudioPlayer(m_wakaPlayer2);
70 }
71 }
72 60
73 /* make the picture showing the current direction visible */ 61 /* make the picture showing the current direction visible */
74 m_images[m_direction]->setVisible(true); 62 m_images[m_direction]->setVisible(true);
@@ -237,30 +225,16 @@ void Actor::eatingPacman()
237 225
238void Actor::startEating() 226void Actor::startEating()
239{ 227{
240 if (!m_local || !m_wakaPlayer1->isWorking()) 228 if (!m_local || !m_wakaPlayer->isWorking())
241 return; 229 return;
242 if (m_wakaPlayer1->state() != Phonon::PlayingState && m_wakaPlayer2->state() != Phonon::PlayingState) 230 m_wakaPlayer->play();
243 startPlayer1();
244} 231}
245 232
246void Actor::stopEating() 233void Actor::stopEating()
247{ 234{
248 if (!m_local || !m_wakaPlayer1->isWorking()) 235 if (!m_local || !m_wakaPlayer->isWorking())
249 return; 236 return;
250 if (m_wakaPlayer1->state() != Phonon::PausedState) 237 m_wakaPlayer->pause();
251 m_wakaPlayer1->pause();
252 if (m_wakaPlayer2->state() != Phonon::PausedState)
253 m_wakaPlayer2->pause();
254}
255
256void Actor::startPlayer1()
257{
258 m_wakaPlayer1->play(Sound::WakaWaka);
259}
260
261void Actor::startPlayer2()
262{
263 m_wakaPlayer2->play(Sound::WakaWaka);
264} 238}
265 239
266unsigned int Actor::getRoundPoints() 240unsigned int Actor::getRoundPoints()