mirror of
https://github.com/wassname/cardsforscience.git
synced 2026-06-27 17:29:55 +08:00
Add achievements local storage support
This commit is contained in:
+7
-2
@@ -4,7 +4,7 @@ var achievements =
|
||||
listSpecial: [],
|
||||
listSummary: [],
|
||||
|
||||
startTime: new Date(),
|
||||
startTime: new Date().getTime(),
|
||||
|
||||
count:
|
||||
{
|
||||
@@ -50,6 +50,11 @@ var achievements =
|
||||
});
|
||||
},
|
||||
|
||||
restore: function()
|
||||
{
|
||||
achievements = $.extend({}, achievements, ObjectStorage.load('achievements'));
|
||||
},
|
||||
|
||||
addWorkers: function(list)
|
||||
{
|
||||
for (var i = 0; i < list.length; i++) {
|
||||
@@ -104,7 +109,7 @@ var achievements =
|
||||
achievements.list[i].alerted = true;
|
||||
|
||||
var a = $.extend(true, {}, achievements.list[i]);
|
||||
a.time = achievements.timeFormatter(new Date().getTime() - achievements.startTime.getTime());
|
||||
a.time = achievements.timeFormatter(new Date().getTime() - achievements.startTime);
|
||||
achievements.listSummary.push(a);
|
||||
}
|
||||
},
|
||||
|
||||
+3
-2
@@ -94,13 +94,14 @@
|
||||
}
|
||||
});
|
||||
|
||||
achievements.setList(Helpers.loadFile('json/achievements.json'));
|
||||
achievements.restore();
|
||||
|
||||
app.controller('AchievementsController', function() {
|
||||
this.achievements = achievements.listSummary;
|
||||
this.achievementsAll = achievements.list;
|
||||
});
|
||||
|
||||
achievements.setList(Helpers.loadFile('json/achievements.json'));
|
||||
|
||||
// Activate auto-saving every 10 seconds
|
||||
setInterval(function () {
|
||||
GameObjects.saveAll();
|
||||
|
||||
@@ -175,6 +175,7 @@ var GameObjects = (function() {
|
||||
ObjectStorage.save('research', research);
|
||||
ObjectStorage.save('workers', workers);
|
||||
ObjectStorage.save('upgrades', upgrades);
|
||||
ObjectStorage.save('achievements', achievements);
|
||||
};
|
||||
|
||||
return {
|
||||
|
||||
+6
-1
@@ -8,7 +8,12 @@ var ObjectStorage = (function() {
|
||||
var _s = localStorage;
|
||||
return {
|
||||
save: function(key, item) {
|
||||
_s.setItem(key, JSON.stringify(item));
|
||||
_s.setItem(key, JSON.stringify(item, function (key, val) {
|
||||
if (key == '$$hashKey') {
|
||||
return undefined;
|
||||
}
|
||||
return val;
|
||||
}));
|
||||
},
|
||||
load: function(key) {
|
||||
return JSON.parse(_s.getItem(key));
|
||||
|
||||
Reference in New Issue
Block a user