Merge branch 'sabrecat/summer-splash' into develop

This commit is contained in:
Sabe Jones
2015-07-01 13:13:23 -05:00
34 changed files with 5994 additions and 5882 deletions

File diff suppressed because one or more lines are too long

File diff suppressed because it is too large Load Diff

Binary file not shown.

Before

Width:  |  Height:  |  Size: 209 KiB

After

Width:  |  Height:  |  Size: 219 KiB

File diff suppressed because it is too large Load Diff

Binary file not shown.

Before

Width:  |  Height:  |  Size: 24 KiB

After

Width:  |  Height:  |  Size: 24 KiB

File diff suppressed because it is too large Load Diff

Binary file not shown.

Before

Width:  |  Height:  |  Size: 101 KiB

After

Width:  |  Height:  |  Size: 101 KiB

File diff suppressed because it is too large Load Diff

Binary file not shown.

Before

Width:  |  Height:  |  Size: 89 KiB

After

Width:  |  Height:  |  Size: 89 KiB

File diff suppressed because it is too large Load Diff

Binary file not shown.

Before

Width:  |  Height:  |  Size: 510 KiB

After

Width:  |  Height:  |  Size: 500 KiB

File diff suppressed because it is too large Load Diff

Binary file not shown.

Before

Width:  |  Height:  |  Size: 225 KiB

After

Width:  |  Height:  |  Size: 226 KiB

File diff suppressed because it is too large Load Diff

Binary file not shown.

Before

Width:  |  Height:  |  Size: 195 KiB

After

Width:  |  Height:  |  Size: 195 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 3.2 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 25 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 13 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 6.5 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 3.1 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 3.5 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 3.0 KiB

View File

@@ -103,5 +103,13 @@
"backgroundShimmeryBubblesText": "Shimmery Bubbles", "backgroundShimmeryBubblesText": "Shimmery Bubbles",
"backgroundShimmeryBubblesNotes": "Float through a sea of Shimmery Bubbles.", "backgroundShimmeryBubblesNotes": "Float through a sea of Shimmery Bubbles.",
"backgroundIslandWaterfallsText": "Island Waterfalls", "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."
} }

View File

@@ -8,6 +8,8 @@
"alarmingFriendsText": "Got spooked <%= spookDust %> times by party members.", "alarmingFriendsText": "Got spooked <%= spookDust %> times by party members.",
"agriculturalFriends": "Agricultural Friends", "agriculturalFriends": "Agricultural Friends",
"agriculturalFriendsText": "Got transformed into a flower <%= seeds %> times by party members.", "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", "valentineCard": "Valentine's Day Card",
"valentineCardNotes": "Send a Valentine's Day card to a party member.", "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!\"", "valentine0": "\"Roses are red<%= lineBreak %>My Dailies are blue<%= lineBreak %>I'm happy that I'm<%= lineBreak %>In a Party with you!\"",

View File

@@ -60,6 +60,11 @@
"spellSpecialShinySeedText": "Shiny Seed", "spellSpecialShinySeedText": "Shiny Seed",
"spellSpecialShinySeedNotes": "Turn a friend into a joyous flower!", "spellSpecialShinySeedNotes": "Turn a friend into a joyous flower!",
"spellSpecialPetalFreePotionText": "Petal-Free Potion", "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."
} }

View File

@@ -787,6 +787,7 @@ api.spells =
target.stats.buffs.snowball = true target.stats.buffs.snowball = true
target.stats.buffs.spookDust = false target.stats.buffs.spookDust = false
target.stats.buffs.shinySeed = false target.stats.buffs.shinySeed = false
target.stats.buffs.seafoam = false
target.achievements.snowball ?= 0 target.achievements.snowball ?= 0
target.achievements.snowball++ target.achievements.snowball++
user.items.special.snowball-- user.items.special.snowball--
@@ -812,6 +813,7 @@ api.spells =
target.stats.buffs.snowball = false target.stats.buffs.snowball = false
target.stats.buffs.spookDust = true target.stats.buffs.spookDust = true
target.stats.buffs.shinySeed = false target.stats.buffs.shinySeed = false
target.stats.buffs.seafoam = false
target.achievements.spookDust ?= 0 target.achievements.spookDust ?= 0
target.achievements.spookDust++ target.achievements.spookDust++
user.items.special.spookDust-- user.items.special.spookDust--
@@ -837,6 +839,7 @@ api.spells =
target.stats.buffs.snowball = false target.stats.buffs.snowball = false
target.stats.buffs.spookDust = false target.stats.buffs.spookDust = false
target.stats.buffs.shinySeed = true target.stats.buffs.shinySeed = true
target.stats.buffs.seafoam = false
target.achievements.shinySeed ?= 0 target.achievements.shinySeed ?= 0
target.achievements.shinySeed++ target.achievements.shinySeed++
user.items.special.shinySeed-- user.items.special.shinySeed--
@@ -852,6 +855,32 @@ api.spells =
user.stats.buffs.shinySeed = false user.stats.buffs.shinySeed = false
user.stats.gp -= 5 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: nye:
text: t('nyeCard') text: t('nyeCard')
mana: 0 mana: 0
@@ -1913,6 +1942,16 @@ api.backgrounds =
island_waterfalls: island_waterfalls:
text: t('backgroundIslandWaterfallsText') text: t('backgroundIslandWaterfallsText')
notes: t('backgroundIslandWaterfallsNotes') 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 = api.subscriptionBlocks =
basic_earned: months:1, price:5 basic_earned: months:1, price:5

