diff options
| author | manuel <manuel@mausz.at> | 2011-04-14 02:37:31 +0200 |
|---|---|---|
| committer | manuel <manuel@mausz.at> | 2011-04-14 02:37:31 +0200 |
| commit | b18385a95f25e13c767244b494f31bd4fc238143 (patch) | |
| tree | af389057a2d4a03565f70186d7c1d2e49b95828f /pacman-c++/actor.cpp | |
| parent | 3d20638fa8e295271ce38953ad1c657d9275bd99 (diff) | |
| download | foop-b18385a95f25e13c767244b494f31bd4fc238143.tar.gz foop-b18385a95f25e13c767244b494f31bd4fc238143.tar.bz2 foop-b18385a95f25e13c767244b494f31bd4fc238143.zip | |
encapsulate gapless audioplayer commit from yesterday into an own class (gaplessaudioplayer)
added two new menu entrys: toggle sound + toggle ambient sound (2. very useful!)
Diffstat (limited to 'pacman-c++/actor.cpp')
| -rw-r--r-- | pacman-c++/actor.cpp | 38 |
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 | ||
| 11 | Actor::Actor(Color::Color color, bool local, QGraphicsItem *parent) | 11 | Actor::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 | ||
| 238 | void Actor::startEating() | 226 | void 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 | ||
| 246 | void Actor::stopEating() | 233 | void 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 | |||
| 256 | void Actor::startPlayer1() | ||
| 257 | { | ||
| 258 | m_wakaPlayer1->play(Sound::WakaWaka); | ||
| 259 | } | ||
| 260 | |||
| 261 | void Actor::startPlayer2() | ||
| 262 | { | ||
| 263 | m_wakaPlayer2->play(Sound::WakaWaka); | ||
| 264 | } | 238 | } |
| 265 | 239 | ||
| 266 | unsigned int Actor::getRoundPoints() | 240 | unsigned int Actor::getRoundPoints() |
