From 67716ef3097d49253e37a3933be6b4a8888dbb41 Mon Sep 17 00:00:00 2001 From: Blade Barringer Date: Wed, 7 Sep 2016 12:47:10 -0500 Subject: [PATCH] Clean up quest progress logic --- website/client/js/controllers/menuCtrl.js | 30 ++++++++++++++--------- 1 file changed, 19 insertions(+), 11 deletions(-) diff --git a/website/client/js/controllers/menuCtrl.js b/website/client/js/controllers/menuCtrl.js index a55682e1e0..fa2238c17f 100644 --- a/website/client/js/controllers/menuCtrl.js +++ b/website/client/js/controllers/menuCtrl.js @@ -1,8 +1,8 @@ 'use strict'; angular.module('habitrpg') - .controller('MenuCtrl', ['$scope', '$rootScope', '$http', 'Chat', - function($scope, $rootScope, $http, Chat) { + .controller('MenuCtrl', ['$scope', '$rootScope', '$http', 'Chat', 'Content', + function($scope, $rootScope, $http, Chat, Content) { $scope.logout = function() { localStorage.clear(); @@ -29,24 +29,32 @@ angular.module('habitrpg') $scope.hasQuestProgress = function() { var user = $scope.user; if (user.party.quest) { - var userQuest = $scope.Content.quests[user.party.quest.key]; - if (userQuest && userQuest.boss && user.party.quest.progress.up > 0) return true; - if (userQuest && userQuest.collect && user.party.quest.progress.collectedItems > 0) return true; + var userQuest = Content.quests[user.party.quest.key]; + + if (!userQuest) { + return false; + } + if (userQuest.boss && user.party.quest.progress.up > 0) { + return true; + } + if (userQuest.collect && user.party.quest.progress.collectedItems > 0) { + return true; + } } return false; }; - + $scope.getQuestInfo = function() { var user = $scope.user; var questInfo = {}; if (user.party.quest) { - var userQuest = $scope.Content.quests[user.party.quest.key]; + var userQuest = Content.quests[user.party.quest.key]; + + questInfo.title = userQuest.text(); + if (userQuest.boss) { - questInfo.title = userQuest.boss.name(); questInfo.body = window.env.t('questTaskDamage', { damage: user.party.quest.progress.up.toPrecision(2) }); - } - else if (userQuest.collect) { - questInfo.title = userQuest.collect.text(); + } else if (userQuest.collect) { questInfo.body = window.env.t('questTaskCollection', { items: user.party.quest.progress.collectedItems }); } }