feat(habitBirthday): add habitrpg birthday event. includes cakes for all

pets, absurd party robes, npc swap, badge, etc. @lemoness
This commit is contained in:
Tyler Renelle 2014-01-30 19:19:30 -07:00
parent 05b139be78
commit 949386f44f
34 changed files with 5153 additions and 4901 deletions

4350
dist/customizer.css vendored

File diff suppressed because it is too large Load diff

File diff suppressed because one or more lines are too long

View file

@ -27,7 +27,8 @@ process.nextTick = (function () {
if (canPost) {
var queue = [];
window.addEventListener('message', function (ev) {
if (ev.source === window && ev.data === 'process-tick') {
var source = ev.source;
if ((source === window || source === null) && ev.data === 'process-tick') {
ev.stopPropagation();
if (queue.length > 0) {
var fn = queue.shift();
@ -9191,6 +9192,10 @@ var global=typeof self !== "undefined" ? self : typeof window !== "undefined" ?
winter: {
start: '2013-12-31',
end: '2014-02-01'
},
birthday: {
start: '2013-01-30',
end: '2014-02-01'
}
};
@ -9705,6 +9710,12 @@ var global=typeof self !== "undefined" ? self : typeof window !== "undefined" ?
notes: 'Limited Edition 2013 Winter Gear! A robe to keep you warm, even in a blizzard. Increases CON by 15.',
con: 15,
value: 90
},
birthday: {
event: events.birthday,
text: "Absurd Party Robes",
notes: "As part of the festivities, Absurd Party Robes are available free of charge in the Item Store! Swath yourself in those silly garbs and don your matching hats to celebrate this momentous day.",
value: 0
}
}
},
@ -10696,6 +10707,66 @@ var global=typeof self !== "undefined" ? self : typeof window !== "undefined" ?
target: 'Golden',
article: ''
},
Cake_Skeleton: {
canBuy: false,
text: 'Bare Bones Cake',
target: 'Skeleton',
article: ''
},
Cake_Base: {
canBuy: false,
text: 'Basic Cake',
target: 'Base',
article: ''
},
Cake_CottonCandyBlue: {
canBuy: false,
text: 'Candy Blue Cake',
target: 'CottonCandyBlue',
article: ''
},
Cake_CottonCandyPink: {
canBuy: false,
text: 'Candy Pink Cake',
target: 'CottonCandyPink',
article: ''
},
Cake_Shade: {
canBuy: false,
text: 'Chocolate Cake',
target: 'Shade',
article: ''
},
Cake_White: {
canBuy: false,
text: 'Cream Cake',
target: 'White',
article: ''
},
Cake_Golden: {
canBuy: false,
text: 'Honey Cake',
target: 'Golden',
article: ''
},
Cake_Zombie: {
canBuy: false,
text: 'Rotten Cake',
target: 'Zombie',
article: ''
},
Cake_Desert: {
canBuy: false,
text: 'Sand Cake',
target: 'Desert',
article: ''
},
Cake_Red: {
canBuy: false,
text: 'Strawberry Cake',
target: 'Red',
article: ''
},
Saddle: {
text: 'Saddle',
value: 5,
@ -10707,7 +10778,8 @@ var global=typeof self !== "undefined" ? self : typeof window !== "undefined" ?
return _.defaults(food, {
value: 1,
key: key,
notes: "Feed this to a pet and it may grow into a sturdy steed."
notes: "Feed this to a pet and it may grow into a sturdy steed.",
canBuy: true
});
});
@ -12371,7 +12443,6 @@ var process=require("__browserify_process");(function() {
bonus = Math.abs(task.value) * task.priority + (task.streak || 0) + (user._statsComputed.per * .5);
bonus /= 100;
chance = api.diminishingReturns(bonus, 1, 0.5);
console.log("Drop Equation: Bonus(" + (bonus.toFixed(3)) + "), Modified Chance(" + (chance.toFixed(3)) + ")\n");
quest = content.quests[(_ref = user.party.quest) != null ? _ref.key : void 0];
if ((quest != null ? quest.collect : void 0) && user.fns.predictableRandom(user.stats.gp) < bonus) {
dropK = user.fns.randomVal(quest.collect, {
@ -12381,9 +12452,6 @@ var process=require("__browserify_process");(function() {
if (typeof user.markModified === "function") {
user.markModified('party.quest.progress');
}
console.log({
progress: user.party.quest.progress
});
}
if ((api.daysSince(user.items.lastDrop.date, user.preferences) === 0) && (user.items.lastDrop.count >= 5)) {
return;

Binary file not shown.

Before

Width:  |  Height:  |  Size: 397 KiB

BIN
dist/spritesmith-1391134334279.png vendored Normal file

Binary file not shown.

After

Width:  |  Height:  |  Size: 410 KiB

5600
dist/spritesmith.css vendored

File diff suppressed because it is too large Load diff

Binary file not shown.

After

Width:  |  Height:  |  Size: 6.5 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 4 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 6.2 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 8.8 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 4.4 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 7.1 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 3.4 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 3.4 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 3.3 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 6.3 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 6.3 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 6.3 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 6.3 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 6.2 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 6.3 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 6.3 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 6.3 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 6.3 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 6.4 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 4.9 KiB

After

Width:  |  Height:  |  Size: 6.5 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 3.9 KiB

After

Width:  |  Height:  |  Size: 4 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 4.4 KiB

After

Width:  |  Height:  |  Size: 6.2 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 8.1 KiB

After

Width:  |  Height:  |  Size: 8.8 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 4.3 KiB

After

Width:  |  Height:  |  Size: 4.4 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 6 KiB

After

Width:  |  Height:  |  Size: 7.1 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 1.4 KiB

View file

@ -45,8 +45,10 @@
"_commentachievement" : "MEMBER ACHIEVEMENT",
"veteran" : "Veteran",
"veteranText" : "Has weathered Habit The Grey (our pre Angular website), and has gained many battle-scars from its bugs.",
"originalUser" : "Original User!",
"originalUserText" : "One of the <em>very</em> original early adopters, Talk about alpha tester!",
"originalUser" : "Original User!",
"originalUserText" : "One of the <em>very</em> original early adopters, Talk about alpha tester!",
"habitBirthday" : "2014 HabitRPG Birthday Bash",
"habitBirthdayText" : "Participated in the HabitRPG Birthday Bash of 2014.",
"_commentmodals" : "MEMBERS MODALS",
"memberSince" : " - Member since ",

View file

@ -14,6 +14,7 @@ gearTypes = ['armor', 'weapon', 'shield', 'head']
events =
winter: {start:'2013-12-31',end:'2014-02-01'}
birthday: {start:'2013-01-30',end:'2014-02-01'}
gear =
weapon:
@ -112,6 +113,7 @@ gear =
ski: event: events.winter, canOwn: ((u)->u.stats.class is 'rogue' ), text: "Ski-sassin Parka", notes:'Limited Edition 2013 Winter Gear! Full of secret daggers and ski trail maps. Increases PER by 15.', per: 15, value:90
candycane: event: events.winter, canOwn: ((u)->u.stats.class is 'wizard' ), text: "Candy Cane Robe", notes:'Limited Edition 2013 Winter Gear! Spun from sugar and silk. Increases INT by 9.', int: 9, value:90
snowflake: event: events.winter, canOwn: ((u)->u.stats.class is 'healer' ), text: "Snowflake Robe", notes:'Limited Edition 2013 Winter Gear! A robe to keep you warm, even in a blizzard. Increases CON by 15.', con: 15, value:90
birthday: event: events.birthday, text: "Absurd Party Robes", notes:"As part of the festivities, Absurd Party Robes are available free of charge in the Item Store! Swath yourself in those silly garbs and don your matching hats to celebrate this momentous day.", value: 0
head:
base:
@ -541,9 +543,21 @@ api.food =
#Cheese: text: 'Cheese', target: 'Golden'
#Watermelon: text: 'Watermelon', target: 'Golden'
#SeaWeed: text: 'SeaWeed', target: 'Golden'
Cake_Skeleton: canBuy: false, text: 'Bare Bones Cake', target: 'Skeleton', article: ''
Cake_Base: canBuy: false, text: 'Basic Cake', target: 'Base', article: ''
Cake_CottonCandyBlue: canBuy: false, text: 'Candy Blue Cake', target: 'CottonCandyBlue', article: ''
Cake_CottonCandyPink: canBuy: false, text: 'Candy Pink Cake', target: 'CottonCandyPink', article: ''
Cake_Shade: canBuy: false, text: 'Chocolate Cake', target: 'Shade', article: ''
Cake_White: canBuy: false, text: 'Cream Cake', target: 'White', article: ''
Cake_Golden: canBuy: false, text: 'Honey Cake', target: 'Golden', article: ''
Cake_Zombie: canBuy: false, text: 'Rotten Cake', target: 'Zombie', article: ''
Cake_Desert: canBuy: false, text: 'Sand Cake', target: 'Desert', article: ''
Cake_Red: canBuy: false, text: 'Strawberry Cake', target: 'Red', article: ''
Saddle: text: 'Saddle', value: 5, notes: 'Instantly raises your pet into a mount.'
_.each api.food, (food,key) ->
_.defaults food, {value: 1, key, notes: "Feed this to a pet and it may grow into a sturdy steed."}
_.defaults food, {value: 1, key, notes: "Feed this to a pet and it may grow into a sturdy steed.", canBuy:true}
api.quests =