diff --git a/app/build.gradle b/app/build.gradle index d0ad463..f76f3f4 100644 --- a/app/build.gradle +++ b/app/build.gradle @@ -28,4 +28,5 @@ dependencies { compile 'com.android.support:support-v4:23.4.0' compile 'com.affectiva.android:affdexsdk:3.1' testCompile 'junit:junit:4.12' + compile 'com.google.code.gson:gson:2.4' } diff --git a/app/src/main/java/com/rubenvandeven/emotionhero/GamingActivity.java b/app/src/main/java/com/rubenvandeven/emotionhero/GamingActivity.java index 8cca7c3..f504aba 100644 --- a/app/src/main/java/com/rubenvandeven/emotionhero/GamingActivity.java +++ b/app/src/main/java/com/rubenvandeven/emotionhero/GamingActivity.java @@ -80,7 +80,6 @@ public class GamingActivity extends AppCompatActivity implements Detector.ImageL } }); - // Set up the user interaction to manually show or hide the system UI. mContentView.setOnClickListener(new View.OnClickListener() { @Override diff --git a/app/src/main/java/com/rubenvandeven/emotionhero/Highscore.java b/app/src/main/java/com/rubenvandeven/emotionhero/Highscore.java new file mode 100644 index 0000000..964d272 --- /dev/null +++ b/app/src/main/java/com/rubenvandeven/emotionhero/Highscore.java @@ -0,0 +1,19 @@ +package com.rubenvandeven.emotionhero; + +import java.util.Date; + +/** + * Created by ruben on 19/08/16. + */ + +public class Highscore { + String level; + float score; + Date time; + + public Highscore(String level, float score) { + this.level = level; + this.score = score; + this.time = new Date(); + } +} diff --git a/app/src/main/java/com/rubenvandeven/emotionhero/Highscores.java b/app/src/main/java/com/rubenvandeven/emotionhero/Highscores.java new file mode 100644 index 0000000..3571de5 --- /dev/null +++ b/app/src/main/java/com/rubenvandeven/emotionhero/Highscores.java @@ -0,0 +1,48 @@ +package com.rubenvandeven.emotionhero; + +import com.google.gson.Gson; +import com.google.gson.reflect.TypeToken; + +import java.lang.reflect.Array; +import java.util.ArrayList; +import java.util.Collections; +import java.util.Comparator; +import java.util.Date; + +/** + * Created by ruben on 19/08/16. + */ + +public class Highscores extends ArrayList{ + + + public static Highscores fromJson(String json) { + Gson gson = new Gson(); + return gson.fromJson(json, Highscores.class); + } + + public String toJson() { + Gson gson = new Gson(); + return gson.toJson(this); + } + + /** + * Get the n highest scores + */ + public ArrayList getTopN(int n) { + Collections.sort(this, new Comparator() { + @Override + public int compare(Highscore score1, Highscore score2) + { + return score1.score < score2.score ? -1 : score1.score == score2.score ? 0 : 1; + } + }); + return this; + } + +// public ArrayList getLastN(int n) { +// +// } + + +}