Highscore gets saved.
authorHeli Hyvättinen <heli.hyvattinen@kymp.net>
Wed, 7 Sep 2011 11:49:12 +0000 (14:49 +0300)
committerHeli Hyvättinen <heli.hyvattinen@kymp.net>
Wed, 7 Sep 2011 11:49:12 +0000 (14:49 +0300)
levelset.cpp
seascene.cpp

index 721c273..b470946 100644 (file)
@@ -22,6 +22,7 @@
 
 #include "levelset.h"
 #include <QSettings>
+#include <QDebug>
 
 Levelset::Levelset()
 {
@@ -78,17 +79,23 @@ void Levelset::setTotalHighScore(int highscore)
 int Levelset::getLevelHighScore(int index)
 {
     QSettings settings;
-    QString group = name_.append("/LevelHighScore");
+    QString group = name_;
+    group.append("/LevelHighScore");
     settings.beginGroup(group);
 
+    qDebug() << group;
+
     return settings.value(QString(index),900).toInt();
 }
 
 void Levelset::setLevelHighScore(int index, int highScore)
 {
     QSettings settings;
-    QString group = name_.append("/LevelHighScore");
+    QString group = name_;
+    group.append("/LevelHighScore");
     settings.beginGroup(group);
 
+    qDebug() << group;
+
     settings.setValue(QString(index),highScore);
 }
index 580d4b0..9db3306 100644 (file)
@@ -635,8 +635,21 @@ void SeaScene::nextLevel()
     int score = scoreCounter_.elapsed()/1000;
     totalScore_ += score;
     int highscore = levelset_.getLevelHighScore(currentLevel_);
+    qDebug() << highscore;
 
-    QString scoretext = tr("Your time: %1 min %2 s<br>Best time: %3 min %4 sec").arg(score/60).arg(score%60).arg(highscore/60).arg(highscore%60);
+    QString scoretext;
+
+    if (score >= highscore)
+    {
+        scoretext = tr("Your time: %1 min %2 s<br>Best time: %3 min %4 sec").arg(score/60).arg(score%60).arg(highscore/60).arg(highscore%60);
+    }
+
+    else //New high score!
+
+    {
+        scoretext = tr("Your time %1 min %2 s is the new best time!").arg(score/60).arg(score%60);
+        levelset_.setLevelHighScore(currentLevel_,score);
+    }
 
     //pause to show the highscore or victory screen