View File

@@ -4,10 +4,15 @@
line-height: 1.5em line-height: 1.5em
padding-left: 0.75em padding-left: 0.75em
.shop_gold, .shop_silver, .shop_copper, .shop_spell .shop_gold, .shop_silver, .shop_copper
vertical-align: top vertical-align: top
display: inline-block display: inline-block
.shop_spell
vertical-align: top
display: inline-block
top: -5px
.btn-buy .btn-buy
width: 4.5em width: 4.5em
min-height: 3em min-height: 3em

View File

@@ -46,6 +46,7 @@ var UserSchema = new Schema({
snowball: Number, snowball: Number,
spookDust: Number, spookDust: Number,
shinySeed: Number, shinySeed: Number,
seafoam: Number,
streak: Number, streak: Number,
challenges: Array, challenges: Array,
quests: Schema.Types.Mixed, quests: Schema.Types.Mixed,
@@ -208,6 +209,7 @@ var UserSchema = new Schema({
snowball: {type: Number, 'default': 0}, snowball: {type: Number, 'default': 0},
spookDust: {type: Number, 'default': 0}, spookDust: {type: Number, 'default': 0},
shinySeed: {type: Number, 'default': 0}, shinySeed: {type: Number, 'default': 0},
seafoam: {type: Number, 'default': 0},
valentine: Number, valentine: Number,
valentineReceived: Array, // array of strings, by sender name valentineReceived: Array, // array of strings, by sender name
nye: Number, nye: Number,
@@ -376,7 +378,8 @@ var UserSchema = new Schema({
streaks: {type: Boolean, 'default': false}, streaks: {type: Boolean, 'default': false},
snowball: {type: Boolean, 'default': false}, snowball: {type: Boolean, 'default': false},
spookDust: {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: { training: {
int: {type: Number, 'default': 0}, int: {type: Number, 'default': 0},

View File

@@ -54,16 +54,11 @@ script(type='text/ng-template', id='partials/options.inventory.seasonalshop.html
p p
| {{::quest.value}}&nbsp; | {{::quest.value}}&nbsp;
span.Pet_Currency_Gem1x.inline-gems span.Pet_Currency_Gem1x.inline-gems
// menu.pets-menu(label=env.t('seasonalItems')) menu.pets-menu(label=env.t('seasonalItems'))
div 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 p
| {{::Content.spells.special.shinySeed.value}} | {{::Content.spells.special.seafoam.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}}
span(class='shop_gold') span(class='shop_gold')
// div // 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') 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('snowball')
+specialItem('spookDust') +specialItem('spookDust')
+specialItem('shinySeed') +specialItem('shinySeed')
+specialItem('seafoam')
div(ng-if='user.items.special.valentineReceived[0]') 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') 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')

View File

@@ -61,7 +61,7 @@ script(type='text/ng-template', id='partials/options.social.guilds.public.html')
a.btn.btn-sm.btn-success(ng-if="::!group._isMember", ng-click='join(group)') a.btn.btn-sm.btn-success(ng-if="::!group._isMember", ng-click='join(group)')
span.glyphicon.glyphicon-ok span.glyphicon.glyphicon-ok
=env.t('join') =env.t('join')
h4: a(href='/#/options/groups/guilds/{{::group._id}}'){{::group.name}} h4: a(href='/#/options/groups/guilds/{{::group._id}}') {{::group.name}}
p {{::group.description}} p {{::group.description}}
script(type='text/ng-template', id='partials/options.social.guilds.detail.html') script(type='text/ng-template', id='partials/options.social.guilds.detail.html')

View File

@@ -9,13 +9,13 @@ mixin avatar(opts)
span(ng-if='profile.items.currentMount', class='Mount_Body_{{profile.items.currentMount}}') span(ng-if='profile.items.currentMount', class='Mount_Body_{{profile.items.currentMount}}')
// Buffs that cause visual changes to avatar: Snowman, Ghost, Flower, etc // 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 each klass, item in visualBuffs
span(ng-if='profile.stats.buffs.#{item}', class='#{klass}') span(ng-if='profile.stats.buffs.#{item}', class='#{klass}')
// Show avatar only if not currently affected by visual buff // Show avatar only if not currently affected by visual buff
- var buffs = '!profile.stats.buffs' - 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 include generated_avatar
// Mount Head // Mount Head

View File

@@ -1,25 +1,45 @@
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 hr
tr tr
td td
.promo_mystery_201506.pull-right .inventory_special_seafoam.pull-right
h5 Last Chance for Neon Snorkeler Item Set h5 Seafoam Transformation Item
p Reminder: this is the final day to <a href='/#/options/settings/subscription'>subscribe</a> and receive the Neon Snorkeler Item Set! If you want the Snorkeler Suit or the Neon Snorkel, now's the time! Thanks so much for your support <3 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 p.small.muted by Lemoness
tr tr
td td
h5 Clone Challenges .background_giant_wave.pull-right
p It's now easier than ever to create a recurring Challenge! Just go to a previously created challenge and click the clone button. This creates a new Challenge with all the same information (name, description, prize, tasks) pre-populated, so the challenge creator can adjust only as needed. We hope this saves you time! h5 July Backgrounds Revealed
p.small.muted by TheHollidayInn and Blade 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 tr
td td
h5 Challenger Contributor Title .inventory_present_07.pull-left
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! 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 hr
a(href='/static/old-news', target='_blank') Read older news a(href='/static/old-news', target='_blank') Read older news
mixin oldNews mixin oldNews
h5 6/30/2015 - LAST CHANCE FOR NEON SNORKELER, CLONE CHALLENGES, AND CHALLENGER CONTRIBUTOR TITLE
tr
td
.promo_mystery_201506.pull-right
h5 Last Chance for Neon Snorkeler Item Set
p Reminder: this is the final day to <a href='/#/options/settings/subscription'>subscribe</a> and receive the Neon Snorkeler Item Set! If you want the Snorkeler Suit or the Neon Snorkel, now's the time! Thanks so much for your support <3
p.small.muted by Lemoness
tr
td
h5 Clone Challenges
p It's now easier than ever to create a recurring Challenge! Just go to a previously created challenge and click the clone button. This creates a new Challenge with all the same information (name, description, prize, tasks) pre-populated, so the challenge creator can adjust only as needed. We hope this saves you time!
p.small.muted by TheHollidayInn and Blade
tr
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!
h5 6/25/2015 - JUNE SUBSCRIBER ITEM SET, SPLASHY SKIN SET, AND NEW SOUND EFFECTS h5 6/25/2015 - JUNE SUBSCRIBER ITEM SET, SPLASHY SKIN SET, AND NEW SOUND EFFECTS
tr tr
td td

View File

@@ -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 if mobile
.item.item-divider=env.t('achievements') .item.item-divider=env.t('achievements')
@@ -192,6 +179,13 @@ div(ng-if='::profile.achievements.shinySeed')
small small
=env.t('agriculturalFriendsText', {seeds: "{{::profile.achievements.shinySeed}}"}) =env.t('agriculturalFriendsText', {seeds: "{{::profile.achievements.shinySeed}}"})
hr 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') div(ng-if='::profile.achievements.habitBirthdays')
.achievement.achievement-habitBirthday .achievement.achievement-habitBirthday

View File

@@ -1,12 +1,10 @@
// Events // 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)') - var seasonalSpells = {'snowball':'salt', 'spookDust':'opaquePotion', 'shinySeed':'petalFreePotion', 'seafoam':'sand'}
ul.items.rewards
+specialSpell('snowball') each dispel,spell in seasonalSpells
+specialSpell('spookDust') span(ng-if='main && list.type=="reward" && (user.items.special.#{spell}>0 || user.stats.buffs.#{spell})')
+specialSpell('shinySeed') +specialSpell(spell)
+specialSpell('salt','snowball') +specialSpell(dispel,spell)
+specialSpell('opaquePotion','spookDust')
+specialSpell('petalFreePotion','shinySeed')
// Spells // Spells
ul.items(ng-if='main && list.type=="reward" && user.stats.class && !user.preferences.disableClasses') ul.items(ng-if='main && list.type=="reward" && user.stats.class && !user.preferences.disableClasses')