From 0e28f04c909776037ab799c2bb3c44b10ac2c8bf Mon Sep 17 00:00:00 2001 From: Sabe Jones Date: Thu, 25 Dec 2014 14:33:11 -0600 Subject: [PATCH] feat(event): Implement Seasonal Shop --- public/js/controllers/inventoryCtrl.js | 18 ++++++++++++------ views/options/inventory/inventory.jade | 13 ++++++++++--- 2 files changed, 22 insertions(+), 9 deletions(-) diff --git a/public/js/controllers/inventoryCtrl.js b/public/js/controllers/inventoryCtrl.js index e1b47a47f0..32511b60ef 100644 --- a/public/js/controllers/inventoryCtrl.js +++ b/public/js/controllers/inventoryCtrl.js @@ -87,16 +87,22 @@ habitrpg.controller("InventoryCtrl", ['$rootScope', '$scope', '$window', 'User', } $scope.purchase = function(type, item){ - if (item.key=='spookDust') return User.user.ops.buySpookDust({}); var gems = User.user.balance * 4; - if(gems < item.value) return $rootScope.openModal('buyGems'); - var string = (type == 'hatchingPotions') ? window.env.t('hatchingPotion') : (type == 'eggs') ? window.env.t('eggSingular') : (type == 'quests') ? window.env.t('quest') : (item.key == 'Saddle') ? window.env.t('foodSaddleText').toLowerCase() : (type == 'special') ? item.key : type; // this is ugly but temporary, once the purchase modal is done this will be removed - var message = window.env.t('buyThis', {text: string, price: item.value, gems: gems}) + var string = (type == 'weapon') ? window.env.t('weapon') : (type == 'armor') ? window.env.t('armor') : (type == 'head') ? window.env.t('headgear') : (type == 'shield') ? window.env.t('offhand') : (type == 'hatchingPotions') ? window.env.t('hatchingPotion') : (type == 'eggs') ? window.env.t('eggSingular') : (type == 'quests') ? window.env.t('quest') : (item.key == 'Saddle') ? window.env.t('foodSaddleText').toLowerCase() : type; // this is ugly but temporary, once the purchase modal is done this will be removed + if (type == 'weapon' || type == 'armor' || type == 'head' || type == 'shield') { + if (gems < ((item.specialClass == "wizard") && (item.type == "weapon")) + 1) return $rootScope.openModal('buyGems'); + var message = window.env.t('buyThis', {text: string, price: ((item.specialClass == "wizard") && (item.type == "weapon")) + 1, gems: gems}) + if($window.confirm(message)) + User.user.ops.purchase({params:{type:"gear",key:item.key}}); + } else { + if(gems < item.value) return $rootScope.openModal('buyGems'); + var message = window.env.t('buyThis', {text: string, price: item.value, gems: gems}) + if($window.confirm(message)) + User.user.ops.purchase({params:{type:type,key:item.key}}); + } - if($window.confirm(message)) - User.user.ops.purchase({params:{type:type,key:item.key}}); } $scope.choosePet = function(egg, potion){ diff --git a/views/options/inventory/inventory.jade b/views/options/inventory/inventory.jade index d5d254c2a3..eb1544cfab 100644 --- a/views/options/inventory/inventory.jade +++ b/views/options/inventory/inventory.jade @@ -23,13 +23,20 @@ script(type='text/ng-template', id='partials/options.inventory.seasonalshop.html .container-fluid .stable.row .col-md-2 - .seasonalshop_closed + .seasonalshop_winter2015 .col-md-10 .popover.static-popover.fade.right.in .arrow - h3.popover-title!=env.t('seasonalShopClosedTitle', {linkStart:"", linkEnd: ""}) + h3.popover-title!=env.t('seasonalShopTitle', {linkStart:"", linkEnd: ""}) .popover-content - p!=env.t('seasonalShopClosedText', {linkStart: "", linkEnd: ""}) + p!=env.t('seasonalShopText') + li.customize-menu.inventory-gear + menu(label='{{::label}}', ng-repeat='(set,label) in {candycane:env.t("candycaneSet"), ski:env.t("skiSet"), snowflake:env.t("snowflakeSet"), yeti:env.t("yetiSet")}') + div(ng-repeat='item in Content.gear.flat | toArray | where:{index:set}') + button.customize-option(popover='{{::item.notes()}}', popover-title='{{::item.text()}}', popover-trigger='mouseenter', popover-placement='right', ng-click='purchase(item.type,item)', class='shop_{{::item.key}}') + .center + | {{((item.specialClass == "wizard") && (item.type == "weapon")) + 1}}  + span.Pet_Currency_Gem1x.inline-gems script(type='text/ng-template', id='partials/options.inventory.timetravelers.html') .container-fluid