Merge branch 'fall-fest' into develop
|
|
@ -3,11 +3,11 @@
|
|||
}*/
|
||||
|
||||
/* Comment out for holiday events */
|
||||
.npc_ian {
|
||||
background: url("../img/sprites/npc_ian.gif") no-repeat;
|
||||
width: 78px;
|
||||
height: 135px;
|
||||
}
|
||||
/*.npc_ian {*/
|
||||
/*background: url("../img/sprites/npc_ian.gif") no-repeat;*/
|
||||
/*width: 78px;*/
|
||||
/*height: 135px;*/
|
||||
/*}*/
|
||||
|
||||
.Gems {
|
||||
display:inline-block;
|
||||
|
|
|
|||
2
dist/habitrpg-shared.css
vendored
280
dist/habitrpg-shared.js
vendored
|
|
@ -9225,6 +9225,10 @@ events = {
|
|||
gaymerx: {
|
||||
start: '2014-07-02',
|
||||
end: '2014-08-01'
|
||||
},
|
||||
fall: {
|
||||
start: '2014-09-21',
|
||||
end: '2014-11-01'
|
||||
}
|
||||
};
|
||||
|
||||
|
|
@ -9712,6 +9716,49 @@ gear = {
|
|||
}),
|
||||
value: 90,
|
||||
int: 9
|
||||
},
|
||||
fallRogue: {
|
||||
event: events.fall,
|
||||
specialClass: 'rogue',
|
||||
text: t('weaponSpecialFallRogueText'),
|
||||
notes: t('weaponSpecialFallRogueNotes', {
|
||||
str: 8
|
||||
}),
|
||||
value: 80,
|
||||
str: 8
|
||||
},
|
||||
fallWarrior: {
|
||||
event: events.fall,
|
||||
specialClass: 'warrior',
|
||||
text: t('weaponSpecialFallWarriorText'),
|
||||
notes: t('weaponSpecialFallWarriorNotes', {
|
||||
str: 15
|
||||
}),
|
||||
value: 90,
|
||||
str: 15
|
||||
},
|
||||
fallMage: {
|
||||
event: events.fall,
|
||||
specialClass: 'wizard',
|
||||
twoHanded: true,
|
||||
text: t('weaponSpecialFallMageText'),
|
||||
notes: t('weaponSpecialFallMageNotes', {
|
||||
int: 15,
|
||||
per: 7
|
||||
}),
|
||||
value: 160,
|
||||
int: 15,
|
||||
per: 7
|
||||
},
|
||||
fallHealer: {
|
||||
event: events.fall,
|
||||
specialClass: 'healer',
|
||||
text: t('weaponSpecialFallHealerText'),
|
||||
notes: t('weaponSpecialFallHealerNotes', {
|
||||
int: 9
|
||||
}),
|
||||
value: 90,
|
||||
int: 9
|
||||
}
|
||||
}
|
||||
},
|
||||
|
|
@ -10062,6 +10109,46 @@ gear = {
|
|||
value: 90,
|
||||
con: 15
|
||||
},
|
||||
fallRogue: {
|
||||
event: events.fall,
|
||||
specialClass: 'rogue',
|
||||
text: t('armorSpecialFallRogueText'),
|
||||
notes: t('armorSpecialFallRogueNotes', {
|
||||
per: 15
|
||||
}),
|
||||
value: 90,
|
||||
per: 15
|
||||
},
|
||||
fallWarrior: {
|
||||
event: events.fall,
|
||||
specialClass: 'warrior',
|
||||
text: t('armorSpecialFallWarriorText'),
|
||||
notes: t('armorSpecialFallWarriorNotes', {
|
||||
con: 9
|
||||
}),
|
||||
value: 90,
|
||||
con: 9
|
||||
},
|
||||
fallMage: {
|
||||
event: events.fall,
|
||||
specialClass: 'wizard',
|
||||
text: t('armorSpecialFallMageText'),
|
||||
notes: t('armorSpecialFallMageNotes', {
|
||||
int: 9
|
||||
}),
|
||||
value: 90,
|
||||
int: 9
|
||||
},
|
||||
fallHealer: {
|
||||
event: events.fall,
|
||||
specialClass: 'healer',
|
||||
text: t('armorSpecialFallHealerText'),
|
||||
notes: t('armorSpecialFallHealerNotes', {
|
||||
con: 15
|
||||
}),
|
||||
value: 90,
|
||||
con: 15
|
||||
},
|
||||
gaymerx: {
|
||||
event: events.gaymerx,
|
||||
text: t('armorSpecialGaymerxText'),
|
||||
|
|
@ -10455,6 +10542,46 @@ gear = {
|
|||
value: 60,
|
||||
int: 7
|
||||
},
|
||||
fallRogue: {
|
||||
event: events.fall,
|
||||
specialClass: 'rogue',
|
||||
text: t('headSpecialFallRogueText'),
|
||||
notes: t('headSpecialFallRogueNotes', {
|
||||
per: 9
|
||||
}),
|
||||
value: 60,
|
||||
per: 9
|
||||
},
|
||||
fallWarrior: {
|
||||
event: events.fall,
|
||||
specialClass: 'warrior',
|
||||
text: t('headSpecialFallWarriorText'),
|
||||
notes: t('headSpecialFallWarriorNotes', {
|
||||
str: 9
|
||||
}),
|
||||
value: 60,
|
||||
str: 9
|
||||
},
|
||||
fallMage: {
|
||||
event: events.fall,
|
||||
specialClass: 'wizard',
|
||||
text: t('headSpecialFallMageText'),
|
||||
notes: t('headSpecialFallMageNotes', {
|
||||
per: 7
|
||||
}),
|
||||
value: 60,
|
||||
per: 7
|
||||
},
|
||||
fallHealer: {
|
||||
event: events.fall,
|
||||
specialClass: 'healer',
|
||||
text: t('headSpecialFallHealerText'),
|
||||
notes: t('headSpecialFallHealerNotes', {
|
||||
int: 7
|
||||
}),
|
||||
value: 60,
|
||||
int: 7
|
||||
},
|
||||
gaymerx: {
|
||||
event: events.gaymerx,
|
||||
text: t('headSpecialGaymerxText'),
|
||||
|
|
@ -10764,6 +10891,36 @@ gear = {
|
|||
}),
|
||||
value: 70,
|
||||
con: 9
|
||||
},
|
||||
fallRogue: {
|
||||
event: events.fall,
|
||||
specialClass: 'rogue',
|
||||
text: t('shieldSpecialFallRogueText'),
|
||||
notes: t('shieldSpecialFallRogueNotes', {
|
||||
str: 8
|
||||
}),
|
||||
value: 80,
|
||||
str: 8
|
||||
},
|
||||
fallWarrior: {
|
||||
event: events.fall,
|
||||
specialClass: 'warrior',
|
||||
text: t('shieldSpecialFallWarriorText'),
|
||||
notes: t('shieldSpecialFallWarriorNotes', {
|
||||
con: 7
|
||||
}),
|
||||
value: 70,
|
||||
con: 7
|
||||
},
|
||||
fallHealer: {
|
||||
event: events.fall,
|
||||
specialClass: 'healer',
|
||||
text: t('shieldSpecialFallHealerText'),
|
||||
notes: t('shieldSpecialFallHealerNotes', {
|
||||
con: 9
|
||||
}),
|
||||
value: 70,
|
||||
con: 9
|
||||
}
|
||||
}
|
||||
},
|
||||
|
|
@ -11533,119 +11690,221 @@ api.questPets = _.transform(api.questEggs, function(m, egg) {
|
|||
|
||||
api.food = {
|
||||
Meat: {
|
||||
canBuy: true,
|
||||
canDrop: false,
|
||||
text: t('foodMeat'),
|
||||
target: 'Base',
|
||||
article: ''
|
||||
},
|
||||
Milk: {
|
||||
canBuy: true,
|
||||
canDrop: false,
|
||||
text: t('foodMilk'),
|
||||
target: 'White',
|
||||
article: ''
|
||||
},
|
||||
Potatoe: {
|
||||
canBuy: true,
|
||||
canDrop: false,
|
||||
text: t('foodPotatoe'),
|
||||
target: 'Desert',
|
||||
article: 'a '
|
||||
},
|
||||
Strawberry: {
|
||||
canBuy: true,
|
||||
canDrop: false,
|
||||
text: t('foodStrawberry'),
|
||||
target: 'Red',
|
||||
article: 'a '
|
||||
},
|
||||
Chocolate: {
|
||||
canBuy: true,
|
||||
canDrop: false,
|
||||
text: t('foodChocolate'),
|
||||
target: 'Shade',
|
||||
article: ''
|
||||
},
|
||||
Fish: {
|
||||
canBuy: true,
|
||||
canDrop: false,
|
||||
text: t('foodFish'),
|
||||
target: 'Skeleton',
|
||||
article: 'a '
|
||||
},
|
||||
RottenMeat: {
|
||||
canBuy: true,
|
||||
canDrop: false,
|
||||
text: t('foodRottenMeat'),
|
||||
target: 'Zombie',
|
||||
article: ''
|
||||
},
|
||||
CottonCandyPink: {
|
||||
canBuy: true,
|
||||
canDrop: false,
|
||||
text: t('foodCottonCandyPink'),
|
||||
target: 'CottonCandyPink',
|
||||
article: ''
|
||||
},
|
||||
CottonCandyBlue: {
|
||||
canBuy: true,
|
||||
canDrop: false,
|
||||
text: t('foodCottonCandyBlue'),
|
||||
target: 'CottonCandyBlue',
|
||||
article: ''
|
||||
},
|
||||
Honey: {
|
||||
canBuy: true,
|
||||
canDrop: false,
|
||||
text: t('foodHoney'),
|
||||
target: 'Golden',
|
||||
article: ''
|
||||
},
|
||||
Saddle: {
|
||||
canBuy: true,
|
||||
canDrop: false,
|
||||
text: t('foodSaddleText'),
|
||||
value: 5,
|
||||
notes: t('foodSaddleNotes')
|
||||
},
|
||||
Cake_Skeleton: {
|
||||
canBuy: false,
|
||||
canDrop: false,
|
||||
text: t('foodCakeSkeleton'),
|
||||
target: 'Skeleton',
|
||||
article: ''
|
||||
},
|
||||
Cake_Base: {
|
||||
canBuy: false,
|
||||
canDrop: false,
|
||||
text: t('foodCakeBase'),
|
||||
target: 'Base',
|
||||
article: ''
|
||||
},
|
||||
Cake_CottonCandyBlue: {
|
||||
canBuy: false,
|
||||
canDrop: false,
|
||||
text: t('foodCakeCottonCandyBlue'),
|
||||
target: 'CottonCandyBlue',
|
||||
article: ''
|
||||
},
|
||||
Cake_CottonCandyPink: {
|
||||
canBuy: false,
|
||||
canDrop: false,
|
||||
text: t('foodCakeCottonCandyPink'),
|
||||
target: 'CottonCandyPink',
|
||||
article: ''
|
||||
},
|
||||
Cake_Shade: {
|
||||
canBuy: false,
|
||||
canDrop: false,
|
||||
text: t('foodCakeShade'),
|
||||
target: 'Shade',
|
||||
article: ''
|
||||
},
|
||||
Cake_White: {
|
||||
canBuy: false,
|
||||
canDrop: false,
|
||||
text: t('foodCakeWhite'),
|
||||
target: 'White',
|
||||
article: ''
|
||||
},
|
||||
Cake_Golden: {
|
||||
canBuy: false,
|
||||
canDrop: false,
|
||||
text: t('foodCakeGolden'),
|
||||
target: 'Golden',
|
||||
article: ''
|
||||
},
|
||||
Cake_Zombie: {
|
||||
canBuy: false,
|
||||
canDrop: false,
|
||||
text: t('foodCakeZombie'),
|
||||
target: 'Zombie',
|
||||
article: ''
|
||||
},
|
||||
Cake_Desert: {
|
||||
canBuy: false,
|
||||
canDrop: false,
|
||||
text: t('foodCakeDesert'),
|
||||
target: 'Desert',
|
||||
article: ''
|
||||
},
|
||||
Cake_Red: {
|
||||
canBuy: false,
|
||||
canDrop: false,
|
||||
text: t('foodCakeRed'),
|
||||
target: 'Red',
|
||||
article: ''
|
||||
},
|
||||
Honey: {
|
||||
text: t('foodHoney'),
|
||||
Candy_Skeleton: {
|
||||
canBuy: true,
|
||||
canDrop: true,
|
||||
text: t('foodCandySkeleton'),
|
||||
target: 'Skeleton',
|
||||
article: ''
|
||||
},
|
||||
Candy_Base: {
|
||||
canBuy: true,
|
||||
canDrop: true,
|
||||
text: t('foodCandyBase'),
|
||||
target: 'Base',
|
||||
article: ''
|
||||
},
|
||||
Candy_CottonCandyBlue: {
|
||||
canBuy: true,
|
||||
canDrop: true,
|
||||
text: t('foodCandyCottonCandyBlue'),
|
||||
target: 'CottonCandyBlue',
|
||||
article: ''
|
||||
},
|
||||
Candy_CottonCandyPink: {
|
||||
canBuy: true,
|
||||
canDrop: true,
|
||||
text: t('foodCandyCottonCandyPink'),
|
||||
target: 'CottonCandyPink',
|
||||
article: ''
|
||||
},
|
||||
Candy_Shade: {
|
||||
canBuy: true,
|
||||
canDrop: true,
|
||||
text: t('foodCandyShade'),
|
||||
target: 'Shade',
|
||||
article: ''
|
||||
},
|
||||
Candy_White: {
|
||||
canBuy: true,
|
||||
canDrop: true,
|
||||
text: t('foodCandyWhite'),
|
||||
target: 'White',
|
||||
article: ''
|
||||
},
|
||||
Candy_Golden: {
|
||||
canBuy: true,
|
||||
canDrop: true,
|
||||
text: t('foodCandyGolden'),
|
||||
target: 'Golden',
|
||||
article: ''
|
||||
},
|
||||
Saddle: {
|
||||
text: t('foodSaddleText'),
|
||||
value: 5,
|
||||
notes: t('foodSaddleNotes')
|
||||
Candy_Zombie: {
|
||||
canBuy: true,
|
||||
canDrop: true,
|
||||
text: t('foodCandyZombie'),
|
||||
target: 'Zombie',
|
||||
article: ''
|
||||
},
|
||||
Candy_Desert: {
|
||||
canBuy: true,
|
||||
canDrop: true,
|
||||
text: t('foodCandyDesert'),
|
||||
target: 'Desert',
|
||||
article: ''
|
||||
},
|
||||
Candy_Red: {
|
||||
canBuy: true,
|
||||
canDrop: true,
|
||||
text: t('foodCandyRed'),
|
||||
target: 'Red',
|
||||
article: ''
|
||||
}
|
||||
};
|
||||
|
||||
|
|
@ -11653,8 +11912,7 @@ _.each(api.food, function(food, key) {
|
|||
return _.defaults(food, {
|
||||
value: 1,
|
||||
key: key,
|
||||
notes: t('foodNotes'),
|
||||
canBuy: true
|
||||
notes: t('foodNotes')
|
||||
});
|
||||
});
|
||||
|
||||
|
|
@ -14104,9 +14362,9 @@ api.wrap = function(user, main) {
|
|||
if (((_ref1 = user.flags) != null ? _ref1.dropsEnabled : void 0) && user.fns.predictableRandom(user.stats.exp) < chance) {
|
||||
rarity = user.fns.predictableRandom(user.stats.gp);
|
||||
if (rarity > .6) {
|
||||
drop = user.fns.randomVal(_(content.food).omit('Saddle').where({
|
||||
canBuy: true
|
||||
}).value());
|
||||
drop = user.fns.randomVal(_.where(content.food, {
|
||||
canDrop: true
|
||||
}));
|
||||
if ((_base = user.items.food)[_name = drop.key] == null) {
|
||||
_base[_name] = 0;
|
||||
}
|
||||
|
|
|
|||
252
dist/spritesmith0.css
vendored
|
|
@ -1,150 +1,150 @@
|
|||
.achievement-alien {
|
||||
background-image: url(spritesmith0.png);
|
||||
background-position: -1071px -910px;
|
||||
background-position: -1526px -398px;
|
||||
width: 24px;
|
||||
height: 26px;
|
||||
}
|
||||
.achievement-armor {
|
||||
background-image: url(spritesmith0.png);
|
||||
background-position: -1460px -1274px;
|
||||
background-position: -1551px -182px;
|
||||
width: 24px;
|
||||
height: 26px;
|
||||
}
|
||||
.achievement-boot {
|
||||
background-image: url(spritesmith0.png);
|
||||
background-position: -1212px -1028px;
|
||||
background-position: -1576px -371px;
|
||||
width: 24px;
|
||||
height: 26px;
|
||||
}
|
||||
.achievement-bow {
|
||||
background-image: url(spritesmith0.png);
|
||||
background-position: -1187px -1028px;
|
||||
background-position: -1551px -371px;
|
||||
width: 24px;
|
||||
height: 26px;
|
||||
}
|
||||
.achievement-cactus {
|
||||
background-image: url(spritesmith0.png);
|
||||
background-position: -1162px -1028px;
|
||||
background-position: -1526px -371px;
|
||||
width: 24px;
|
||||
height: 26px;
|
||||
}
|
||||
.achievement-cake {
|
||||
background-image: url(spritesmith0.png);
|
||||
background-position: -1212px -1001px;
|
||||
background-position: -1576px -344px;
|
||||
width: 24px;
|
||||
height: 26px;
|
||||
}
|
||||
.achievement-cave {
|
||||
background-image: url(spritesmith0.png);
|
||||
background-position: -1187px -1001px;
|
||||
background-position: -1551px -344px;
|
||||
width: 24px;
|
||||
height: 26px;
|
||||
}
|
||||
.achievement-coffin {
|
||||
background-image: url(spritesmith0.png);
|
||||
background-position: -1162px -1001px;
|
||||
background-position: -1526px -344px;
|
||||
width: 24px;
|
||||
height: 26px;
|
||||
}
|
||||
.achievement-comment {
|
||||
background-image: url(spritesmith0.png);
|
||||
background-position: -1303px -1119px;
|
||||
background-position: -1576px -317px;
|
||||
width: 24px;
|
||||
height: 26px;
|
||||
}
|
||||
.achievement-dilatory {
|
||||
background-image: url(spritesmith0.png);
|
||||
background-position: -1278px -1119px;
|
||||
background-position: -1551px -317px;
|
||||
width: 24px;
|
||||
height: 26px;
|
||||
}
|
||||
.achievement-firefox {
|
||||
background-image: url(spritesmith0.png);
|
||||
background-position: -1253px -1119px;
|
||||
background-position: -1526px -317px;
|
||||
width: 24px;
|
||||
height: 26px;
|
||||
}
|
||||
.achievement-habitBirthday {
|
||||
background-image: url(spritesmith0.png);
|
||||
background-position: -1303px -1092px;
|
||||
background-position: -1576px -290px;
|
||||
width: 24px;
|
||||
height: 26px;
|
||||
}
|
||||
.achievement-heart {
|
||||
background-image: url(spritesmith0.png);
|
||||
background-position: -1278px -1092px;
|
||||
background-position: -1551px -290px;
|
||||
width: 24px;
|
||||
height: 26px;
|
||||
}
|
||||
.achievement-helm {
|
||||
background-image: url(spritesmith0.png);
|
||||
background-position: -1435px -1274px;
|
||||
background-position: -1526px -182px;
|
||||
width: 24px;
|
||||
height: 26px;
|
||||
}
|
||||
.achievement-karaoke {
|
||||
background-image: url(spritesmith0.png);
|
||||
background-position: -1394px -1210px;
|
||||
background-position: -1576px -263px;
|
||||
width: 24px;
|
||||
height: 26px;
|
||||
}
|
||||
.achievement-ninja {
|
||||
background-image: url(spritesmith0.png);
|
||||
background-position: -1369px -1210px;
|
||||
background-position: -1551px -263px;
|
||||
width: 24px;
|
||||
height: 26px;
|
||||
}
|
||||
.achievement-perfect {
|
||||
background-image: url(spritesmith0.png);
|
||||
background-position: -1344px -1210px;
|
||||
background-position: -1526px -263px;
|
||||
width: 24px;
|
||||
height: 26px;
|
||||
}
|
||||
.achievement-rat {
|
||||
background-image: url(spritesmith0.png);
|
||||
background-position: -1394px -1183px;
|
||||
background-position: -1576px -236px;
|
||||
width: 24px;
|
||||
height: 26px;
|
||||
}
|
||||
.achievement-shield {
|
||||
background-image: url(spritesmith0.png);
|
||||
background-position: -1369px -1183px;
|
||||
background-position: -1551px -236px;
|
||||
width: 24px;
|
||||
height: 26px;
|
||||
}
|
||||
.achievement-snowball {
|
||||
background-image: url(spritesmith0.png);
|
||||
background-position: -1344px -1183px;
|
||||
background-position: -1526px -236px;
|
||||
width: 24px;
|
||||
height: 26px;
|
||||
}
|
||||
.achievement-sun {
|
||||
background-image: url(spritesmith0.png);
|
||||
background-position: -1485px -1301px;
|
||||
background-position: -1576px -209px;
|
||||
width: 24px;
|
||||
height: 26px;
|
||||
}
|
||||
.achievement-sword {
|
||||
background-image: url(spritesmith0.png);
|
||||
background-position: -1460px -1301px;
|
||||
background-position: -1551px -209px;
|
||||
width: 24px;
|
||||
height: 26px;
|
||||
}
|
||||
.achievement-thermometer {
|
||||
background-image: url(spritesmith0.png);
|
||||
background-position: -1435px -1301px;
|
||||
background-position: -1526px -209px;
|
||||
width: 24px;
|
||||
height: 26px;
|
||||
}
|
||||
.achievement-tree {
|
||||
background-image: url(spritesmith0.png);
|
||||
background-position: -1485px -1274px;
|
||||
background-position: -1576px -182px;
|
||||
width: 24px;
|
||||
height: 26px;
|
||||
}
|
||||
.achievement-valentine {
|
||||
background-image: url(spritesmith0.png);
|
||||
background-position: -1253px -1092px;
|
||||
background-position: -1526px -290px;
|
||||
width: 24px;
|
||||
height: 26px;
|
||||
}
|
||||
|
|
@ -1254,13 +1254,13 @@
|
|||
}
|
||||
.hair_mustache_2_TRUred {
|
||||
background-image: url(spritesmith0.png);
|
||||
background-position: -565px -148px;
|
||||
background-position: -1162px -273px;
|
||||
width: 90px;
|
||||
height: 90px;
|
||||
}
|
||||
.customize-option.hair_mustache_2_TRUred {
|
||||
background-image: url(spritesmith0.png);
|
||||
background-position: -590px -163px;
|
||||
background-position: -1187px -288px;
|
||||
width: 60px;
|
||||
height: 60px;
|
||||
}
|
||||
|
|
@ -1302,13 +1302,13 @@
|
|||
}
|
||||
.hair_mustache_2_brown {
|
||||
background-image: url(spritesmith0.png);
|
||||
background-position: -1162px -637px;
|
||||
background-position: -565px -148px;
|
||||
width: 90px;
|
||||
height: 90px;
|
||||
}
|
||||
.customize-option.hair_mustache_2_brown {
|
||||
background-image: url(spritesmith0.png);
|
||||
background-position: -1187px -652px;
|
||||
background-position: -590px -163px;
|
||||
width: 60px;
|
||||
height: 60px;
|
||||
}
|
||||
|
|
@ -2442,299 +2442,395 @@
|
|||
}
|
||||
.hair_base_1_pblue {
|
||||
background-image: url(spritesmith0.png);
|
||||
background-position: -1162px -273px;
|
||||
background-position: -910px -1354px;
|
||||
width: 90px;
|
||||
height: 90px;
|
||||
}
|
||||
.customize-option.hair_base_1_pblue {
|
||||
background-image: url(spritesmith0.png);
|
||||
background-position: -1187px -288px;
|
||||
background-position: -935px -1369px;
|
||||
width: 60px;
|
||||
height: 60px;
|
||||
}
|
||||
.hair_base_1_pgreen {
|
||||
background-image: url(spritesmith0.png);
|
||||
background-position: -91px -535px;
|
||||
background-position: -1001px -1354px;
|
||||
width: 90px;
|
||||
height: 90px;
|
||||
}
|
||||
.customize-option.hair_base_1_pgreen {
|
||||
background-image: url(spritesmith0.png);
|
||||
background-position: -116px -550px;
|
||||
background-position: -1026px -1369px;
|
||||
width: 60px;
|
||||
height: 60px;
|
||||
}
|
||||
.hair_base_1_porange {
|
||||
background-image: url(spritesmith0.png);
|
||||
background-position: 0px -535px;
|
||||
background-position: -1092px -1354px;
|
||||
width: 90px;
|
||||
height: 90px;
|
||||
}
|
||||
.customize-option.hair_base_1_porange {
|
||||
background-image: url(spritesmith0.png);
|
||||
background-position: -25px -550px;
|
||||
background-position: -1117px -1369px;
|
||||
width: 60px;
|
||||
height: 60px;
|
||||
}
|
||||
.hair_base_1_ppink {
|
||||
background-image: url(spritesmith0.png);
|
||||
background-position: -546px -444px;
|
||||
background-position: -1183px -1354px;
|
||||
width: 90px;
|
||||
height: 90px;
|
||||
}
|
||||
.customize-option.hair_base_1_ppink {
|
||||
background-image: url(spritesmith0.png);
|
||||
background-position: -571px -459px;
|
||||
background-position: -1208px -1369px;
|
||||
width: 60px;
|
||||
height: 60px;
|
||||
}
|
||||
.hair_base_1_ppurple {
|
||||
background-image: url(spritesmith0.png);
|
||||
background-position: -455px -444px;
|
||||
background-position: -1274px -1354px;
|
||||
width: 90px;
|
||||
height: 90px;
|
||||
}
|
||||
.customize-option.hair_base_1_ppurple {
|
||||
background-image: url(spritesmith0.png);
|
||||
background-position: -480px -459px;
|
||||
background-position: -1299px -1369px;
|
||||
width: 60px;
|
||||
height: 60px;
|
||||
}
|
||||
.hair_base_1_purple {
|
||||
background-image: url(spritesmith0.png);
|
||||
background-position: -364px -444px;
|
||||
background-position: -1365px -1354px;
|
||||
width: 90px;
|
||||
height: 90px;
|
||||
}
|
||||
.customize-option.hair_base_1_purple {
|
||||
background-image: url(spritesmith0.png);
|
||||
background-position: -389px -459px;
|
||||
background-position: -1390px -1369px;
|
||||
width: 60px;
|
||||
height: 60px;
|
||||
}
|
||||
.hair_base_1_pyellow {
|
||||
background-image: url(spritesmith0.png);
|
||||
background-position: -273px -444px;
|
||||
background-position: -1526px 0px;
|
||||
width: 90px;
|
||||
height: 90px;
|
||||
}
|
||||
.customize-option.hair_base_1_pyellow {
|
||||
background-image: url(spritesmith0.png);
|
||||
background-position: -298px -459px;
|
||||
background-position: -1551px -15px;
|
||||
width: 60px;
|
||||
height: 60px;
|
||||
}
|
||||
.hair_base_1_rainbow {
|
||||
background-image: url(spritesmith0.png);
|
||||
background-position: -182px -444px;
|
||||
background-position: -1526px -91px;
|
||||
width: 90px;
|
||||
height: 90px;
|
||||
}
|
||||
.customize-option.hair_base_1_rainbow {
|
||||
background-image: url(spritesmith0.png);
|
||||
background-position: -207px -459px;
|
||||
background-position: -1551px -106px;
|
||||
width: 60px;
|
||||
height: 60px;
|
||||
}
|
||||
.hair_base_1_red {
|
||||
background-image: url(spritesmith0.png);
|
||||
background-position: -91px -444px;
|
||||
background-position: -1162px -637px;
|
||||
width: 90px;
|
||||
height: 90px;
|
||||
}
|
||||
.customize-option.hair_base_1_red {
|
||||
background-image: url(spritesmith0.png);
|
||||
background-position: -116px -459px;
|
||||
background-position: -1187px -652px;
|
||||
width: 60px;
|
||||
height: 60px;
|
||||
}
|
||||
.hair_base_1_white {
|
||||
background-image: url(spritesmith0.png);
|
||||
background-position: 0px -444px;
|
||||
background-position: -91px -535px;
|
||||
width: 90px;
|
||||
height: 90px;
|
||||
}
|
||||
.customize-option.hair_base_1_white {
|
||||
background-image: url(spritesmith0.png);
|
||||
background-position: -25px -459px;
|
||||
background-position: -116px -550px;
|
||||
width: 60px;
|
||||
height: 60px;
|
||||
}
|
||||
.hair_base_1_winternight {
|
||||
background-image: url(spritesmith0.png);
|
||||
background-position: -425px -296px;
|
||||
background-position: 0px -535px;
|
||||
width: 90px;
|
||||
height: 90px;
|
||||
}
|
||||
.customize-option.hair_base_1_winternight {
|
||||
background-image: url(spritesmith0.png);
|
||||
background-position: -450px -311px;
|
||||
background-position: -25px -550px;
|
||||
width: 60px;
|
||||
height: 60px;
|
||||
}
|
||||
.hair_base_1_yellow {
|
||||
background-image: url(spritesmith0.png);
|
||||
background-position: -565px -330px;
|
||||
background-position: -546px -444px;
|
||||
width: 90px;
|
||||
height: 90px;
|
||||
}
|
||||
.customize-option.hair_base_1_yellow {
|
||||
background-image: url(spritesmith0.png);
|
||||
background-position: -590px -345px;
|
||||
background-position: -571px -459px;
|
||||
width: 60px;
|
||||
height: 60px;
|
||||
}
|
||||
.hair_base_2_TRUred {
|
||||
background-image: url(spritesmith0.png);
|
||||
background-position: -565px -239px;
|
||||
background-position: -455px -444px;
|
||||
width: 90px;
|
||||
height: 90px;
|
||||
}
|
||||
.customize-option.hair_base_2_TRUred {
|
||||
background-image: url(spritesmith0.png);
|
||||
background-position: -590px -254px;
|
||||
background-position: -480px -459px;
|
||||
width: 60px;
|
||||
height: 60px;
|
||||
}
|
||||
.hair_base_2_black {
|
||||
background-image: url(spritesmith0.png);
|
||||
background-position: 0px -626px;
|
||||
background-position: -364px -444px;
|
||||
width: 90px;
|
||||
height: 90px;
|
||||
}
|
||||
.customize-option.hair_base_2_black {
|
||||
background-image: url(spritesmith0.png);
|
||||
background-position: -25px -641px;
|
||||
background-position: -389px -459px;
|
||||
width: 60px;
|
||||
height: 60px;
|
||||
}
|
||||
.hair_base_2_blond {
|
||||
background-image: url(spritesmith0.png);
|
||||
background-position: -707px -455px;
|
||||
background-position: -273px -444px;
|
||||
width: 90px;
|
||||
height: 90px;
|
||||
}
|
||||
.customize-option.hair_base_2_blond {
|
||||
background-image: url(spritesmith0.png);
|
||||
background-position: -732px -470px;
|
||||
background-position: -298px -459px;
|
||||
width: 60px;
|
||||
height: 60px;
|
||||
}
|
||||
.hair_base_2_blue {
|
||||
background-image: url(spritesmith0.png);
|
||||
background-position: -707px -364px;
|
||||
background-position: -182px -444px;
|
||||
width: 90px;
|
||||
height: 90px;
|
||||
}
|
||||
.customize-option.hair_base_2_blue {
|
||||
background-image: url(spritesmith0.png);
|
||||
background-position: -732px -379px;
|
||||
background-position: -207px -459px;
|
||||
width: 60px;
|
||||
height: 60px;
|
||||
}
|
||||
.hair_base_2_brown {
|
||||
background-image: url(spritesmith0.png);
|
||||
background-position: -707px -273px;
|
||||
background-position: -91px -444px;
|
||||
width: 90px;
|
||||
height: 90px;
|
||||
}
|
||||
.customize-option.hair_base_2_brown {
|
||||
background-image: url(spritesmith0.png);
|
||||
background-position: -732px -288px;
|
||||
background-position: -116px -459px;
|
||||
width: 60px;
|
||||
height: 60px;
|
||||
}
|
||||
.hair_base_2_candycane {
|
||||
background-image: url(spritesmith0.png);
|
||||
background-position: -707px -182px;
|
||||
background-position: 0px -444px;
|
||||
width: 90px;
|
||||
height: 90px;
|
||||
}
|
||||
.customize-option.hair_base_2_candycane {
|
||||
background-image: url(spritesmith0.png);
|
||||
background-position: -732px -197px;
|
||||
background-position: -25px -459px;
|
||||
width: 60px;
|
||||
height: 60px;
|
||||
}
|
||||
.hair_base_2_frost {
|
||||
background-image: url(spritesmith0.png);
|
||||
background-position: -707px -91px;
|
||||
background-position: -425px -296px;
|
||||
width: 90px;
|
||||
height: 90px;
|
||||
}
|
||||
.customize-option.hair_base_2_frost {
|
||||
background-image: url(spritesmith0.png);
|
||||
background-position: -732px -106px;
|
||||
background-position: -450px -311px;
|
||||
width: 60px;
|
||||
height: 60px;
|
||||
}
|
||||
.hair_base_2_green {
|
||||
background-image: url(spritesmith0.png);
|
||||
background-position: -707px 0px;
|
||||
background-position: -565px -330px;
|
||||
width: 90px;
|
||||
height: 90px;
|
||||
}
|
||||
.customize-option.hair_base_2_green {
|
||||
background-image: url(spritesmith0.png);
|
||||
background-position: -732px -15px;
|
||||
background-position: -590px -345px;
|
||||
width: 60px;
|
||||
height: 60px;
|
||||
}
|
||||
.hair_base_2_holly {
|
||||
background-image: url(spritesmith0.png);
|
||||
background-position: -546px -535px;
|
||||
background-position: -565px -239px;
|
||||
width: 90px;
|
||||
height: 90px;
|
||||
}
|
||||
.customize-option.hair_base_2_holly {
|
||||
background-image: url(spritesmith0.png);
|
||||
background-position: -571px -550px;
|
||||
background-position: -590px -254px;
|
||||
width: 60px;
|
||||
height: 60px;
|
||||
}
|
||||
.hair_base_2_pblue {
|
||||
background-image: url(spritesmith0.png);
|
||||
background-position: -455px -535px;
|
||||
background-position: 0px -626px;
|
||||
width: 90px;
|
||||
height: 90px;
|
||||
}
|
||||
.customize-option.hair_base_2_pblue {
|
||||
background-image: url(spritesmith0.png);
|
||||
background-position: -480px -550px;
|
||||
background-position: -25px -641px;
|
||||
width: 60px;
|
||||
height: 60px;
|
||||
}
|
||||
.hair_base_2_pgreen {
|
||||
background-image: url(spritesmith0.png);
|
||||
background-position: -364px -535px;
|
||||
background-position: -707px -455px;
|
||||
width: 90px;
|
||||
height: 90px;
|
||||
}
|
||||
.customize-option.hair_base_2_pgreen {
|
||||
background-image: url(spritesmith0.png);
|
||||
background-position: -389px -550px;
|
||||
background-position: -732px -470px;
|
||||
width: 60px;
|
||||
height: 60px;
|
||||
}
|
||||
.hair_base_2_porange {
|
||||
background-image: url(spritesmith0.png);
|
||||
background-position: -273px -535px;
|
||||
background-position: -707px -364px;
|
||||
width: 90px;
|
||||
height: 90px;
|
||||
}
|
||||
.customize-option.hair_base_2_porange {
|
||||
background-image: url(spritesmith0.png);
|
||||
background-position: -298px -550px;
|
||||
background-position: -732px -379px;
|
||||
width: 60px;
|
||||
height: 60px;
|
||||
}
|
||||
.hair_base_2_ppink {
|
||||
background-image: url(spritesmith0.png);
|
||||
background-position: -182px -535px;
|
||||
background-position: -707px -273px;
|
||||
width: 90px;
|
||||
height: 90px;
|
||||
}
|
||||
.customize-option.hair_base_2_ppink {
|
||||
background-image: url(spritesmith0.png);
|
||||
background-position: -732px -288px;
|
||||
width: 60px;
|
||||
height: 60px;
|
||||
}
|
||||
.hair_base_2_ppurple {
|
||||
background-image: url(spritesmith0.png);
|
||||
background-position: -707px -182px;
|
||||
width: 90px;
|
||||
height: 90px;
|
||||
}
|
||||
.customize-option.hair_base_2_ppurple {
|
||||
background-image: url(spritesmith0.png);
|
||||
background-position: -732px -197px;
|
||||
width: 60px;
|
||||
height: 60px;
|
||||
}
|
||||
.hair_base_2_purple {
|
||||
background-image: url(spritesmith0.png);
|
||||
background-position: -707px -91px;
|
||||
width: 90px;
|
||||
height: 90px;
|
||||
}
|
||||
.customize-option.hair_base_2_purple {
|
||||
background-image: url(spritesmith0.png);
|
||||
background-position: -732px -106px;
|
||||
width: 60px;
|
||||
height: 60px;
|
||||
}
|
||||
.hair_base_2_pyellow {
|
||||
background-image: url(spritesmith0.png);
|
||||
background-position: -707px 0px;
|
||||
width: 90px;
|
||||
height: 90px;
|
||||
}
|
||||
.customize-option.hair_base_2_pyellow {
|
||||
background-image: url(spritesmith0.png);
|
||||
background-position: -732px -15px;
|
||||
width: 60px;
|
||||
height: 60px;
|
||||
}
|
||||
.hair_base_2_rainbow {
|
||||
background-image: url(spritesmith0.png);
|
||||
background-position: -546px -535px;
|
||||
width: 90px;
|
||||
height: 90px;
|
||||
}
|
||||
.customize-option.hair_base_2_rainbow {
|
||||
background-image: url(spritesmith0.png);
|
||||
background-position: -571px -550px;
|
||||
width: 60px;
|
||||
height: 60px;
|
||||
}
|
||||
.hair_base_2_red {
|
||||
background-image: url(spritesmith0.png);
|
||||
background-position: -455px -535px;
|
||||
width: 90px;
|
||||
height: 90px;
|
||||
}
|
||||
.customize-option.hair_base_2_red {
|
||||
background-image: url(spritesmith0.png);
|
||||
background-position: -480px -550px;
|
||||
width: 60px;
|
||||
height: 60px;
|
||||
}
|
||||
.hair_base_2_white {
|
||||
background-image: url(spritesmith0.png);
|
||||
background-position: -364px -535px;
|
||||
width: 90px;
|
||||
height: 90px;
|
||||
}
|
||||
.customize-option.hair_base_2_white {
|
||||
background-image: url(spritesmith0.png);
|
||||
background-position: -389px -550px;
|
||||
width: 60px;
|
||||
height: 60px;
|
||||
}
|
||||
.hair_base_2_winternight {
|
||||
background-image: url(spritesmith0.png);
|
||||
background-position: -273px -535px;
|
||||
width: 90px;
|
||||
height: 90px;
|
||||
}
|
||||
.customize-option.hair_base_2_winternight {
|
||||
background-image: url(spritesmith0.png);
|
||||
background-position: -298px -550px;
|
||||
width: 60px;
|
||||
height: 60px;
|
||||
}
|
||||
.hair_base_2_yellow {
|
||||
background-image: url(spritesmith0.png);
|
||||
background-position: -182px -535px;
|
||||
width: 90px;
|
||||
height: 90px;
|
||||
}
|
||||
.customize-option.hair_base_2_yellow {
|
||||
background-image: url(spritesmith0.png);
|
||||
background-position: -207px -550px;
|
||||
width: 60px;
|
||||
|
|
|
|||
BIN
dist/spritesmith0.png
vendored
|
Before Width: | Height: | Size: 99 KiB After Width: | Height: | Size: 100 KiB |
3454
dist/spritesmith1.css
vendored
BIN
dist/spritesmith1.png
vendored
|
Before Width: | Height: | Size: 76 KiB After Width: | Height: | Size: 78 KiB |
910
dist/spritesmith2.css
vendored
BIN
dist/spritesmith2.png
vendored
|
Before Width: | Height: | Size: 84 KiB After Width: | Height: | Size: 90 KiB |
738
dist/spritesmith3.css
vendored
BIN
dist/spritesmith3.png
vendored
|
Before Width: | Height: | Size: 186 KiB After Width: | Height: | Size: 180 KiB |
820
dist/spritesmith4.css
vendored
BIN
dist/spritesmith4.png
vendored
|
Before Width: | Height: | Size: 170 KiB After Width: | Height: | Size: 176 KiB |
836
dist/spritesmith5.css
vendored
BIN
dist/spritesmith5.png
vendored
|
Before Width: | Height: | Size: 149 KiB After Width: | Height: | Size: 157 KiB |
|
After Width: | Height: | Size: 3.2 KiB |
|
After Width: | Height: | Size: 3.2 KiB |
|
After Width: | Height: | Size: 3.3 KiB |
|
After Width: | Height: | Size: 3.2 KiB |
|
After Width: | Height: | Size: 3.1 KiB |
|
After Width: | Height: | Size: 3.2 KiB |
|
After Width: | Height: | Size: 3.2 KiB |
|
After Width: | Height: | Size: 3.3 KiB |
|
After Width: | Height: | Size: 3.7 KiB |
|
After Width: | Height: | Size: 3.8 KiB |
|
After Width: | Height: | Size: 3.7 KiB |
|
After Width: | Height: | Size: 3.8 KiB |
|
After Width: | Height: | Size: 3 KiB |
|
After Width: | Height: | Size: 3 KiB |
|
After Width: | Height: | Size: 3 KiB |
|
After Width: | Height: | Size: 3.1 KiB |
|
After Width: | Height: | Size: 3.1 KiB |
|
After Width: | Height: | Size: 3.1 KiB |
|
After Width: | Height: | Size: 3.1 KiB |
|
After Width: | Height: | Size: 3 KiB |
|
After Width: | Height: | Size: 3 KiB |
|
After Width: | Height: | Size: 3.1 KiB |
|
After Width: | Height: | Size: 3.1 KiB |
|
After Width: | Height: | Size: 2.9 KiB |
|
After Width: | Height: | Size: 2.9 KiB |
|
After Width: | Height: | Size: 2.9 KiB |
|
After Width: | Height: | Size: 2.9 KiB |
|
After Width: | Height: | Size: 3 KiB |
|
After Width: | Height: | Size: 2.9 KiB |
|
After Width: | Height: | Size: 3 KiB |
|
After Width: | Height: | Size: 3.2 KiB |
|
After Width: | Height: | Size: 3.2 KiB |
|
After Width: | Height: | Size: 3.3 KiB |
|
After Width: | Height: | Size: 3.2 KiB |
|
After Width: | Height: | Size: 3.1 KiB |
|
After Width: | Height: | Size: 3.1 KiB |
|
After Width: | Height: | Size: 3 KiB |
|
After Width: | Height: | Size: 3.1 KiB |
|
Before Width: | Height: | Size: 4.8 KiB After Width: | Height: | Size: 5.1 KiB |
|
Before Width: | Height: | Size: 3.6 KiB After Width: | Height: | Size: 3.6 KiB |
|
Before Width: | Height: | Size: 4.3 KiB After Width: | Height: | Size: 4.5 KiB |
BIN
img/sprites/spritesmith/npcs/npc_ian.png
Normal file
|
After Width: | Height: | Size: 7.5 KiB |
|
Before Width: | Height: | Size: 4.3 KiB After Width: | Height: | Size: 4 KiB |
|
Before Width: | Height: | Size: 4 KiB After Width: | Height: | Size: 5.9 KiB |
BIN
img/sprites/spritesmith/stable/food/Pet_Food_Candy_Base.png
Normal file
|
After Width: | Height: | Size: 3 KiB |
|
After Width: | Height: | Size: 3 KiB |
|
After Width: | Height: | Size: 3 KiB |
BIN
img/sprites/spritesmith/stable/food/Pet_Food_Candy_Desert.png
Normal file
|
After Width: | Height: | Size: 3 KiB |
BIN
img/sprites/spritesmith/stable/food/Pet_Food_Candy_Golden.png
Normal file
|
After Width: | Height: | Size: 3 KiB |
BIN
img/sprites/spritesmith/stable/food/Pet_Food_Candy_Red.png
Normal file
|
After Width: | Height: | Size: 3 KiB |
BIN
img/sprites/spritesmith/stable/food/Pet_Food_Candy_Shade.png
Normal file
|
After Width: | Height: | Size: 3 KiB |
BIN
img/sprites/spritesmith/stable/food/Pet_Food_Candy_Skeleton.png
Normal file
|
After Width: | Height: | Size: 3 KiB |
BIN
img/sprites/spritesmith/stable/food/Pet_Food_Candy_White.png
Normal file
|
After Width: | Height: | Size: 3 KiB |
BIN
img/sprites/spritesmith/stable/food/Pet_Food_Candy_Zombie.png
Normal file
|
After Width: | Height: | Size: 3 KiB |
|
|
@ -84,6 +84,8 @@
|
|||
"foodRottenMeat": "Rotten Meat",
|
||||
"foodCottonCandyPink": "Pink Cotton Candy",
|
||||
"foodCottonCandyBlue": "Blue Cotton Candy",
|
||||
"foodHoney": "Honey",
|
||||
|
||||
"foodCakeSkeleton": "Bare Bones Cake",
|
||||
"foodCakeBase": "Basic Cake",
|
||||
"foodCakeCottonCandyBlue": "Candy Blue Cake",
|
||||
|
|
@ -94,7 +96,17 @@
|
|||
"foodCakeZombie": "Rotten Cake",
|
||||
"foodCakeDesert": "Sand Cake",
|
||||
"foodCakeRed": "Strawberry Cake",
|
||||
"foodHoney": "Honey",
|
||||
|
||||
"foodCandySkeleton": "Bare Bones Candy",
|
||||
"foodCandyBase": "Basic Candy",
|
||||
"foodCandyCottonCandyBlue": "Sour Blue Candy",
|
||||
"foodCandyCottonCandyPink": "Sour Pink Candy",
|
||||
"foodCandyShade": "Chocolate Candy",
|
||||
"foodCandyWhite": "Vanilla Candy",
|
||||
"foodCandyGolden": "Honey Candy ",
|
||||
"foodCandyZombie": "Rotten Candy",
|
||||
"foodCandyDesert": "Sand Candy",
|
||||
"foodCandyRed": "Cinnamon Candy",
|
||||
|
||||
"foodSaddleText": "Saddle",
|
||||
"foodSaddleNotes": "Instantly raises one of your pets into a mount.",
|
||||
|
|
|
|||
|
|
@ -100,6 +100,15 @@
|
|||
"weaponSpecialSummerHealerText": "Wand of the Shallows",
|
||||
"weaponSpecialSummerHealerNotes": "This wand, made of aquamarine and live coral, is very attractive to schools of fish. Adds <%= int %> points to Intelligence. Limited Edition 2014 Summer Gear.",
|
||||
|
||||
"weaponSpecialFallRogueText": "Silver Stake",
|
||||
"weaponSpecialFallRogueNotes": "Dispatches undead. Also grants a bonus against werewolves, because you can never be too careful. Adds <%= str %> points to Strength. Limited Edition 2014 Autumn Gear.",
|
||||
"weaponSpecialFallWarriorText": "Grabby Claw of Science",
|
||||
"weaponSpecialFallWarriorNotes": "This grabby claw is at the very cutting edge of technology. Adds <%= str %> points to Strength. Limited Edition 2014 Autumn Gear.",
|
||||
"weaponSpecialFallMageText": "Magic Broom",
|
||||
"weaponSpecialFallMageNotes": "This enchanted broom flies faster than a dragon! Adds <%= int %> points to Intelligence and <%= per %> points to Perception. Limited Edition 2014 Autumn Gear.",
|
||||
"weaponSpecialFallHealerText": "Scarab Wand",
|
||||
"weaponSpecialFallHealerNotes": "The scarab on this wand protects and heals its wielder. Adds <%= int %> points to Intelligence. Limited Edition 2014 Autumn Gear.",
|
||||
|
||||
"armorBase0Text": "Plain Clothing",
|
||||
"armorBase0Notes": "Ordinary clothing. Confers no benefit.",
|
||||
|
||||
|
|
@ -186,6 +195,15 @@
|
|||
"armorSpecialSummerHealerText": "Seahealer Tail",
|
||||
"armorSpecialSummerHealerNotes": "This garment of shimmering scales transforms its wearer into a real Seahealer! Adds <%= con %> points to Constitution. Limited Edition 2014 Summer Gear.",
|
||||
|
||||
"armorSpecialFallRogueText": "Bloodred Robes",
|
||||
"armorSpecialFallRogueNotes": "Vivid. Velvet. Vampiric. Adds <%= per %> points to Perception. Limited Edition 2014 Autumn Gear.",
|
||||
"armorSpecialFallWarriorText": "Lab-coat of Science",
|
||||
"armorSpecialFallWarriorNotes": "Protects you from mysterious potion spills. Adds <%= con %> points to Constitution. Limited Edition 2014 Autumn Gear.",
|
||||
"armorSpecialFallMageText": "Witchy Wizard Robes",
|
||||
"armorSpecialFallMageNotes": "This robe has plenty of pockets to hold extra helpings of eye of newt and tongue of frog. Adds <%= int %> points to Intelligence. Limited Edition 2014 Autumn Gear.",
|
||||
"armorSpecialFallHealerText": "Gauzy Gear",
|
||||
"armorSpecialFallHealerNotes": "Charge into battle pre-bandaged! Adds <%= con %> points to Constitution. Limited Edition 2014 Autumn Gear.",
|
||||
|
||||
"armorMystery201402Text": "Messenger Robes",
|
||||
"armorMystery201402Notes": "Shimmering and strong, these robes have many pockets to carry letters.",
|
||||
|
||||
|
|
@ -287,6 +305,15 @@
|
|||
"headSpecialSummerHealerText": "Coral Crown",
|
||||
"headSpecialSummerHealerNotes": "Enables its wearer to heal damaged reefs. Adds <%= int %> points to Intelligence. Limited Edition 2014 Summer Gear.",
|
||||
|
||||
"headSpecialFallRogueText": "Bloodred Hood",
|
||||
"headSpecialFallRogueNotes": "A Vampire Smiter's identity must always be hidden. Adds <%= per %> points to Perception. Limited Edition 2014 Autumn Gear.",
|
||||
"headSpecialFallWarriorText": "Monster Scalp of Science",
|
||||
"headSpecialFallWarriorNotes": "Graft on this helm! It's only SLIGHTLY used. Adds <%= str %> points to Strength. Limited Edition 2014 Autumn Gear.",
|
||||
"headSpecialFallMageText": "Pointy Hat",
|
||||
"headSpecialFallMageNotes": "Magic is woven into every thread of this hat. Adds <%= per %> points to Perception. Limited Edition 2014 Autumn Gear.",
|
||||
"headSpecialFallHealerText": "Head Bandages",
|
||||
"headSpecialFallHealerNotes": "Highly sanitary and very fashionable. Adds <%= int %> points to Intelligence. Limited Edition 2014 Autumn Gear.",
|
||||
|
||||
"headSpecialGaymerxText": "Rainbow Warrior Helm",
|
||||
"headSpecialGaymerxNotes": "(Confers no benefit) In celebration of pride season and GaymerX, this special helmet is decorated with a radiant, colorful rainbow pattern! GaymerX is a game convention celebrating LGBTQ and gaming and is open to everyone. It takes place at the InterContinental in downtown San Francisco on July 11-13!",
|
||||
|
||||
|
|
@ -351,6 +378,13 @@
|
|||
"shieldSpecialSummerHealerText": "Shield of the Shallows",
|
||||
"shieldSpecialSummerHealerNotes": "No one will dare to attack the coral reef when faced with this shiny shield! Adds <%= con %> points to Constitution. Limited Edition 2014 Summer Gear.",
|
||||
|
||||
"shieldSpecialFallRogueText": "Silver Stake",
|
||||
"shieldSpecialFallRogueNotes": "Dispatches undead. Also grants a bonus against werewolves, because you can never be too careful. Adds <%= str %> points to Strength. Limited Edition 2014 Autumn Gear.",
|
||||
"shieldSpecialFallWarriorText": "Potent Potion of Science",
|
||||
"shieldSpecialFallWarriorNotes": "Spills mysteriously on lab coats. Adds <%= con %> points to Constitution. Limited Edition 2014 Autumn Gear.",
|
||||
"shieldSpecialFallHealerText": "Jeweled Shield",
|
||||
"shieldSpecialFallHealerNotes": "This glittery shield was found in an ancient tomb. Adds <%= con %> points to Constitution. Limited Edition 2014 Autumn Gear.",
|
||||
|
||||
"backBase0Text": "No Back Accessory",
|
||||
"backBase0Notes": "No Back Accessory.",
|
||||
|
||||
|
|
|
|||
|
|
@ -25,6 +25,7 @@ events =
|
|||
spring: {start:'2014-03-21',end:'2014-05-01'}
|
||||
summer: {start:'2014-06-20',end:'2014-08-01'}
|
||||
gaymerx: {start:'2014-07-02',end:'2014-08-01'}
|
||||
fall: {start:'2014-09-21',end:'2014-11-01'}
|
||||
|
||||
mystery =
|
||||
201402: {start:'2014-02-22',end:'2014-02-28'}
|
||||
|
|
@ -102,6 +103,11 @@ gear =
|
|||
summerWarrior: event: events.summer, specialClass: 'warrior', text: t('weaponSpecialSummerWarriorText'), notes: t('weaponSpecialSummerWarriorNotes', {str: 15}), value: 90, str: 15
|
||||
summerMage: event: events.summer, specialClass: 'wizard', twoHanded:true, text: t('weaponSpecialSummerMageText'), notes: t('weaponSpecialSummerMageNotes', {int: 15, per: 7}), value: 160, int:15, per:7
|
||||
summerHealer: event: events.summer, specialClass: 'healer', text: t('weaponSpecialSummerHealerText'), notes: t('weaponSpecialSummerHealerNotes', {int: 9}), value: 90, int: 9
|
||||
#Fall
|
||||
fallRogue: event: events.fall, specialClass: 'rogue', text: t('weaponSpecialFallRogueText'), notes: t('weaponSpecialFallRogueNotes', {str: 8}), value: 80, str: 8
|
||||
fallWarrior: event: events.fall, specialClass: 'warrior', text: t('weaponSpecialFallWarriorText'), notes: t('weaponSpecialFallWarriorNotes', {str: 15}), value: 90, str: 15
|
||||
fallMage: event: events.fall, specialClass: 'wizard', twoHanded:true, text: t('weaponSpecialFallMageText'), notes: t('weaponSpecialFallMageNotes', {int: 15, per: 7}), value: 160, int:15, per:7
|
||||
fallHealer: event: events.fall, specialClass: 'healer', text: t('weaponSpecialFallHealerText'), notes: t('weaponSpecialFallHealerNotes', {int: 9}), value: 90, int: 9
|
||||
|
||||
armor:
|
||||
base:
|
||||
|
|
@ -154,6 +160,11 @@ gear =
|
|||
summerWarrior: event: events.summer, specialClass: 'warrior', text: t('armorSpecialSummerWarriorText'), notes: t('armorSpecialSummerWarriorNotes', {con: 9}), value: 90, con: 9
|
||||
summerMage: event: events.summer, specialClass: 'wizard', text: t('armorSpecialSummerMageText'), notes: t('armorSpecialSummerMageNotes', {int: 9}), value: 90, int: 9
|
||||
summerHealer: event: events.summer, specialClass: 'healer', text: t('armorSpecialSummerHealerText'), notes: t('armorSpecialSummerHealerNotes', {con: 15}), value: 90, con: 15
|
||||
# Fall
|
||||
fallRogue: event: events.fall, specialClass: 'rogue', text: t('armorSpecialFallRogueText'), notes: t('armorSpecialFallRogueNotes', {per: 15}), value: 90, per: 15
|
||||
fallWarrior: event: events.fall, specialClass: 'warrior', text: t('armorSpecialFallWarriorText'), notes: t('armorSpecialFallWarriorNotes', {con: 9}), value: 90, con: 9
|
||||
fallMage: event: events.fall, specialClass: 'wizard', text: t('armorSpecialFallMageText'), notes: t('armorSpecialFallMageNotes', {int: 9}), value: 90, int: 9
|
||||
fallHealer: event: events.fall, specialClass: 'healer', text: t('armorSpecialFallHealerText'), notes: t('armorSpecialFallHealerNotes', {con: 15}), value: 90, con: 15
|
||||
# Other
|
||||
gaymerx: event: events.gaymerx, text: t('armorSpecialGaymerxText'), notes: t('armorSpecialGaymerxNotes'), value: 0
|
||||
mystery:
|
||||
|
|
@ -215,6 +226,11 @@ gear =
|
|||
summerWarrior: event: events.summer, specialClass: 'warrior', text: t('headSpecialSummerWarriorText'), notes: t('headSpecialSummerWarriorNotes', {str: 9}),value: 60,str: 9
|
||||
summerMage: event: events.summer, specialClass: 'wizard', text: t('headSpecialSummerMageText'), notes: t('headSpecialSummerMageNotes', {per: 7}),value: 60,per: 7
|
||||
summerHealer: event: events.summer, specialClass: 'healer', text: t('headSpecialSummerHealerText'), notes: t('headSpecialSummerHealerNotes', {int: 7}), value: 60, int: 7
|
||||
# Fall
|
||||
fallRogue: event: events.fall, specialClass: 'rogue', text: t('headSpecialFallRogueText'), notes: t('headSpecialFallRogueNotes', {per: 9}),value: 60,per: 9
|
||||
fallWarrior: event: events.fall, specialClass: 'warrior', text: t('headSpecialFallWarriorText'), notes: t('headSpecialFallWarriorNotes', {str: 9}),value: 60,str: 9
|
||||
fallMage: event: events.fall, specialClass: 'wizard', text: t('headSpecialFallMageText'), notes: t('headSpecialFallMageNotes', {per: 7}),value: 60,per: 7
|
||||
fallHealer: event: events.fall, specialClass: 'healer', text: t('headSpecialFallHealerText'), notes: t('headSpecialFallHealerNotes', {int: 7}), value: 60, int: 7
|
||||
# Other
|
||||
gaymerx: event: events.gaymerx, text: t('headSpecialGaymerxText'), notes: t('headSpecialGaymerxNotes'), value: 0
|
||||
mystery:
|
||||
|
|
@ -267,6 +283,10 @@ gear =
|
|||
summerRogue: event: events.summer, specialClass: 'rogue', text: t('shieldSpecialSummerRogueText'), notes: t('shieldSpecialSummerRogueNotes', {str: 8}), value: 80, str: 8
|
||||
summerWarrior: event: events.summer, specialClass: 'warrior', text: t('shieldSpecialSummerWarriorText'), notes: t('shieldSpecialSummerWarriorNotes', {con: 7}), value: 70, con: 7
|
||||
summerHealer: event: events.summer, specialClass: 'healer', text: t('shieldSpecialSummerHealerText'), notes: t('shieldSpecialSummerHealerNotes', {con: 9}), value: 70, con: 9
|
||||
#Fall
|
||||
fallRogue: event: events.fall, specialClass: 'rogue', text: t('shieldSpecialFallRogueText'), notes: t('shieldSpecialFallRogueNotes', {str: 8}), value: 80, str: 8
|
||||
fallWarrior: event: events.fall, specialClass: 'warrior', text: t('shieldSpecialFallWarriorText'), notes: t('shieldSpecialFallWarriorNotes', {con: 7}), value: 70, con: 7
|
||||
fallHealer: event: events.fall, specialClass: 'healer', text: t('shieldSpecialFallHealerText'), notes: t('shieldSpecialFallHealerNotes', {con: 9}), value: 70, con: 9
|
||||
|
||||
back:
|
||||
base:
|
||||
|
|
@ -680,38 +700,48 @@ api.questPets = _.transform api.questEggs, (m, egg) ->
|
|||
_.defaults m, _.transform api.hatchingPotions, (m2, pot) ->
|
||||
m2[egg.key + "-" + pot.key] = true
|
||||
|
||||
#TODO after the fall event, set Base set to canBuy:true (or remove, since it's default) and set Fall set to canBuy:false
|
||||
api.food =
|
||||
Meat: text: t('foodMeat'), target: 'Base', article: ''
|
||||
Milk: text: t('foodMilk'), target: 'White', article: ''
|
||||
Potatoe: text: t('foodPotatoe'), target: 'Desert', article: 'a '
|
||||
Strawberry: text: t('foodStrawberry'), target: 'Red', article: 'a '
|
||||
Chocolate: text: t('foodChocolate'), target: 'Shade', article: ''
|
||||
Fish: text: t('foodFish'), target: 'Skeleton', article: 'a '
|
||||
RottenMeat: text: t('foodRottenMeat'), target: 'Zombie', article: ''
|
||||
CottonCandyPink: text: t('foodCottonCandyPink'), target: 'CottonCandyPink', article: ''
|
||||
CottonCandyBlue: text: t('foodCottonCandyBlue'), target: 'CottonCandyBlue', article: ''
|
||||
# FIXME what to do with these extra items? Should we add "targets" (plural) for food instead of singular, so we don't have awkward extras?
|
||||
#Cheese: text: 'Cheese', target: 'Golden'
|
||||
#Watermelon: text: 'Watermelon', target: 'Golden'
|
||||
#SeaWeed: text: 'SeaWeed', target: 'Golden'
|
||||
# Base
|
||||
Meat: canBuy:true, canDrop:false, text: t('foodMeat'), target: 'Base', article: ''
|
||||
Milk: canBuy:true, canDrop:false, text: t('foodMilk'), target: 'White', article: ''
|
||||
Potatoe: canBuy:true, canDrop:false, text: t('foodPotatoe'), target: 'Desert', article: 'a '
|
||||
Strawberry: canBuy:true, canDrop:false, text: t('foodStrawberry'), target: 'Red', article: 'a '
|
||||
Chocolate: canBuy:true, canDrop:false, text: t('foodChocolate'), target: 'Shade', article: ''
|
||||
Fish: canBuy:true, canDrop:false, text: t('foodFish'), target: 'Skeleton', article: 'a '
|
||||
RottenMeat: canBuy:true, canDrop:false, text: t('foodRottenMeat'), target: 'Zombie', article: ''
|
||||
CottonCandyPink: canBuy:true, canDrop:false, text: t('foodCottonCandyPink'), target: 'CottonCandyPink', article: ''
|
||||
CottonCandyBlue: canBuy:true, canDrop:false, text: t('foodCottonCandyBlue'), target: 'CottonCandyBlue', article: ''
|
||||
Honey: canBuy:true, canDrop:false, text: t('foodHoney'), target: 'Golden', article: ''
|
||||
|
||||
Cake_Skeleton: canBuy: false, text: t('foodCakeSkeleton'), target: 'Skeleton', article: ''
|
||||
Cake_Base: canBuy: false, text: t('foodCakeBase'), target: 'Base', article: ''
|
||||
Cake_CottonCandyBlue: canBuy: false, text: t('foodCakeCottonCandyBlue'), target: 'CottonCandyBlue', article: ''
|
||||
Cake_CottonCandyPink: canBuy: false, text: t('foodCakeCottonCandyPink'), target: 'CottonCandyPink', article: ''
|
||||
Cake_Shade: canBuy: false, text: t('foodCakeShade'), target: 'Shade', article: ''
|
||||
Cake_White: canBuy: false, text: t('foodCakeWhite'), target: 'White', article: ''
|
||||
Cake_Golden: canBuy: false, text: t('foodCakeGolden'), target: 'Golden', article: ''
|
||||
Cake_Zombie: canBuy: false, text: t('foodCakeZombie'), target: 'Zombie', article: ''
|
||||
Cake_Desert: canBuy: false, text: t('foodCakeDesert'), target: 'Desert', article: ''
|
||||
Cake_Red: canBuy: false, text: t('foodCakeRed'), target: 'Red', article: ''
|
||||
Saddle: canBuy:true, canDrop:false, text: t('foodSaddleText'), value: 5, notes: t('foodSaddleNotes')
|
||||
|
||||
# Tests hack, put honey last so the faux random picks it up in unit tests
|
||||
Honey: text: t('foodHoney'), target: 'Golden', article: ''
|
||||
# Cake
|
||||
Cake_Skeleton: canBuy:false, canDrop:false, text: t('foodCakeSkeleton'), target: 'Skeleton', article: ''
|
||||
Cake_Base: canBuy:false, canDrop:false, text: t('foodCakeBase'), target: 'Base', article: ''
|
||||
Cake_CottonCandyBlue: canBuy:false, canDrop:false, text: t('foodCakeCottonCandyBlue'), target: 'CottonCandyBlue', article: ''
|
||||
Cake_CottonCandyPink: canBuy:false, canDrop:false, text: t('foodCakeCottonCandyPink'), target: 'CottonCandyPink', article: ''
|
||||
Cake_Shade: canBuy:false, canDrop:false, text: t('foodCakeShade'), target: 'Shade', article: ''
|
||||
Cake_White: canBuy:false, canDrop:false, text: t('foodCakeWhite'), target: 'White', article: ''
|
||||
Cake_Golden: canBuy:false, canDrop:false, text: t('foodCakeGolden'), target: 'Golden', article: ''
|
||||
Cake_Zombie: canBuy:false, canDrop:false, text: t('foodCakeZombie'), target: 'Zombie', article: ''
|
||||
Cake_Desert: canBuy:false, canDrop:false, text: t('foodCakeDesert'), target: 'Desert', article: ''
|
||||
Cake_Red: canBuy:false, canDrop:false, text: t('foodCakeRed'), target: 'Red', article: ''
|
||||
|
||||
# Fall
|
||||
Candy_Skeleton: canBuy:true, canDrop:true, text: t('foodCandySkeleton'), target: 'Skeleton', article: ''
|
||||
Candy_Base: canBuy:true, canDrop:true, text: t('foodCandyBase'), target: 'Base', article: ''
|
||||
Candy_CottonCandyBlue: canBuy:true, canDrop:true, text: t('foodCandyCottonCandyBlue'), target: 'CottonCandyBlue', article: ''
|
||||
Candy_CottonCandyPink: canBuy:true, canDrop:true, text: t('foodCandyCottonCandyPink'), target: 'CottonCandyPink', article: ''
|
||||
Candy_Shade: canBuy:true, canDrop:true, text: t('foodCandyShade'), target: 'Shade', article: ''
|
||||
Candy_White: canBuy:true, canDrop:true, text: t('foodCandyWhite'), target: 'White', article: ''
|
||||
Candy_Golden: canBuy:true, canDrop:true, text: t('foodCandyGolden'), target: 'Golden', article: ''
|
||||
Candy_Zombie: canBuy:true, canDrop:true, text: t('foodCandyZombie'), target: 'Zombie', article: ''
|
||||
Candy_Desert: canBuy:true, canDrop:true, text: t('foodCandyDesert'), target: 'Desert', article: ''
|
||||
Candy_Red: canBuy:true, canDrop:true, text: t('foodCandyRed'), target: 'Red', article: ''
|
||||
|
||||
Saddle: text: t('foodSaddleText'), value: 5, notes: t('foodSaddleNotes')
|
||||
_.each api.food, (food,key) ->
|
||||
_.defaults food, {value: 1, key, notes: t('foodNotes'), canBuy:true}
|
||||
_.defaults food, {value: 1, key, notes: t('foodNotes')}
|
||||
|
||||
api.quests =
|
||||
|
||||
|
|
|
|||
|
|
@ -1053,7 +1053,7 @@ api.wrap = (user, main=true) ->
|
|||
|
||||
# Food: 40% chance
|
||||
if rarity > .6
|
||||
drop = user.fns.randomVal _(content.food).omit('Saddle').where({canBuy:true}).value()
|
||||
drop = user.fns.randomVal _.where(content.food, {canDrop:true})
|
||||
user.items.food[drop.key] ?= 0
|
||||
user.items.food[drop.key]+= 1
|
||||
drop.type = 'Food'
|
||||
|
|
|
|||