Merge branch 'sabrecat/summer-splash' into develop
2
common/dist/sprites/habitrpg-shared.css
vendored
1496
common/dist/sprites/spritesmith0.css
vendored
BIN
common/dist/sprites/spritesmith0.png
vendored
|
Before Width: | Height: | Size: 209 KiB After Width: | Height: | Size: 219 KiB |
1620
common/dist/sprites/spritesmith1.css
vendored
BIN
common/dist/sprites/spritesmith1.png
vendored
|
Before Width: | Height: | Size: 24 KiB After Width: | Height: | Size: 24 KiB |
5386
common/dist/sprites/spritesmith2.css
vendored
BIN
common/dist/sprites/spritesmith2.png
vendored
|
Before Width: | Height: | Size: 101 KiB After Width: | Height: | Size: 101 KiB |
800
common/dist/sprites/spritesmith3.css
vendored
BIN
common/dist/sprites/spritesmith3.png
vendored
|
Before Width: | Height: | Size: 89 KiB After Width: | Height: | Size: 89 KiB |
824
common/dist/sprites/spritesmith4.css
vendored
BIN
common/dist/sprites/spritesmith4.png
vendored
|
Before Width: | Height: | Size: 510 KiB After Width: | Height: | Size: 500 KiB |
788
common/dist/sprites/spritesmith5.css
vendored
BIN
common/dist/sprites/spritesmith5.png
vendored
|
Before Width: | Height: | Size: 225 KiB After Width: | Height: | Size: 226 KiB |
800
common/dist/sprites/spritesmith6.css
vendored
BIN
common/dist/sprites/spritesmith6.png
vendored
|
Before Width: | Height: | Size: 195 KiB After Width: | Height: | Size: 195 KiB |
|
After Width: | Height: | Size: 3.2 KiB |
|
After Width: | Height: | Size: 25 KiB |
|
After Width: | Height: | Size: 13 KiB |
|
After Width: | Height: | Size: 6.5 KiB |
|
After Width: | Height: | Size: 3.1 KiB |
BIN
common/img/sprites/spritesmith/misc/seafoam_star.png
Normal file
|
After Width: | Height: | Size: 3.5 KiB |
BIN
common/img/sprites/spritesmith/shop/shop_seafoam.png
Normal file
|
After Width: | Height: | Size: 3.0 KiB |
@@ -103,5 +103,13 @@
|
||||
"backgroundShimmeryBubblesText": "Shimmery Bubbles",
|
||||
"backgroundShimmeryBubblesNotes": "Float through a sea of Shimmery Bubbles.",
|
||||
"backgroundIslandWaterfallsText": "Island Waterfalls",
|
||||
"backgroundIslandWaterfallsNotes": "Picnic near Island Waterfalls."
|
||||
"backgroundIslandWaterfallsNotes": "Picnic near Island Waterfalls.",
|
||||
|
||||
"backgrounds072015": "SET 14: Released July 2015",
|
||||
"backgroundDilatoryRuinsText": "Ruins of Dilatory",
|
||||
"backgroundDilatoryRuinsNotes": "Dive to the Ruins of Dilatory.",
|
||||
"backgroundGiantWaveText": "Giant Wave",
|
||||
"backgroundGiantWaveNotes": "Surf a Giant Wave!",
|
||||
"backgroundSunkenShipText": "Sunken Ship",
|
||||
"backgroundSunkenShipNotes": "Explore a Sunken Ship."
|
||||
}
|
||||
|
||||
@@ -8,6 +8,8 @@
|
||||
"alarmingFriendsText": "Got spooked <%= spookDust %> times by party members.",
|
||||
"agriculturalFriends": "Agricultural Friends",
|
||||
"agriculturalFriendsText": "Got transformed into a flower <%= seeds %> times by party members.",
|
||||
"aquaticFriends": "Aquatic Friends",
|
||||
"aquaticFriendsText": "Got splashed <%= seafoam %> times by party members.",
|
||||
"valentineCard": "Valentine's Day Card",
|
||||
"valentineCardNotes": "Send a Valentine's Day card to a party member.",
|
||||
"valentine0": "\"Roses are red<%= lineBreak %>My Dailies are blue<%= lineBreak %>I'm happy that I'm<%= lineBreak %>In a Party with you!\"",
|
||||
|
||||
@@ -60,6 +60,11 @@
|
||||
"spellSpecialShinySeedText": "Shiny Seed",
|
||||
"spellSpecialShinySeedNotes": "Turn a friend into a joyous flower!",
|
||||
"spellSpecialPetalFreePotionText": "Petal-Free Potion",
|
||||
"spellSpecialPetalFreePotionNotes": "Cancel the effects of a Shiny Seed."
|
||||
"spellSpecialPetalFreePotionNotes": "Cancel the effects of a Shiny Seed.",
|
||||
|
||||
"spellSpecialSeafoamText": "Seafoam",
|
||||
"spellSpecialSeafoamNotes": "Turn a friend into a sea creature!",
|
||||
"spellSpecialSandText": "Sand",
|
||||
"spellSpecialSandNotes": "Cancel the effects of Seafoam."
|
||||
|
||||
}
|
||||
|
||||
@@ -787,6 +787,7 @@ api.spells =
|
||||
target.stats.buffs.snowball = true
|
||||
target.stats.buffs.spookDust = false
|
||||
target.stats.buffs.shinySeed = false
|
||||
target.stats.buffs.seafoam = false
|
||||
target.achievements.snowball ?= 0
|
||||
target.achievements.snowball++
|
||||
user.items.special.snowball--
|
||||
@@ -812,6 +813,7 @@ api.spells =
|
||||
target.stats.buffs.snowball = false
|
||||
target.stats.buffs.spookDust = true
|
||||
target.stats.buffs.shinySeed = false
|
||||
target.stats.buffs.seafoam = false
|
||||
target.achievements.spookDust ?= 0
|
||||
target.achievements.spookDust++
|
||||
user.items.special.spookDust--
|
||||
@@ -837,6 +839,7 @@ api.spells =
|
||||
target.stats.buffs.snowball = false
|
||||
target.stats.buffs.spookDust = false
|
||||
target.stats.buffs.shinySeed = true
|
||||
target.stats.buffs.seafoam = false
|
||||
target.achievements.shinySeed ?= 0
|
||||
target.achievements.shinySeed++
|
||||
user.items.special.shinySeed--
|
||||
@@ -852,6 +855,32 @@ api.spells =
|
||||
user.stats.buffs.shinySeed = false
|
||||
user.stats.gp -= 5
|
||||
|
||||
seafoam:
|
||||
text: t('spellSpecialSeafoamText')
|
||||
mana: 0
|
||||
value: 15
|
||||
target: 'user'
|
||||
notes: t('spellSpecialSeafoamNotes')
|
||||
cast: (user, target) ->
|
||||
target.stats.buffs.snowball = false
|
||||
target.stats.buffs.spookDust = false
|
||||
target.stats.buffs.shinySeed = false
|
||||
target.stats.buffs.seafoam = true
|
||||
target.achievements.seafoam ?= 0
|
||||
target.achievements.seafoam++
|
||||
user.items.special.seafoam--
|
||||
|
||||
sand:
|
||||
text: t('spellSpecialSandText')
|
||||
mana: 0
|
||||
value: 5
|
||||
immediateUse: true
|
||||
target: 'self'
|
||||
notes: t('spellSpecialSandNotes')
|
||||
cast: (user, target) ->
|
||||
user.stats.buffs.seafoam = false
|
||||
user.stats.gp -= 5
|
||||
|
||||
nye:
|
||||
text: t('nyeCard')
|
||||
mana: 0
|
||||
@@ -1913,6 +1942,16 @@ api.backgrounds =
|
||||
island_waterfalls:
|
||||
text: t('backgroundIslandWaterfallsText')
|
||||
notes: t('backgroundIslandWaterfallsNotes')
|
||||
backgrounds072015:
|
||||
dilatory_ruins:
|
||||
text: t('backgroundDilatoryRuinsText')
|
||||
notes: t('backgroundDilatoryRuinsNotes')
|
||||
giant_wave:
|
||||
text: t('backgroundGiantWaveText')
|
||||
notes: t('backgroundGiantWaveNotes')
|
||||
sunken_ship:
|
||||
text: t('backgroundSunkenShipText')
|
||||
notes: t('backgroundSunkenShipNotes')
|
||||
|
||||
api.subscriptionBlocks =
|
||||
basic_earned: months:1, price:5
|
||||
|
||||
@@ -4,10 +4,15 @@
|
||||
line-height: 1.5em
|
||||
padding-left: 0.75em
|
||||
|
||||
.shop_gold, .shop_silver, .shop_copper, .shop_spell
|
||||
.shop_gold, .shop_silver, .shop_copper
|
||||
vertical-align: top
|
||||
display: inline-block
|
||||
|
||||
.shop_spell
|
||||
vertical-align: top
|
||||
display: inline-block
|
||||
top: -5px
|
||||
|
||||
.btn-buy
|
||||
width: 4.5em
|
||||
min-height: 3em
|
||||
|
||||
@@ -46,6 +46,7 @@ var UserSchema = new Schema({
|
||||
snowball: Number,
|
||||
spookDust: Number,
|
||||
shinySeed: Number,
|
||||
seafoam: Number,
|
||||
streak: Number,
|
||||
challenges: Array,
|
||||
quests: Schema.Types.Mixed,
|
||||
@@ -208,6 +209,7 @@ var UserSchema = new Schema({
|
||||
snowball: {type: Number, 'default': 0},
|
||||
spookDust: {type: Number, 'default': 0},
|
||||
shinySeed: {type: Number, 'default': 0},
|
||||
seafoam: {type: Number, 'default': 0},
|
||||
valentine: Number,
|
||||
valentineReceived: Array, // array of strings, by sender name
|
||||
nye: Number,
|
||||
@@ -376,7 +378,8 @@ var UserSchema = new Schema({
|
||||
streaks: {type: Boolean, 'default': false},
|
||||
snowball: {type: Boolean, 'default': false},
|
||||
spookDust: {type: Boolean, 'default': false},
|
||||
shinySeed: {type: Boolean, 'default': false}
|
||||
shinySeed: {type: Boolean, 'default': false},
|
||||
seafoam: {type: Boolean, 'default': false}
|
||||
},
|
||||
training: {
|
||||
int: {type: Number, 'default': 0},
|
||||
|
||||
@@ -54,16 +54,11 @@ script(type='text/ng-template', id='partials/options.inventory.seasonalshop.html
|
||||
p
|
||||
| {{::quest.value}}
|
||||
span.Pet_Currency_Gem1x.inline-gems
|
||||
// menu.pets-menu(label=env.t('seasonalItems'))
|
||||
menu.pets-menu(label=env.t('seasonalItems'))
|
||||
div
|
||||
button.customize-option(popover='{{::Content.spells.special.shinySeed.notes()}}', popover-title='{{::Content.spells.special.shinySeed.text()}}', popover-trigger='mouseenter', popover-placement='right', popover-append-to-body='true', ng-click='purchase("special", Content.spells.special.shinySeed)', class='inventory_special_shinySeed')
|
||||
button.customize-option(popover='{{::Content.spells.special.seafoam.notes()}}', popover-title='{{::Content.spells.special.seafoam.text()}}', popover-trigger='mouseenter', popover-placement='right', popover-append-to-body='true', ng-click='purchase("special", Content.spells.special.seafoam)', class='inventory_special_seafoam')
|
||||
p
|
||||
| {{::Content.spells.special.shinySeed.value}}
|
||||
span(class='shop_gold')
|
||||
// div
|
||||
button.customize-option(popover='{{::Content.spells.special.snowball.notes()}}', popover-title='{{::Content.spells.special.snowball.text()}}', popover-trigger='mouseenter', popover-placement='right', popover-append-to-body='true', ng-click='purchase("special", Content.spells.special.snowball)', class='inventory_special_snowball')
|
||||
p
|
||||
| {{::Content.spells.special.snowball.value}}
|
||||
| {{::Content.spells.special.seafoam.value}}
|
||||
span(class='shop_gold')
|
||||
// div
|
||||
button.customize-option(popover='{{::Content.spells.special.nye.notes()}}', popover-title='{{::Content.spells.special.nye.text()}}', popover-trigger='mouseenter', popover-placement='right', popover-append-to-body='true', ng-click='castStart(Content.spells.special.nye)', class='inventory_special_nye')
|
||||
@@ -150,6 +145,7 @@ script(type='text/ng-template', id='partials/options.inventory.drops.html')
|
||||
+specialItem('snowball')
|
||||
+specialItem('spookDust')
|
||||
+specialItem('shinySeed')
|
||||
+specialItem('seafoam')
|
||||
|
||||
div(ng-if='user.items.special.valentineReceived[0]')
|
||||
button.customize-option(popover="Valentine's Day Card from {{User.user.items.special.valentineReceived[0]}}", popover-trigger='mouseenter', popover-placement='right', popover-append-to-body='true', ng-click='openModal("valentine")', class='inventory_special_valentine')
|
||||
|
||||
@@ -9,13 +9,13 @@ mixin avatar(opts)
|
||||
span(ng-if='profile.items.currentMount', class='Mount_Body_{{profile.items.currentMount}}')
|
||||
|
||||
// Buffs that cause visual changes to avatar: Snowman, Ghost, Flower, etc
|
||||
- var visualBuffs = { snowball: 'snowman', spookDust: 'spookman', shinySeed: 'avatar_floral_{{profile.stats.class}}' }
|
||||
- var visualBuffs = { snowball: 'snowman', spookDust: 'spookman', shinySeed: 'avatar_floral_{{profile.stats.class}}', seafoam: 'seafoam_star' }
|
||||
each klass, item in visualBuffs
|
||||
span(ng-if='profile.stats.buffs.#{item}', class='#{klass}')
|
||||
|
||||
// Show avatar only if not currently affected by visual buff
|
||||
- var buffs = '!profile.stats.buffs'
|
||||
span(ng-if='#{buffs}.snowball && #{buffs}.spookDust && #{buffs}.shinySeed')
|
||||
span(ng-if='#{buffs}.snowball && #{buffs}.spookDust && #{buffs}.shinySeed && #{buffs}.seafoam')
|
||||
include generated_avatar
|
||||
|
||||
// Mount Head
|
||||
|
||||
@@ -1,5 +1,30 @@
|
||||
h5 6/30/2015 - LAST CHANCE FOR NEON SNORKELER, CLONE CHALLENGES, AND CHALLENGER CONTRIBUTOR TITLE
|
||||
h5 7/1/2015 - SEAFOAM TRANSFORMATION ITEM , JULY BACKGROUNDS REVEALED, SUBSCRIBE WITH AMAZON PAYMENTS AND JULY SUBSCRIBER BOX
|
||||
hr
|
||||
tr
|
||||
td
|
||||
.inventory_special_seafoam.pull-right
|
||||
h5 Seafoam Transformation Item
|
||||
p Splash some Seafoam on your friends and they will undergo a mysterious transformation until their next cron! You can buy the Seafoam in the <a href='/#/options/inventory/seasonalshop'>Seasonal Shop</a> for Gold. Don't want to be transformed? Just buy some Sand from the <a href='/#/tasks'>Rewards Store</a> to reverse it.
|
||||
p.small.muted by Lemoness
|
||||
tr
|
||||
td
|
||||
.background_giant_wave.pull-right
|
||||
h5 July Backgrounds Revealed
|
||||
p There are three new avatar backgrounds in the <a href='/#/options/profile/backgrounds'>Background Shop</a>! Now your avatar can surf on a Giant Wave, explore a Sunken Ship, or dive to the Ruins of Dilatory!
|
||||
p.small.muted by (in order): minac1, Mimi Alves, and Twitching
|
||||
tr
|
||||
td
|
||||
.inventory_present_07.pull-left
|
||||
h5 Subscribe with Amazon Payments
|
||||
p Want to subscribe to get the July Mystery Item and the ability to buy Gems with Gold? Now you have a new way to pay for a subscription: Amazon Payments! The July Subscriber Item Set will be revealed on the 24th, so keep your eyes peeled.
|
||||
br
|
||||
p Right now, we only support Amazon Payments for subscriptions, but in the future, we will make it possible to use Amazon Payments to buy Gems as well. Thanks for supporting the site <3
|
||||
|
||||
hr
|
||||
a(href='/static/old-news', target='_blank') Read older news
|
||||
|
||||
mixin oldNews
|
||||
h5 6/30/2015 - LAST CHANCE FOR NEON SNORKELER, CLONE CHALLENGES, AND CHALLENGER CONTRIBUTOR TITLE
|
||||
tr
|
||||
td
|
||||
.promo_mystery_201506.pull-right
|
||||
@@ -15,11 +40,6 @@ h5 6/30/2015 - LAST CHANCE FOR NEON SNORKELER, CLONE CHALLENGES, AND CHALLENGER
|
||||
td
|
||||
h5 Challenger Contributor Title
|
||||
p Speaking of recurring Challenges, we've decided to create a new Contributor title, "Challenger", to honor the Habiticans who have been working to improve the community by consistently creating many valuable Challenges. The Challenger title is awarded at the discretion of the staff and mods. Many thanks to our creative and dedicated Challengers!
|
||||
|
||||
hr
|
||||
a(href='/static/old-news', target='_blank') Read older news
|
||||
|
||||
mixin oldNews
|
||||
h5 6/25/2015 - JUNE SUBSCRIBER ITEM SET, SPLASHY SKIN SET, AND NEW SOUND EFFECTS
|
||||
tr
|
||||
td
|
||||
|
||||
@@ -1,16 +1,3 @@
|
||||
// <div class='achievement achievement-sword'></div>
|
||||
// <div class='achievement achievement-tree'></div>
|
||||
// <div class='achievement achievement-comment'></div>
|
||||
// <div class='achievement achievement-cave'></div>
|
||||
// <div class='achievement achievement-boot'></div>
|
||||
// <div class='achievement achievement-coffin'></div>
|
||||
// <div class='achievement achievement-alien'></div>
|
||||
// <div class='achievement achievement-ninja'></div>
|
||||
// <div class='achievement achievement-cactus'></div>
|
||||
// <div class='achievement achievement-bow'></div>
|
||||
// <div class='achievement achievement-shield'></div>
|
||||
// <div class='achievement achievement-karaoke'></div>
|
||||
|
||||
if mobile
|
||||
.item.item-divider=env.t('achievements')
|
||||
|
||||
@@ -193,6 +180,13 @@ div(ng-if='::profile.achievements.shinySeed')
|
||||
=env.t('agriculturalFriendsText', {seeds: "{{::profile.achievements.shinySeed}}"})
|
||||
hr
|
||||
|
||||
div(ng-if='::profile.achievements.seafoam')
|
||||
.achievement.achievement-seafoam
|
||||
h5=env.t('aquaticFriends')
|
||||
small
|
||||
=env.t('aquaticFriendsText', {seafoam: "{{::profile.achievements.seafoam}}"})
|
||||
hr
|
||||
|
||||
div(ng-if='::profile.achievements.habitBirthdays')
|
||||
.achievement.achievement-habitBirthday
|
||||
h5=env.t('habitBirthday')
|
||||
|
||||
@@ -1,12 +1,10 @@
|
||||
// Events
|
||||
ul.items.rewards(ng-if='main && list.type=="reward" && (user.items.special.snowball>0 || user.stats.buffs.snowball || user.items.special.spookDust>0 || user.stats.buffs.spookDust || user.items.special.shinySeed>0 || user.stats.buffs.shinySeed)')
|
||||
|
||||
+specialSpell('snowball')
|
||||
+specialSpell('spookDust')
|
||||
+specialSpell('shinySeed')
|
||||
+specialSpell('salt','snowball')
|
||||
+specialSpell('opaquePotion','spookDust')
|
||||
+specialSpell('petalFreePotion','shinySeed')
|
||||
- var seasonalSpells = {'snowball':'salt', 'spookDust':'opaquePotion', 'shinySeed':'petalFreePotion', 'seafoam':'sand'}
|
||||
ul.items.rewards
|
||||
each dispel,spell in seasonalSpells
|
||||
span(ng-if='main && list.type=="reward" && (user.items.special.#{spell}>0 || user.stats.buffs.#{spell})')
|
||||
+specialSpell(spell)
|
||||
+specialSpell(dispel,spell)
|
||||
|
||||
// Spells
|
||||
ul.items(ng-if='main && list.type=="reward" && user.stats.class && !user.preferences.disableClasses')
|
||||
|
||||