feat(event): Summer Splash cont'd

Summer backgrounds, the Seafoam transformation item, and announcements for same.
This commit is contained in:
Sabe Jones
2015-07-01 11:32:50 -05:00
parent 851868296f
commit 25dd82ffa0
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",
"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."
}

View File

@@ -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!\"",

View File

@@ -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."
}

View File

@@ -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

View File

@@ -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

View File

@@ -46,6 +46,7 @@ var UserSchema = new Schema({
snowball: Number,
spookDust: Number,
shinySeed: Number,
seafoam: Number,
streak: Number,
challenges: Array,
quests: Schema.Types.Mixed,
@@ -207,6 +208,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,
@@ -375,7 +377,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},

View File

@@ -54,16 +54,11 @@ script(type='text/ng-template', id='partials/options.inventory.seasonalshop.html
p
| {{::quest.value}}&nbsp;
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')

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)')
span.glyphicon.glyphicon-ok
=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}}
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}}')
// 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

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
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
.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
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
.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
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!
.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
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
tr
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
.item.item-divider=env.t('achievements')
@@ -192,6 +179,13 @@ div(ng-if='::profile.achievements.shinySeed')
small
=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

View File

@@ -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')