From: Heli Hyvättinen Date: Tue, 26 Jul 2011 13:02:02 +0000 (+0300) Subject: Merge branch 'victoryscreen' X-Git-Tag: v0.3.0_fremantle~13 X-Git-Url: http://vcs.maemo.org/git/?p=ghostsoverboard;a=commitdiff_plain;h=fc59090da28a9adeb50ddefc25aac843c4dfff99 Merge branch 'victoryscreen' Victory dialog integrated to view/scene Conflicts: seascene.cpp seascene.h --- fc59090da28a9adeb50ddefc25aac843c4dfff99 diff --cc seascene.cpp index 655a903,b7f9211..a00b2c0 --- a/seascene.cpp +++ b/seascene.cpp @@@ -101,12 -100,11 +103,15 @@@ void SeaScene::setupMap(int ghosts, in clear(); + setItemPointersNull(); + createMenuItems(); + createAboutBoxItems(); + + createVictoryItems(); + + //empty the list of moving items movingItems_.clear(); @@@ -393,18 -391,19 +398,31 @@@ void SeaScene::handleScreenTapped( return; } + //If the game is paused and about box is shown, close it and show the pause text and menu again + + if(pAboutBoxItem_) + { + if(pAboutBoxItem_->isVisible()) + { + pAboutBoxItem_->hide(); + pPausetextItem_->show(); + } + } + - //If the game is paused, check if menu item was selected ++ + //If the game is paused, check if the victory item is being shown + if(pVictoryCongratulationsItem_) + { + if (pVictoryCongratulationsItem_->isVisibleTo(NULL)) //returns visibility to scene + { + pVictoryCongratulationsItem_->hide(); + restartGame(); + pPauseAction_->setChecked(false); // unpause + return; + } + } + + //If the game is paused and no victory, check if menu item was selected QList items = selectedItems(); @@@ -662,33 -634,25 +645,56 @@@ void SeaScene::softContinue( pause(pPauseAction_->isChecked()); } ++ + void SeaScene::createVictoryItems() + { + pVictoryCongratulationsItem_ = new QGraphicsTextItem; + pVictoryCongratulationsItem_->setHtml(" Victory!"); + pVictoryCongratulationsItem_->hide(); + pVictoryCongratulationsItem_->setPos(300,50); + pVictoryCongratulationsItem_->setZValue(1000); + addItem(pVictoryCongratulationsItem_); + + // QGraphicsPixmapItem * pImageItem = new QGraphicsPixmapItem(QPixmap(":/pix/aavesaari.png"),pVictoryCongratulationsItem_); + // pImageItem->setPos(-100,150); + // pImageItem->setZValue(1000); + // pImageItem->setScale(2.0); + + + QGraphicsTextItem * pTextItem = new QGraphicsTextItem(pVictoryCongratulationsItem_); + pTextItem->setHtml("
Congratulations!
You have saved all the ghosts." + "

Tap to play again "); + pTextItem->setPos(-50,100); + pTextItem->setZValue(1000); ++} + +void SeaScene::createAboutBoxItems() +{ + pAboutBoxItem_ = new QGraphicsTextItem; + addItem(pAboutBoxItem_); + pAboutBoxItem_->setPos(25,50); + pAboutBoxItem_->setZValue(1000); + pAboutBoxItem_->hide(); + + pAboutBoxItem_->setHtml(tr("" + "%1
Version %2" + "

Copyright 2011 Heli Hyvättinen" + "

License: General Public License v2" + "

Bug Reports:
https://bugs.maemo.org/ " + "enter_bug.cgi?product=Ghosts%20Overboard" + ).arg(QApplication::applicationName(),QApplication::applicationVersion())); + +} + +void SeaScene::setItemPointersNull() +{ + pPausetextItem_ = NULL; + pRestartLevelItem_ = NULL; + pRestartGameItem_ = NULL; + pSettingsItem_ = NULL; + pAboutItem_ = NULL; + pQuitItem_ = NULL ; + pMinimizeItem_ = NULL; + + pAboutBoxItem_ = NULL; } diff --cc seascene.h index 256c614,6540ddb..4673995 --- a/seascene.h +++ b/seascene.h @@@ -82,10 -82,8 +82,12 @@@ public slots void softContinue(); + void createAboutBoxItems(); + + void createVictoryItems(); + + void setItemPointersNull(); + protected: @@@ -125,8 -123,7 +127,9 @@@ QGraphicsTextItem * pAboutItem_; QGraphicsTextItem * pQuitItem_; QGraphicsTextItem * pMinimizeItem_; + + QGraphicsTextItem * pVictoryCongratulationsItem_; + QGraphicsTextItem * pAboutBoxItem_; QList levelList_;