mirror of
https://github.com/sudoxnym/habitica.git
synced 2026-07-22 03:34:14 +00:00
[#1969] add in @Fandekasp's shirts, had to do separate commit for handling of
user.preferences.shirt
This commit is contained in:
parent
549add08ed
commit
dc348d5601
5 changed files with 43 additions and 7 deletions
|
|
@ -20,11 +20,30 @@ db.users.find().forEach(function(user){
|
|||
|
||||
// gender => size
|
||||
user.preferences.size = (user.preferences.gender == 'f') ? 'slim' : 'broad';
|
||||
user.preferences.shirt = (user.preferences.gender == 'f') ? 'pink' : 'white';
|
||||
delete user.preferences.gender;
|
||||
|
||||
// Delete armorSet
|
||||
delete user.preferences.armorSet;
|
||||
|
||||
user.items.gear = {
|
||||
owned: {}, // TODO
|
||||
equipped: {
|
||||
weapon: 'weapon_warrior_' + user.items.weapon,
|
||||
shield: 'shield_warrior_' + user.items.shield,
|
||||
head: 'head_warrior_' + user.items.head,
|
||||
armor: 'armor_warrior_' + user.items.armor
|
||||
},
|
||||
costume: {}
|
||||
};
|
||||
_.each({head:'showHelm',weapon:'showWeapon',shield:'showShield',armor:'showArmor'}, function(show,k){
|
||||
if (user.preferences[show] === false) {
|
||||
user.items.gear.costume[k] = user.items.gear.equipped[k];
|
||||
user.preferences.costume = true
|
||||
}
|
||||
delete user.preferences[v];
|
||||
});
|
||||
|
||||
user.preferences.sleep = user.flags.rest;
|
||||
delete user.flags.rest;
|
||||
|
||||
|
|
|
|||
|
|
@ -81,7 +81,8 @@ var UserSchema = new Schema({
|
|||
purchased: {
|
||||
ads: {type: Boolean, 'default': false},
|
||||
skin: {type: Schema.Types.Mixed, 'default': {}}, // eg, {skeleton: true, pumpkin: true, eb052b: true}
|
||||
hair: {type: Schema.Types.Mixed, 'default': {}}
|
||||
hair: {type: Schema.Types.Mixed, 'default': {}},
|
||||
shirt: {type: Schema.Types.Mixed, 'default': {}}
|
||||
},
|
||||
|
||||
flags: {
|
||||
|
|
@ -210,10 +211,11 @@ var UserSchema = new Schema({
|
|||
},
|
||||
hideHeader: {type:Boolean, 'default':false},
|
||||
skin: {type:String, 'default':'white'},
|
||||
shirt: {type: String, 'default': 'white'},
|
||||
timezoneOffset: Number,
|
||||
language: String,
|
||||
automaticAllocation: Boolean,
|
||||
useCostume: Boolean,
|
||||
costume: Boolean,
|
||||
sleep: {type: Boolean, 'default': false}
|
||||
},
|
||||
profile: {
|
||||
|
|
|
|||
|
|
@ -11,7 +11,7 @@ script(type='text/ng-template', id='partials/options.inventory.inventory.html')
|
|||
div(ng-repeat='item in gear[klass]')
|
||||
button.customize-option(popover='{{item.notes}}', popover-title='{{item.text}}', popover-trigger='mouseenter', popover-placement='right', ng-click='user.ops.equip({query:{key:item.key}})', class='shop_{{item.key}}', ng-class='{selectableInventory: user.items.gear.equipped[item.type] == item.key}')
|
||||
label.checkbox.inline
|
||||
input(type="checkbox", ng-model="user.preferences.costume")
|
||||
input(type="checkbox", ng-model="user.preferences.costume", ng-click='set({"preferences.costume":!user.preferences.costume})')
|
||||
| Use Costume
|
||||
i.icon-question-sign(popover="Show something different on your avatar than the gear you have equipped for battle", popover-trigger='mouseenter', popover-placement='right')
|
||||
li.customize-menu(ng-if='user.preferences.costume')
|
||||
|
|
|
|||
|
|
@ -1,13 +1,27 @@
|
|||
script(id='partials/options.profile.avatar.html', type='text/ng-template')
|
||||
.row-fluid
|
||||
.span4
|
||||
h3 Body
|
||||
small.
|
||||
2 <span class="Pet_Currency_Gem1x inline-gems"/> / locked
|
||||
|
||||
h5 Size
|
||||
.btn-group
|
||||
button.btn.btn-small(ng-class='{active: user.preferences.size=="slim"}', ng-click='set({"preferences.size":"slim"})') Slim
|
||||
button.btn.btn-small(ng-class='{active: user.preferences.size=="broad"}', ng-click='set({"preferences.size":"broad"})') Broad
|
||||
|
||||
menu(type='list')
|
||||
// body-type
|
||||
li.customize-menu
|
||||
menu(label='Head')
|
||||
menu(label='Shirts')
|
||||
each shirt in ['black', 'blue', 'green', 'pink', 'white', 'yellow']
|
||||
button.customize-option(class='{{user.preferences.size}}_shirt_'+shirt, type='button', ng-click='set({"preferences.shirt":"'+shirt+'"})')
|
||||
|
||||
menu(label='Special Shirts')
|
||||
each shirt in ['convict', 'cross', 'fire', 'horizon', 'ocean', 'purple', 'rainbow', 'redblue', 'thunder', 'tropical', 'zombie']
|
||||
button.customize-option(type='button', class='{{user.preferences.size}}_shirt_'+shirt, ng-class='{locked: !user.purchased.shirt.'+shirt+'}', ng-click='unlock("shirt.'+shirt+'")')
|
||||
menu
|
||||
button.broad_armor_base_0.customize-option(type='button', ng-click='set({"preferences.size":"broad"})')
|
||||
button.slim_armor_base_0.customize-option(type='button', ng-click='set({"preferences.size":"slim"})')
|
||||
button.btn.btn-small.btn-primary(ng-hide="user.purchased.shirt.convict && user.purchased.shirt.cross && user.purchased.shirt.fire && user.purchased.shirt.horizon && user.purchased.shirt.ocean && user.purchased.shirt.purple && user.purchased.shirt.rainbow && user.purchased.shirt.redblue && user.purchased.shirt.thunder && user.purchased.shirt.tropical && user.purchased.shirt.zombie", ng-click='unlock("shirt.convict,shirt.cross,shirt.fire,shirt.horizon,shirt.ocean,shirt.purple,shirt.rainbow,shirt.redblue,shirt.thunder,shirt.tropical,shirt.zombie")') Unlock Set - 5 <span class="Pet_Currency_Gem1x inline-gems"/>
|
||||
|
||||
|
||||
.span4
|
||||
h3 Hair
|
||||
|
|
|
|||
|
|
@ -11,6 +11,7 @@ figure.herobox(ng-click='spell ? castEnd(profile, "user", $event) : clickMember(
|
|||
// Avatar
|
||||
span(class='skin_{{profile.preferences.skin}}')
|
||||
|
||||
span(class='{{profile.preferences.size}}_shirt_{{profile.preferences.shirt}}')
|
||||
span(class='{{profile.preferences.size}}_{{profile.items.gear.equipped.armor}}', ng-if='!profile.preferences.costume')
|
||||
span(class='{{profile.preferences.size}}_{{profile.items.gear.costume.armor}}', ng-if='profile.preferences.costume')
|
||||
|
||||
|
|
|
|||
Loading…
Reference in a new issue