From 3fd290a3e1c31344fc949f419902ba6e6a618b59 Mon Sep 17 00:00:00 2001 From: Matteo Pagliazzi Date: Tue, 3 Sep 2013 10:32:06 +0200 Subject: [PATCH 1/3] non working stable choosePet --- assets/css/npcs.styl | 2 +- assets/js/controllers/petsCtrl.js | 39 +++++++++++++++++++++++++++++++ views/index.jade | 1 + views/options/index.jade | 5 +--- views/options/pets.jade | 31 ++++++++++++++++++++++++ 5 files changed, 73 insertions(+), 5 deletions(-) create mode 100644 assets/js/controllers/petsCtrl.js create mode 100644 views/options/pets.jade diff --git a/assets/css/npcs.styl b/assets/css/npcs.styl index ea5782abcf..74f08efc8a 100644 --- a/assets/css/npcs.styl +++ b/assets/css/npcs.styl @@ -4,7 +4,7 @@ .NPC-Daniel {background-position: -222px 0; width: 135px; height: 123px} .NPC-Justin {background-position: -357px 0; width: 84px; height: 119px} .NPC-Justin-Head {background-position: -396px 0; width: 36px; height: 96px} -.NPC-Matt {background-position: -441px 0; width: 198px; height: 144px} +.NPC-Matt {background-position: -441px 0; width: 100%; padding-left: 208px; padding-bottom: 20px;} // Bailey .NPC-Bailey diff --git a/assets/js/controllers/petsCtrl.js b/assets/js/controllers/petsCtrl.js new file mode 100644 index 0000000000..1da9c01980 --- /dev/null +++ b/assets/js/controllers/petsCtrl.js @@ -0,0 +1,39 @@ +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); + } + + }]); \ No newline at end of file diff --git a/views/index.jade b/views/index.jade index db3571265e..769590a8cc 100644 --- a/views/index.jade +++ b/views/index.jade @@ -68,6 +68,7 @@ html != js('controllers/filtersCtrl') != js('controllers/userAvatarCtrl') != js('controllers/groupsCtrl') + != js('controllers/petsCtrl') != js('controllers/footerCtrl') //webfonts diff --git a/views/options/index.jade b/views/options/index.jade index fbe32e9cc4..c54bb4eb3a 100644 --- a/views/options/index.jade +++ b/views/options/index.jade @@ -54,10 +54,7 @@ //app:game-pane:market .tab-pane#stable-tab - h4.well - | Coming soon. - a(href='https://github.com/lefnire/habitrpg/wiki/Contributing#website', target='blank') Help us port this feature! - //app:pets:stable + include ./groups/tavern .tab-pane#tavern-tab include ./groups/tavern diff --git a/views/options/pets.jade b/views/options/pets.jade new file mode 100644 index 0000000000..a2bd060d72 --- /dev/null +++ b/views/options/pets.jade @@ -0,0 +1,31 @@ +.stable(ng-controller='PetsCtrl') + .NPC-Matt + .popover.static-popover.fade.right.in(style='max-width: 550px; margin-left: 10px;') + .arrow + h3.popover-title Matt Boch + .popover-content + p + | Welcome to the Stable! I'm + a(target='_blank', href='http://www.kickstarter.com/profile/mattboch') Matt + | , the beast master. Choose a pet here to adventure at your side - they aren't much help yet, but I forsee a time when they're able to + a(href='https://trello.com/card/mounts/50e5d3684fe3a7266b0036d6/221') grow into powerful steeds + | ! Until that day, + a(target='_blank', href='https://f.cloud.github.com/assets/2374703/164631/3ed5fa6c-78cd-11e2-8743-f65ac477b55e.png') have a look-see + | at all the pets you can collect. + h4 {{userPets.length}} / 90 Pets Found + + table.pets(ng-repeat='pet in pets') + tbody + tr + td(ng-repeat='potion in hatchingPotions') + button(class="pet-button Pet-{{pet.name}}-{{potion.name}}", ng-show='hasPet(pet.name, potion.name)', ng-class="{active: isCurrentPet(pet.name, potion.name)}", ng-click='choosePet(pet.name, potion.name)', tooltip='{{potion.name}} {{pet.name}}') + button(class="pet-button pet-not-owned", ng-hide='hasPet(pet.name, potion.name)') + img(src='/bower_components/habitrpg-shared/img/PixelPaw.png', tooltip='{{potion.name}} {{pet.name}}') + + h4 Rare Pets + table + tr + td + button(class="pet-button Pet-Wolf-Veteran", ng-show='hasPet("Wolf", "Veteran")', ng-class='{active: isCurrentPet("Wolf", "Veteran")}', ng-click='choosePet("Wolf", "Veteran")', tooltip='Veteran Wolf') + button(class="pet-button pet-not-owned", ng-hide='hasPet("Wolf", "Veteran")') + img(src='/bower_components/habitrpg-shared/img/PixelPaw.png', tooltip='Veteran Wolf') \ No newline at end of file From e41efa98e45ddb47766b8ba26d9b62d1b6105bfe Mon Sep 17 00:00:00 2001 From: Matteo Pagliazzi Date: Tue, 3 Sep 2013 12:05:54 +0200 Subject: [PATCH 2/3] working stable --- assets/js/controllers/petsCtrl.js | 18 +++++------------- views/options/index.jade | 2 +- 2 files changed, 6 insertions(+), 14 deletions(-) diff --git a/assets/js/controllers/petsCtrl.js b/assets/js/controllers/petsCtrl.js index 1da9c01980..1643d52d51 100644 --- a/assets/js/controllers/petsCtrl.js +++ b/assets/js/controllers/petsCtrl.js @@ -1,10 +1,8 @@ -habitrpg.controller("PetsCtrl", ['$scope', '$rootScope', 'User', - function($scope, $rootScope, User) { +habitrpg.controller("PetsCtrl", ['$scope', 'User', + function($scope, User) { - var user = $rootScope.user; - - $scope.userPets = user.items.pets; - $scope.userCurrentPet = user.items.currentPet; + $scope.userPets = User.user.items.pets; + $scope.userCurrentPet = User.user.items.currentPet; $scope.pets = window.habitrpgShared.items.items.pets; $scope.hatchingPotions = window.habitrpgShared.items.items.hatchingPotions; @@ -19,21 +17,15 @@ habitrpg.controller("PetsCtrl", ['$scope', '$rootScope', 'User', } $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); + User.set('items.currentPet', $scope.userCurrentPet); } }]); \ No newline at end of file diff --git a/views/options/index.jade b/views/options/index.jade index c54bb4eb3a..eff9d15bf3 100644 --- a/views/options/index.jade +++ b/views/options/index.jade @@ -54,7 +54,7 @@ //app:game-pane:market .tab-pane#stable-tab - include ./groups/tavern + include ./pets .tab-pane#tavern-tab include ./groups/tavern From b69ce1b5d6c1bf9027b279498e9f3d9547a089fd Mon Sep 17 00:00:00 2001 From: Matteo Pagliazzi Date: Tue, 3 Sep 2013 12:08:54 +0200 Subject: [PATCH 3/3] remove tooltip from rare pet --- views/options/pets.jade | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/views/options/pets.jade b/views/options/pets.jade index a2bd060d72..ab4b4bf1aa 100644 --- a/views/options/pets.jade +++ b/views/options/pets.jade @@ -28,4 +28,4 @@ td button(class="pet-button Pet-Wolf-Veteran", ng-show='hasPet("Wolf", "Veteran")', ng-class='{active: isCurrentPet("Wolf", "Veteran")}', ng-click='choosePet("Wolf", "Veteran")', tooltip='Veteran Wolf') button(class="pet-button pet-not-owned", ng-hide='hasPet("Wolf", "Veteran")') - img(src='/bower_components/habitrpg-shared/img/PixelPaw.png', tooltip='Veteran Wolf') \ No newline at end of file + img(src='/bower_components/habitrpg-shared/img/PixelPaw.png') \ No newline at end of file