Files
habitica/assets/js/controllers/petsCtrl.js
T
2013-09-03 10:32:06 +02:00

39 lines
1.5 KiB
JavaScript

habitrpg.controller("PetsCtrl", ['$scope', '$rootScope', 'User',
function($scope, $rootScope, User) {
var user = $rootScope.user;
$scope.userPets = user.items.pets;
$scope.userCurrentPet = user.items.currentPet;
$scope.pets = window.habitrpgShared.items.items.pets;
$scope.hatchingPotions = window.habitrpgShared.items.items.hatchingPotions;
$scope.hasPet = function(name, potion){
if (!$scope.userPets) return false;
return _.contains($scope.userPets, name + '-' + potion) ? true : false;
}
$scope.isCurrentPet = function(name, potion){
if (!$scope.userCurrentPet || !$scope.userPets) return false;
return $scope.userCurrentPet.str === (name + '-' + potion);
}
$scope.choosePet = function(name, potion){
console.log(user.items.currentPet);
if($scope.userCurrentPet && $scope.userCurrentPet.str === (name + '-' + potion)){
$scope.userCurrentPet = null;
User.log({op:'set', data:{'items.currentPet': $scope.userCurrentPet}});
}else{
var pet = _.find($scope.pets, {name: name});
console.log(pet, {name: $scope.pets});
pet.modifier = potion;
pet.str = name + '-' + potion;
$scope.userCurrentPet = pet;
User.log({op:'set', data:{'items.currentPet': $scope.userCurrentPet}});
}
// Changes doesn't propagate!!! here the console log for 'user.items.currentPet' the old value and
// for '$scope.userCurrentPet' the new one
console.log(user.items.currentPet, $scope.userCurrentPet);
}
}]);