Compare commits
84 Commits
| Author | SHA1 | Date | |
|---|---|---|---|
| ee20b1eea8 | |||
| ff62c6eea0 | |||
| 57cd4d44cd | |||
| e989503cfa | |||
| 431cec7634 | |||
| 2a367ab3a7 | |||
| bc91dd81e9 | |||
| 201085651b | |||
| bb395a7ad8 | |||
| 264aad79ac | |||
| 9c797e6a54 | |||
| e6c3d00665 | |||
| 660928323e | |||
| 298a79b58d | |||
| 77f3bb53de | |||
| 17d8a7b706 | |||
| 1d8a5b1952 | |||
| f548103f4c | |||
| 2595ccb2b4 | |||
| ceb4288b17 | |||
| 3ebd37f7cb | |||
| ff3df55639 | |||
| 080c4b3e20 | |||
| e939799800 | |||
| b7797b3e6c | |||
| 55bd35d7d3 | |||
| b9ae03f795 | |||
| 75f6398de2 | |||
| a1fb702d1e | |||
| 868759d3e8 | |||
| 45a9d6d17b | |||
| cc766d2260 | |||
| e710a00e74 | |||
| bad06ba449 | |||
| ccb088e127 | |||
| 4a4d48aed8 | |||
| da8006506b | |||
| d451d01b18 | |||
| 53555a0f16 | |||
| 962236846a | |||
| 8874558827 | |||
| ea5ce64db6 | |||
| 10b69986c0 | |||
| 2d35009bee | |||
| d267f09d04 | |||
| 0cbd6fb4d7 | |||
| 0ca3c1f94d | |||
| 2f699e24d7 | |||
| faa0611ab2 | |||
| c66d2cb469 | |||
| 61606cb69d | |||
| 73ecdced01 | |||
| 1c17b415f0 | |||
| b912a83f22 | |||
| fb3a9740bd | |||
| 817c943860 | |||
| 0aba448c48 | |||
| 52a7112591 | |||
| 3203bffeaa | |||
| 3f47cdd9a2 | |||
| 8b15d94ae1 | |||
| 8f2435c37c | |||
| 2c250bfcd9 | |||
| 75e3f15352 | |||
| 5670be26c7 | |||
| 9fc03cb91a | |||
| 7e80406181 | |||
| 60a6f6f2f6 | |||
| 92d68e5c6e | |||
| 6e7d8d93fe | |||
| bc861133e1 | |||
| 31ef21f25c | |||
| 97e1465899 | |||
| 7cb0f5145d | |||
| 5b6217a0bf | |||
| 09e4c88606 | |||
| 13bae96708 | |||
| 6241001eef | |||
| dc5722d0de | |||
| e3b2443029 | |||
| ca5927fe73 | |||
| 5a0eed7eae | |||
| 532881e679 | |||
| 27d763a46c |
@@ -1,6 +1,6 @@
|
||||
{
|
||||
"name": "habitica",
|
||||
"version": "4.85.0",
|
||||
"version": "4.86.1",
|
||||
"lockfileVersion": 1,
|
||||
"requires": true,
|
||||
"dependencies": {
|
||||
@@ -683,8 +683,13 @@
|
||||
"blueimp-md5": "^2.10.0",
|
||||
"json3": "^3.3.2",
|
||||
"lodash": "^4.17.4",
|
||||
"query-string": "5",
|
||||
"ua-parser-js": "github:amplitude/ua-parser-js#ed538f16f5c6ecd8357da989b617d4f156dcf35d"
|
||||
"query-string": "5"
|
||||
},
|
||||
"dependencies": {
|
||||
"ua-parser-js": {
|
||||
"version": "github:amplitude/ua-parser-js#ed538f16f5c6ecd8357da989b617d4f156dcf35d",
|
||||
"from": "github:amplitude/ua-parser-js#ed538f16f5c6ecd8357da989b617d4f156dcf35d"
|
||||
}
|
||||
}
|
||||
},
|
||||
"ansi-align": {
|
||||
@@ -25503,10 +25508,6 @@
|
||||
"resolved": "https://registry.npmjs.org/typedarray/-/typedarray-0.0.6.tgz",
|
||||
"integrity": "sha1-hnrHTjhkGHsdPUfZlqeOxciDB3c="
|
||||
},
|
||||
"ua-parser-js": {
|
||||
"version": "github:amplitude/ua-parser-js#ed538f16f5c6ecd8357da989b617d4f156dcf35d",
|
||||
"from": "github:amplitude/ua-parser-js#ed538f1"
|
||||
},
|
||||
"uc.micro": {
|
||||
"version": "1.0.6",
|
||||
"resolved": "https://registry.npmjs.org/uc.micro/-/uc.micro-1.0.6.tgz",
|
||||
|
||||
@@ -1,7 +1,7 @@
|
||||
{
|
||||
"name": "habitica",
|
||||
"description": "A habit tracker app which treats your goals like a Role Playing Game.",
|
||||
"version": "4.85.0",
|
||||
"version": "4.86.1",
|
||||
"main": "./website/server/index.js",
|
||||
"dependencies": {
|
||||
"@google-cloud/trace-agent": "^3.5.2",
|
||||
|
||||
@@ -32,6 +32,7 @@ describe('slack', () => {
|
||||
},
|
||||
message: {
|
||||
id: 'chat-id',
|
||||
username: 'author',
|
||||
user: 'Author',
|
||||
uuid: 'author-id',
|
||||
text: 'some text',
|
||||
@@ -50,11 +51,11 @@ describe('slack', () => {
|
||||
|
||||
expect(IncomingWebhook.prototype.send).to.be.calledOnce;
|
||||
expect(IncomingWebhook.prototype.send).to.be.calledWith({
|
||||
text: 'flagger (flagger-id; language: flagger-lang) flagged a message',
|
||||
text: 'flagger (flagger-id; language: flagger-lang) flagged a group message',
|
||||
attachments: [{
|
||||
fallback: 'Flag Message',
|
||||
color: 'danger',
|
||||
author_name: `Author - author@example.com - author-id\n${timestamp}`,
|
||||
author_name: `@author Author (author@example.com; author-id)\n${timestamp}`,
|
||||
title: 'Flag in Some group - (private guild)',
|
||||
title_link: undefined,
|
||||
text: 'some text',
|
||||
|
||||
@@ -63,11 +63,11 @@ describe('POST /chat/:chatId/flag', () => {
|
||||
|
||||
/* eslint-disable camelcase */
|
||||
expect(IncomingWebhook.prototype.send).to.be.calledWith({
|
||||
text: `${user.profile.name} (${user.id}; language: en) flagged a message`,
|
||||
text: `${user.profile.name} (${user.id}; language: en) flagged a group message`,
|
||||
attachments: [{
|
||||
fallback: 'Flag Message',
|
||||
color: 'danger',
|
||||
author_name: `${anotherUser.profile.name} - ${anotherUser.auth.local.email} - ${anotherUser._id}\n${timestamp}`,
|
||||
author_name: `@${anotherUser.auth.local.username} ${anotherUser.profile.name} (${anotherUser.auth.local.email}; ${anotherUser._id})\n${timestamp}`,
|
||||
title: 'Flag in Test Guild',
|
||||
title_link: `${BASE_URL}/groups/guild/${group._id}`,
|
||||
text: TEST_MESSAGE,
|
||||
@@ -98,11 +98,11 @@ describe('POST /chat/:chatId/flag', () => {
|
||||
|
||||
/* eslint-disable camelcase */
|
||||
expect(IncomingWebhook.prototype.send).to.be.calledWith({
|
||||
text: `${newUser.profile.name} (${newUser.id}; language: en) flagged a message`,
|
||||
text: `${newUser.profile.name} (${newUser.id}; language: en) flagged a group message`,
|
||||
attachments: [{
|
||||
fallback: 'Flag Message',
|
||||
color: 'danger',
|
||||
author_name: `${newUser.profile.name} - ${newUser.auth.local.email} - ${newUser._id}\n${timestamp}`,
|
||||
author_name: `@${newUser.auth.local.username} ${newUser.profile.name} (${newUser.auth.local.email}; ${newUser._id})\n${timestamp}`,
|
||||
title: 'Flag in Test Guild',
|
||||
title_link: `${BASE_URL}/groups/guild/${group._id}`,
|
||||
text: TEST_MESSAGE,
|
||||
|
||||
@@ -257,7 +257,7 @@ describe('POST /chat', () => {
|
||||
attachments: [{
|
||||
fallback: 'Slur Message',
|
||||
color: 'danger',
|
||||
author_name: `${user.profile.name} - ${user.auth.local.email} - ${user._id}`,
|
||||
author_name: `@${user.auth.local.username} ${user.profile.name} (${user.auth.local.email}; ${user._id})`,
|
||||
title: 'Slur in Test Guild',
|
||||
title_link: `${BASE_URL}/groups/guild/${groupWithChat.id}`,
|
||||
text: testSlurMessage,
|
||||
@@ -310,7 +310,7 @@ describe('POST /chat', () => {
|
||||
attachments: [{
|
||||
fallback: 'Slur Message',
|
||||
color: 'danger',
|
||||
author_name: `${members[0].profile.name} - ${members[0].auth.local.email} - ${members[0]._id}`,
|
||||
author_name: `@${members[0].auth.local.username} ${members[0].profile.name} (${members[0].auth.local.email}; ${members[0]._id})`,
|
||||
title: 'Slur in Party - (private party)',
|
||||
title_link: undefined,
|
||||
text: testSlurMessage,
|
||||
|
||||
@@ -25,9 +25,9 @@ describe('GET /heroes/:heroId', () => {
|
||||
|
||||
it('validates req.params.heroId', async () => {
|
||||
await expect(user.get('/hall/heroes/invalidUUID')).to.eventually.be.rejected.and.eql({
|
||||
code: 400,
|
||||
error: 'BadRequest',
|
||||
message: t('invalidReqParams'),
|
||||
code: 404,
|
||||
error: 'NotFound',
|
||||
message: t('userWithIDNotFound', {userId: 'invalidUUID'}),
|
||||
});
|
||||
});
|
||||
|
||||
@@ -40,7 +40,7 @@ describe('GET /heroes/:heroId', () => {
|
||||
});
|
||||
});
|
||||
|
||||
it('returns only necessary hero data', async () => {
|
||||
it('returns only necessary hero data given user id', async () => {
|
||||
let hero = await generateUser({
|
||||
contributor: {tier: 23},
|
||||
});
|
||||
@@ -53,4 +53,18 @@ describe('GET /heroes/:heroId', () => {
|
||||
expect(heroRes.auth.local).not.to.have.keys(['salt', 'hashed_password']);
|
||||
expect(heroRes.profile).to.have.all.keys(['name']);
|
||||
});
|
||||
|
||||
it('returns only necessary hero data given username', async () => {
|
||||
let hero = await generateUser({
|
||||
contributor: {tier: 23},
|
||||
});
|
||||
let heroRes = await user.get(`/hall/heroes/${hero.auth.local.username}`);
|
||||
|
||||
expect(heroRes).to.have.all.keys([ // works as: object has all and only these keys
|
||||
'_id', 'id', 'balance', 'profile', 'purchased',
|
||||
'contributor', 'auth', 'items',
|
||||
]);
|
||||
expect(heroRes.auth.local).not.to.have.keys(['salt', 'hashed_password']);
|
||||
expect(heroRes.profile).to.have.all.keys(['name']);
|
||||
});
|
||||
});
|
||||
|
||||
@@ -0,0 +1,74 @@
|
||||
import {
|
||||
generateUser,
|
||||
translate as t,
|
||||
} from '../../../helpers/api-integration/v4';
|
||||
|
||||
describe('POST /members/flag-private-message/:messageId', () => {
|
||||
let userToSendMessage;
|
||||
let messageToSend = 'Test Private Message';
|
||||
|
||||
beforeEach(async () => {
|
||||
userToSendMessage = await generateUser();
|
||||
});
|
||||
|
||||
it('Allows players to flag their own private message', async () => {
|
||||
let receiver = await generateUser();
|
||||
|
||||
await userToSendMessage.post('/members/send-private-message', {
|
||||
message: messageToSend,
|
||||
toUserId: receiver._id,
|
||||
});
|
||||
|
||||
let senderMessages = await userToSendMessage.get('/inbox/messages');
|
||||
|
||||
let sendersMessageInSendersInbox = _.find(senderMessages, (message) => {
|
||||
return message.uuid === receiver._id && message.text === messageToSend;
|
||||
});
|
||||
|
||||
expect(sendersMessageInSendersInbox).to.exist;
|
||||
await expect(userToSendMessage.post(`/members/flag-private-message/${sendersMessageInSendersInbox.id}`)).to.eventually.be.ok;
|
||||
});
|
||||
|
||||
it('Flags a private message', async () => {
|
||||
let receiver = await generateUser();
|
||||
|
||||
await userToSendMessage.post('/members/send-private-message', {
|
||||
message: messageToSend,
|
||||
toUserId: receiver._id,
|
||||
});
|
||||
|
||||
let receiversMessages = await receiver.get('/inbox/messages');
|
||||
|
||||
let sendersMessageInReceiversInbox = _.find(receiversMessages, (message) => {
|
||||
return message.uuid === userToSendMessage._id && message.text === messageToSend;
|
||||
});
|
||||
|
||||
expect(sendersMessageInReceiversInbox).to.exist;
|
||||
await expect(receiver.post(`/members/flag-private-message/${sendersMessageInReceiversInbox.id}`)).to.eventually.be.ok;
|
||||
});
|
||||
|
||||
it('Returns an error when user tries to flag a private message that is already flagged', async () => {
|
||||
let receiver = await generateUser();
|
||||
|
||||
await userToSendMessage.post('/members/send-private-message', {
|
||||
message: messageToSend,
|
||||
toUserId: receiver._id,
|
||||
});
|
||||
|
||||
let receiversMessages = await receiver.get('/inbox/messages');
|
||||
|
||||
let sendersMessageInReceiversInbox = _.find(receiversMessages, (message) => {
|
||||
return message.uuid === userToSendMessage._id && message.text === messageToSend;
|
||||
});
|
||||
|
||||
expect(sendersMessageInReceiversInbox).to.exist;
|
||||
await expect(receiver.post(`/members/flag-private-message/${sendersMessageInReceiversInbox.id}`)).to.eventually.be.ok;
|
||||
|
||||
await expect(receiver.post(`/members/flag-private-message/${sendersMessageInReceiversInbox.id}`))
|
||||
.to.eventually.be.rejected.and.eql({
|
||||
code: 400,
|
||||
error: 'BadRequest',
|
||||
message: t('messageGroupChatFlagAlreadyReported'),
|
||||
});
|
||||
});
|
||||
});
|
||||
@@ -1,6 +1,6 @@
|
||||
.promo_armoire_backgrounds_201902 {
|
||||
.promo_armoire_backgrounds_201903 {
|
||||
background-image: url('~assets/images/sprites/spritesmith-largeSprites-0.png');
|
||||
background-position: -397px 0px;
|
||||
background-position: 0px -220px;
|
||||
width: 423px;
|
||||
height: 147px;
|
||||
}
|
||||
@@ -12,16 +12,28 @@
|
||||
}
|
||||
.promo_mythical_marvels_bundle {
|
||||
background-image: url('~assets/images/sprites/spritesmith-largeSprites-0.png');
|
||||
background-position: 0px -220px;
|
||||
background-position: 0px -368px;
|
||||
width: 423px;
|
||||
height: 147px;
|
||||
}
|
||||
.promo_take_this {
|
||||
background-image: url('~assets/images/sprites/spritesmith-largeSprites-0.png');
|
||||
background-position: -397px -148px;
|
||||
background-position: -424px -368px;
|
||||
width: 96px;
|
||||
height: 69px;
|
||||
}
|
||||
.promo_valentines_potions {
|
||||
background-image: url('~assets/images/sprites/spritesmith-largeSprites-0.png');
|
||||
background-position: 0px -516px;
|
||||
width: 420px;
|
||||
height: 147px;
|
||||
}
|
||||
.scene_achievement {
|
||||
background-image: url('~assets/images/sprites/spritesmith-largeSprites-0.png');
|
||||
background-position: -397px 0px;
|
||||
width: 339px;
|
||||
height: 210px;
|
||||
}
|
||||
.scene_cooking {
|
||||
background-image: url('~assets/images/sprites/spritesmith-largeSprites-0.png');
|
||||
background-position: 0px 0px;
|
||||
|
||||
@@ -1,348 +1,474 @@
|
||||
.weapon_warrior_6 {
|
||||
background-image: url('~assets/images/sprites/spritesmith-main-11.png');
|
||||
background-position: -737px -1529px;
|
||||
width: 90px;
|
||||
height: 90px;
|
||||
}
|
||||
.weapon_wizard_0 {
|
||||
background-image: url('~assets/images/sprites/spritesmith-main-11.png');
|
||||
background-position: -646px -1529px;
|
||||
width: 90px;
|
||||
height: 90px;
|
||||
}
|
||||
.weapon_wizard_1 {
|
||||
background-image: url('~assets/images/sprites/spritesmith-main-11.png');
|
||||
background-position: -828px -1529px;
|
||||
width: 90px;
|
||||
height: 90px;
|
||||
}
|
||||
.weapon_wizard_2 {
|
||||
background-image: url('~assets/images/sprites/spritesmith-main-11.png');
|
||||
background-position: -919px -1529px;
|
||||
width: 90px;
|
||||
height: 90px;
|
||||
}
|
||||
.weapon_wizard_3 {
|
||||
background-image: url('~assets/images/sprites/spritesmith-main-11.png');
|
||||
background-position: -100px -1529px;
|
||||
width: 90px;
|
||||
height: 90px;
|
||||
}
|
||||
.weapon_wizard_4 {
|
||||
background-image: url('~assets/images/sprites/spritesmith-main-11.png');
|
||||
background-position: -282px -1529px;
|
||||
width: 90px;
|
||||
height: 90px;
|
||||
}
|
||||
.weapon_wizard_5 {
|
||||
background-image: url('~assets/images/sprites/spritesmith-main-11.png');
|
||||
background-position: -464px -1529px;
|
||||
width: 90px;
|
||||
height: 90px;
|
||||
}
|
||||
.weapon_wizard_6 {
|
||||
background-image: url('~assets/images/sprites/spritesmith-main-11.png');
|
||||
background-position: -555px -1529px;
|
||||
width: 90px;
|
||||
height: 90px;
|
||||
}
|
||||
.Pet_Currency_Gem {
|
||||
background-image: url('~assets/images/sprites/spritesmith-main-11.png');
|
||||
background-position: -1913px -1062px;
|
||||
background-position: -276px -1629px;
|
||||
width: 68px;
|
||||
height: 68px;
|
||||
}
|
||||
.Pet_Currency_Gem1x {
|
||||
background-image: url('~assets/images/sprites/spritesmith-main-11.png');
|
||||
background-position: -1992px -592px;
|
||||
background-position: -1802px -735px;
|
||||
width: 15px;
|
||||
height: 13px;
|
||||
}
|
||||
.Pet_Currency_Gem2x {
|
||||
background-image: url('~assets/images/sprites/spritesmith-main-11.png');
|
||||
background-position: -1187px -1067px;
|
||||
background-position: -307px -407px;
|
||||
width: 30px;
|
||||
height: 26px;
|
||||
}
|
||||
.PixelPaw-Gold {
|
||||
background-image: url('~assets/images/sprites/spritesmith-main-11.png');
|
||||
background-position: -1929px -711px;
|
||||
background-position: -1791px -1529px;
|
||||
width: 51px;
|
||||
height: 51px;
|
||||
}
|
||||
.PixelPaw {
|
||||
background-image: url('~assets/images/sprites/spritesmith-main-11.png');
|
||||
background-position: -1765px -1444px;
|
||||
background-position: -479px -1629px;
|
||||
width: 51px;
|
||||
height: 51px;
|
||||
}
|
||||
.PixelPaw002 {
|
||||
background-image: url('~assets/images/sprites/spritesmith-main-11.png');
|
||||
background-position: -220px -276px;
|
||||
background-position: -531px -1629px;
|
||||
width: 51px;
|
||||
height: 51px;
|
||||
}
|
||||
.avatar_floral_healer {
|
||||
background-image: url('~assets/images/sprites/spritesmith-main-11.png');
|
||||
background-position: 0px -1529px;
|
||||
width: 99px;
|
||||
height: 99px;
|
||||
}
|
||||
.avatar_floral_rogue {
|
||||
background-image: url('~assets/images/sprites/spritesmith-main-11.png');
|
||||
background-position: -1449px -1315px;
|
||||
width: 99px;
|
||||
height: 99px;
|
||||
}
|
||||
.avatar_floral_warrior {
|
||||
background-image: url('~assets/images/sprites/spritesmith-main-11.png');
|
||||
background-position: -1249px -1315px;
|
||||
width: 99px;
|
||||
height: 99px;
|
||||
}
|
||||
.avatar_floral_wizard {
|
||||
background-image: url('~assets/images/sprites/spritesmith-main-11.png');
|
||||
background-position: -1349px -1315px;
|
||||
width: 99px;
|
||||
height: 99px;
|
||||
}
|
||||
.empty_bottles {
|
||||
background-image: url('~assets/images/sprites/spritesmith-main-11.png');
|
||||
background-position: -414px -1629px;
|
||||
width: 64px;
|
||||
height: 54px;
|
||||
}
|
||||
.ghost {
|
||||
background-image: url('~assets/images/sprites/spritesmith-main-11.png');
|
||||
background-position: -373px -1529px;
|
||||
width: 90px;
|
||||
height: 90px;
|
||||
}
|
||||
.inventory_present {
|
||||
background-image: url('~assets/images/sprites/spritesmith-main-11.png');
|
||||
background-position: -1844px -1269px;
|
||||
background-position: -1100px -944px;
|
||||
width: 68px;
|
||||
height: 68px;
|
||||
}
|
||||
.inventory_present_01 {
|
||||
background-image: url('~assets/images/sprites/spritesmith-main-11.png');
|
||||
background-position: -220px -341px;
|
||||
width: 68px;
|
||||
height: 68px;
|
||||
}
|
||||
.inventory_present_02 {
|
||||
background-image: url('~assets/images/sprites/spritesmith-main-11.png');
|
||||
background-position: -660px -435px;
|
||||
width: 68px;
|
||||
height: 68px;
|
||||
}
|
||||
.inventory_present_03 {
|
||||
background-image: url('~assets/images/sprites/spritesmith-main-11.png');
|
||||
background-position: -660px -504px;
|
||||
width: 68px;
|
||||
height: 68px;
|
||||
}
|
||||
.inventory_present_04 {
|
||||
background-image: url('~assets/images/sprites/spritesmith-main-11.png');
|
||||
background-position: -880px -655px;
|
||||
width: 68px;
|
||||
height: 68px;
|
||||
}
|
||||
.inventory_present_05 {
|
||||
background-image: url('~assets/images/sprites/spritesmith-main-11.png');
|
||||
background-position: -138px -1629px;
|
||||
width: 68px;
|
||||
height: 68px;
|
||||
}
|
||||
.inventory_present_06 {
|
||||
background-image: url('~assets/images/sprites/spritesmith-main-11.png');
|
||||
background-position: -207px -1629px;
|
||||
width: 68px;
|
||||
height: 68px;
|
||||
}
|
||||
.inventory_present_07 {
|
||||
background-image: url('~assets/images/sprites/spritesmith-main-11.png');
|
||||
background-position: -345px -1629px;
|
||||
width: 68px;
|
||||
height: 68px;
|
||||
}
|
||||
.inventory_present_08 {
|
||||
background-image: url('~assets/images/sprites/spritesmith-main-11.png');
|
||||
background-position: -1844px -1062px;
|
||||
background-position: -220px -272px;
|
||||
width: 68px;
|
||||
height: 68px;
|
||||
}
|
||||
.inventory_present_09 {
|
||||
background-image: url('~assets/images/sprites/spritesmith-main-11.png');
|
||||
background-position: -1844px -1545px;
|
||||
background-position: -660px -573px;
|
||||
width: 68px;
|
||||
height: 68px;
|
||||
}
|
||||
.inventory_present_10 {
|
||||
background-image: url('~assets/images/sprites/spritesmith-main-11.png');
|
||||
background-position: -1844px -1131px;
|
||||
background-position: -880px -724px;
|
||||
width: 68px;
|
||||
height: 68px;
|
||||
}
|
||||
.inventory_present_11 {
|
||||
background-image: url('~assets/images/sprites/spritesmith-main-11.png');
|
||||
background-position: -1913px -1131px;
|
||||
background-position: -880px -793px;
|
||||
width: 68px;
|
||||
height: 68px;
|
||||
}
|
||||
.inventory_present_12 {
|
||||
background-image: url('~assets/images/sprites/spritesmith-main-11.png');
|
||||
background-position: -1913px -1200px;
|
||||
background-position: -1100px -875px;
|
||||
width: 68px;
|
||||
height: 68px;
|
||||
}
|
||||
.inventory_special_birthday {
|
||||
background-image: url('~assets/images/sprites/spritesmith-main-11.png');
|
||||
background-position: -1913px -1269px;
|
||||
background-position: -1100px -1013px;
|
||||
width: 68px;
|
||||
height: 68px;
|
||||
}
|
||||
.inventory_special_congrats {
|
||||
background-image: url('~assets/images/sprites/spritesmith-main-11.png');
|
||||
background-position: -1913px -1338px;
|
||||
background-position: -1320px -1095px;
|
||||
width: 68px;
|
||||
height: 68px;
|
||||
}
|
||||
.inventory_special_fortify {
|
||||
background-image: url('~assets/images/sprites/spritesmith-main-11.png');
|
||||
background-position: -1913px -1407px;
|
||||
background-position: -1320px -1164px;
|
||||
width: 68px;
|
||||
height: 68px;
|
||||
}
|
||||
.inventory_special_getwell {
|
||||
background-image: url('~assets/images/sprites/spritesmith-main-11.png');
|
||||
background-position: -1844px -1476px;
|
||||
background-position: -1320px -1233px;
|
||||
width: 68px;
|
||||
height: 68px;
|
||||
}
|
||||
.inventory_special_goodluck {
|
||||
background-image: url('~assets/images/sprites/spritesmith-main-11.png');
|
||||
background-position: -1913px -1476px;
|
||||
background-position: -1549px -1315px;
|
||||
width: 68px;
|
||||
height: 68px;
|
||||
}
|
||||
.inventory_special_greeting {
|
||||
background-image: url('~assets/images/sprites/spritesmith-main-11.png');
|
||||
background-position: -1913px -1545px;
|
||||
background-position: -1101px -1529px;
|
||||
width: 68px;
|
||||
height: 68px;
|
||||
}
|
||||
.inventory_special_nye {
|
||||
background-image: url('~assets/images/sprites/spritesmith-main-11.png');
|
||||
background-position: -1844px -1614px;
|
||||
background-position: -1170px -1529px;
|
||||
width: 68px;
|
||||
height: 68px;
|
||||
}
|
||||
.inventory_special_opaquePotion {
|
||||
background-image: url('~assets/images/sprites/spritesmith-main-11.png');
|
||||
background-position: -1913px -1614px;
|
||||
background-position: -1239px -1529px;
|
||||
width: 68px;
|
||||
height: 68px;
|
||||
}
|
||||
.inventory_special_seafoam {
|
||||
background-image: url('~assets/images/sprites/spritesmith-main-11.png');
|
||||
background-position: -1627px -1444px;
|
||||
background-position: -1308px -1529px;
|
||||
width: 68px;
|
||||
height: 68px;
|
||||
}
|
||||
.inventory_special_shinySeed {
|
||||
background-image: url('~assets/images/sprites/spritesmith-main-11.png');
|
||||
background-position: -1696px -1444px;
|
||||
background-position: -1377px -1529px;
|
||||
width: 68px;
|
||||
height: 68px;
|
||||
}
|
||||
.inventory_special_snowball {
|
||||
background-image: url('~assets/images/sprites/spritesmith-main-11.png');
|
||||
background-position: -1929px -642px;
|
||||
background-position: -1584px -1529px;
|
||||
width: 68px;
|
||||
height: 68px;
|
||||
}
|
||||
.inventory_special_spookySparkles {
|
||||
background-image: url('~assets/images/sprites/spritesmith-main-11.png');
|
||||
background-position: -1935px -763px;
|
||||
background-position: -1653px -1529px;
|
||||
width: 68px;
|
||||
height: 68px;
|
||||
}
|
||||
.inventory_special_thankyou {
|
||||
background-image: url('~assets/images/sprites/spritesmith-main-11.png');
|
||||
background-position: -1935px -854px;
|
||||
background-position: -1722px -1529px;
|
||||
width: 68px;
|
||||
height: 68px;
|
||||
}
|
||||
.inventory_special_trinket {
|
||||
background-image: url('~assets/images/sprites/spritesmith-main-11.png');
|
||||
background-position: -1844px -993px;
|
||||
background-position: 0px -1629px;
|
||||
width: 68px;
|
||||
height: 68px;
|
||||
}
|
||||
.inventory_special_valentine {
|
||||
background-image: url('~assets/images/sprites/spritesmith-main-11.png');
|
||||
background-position: -1913px -993px;
|
||||
background-position: -69px -1629px;
|
||||
width: 68px;
|
||||
height: 68px;
|
||||
}
|
||||
.knockout {
|
||||
background-image: url('~assets/images/sprites/spritesmith-main-11.png');
|
||||
background-position: -1844px -945px;
|
||||
background-position: -1249px -1415px;
|
||||
width: 120px;
|
||||
height: 47px;
|
||||
}
|
||||
.pet_key {
|
||||
background-image: url('~assets/images/sprites/spritesmith-main-11.png');
|
||||
background-position: -1844px -1200px;
|
||||
background-position: -220px -203px;
|
||||
width: 68px;
|
||||
height: 68px;
|
||||
}
|
||||
.rebirth_orb {
|
||||
background-image: url('~assets/images/sprites/spritesmith-main-11.png');
|
||||
background-position: -1844px -1338px;
|
||||
background-position: -1515px -1529px;
|
||||
width: 68px;
|
||||
height: 68px;
|
||||
}
|
||||
.seafoam_star {
|
||||
background-image: url('~assets/images/sprites/spritesmith-main-11.png');
|
||||
background-position: -1844px -854px;
|
||||
background-position: -1010px -1529px;
|
||||
width: 90px;
|
||||
height: 90px;
|
||||
}
|
||||
.shop_armoire {
|
||||
background-image: url('~assets/images/sprites/spritesmith-main-11.png');
|
||||
background-position: -1844px -1407px;
|
||||
background-position: -1446px -1529px;
|
||||
width: 68px;
|
||||
height: 68px;
|
||||
}
|
||||
.snowman {
|
||||
background-image: url('~assets/images/sprites/spritesmith-main-11.png');
|
||||
background-position: -1844px -763px;
|
||||
background-position: -191px -1529px;
|
||||
width: 90px;
|
||||
height: 90px;
|
||||
}
|
||||
.zzz {
|
||||
background-image: url('~assets/images/sprites/spritesmith-main-11.png');
|
||||
background-position: -1963px -551px;
|
||||
background-position: -1802px -578px;
|
||||
width: 40px;
|
||||
height: 40px;
|
||||
}
|
||||
.zzz_light {
|
||||
background-image: url('~assets/images/sprites/spritesmith-main-11.png');
|
||||
background-position: -1963px -510px;
|
||||
background-position: -1802px -537px;
|
||||
width: 40px;
|
||||
height: 40px;
|
||||
}
|
||||
.notif_inventory_present_01 {
|
||||
background-image: url('~assets/images/sprites/spritesmith-main-11.png');
|
||||
background-position: -1960px -1683px;
|
||||
background-position: -1793px -925px;
|
||||
width: 28px;
|
||||
height: 28px;
|
||||
}
|
||||
.notif_inventory_present_02 {
|
||||
background-image: url('~assets/images/sprites/spritesmith-main-11.png');
|
||||
background-position: -1054px -841px;
|
||||
background-position: -1549px -1384px;
|
||||
width: 28px;
|
||||
height: 28px;
|
||||
}
|
||||
.notif_inventory_present_03 {
|
||||
background-image: url('~assets/images/sprites/spritesmith-main-11.png');
|
||||
background-position: -1963px -592px;
|
||||
background-position: -1802px -619px;
|
||||
width: 28px;
|
||||
height: 28px;
|
||||
}
|
||||
.notif_inventory_present_04 {
|
||||
background-image: url('~assets/images/sprites/spritesmith-main-11.png');
|
||||
background-position: -1025px -841px;
|
||||
background-position: -1802px -648px;
|
||||
width: 28px;
|
||||
height: 28px;
|
||||
}
|
||||
.notif_inventory_present_05 {
|
||||
background-image: url('~assets/images/sprites/spritesmith-main-11.png');
|
||||
background-position: -996px -841px;
|
||||
background-position: -1802px -677px;
|
||||
width: 28px;
|
||||
height: 28px;
|
||||
}
|
||||
.notif_inventory_present_06 {
|
||||
background-image: url('~assets/images/sprites/spritesmith-main-11.png');
|
||||
background-position: -967px -841px;
|
||||
background-position: -1802px -706px;
|
||||
width: 28px;
|
||||
height: 28px;
|
||||
}
|
||||
.notif_inventory_present_07 {
|
||||
background-image: url('~assets/images/sprites/spritesmith-main-11.png');
|
||||
background-position: -1981px -711px;
|
||||
background-position: -1793px -751px;
|
||||
width: 28px;
|
||||
height: 28px;
|
||||
}
|
||||
.notif_inventory_present_08 {
|
||||
background-image: url('~assets/images/sprites/spritesmith-main-11.png');
|
||||
background-position: -1931px -1683px;
|
||||
background-position: -1793px -780px;
|
||||
width: 28px;
|
||||
height: 28px;
|
||||
}
|
||||
.notif_inventory_present_09 {
|
||||
background-image: url('~assets/images/sprites/spritesmith-main-11.png');
|
||||
background-position: -1902px -1683px;
|
||||
background-position: -1793px -809px;
|
||||
width: 28px;
|
||||
height: 28px;
|
||||
}
|
||||
.notif_inventory_present_10 {
|
||||
background-image: url('~assets/images/sprites/spritesmith-main-11.png');
|
||||
background-position: -1873px -1683px;
|
||||
background-position: -1793px -838px;
|
||||
width: 28px;
|
||||
height: 28px;
|
||||
}
|
||||
.notif_inventory_present_11 {
|
||||
background-image: url('~assets/images/sprites/spritesmith-main-11.png');
|
||||
background-position: -1844px -1683px;
|
||||
background-position: -1793px -867px;
|
||||
width: 28px;
|
||||
height: 28px;
|
||||
}
|
||||
.notif_inventory_present_12 {
|
||||
background-image: url('~assets/images/sprites/spritesmith-main-11.png');
|
||||
background-position: -1965px -945px;
|
||||
background-position: -1793px -896px;
|
||||
width: 28px;
|
||||
height: 28px;
|
||||
}
|
||||
.notif_inventory_special_birthday {
|
||||
background-image: url('~assets/images/sprites/spritesmith-main-11.png');
|
||||
background-position: -1982px -1062px;
|
||||
background-position: -1822px -838px;
|
||||
width: 20px;
|
||||
height: 24px;
|
||||
}
|
||||
.notif_inventory_special_congrats {
|
||||
background-image: url('~assets/images/sprites/spritesmith-main-11.png');
|
||||
background-position: -1982px -1200px;
|
||||
background-position: -1822px -867px;
|
||||
width: 20px;
|
||||
height: 22px;
|
||||
}
|
||||
.notif_inventory_special_getwell {
|
||||
background-image: url('~assets/images/sprites/spritesmith-main-11.png');
|
||||
background-position: -1981px -740px;
|
||||
background-position: -1822px -896px;
|
||||
width: 20px;
|
||||
height: 22px;
|
||||
}
|
||||
.notif_inventory_special_goodluck {
|
||||
background-image: url('~assets/images/sprites/spritesmith-main-11.png');
|
||||
background-position: -1982px -1020px;
|
||||
background-position: -1822px -751px;
|
||||
width: 20px;
|
||||
height: 26px;
|
||||
}
|
||||
.notif_inventory_special_greeting {
|
||||
background-image: url('~assets/images/sprites/spritesmith-main-11.png');
|
||||
background-position: -1982px -1156px;
|
||||
background-position: -1822px -925px;
|
||||
width: 20px;
|
||||
height: 22px;
|
||||
}
|
||||
.notif_inventory_special_nye {
|
||||
background-image: url('~assets/images/sprites/spritesmith-main-11.png');
|
||||
background-position: -1982px -993px;
|
||||
background-position: -1817px -1237px;
|
||||
width: 24px;
|
||||
height: 26px;
|
||||
}
|
||||
.notif_inventory_special_thankyou {
|
||||
background-image: url('~assets/images/sprites/spritesmith-main-11.png');
|
||||
background-position: -1982px -1131px;
|
||||
background-position: -1822px -780px;
|
||||
width: 20px;
|
||||
height: 24px;
|
||||
}
|
||||
.notif_inventory_special_valentine {
|
||||
background-image: url('~assets/images/sprites/spritesmith-main-11.png');
|
||||
background-position: -1982px -1087px;
|
||||
background-position: -1822px -809px;
|
||||
width: 20px;
|
||||
height: 24px;
|
||||
}
|
||||
.npc_bailey {
|
||||
background-image: url('~assets/images/sprites/spritesmith-main-11.png');
|
||||
background-position: -220px -203px;
|
||||
background-position: 0px -1698px;
|
||||
width: 60px;
|
||||
height: 72px;
|
||||
}
|
||||
.npc_justin {
|
||||
background-image: url('~assets/images/sprites/spritesmith-main-11.png');
|
||||
background-position: -1844px -642px;
|
||||
background-position: -1746px -1379px;
|
||||
width: 84px;
|
||||
height: 120px;
|
||||
}
|
||||
.npc_matt {
|
||||
background-image: url('~assets/images/sprites/spritesmith-main-11.png');
|
||||
background-position: -1155px -1315px;
|
||||
background-position: -1627px -1098px;
|
||||
width: 195px;
|
||||
height: 138px;
|
||||
}
|
||||
@@ -354,109 +480,109 @@
|
||||
}
|
||||
.banner_flair_dysheartener {
|
||||
background-image: url('~assets/images/sprites/spritesmith-main-11.png');
|
||||
background-position: -1935px -832px;
|
||||
background-position: -747px -627px;
|
||||
width: 69px;
|
||||
height: 18px;
|
||||
}
|
||||
.phobia_dysheartener {
|
||||
background-image: url('~assets/images/sprites/spritesmith-main-11.png');
|
||||
background-position: -1627px -1061px;
|
||||
background-position: -527px -220px;
|
||||
width: 201px;
|
||||
height: 195px;
|
||||
}
|
||||
.quest_alligator {
|
||||
background-image: url('~assets/images/sprites/spritesmith-main-11.png');
|
||||
background-position: -1627px -645px;
|
||||
background-position: -1187px -880px;
|
||||
width: 201px;
|
||||
height: 213px;
|
||||
}
|
||||
.quest_armadillo {
|
||||
background-image: url('~assets/images/sprites/spritesmith-main-11.png');
|
||||
background-position: -1407px -440px;
|
||||
background-position: -220px -1095px;
|
||||
width: 219px;
|
||||
height: 219px;
|
||||
}
|
||||
.quest_atom1 {
|
||||
background-image: url('~assets/images/sprites/spritesmith-main-11.png');
|
||||
background-position: -445px -1315px;
|
||||
background-position: -696px -1315px;
|
||||
width: 250px;
|
||||
height: 150px;
|
||||
}
|
||||
.quest_atom2 {
|
||||
background-image: url('~assets/images/sprites/spritesmith-main-11.png');
|
||||
background-position: -947px -1315px;
|
||||
background-position: -1627px -959px;
|
||||
width: 207px;
|
||||
height: 138px;
|
||||
}
|
||||
.quest_atom3 {
|
||||
background-image: url('~assets/images/sprites/spritesmith-main-11.png');
|
||||
background-position: -967px -660px;
|
||||
background-position: -1627px 0px;
|
||||
width: 216px;
|
||||
height: 180px;
|
||||
}
|
||||
.quest_axolotl {
|
||||
background-image: url('~assets/images/sprites/spritesmith-main-11.png');
|
||||
background-position: -1100px -1095px;
|
||||
background-position: -527px 0px;
|
||||
width: 219px;
|
||||
height: 219px;
|
||||
}
|
||||
.quest_badger {
|
||||
background-image: url('~assets/images/sprites/spritesmith-main-11.png');
|
||||
background-position: -440px -435px;
|
||||
background-position: -220px -435px;
|
||||
width: 219px;
|
||||
height: 219px;
|
||||
}
|
||||
.quest_basilist {
|
||||
background-image: url('~assets/images/sprites/spritesmith-main-11.png');
|
||||
background-position: -191px -1529px;
|
||||
background-position: -1627px -1237px;
|
||||
width: 189px;
|
||||
height: 141px;
|
||||
}
|
||||
.quest_beetle {
|
||||
background-image: url('~assets/images/sprites/spritesmith-main-11.png');
|
||||
background-position: -1627px -859px;
|
||||
background-position: -967px -660px;
|
||||
width: 204px;
|
||||
height: 201px;
|
||||
}
|
||||
.quest_bunny {
|
||||
background-image: url('~assets/images/sprites/spritesmith-main-11.png');
|
||||
background-position: -1627px -1257px;
|
||||
background-position: -307px -220px;
|
||||
width: 210px;
|
||||
height: 186px;
|
||||
}
|
||||
.quest_butterfly {
|
||||
background-image: url('~assets/images/sprites/spritesmith-main-11.png');
|
||||
background-position: -1407px -220px;
|
||||
background-position: -967px -220px;
|
||||
width: 219px;
|
||||
height: 219px;
|
||||
}
|
||||
.quest_cheetah {
|
||||
background-image: url('~assets/images/sprites/spritesmith-main-11.png');
|
||||
background-position: -1407px 0px;
|
||||
background-position: -440px -875px;
|
||||
width: 219px;
|
||||
height: 219px;
|
||||
}
|
||||
.quest_cow {
|
||||
background-image: url('~assets/images/sprites/spritesmith-main-11.png');
|
||||
background-position: -307px -220px;
|
||||
background-position: -1627px -537px;
|
||||
width: 174px;
|
||||
height: 213px;
|
||||
}
|
||||
.quest_dilatory {
|
||||
background-image: url('~assets/images/sprites/spritesmith-main-11.png');
|
||||
background-position: -660px -1095px;
|
||||
background-position: 0px -1095px;
|
||||
width: 219px;
|
||||
height: 219px;
|
||||
}
|
||||
.quest_dilatoryDistress1 {
|
||||
background-image: url('~assets/images/sprites/spritesmith-main-11.png');
|
||||
background-position: -1627px -434px;
|
||||
background-position: -1407px -1091px;
|
||||
width: 210px;
|
||||
height: 210px;
|
||||
}
|
||||
.quest_dilatoryDistress2 {
|
||||
background-image: url('~assets/images/sprites/spritesmith-main-11.png');
|
||||
background-position: -1844px -359px;
|
||||
background-position: -947px -1315px;
|
||||
width: 150px;
|
||||
height: 150px;
|
||||
}
|
||||
@@ -468,43 +594,43 @@
|
||||
}
|
||||
.quest_dilatory_derby {
|
||||
background-image: url('~assets/images/sprites/spritesmith-main-11.png');
|
||||
background-position: -880px -1095px;
|
||||
background-position: -1187px -220px;
|
||||
width: 219px;
|
||||
height: 219px;
|
||||
}
|
||||
.quest_dustbunnies {
|
||||
background-image: url('~assets/images/sprites/spritesmith-main-11.png');
|
||||
background-position: -1187px -660px;
|
||||
background-position: -660px -1095px;
|
||||
width: 219px;
|
||||
height: 219px;
|
||||
}
|
||||
.quest_egg {
|
||||
background-image: url('~assets/images/sprites/spritesmith-main-11.png');
|
||||
background-position: -1844px 0px;
|
||||
background-position: -1627px -751px;
|
||||
width: 165px;
|
||||
height: 207px;
|
||||
}
|
||||
.quest_evilsanta {
|
||||
background-image: url('~assets/images/sprites/spritesmith-main-11.png');
|
||||
background-position: -1844px -510px;
|
||||
background-position: -1627px -1379px;
|
||||
width: 118px;
|
||||
height: 131px;
|
||||
}
|
||||
.quest_evilsanta2 {
|
||||
background-image: url('~assets/images/sprites/spritesmith-main-11.png');
|
||||
background-position: -880px -875px;
|
||||
background-position: -1407px -220px;
|
||||
width: 219px;
|
||||
height: 219px;
|
||||
}
|
||||
.quest_falcon {
|
||||
background-image: url('~assets/images/sprites/spritesmith-main-11.png');
|
||||
background-position: 0px -875px;
|
||||
background-position: -1100px -1095px;
|
||||
width: 219px;
|
||||
height: 219px;
|
||||
}
|
||||
.quest_ferret {
|
||||
background-image: url('~assets/images/sprites/spritesmith-main-11.png');
|
||||
background-position: -747px 0px;
|
||||
background-position: -1407px 0px;
|
||||
width: 219px;
|
||||
height: 219px;
|
||||
}
|
||||
@@ -516,19 +642,19 @@
|
||||
}
|
||||
.quest_ghost_stag {
|
||||
background-image: url('~assets/images/sprites/spritesmith-main-11.png');
|
||||
background-position: -220px -435px;
|
||||
background-position: -880px -1095px;
|
||||
width: 219px;
|
||||
height: 219px;
|
||||
}
|
||||
.quest_goldenknight1 {
|
||||
background-image: url('~assets/images/sprites/spritesmith-main-11.png');
|
||||
background-position: -527px 0px;
|
||||
background-position: -220px -875px;
|
||||
width: 219px;
|
||||
height: 219px;
|
||||
}
|
||||
.quest_goldenknight2 {
|
||||
background-image: url('~assets/images/sprites/spritesmith-main-11.png');
|
||||
background-position: -696px -1315px;
|
||||
background-position: -445px -1315px;
|
||||
width: 250px;
|
||||
height: 150px;
|
||||
}
|
||||
@@ -540,133 +666,133 @@
|
||||
}
|
||||
.quest_gryphon {
|
||||
background-image: url('~assets/images/sprites/spritesmith-main-11.png');
|
||||
background-position: -747px -440px;
|
||||
background-position: -1627px -359px;
|
||||
width: 216px;
|
||||
height: 177px;
|
||||
}
|
||||
.quest_guineapig {
|
||||
background-image: url('~assets/images/sprites/spritesmith-main-11.png');
|
||||
background-position: -220px -1095px;
|
||||
background-position: -1187px -660px;
|
||||
width: 219px;
|
||||
height: 219px;
|
||||
}
|
||||
.quest_harpy {
|
||||
background-image: url('~assets/images/sprites/spritesmith-main-11.png');
|
||||
background-position: 0px -1095px;
|
||||
background-position: -1187px -440px;
|
||||
width: 219px;
|
||||
height: 219px;
|
||||
}
|
||||
.quest_hedgehog {
|
||||
background-image: url('~assets/images/sprites/spritesmith-main-11.png');
|
||||
background-position: -1187px -880px;
|
||||
background-position: -747px -440px;
|
||||
width: 219px;
|
||||
height: 186px;
|
||||
}
|
||||
.quest_hippo {
|
||||
background-image: url('~assets/images/sprites/spritesmith-main-11.png');
|
||||
background-position: -1187px -440px;
|
||||
background-position: -1187px 0px;
|
||||
width: 219px;
|
||||
height: 219px;
|
||||
}
|
||||
.quest_horse {
|
||||
background-image: url('~assets/images/sprites/spritesmith-main-11.png');
|
||||
background-position: -1187px -220px;
|
||||
background-position: -880px -875px;
|
||||
width: 219px;
|
||||
height: 219px;
|
||||
}
|
||||
.quest_kangaroo {
|
||||
background-image: url('~assets/images/sprites/spritesmith-main-11.png');
|
||||
background-position: -1187px 0px;
|
||||
background-position: -660px -875px;
|
||||
width: 219px;
|
||||
height: 219px;
|
||||
}
|
||||
.quest_kraken {
|
||||
background-image: url('~assets/images/sprites/spritesmith-main-11.png');
|
||||
background-position: -527px -220px;
|
||||
background-position: -1627px -181px;
|
||||
width: 216px;
|
||||
height: 177px;
|
||||
}
|
||||
.quest_lostMasterclasser1 {
|
||||
background-image: url('~assets/images/sprites/spritesmith-main-11.png');
|
||||
background-position: -660px -875px;
|
||||
background-position: -307px 0px;
|
||||
width: 219px;
|
||||
height: 219px;
|
||||
}
|
||||
.quest_lostMasterclasser2 {
|
||||
background-image: url('~assets/images/sprites/spritesmith-main-11.png');
|
||||
background-position: -1407px -660px;
|
||||
background-position: 0px -875px;
|
||||
width: 219px;
|
||||
height: 219px;
|
||||
}
|
||||
.quest_lostMasterclasser3 {
|
||||
background-image: url('~assets/images/sprites/spritesmith-main-11.png');
|
||||
background-position: -220px -875px;
|
||||
background-position: -967px -440px;
|
||||
width: 219px;
|
||||
height: 219px;
|
||||
}
|
||||
.quest_mayhemMistiflying1 {
|
||||
background-image: url('~assets/images/sprites/spritesmith-main-11.png');
|
||||
background-position: -1844px -208px;
|
||||
background-position: -1098px -1315px;
|
||||
width: 150px;
|
||||
height: 150px;
|
||||
}
|
||||
.quest_mayhemMistiflying2 {
|
||||
background-image: url('~assets/images/sprites/spritesmith-main-11.png');
|
||||
background-position: -967px -440px;
|
||||
background-position: -967px 0px;
|
||||
width: 219px;
|
||||
height: 219px;
|
||||
}
|
||||
.quest_mayhemMistiflying3 {
|
||||
background-image: url('~assets/images/sprites/spritesmith-main-11.png');
|
||||
background-position: -967px -220px;
|
||||
background-position: -660px -655px;
|
||||
width: 219px;
|
||||
height: 219px;
|
||||
}
|
||||
.quest_monkey {
|
||||
background-image: url('~assets/images/sprites/spritesmith-main-11.png');
|
||||
background-position: -967px 0px;
|
||||
background-position: -440px -655px;
|
||||
width: 219px;
|
||||
height: 219px;
|
||||
}
|
||||
.quest_moon1 {
|
||||
background-image: url('~assets/images/sprites/spritesmith-main-11.png');
|
||||
background-position: -1407px -880px;
|
||||
background-position: -1407px -440px;
|
||||
width: 216px;
|
||||
height: 216px;
|
||||
}
|
||||
.quest_moon2 {
|
||||
background-image: url('~assets/images/sprites/spritesmith-main-11.png');
|
||||
background-position: -660px -655px;
|
||||
background-position: -220px -655px;
|
||||
width: 219px;
|
||||
height: 219px;
|
||||
}
|
||||
.quest_moon3 {
|
||||
background-image: url('~assets/images/sprites/spritesmith-main-11.png');
|
||||
background-position: -440px -655px;
|
||||
background-position: 0px -655px;
|
||||
width: 219px;
|
||||
height: 219px;
|
||||
}
|
||||
.quest_moonstone1 {
|
||||
background-image: url('~assets/images/sprites/spritesmith-main-11.png');
|
||||
background-position: -220px -655px;
|
||||
background-position: -747px -220px;
|
||||
width: 219px;
|
||||
height: 219px;
|
||||
}
|
||||
.quest_moonstone2 {
|
||||
background-image: url('~assets/images/sprites/spritesmith-main-11.png');
|
||||
background-position: 0px -655px;
|
||||
background-position: -747px 0px;
|
||||
width: 219px;
|
||||
height: 219px;
|
||||
}
|
||||
.quest_moonstone3 {
|
||||
background-image: url('~assets/images/sprites/spritesmith-main-11.png');
|
||||
background-position: -747px -220px;
|
||||
background-position: -440px -435px;
|
||||
width: 219px;
|
||||
height: 219px;
|
||||
}
|
||||
.quest_nudibranch {
|
||||
background-image: url('~assets/images/sprites/spritesmith-main-11.png');
|
||||
background-position: -1407px -1097px;
|
||||
background-position: -1407px -657px;
|
||||
width: 216px;
|
||||
height: 216px;
|
||||
}
|
||||
@@ -684,31 +810,7 @@
|
||||
}
|
||||
.quest_peacock {
|
||||
background-image: url('~assets/images/sprites/spritesmith-main-11.png');
|
||||
background-position: -1627px -217px;
|
||||
width: 216px;
|
||||
height: 216px;
|
||||
}
|
||||
.quest_penguin {
|
||||
background-image: url('~assets/images/sprites/spritesmith-main-11.png');
|
||||
background-position: 0px -1529px;
|
||||
width: 190px;
|
||||
height: 183px;
|
||||
}
|
||||
.quest_pterodactyl {
|
||||
background-image: url('~assets/images/sprites/spritesmith-main-11.png');
|
||||
background-position: -307px 0px;
|
||||
width: 219px;
|
||||
height: 219px;
|
||||
}
|
||||
.quest_rat {
|
||||
background-image: url('~assets/images/sprites/spritesmith-main-11.png');
|
||||
background-position: -440px -875px;
|
||||
width: 219px;
|
||||
height: 219px;
|
||||
}
|
||||
.quest_rock {
|
||||
background-image: url('~assets/images/sprites/spritesmith-main-11.png');
|
||||
background-position: -1627px 0px;
|
||||
background-position: -1407px -874px;
|
||||
width: 216px;
|
||||
height: 216px;
|
||||
}
|
||||
|
||||
@@ -1,390 +1,510 @@
|
||||
.Pet-Wolf-Desert {
|
||||
.Pet-Velociraptor-Red {
|
||||
background-image: url('~assets/images/sprites/spritesmith-main-24.png');
|
||||
background-position: -82px 0px;
|
||||
width: 81px;
|
||||
height: 99px;
|
||||
}
|
||||
.Pet-Wolf-Ember {
|
||||
.Pet-Velociraptor-Shade {
|
||||
background-image: url('~assets/images/sprites/spritesmith-main-24.png');
|
||||
background-position: -328px -400px;
|
||||
background-position: -164px -500px;
|
||||
width: 81px;
|
||||
height: 99px;
|
||||
}
|
||||
.Pet-Wolf-Fairy {
|
||||
.Pet-Velociraptor-Skeleton {
|
||||
background-image: url('~assets/images/sprites/spritesmith-main-24.png');
|
||||
background-position: -164px 0px;
|
||||
width: 81px;
|
||||
height: 99px;
|
||||
}
|
||||
.Pet-Wolf-Floral {
|
||||
.Pet-Velociraptor-White {
|
||||
background-image: url('~assets/images/sprites/spritesmith-main-24.png');
|
||||
background-position: 0px -100px;
|
||||
width: 81px;
|
||||
height: 99px;
|
||||
}
|
||||
.Pet-Wolf-Frost {
|
||||
.Pet-Velociraptor-Zombie {
|
||||
background-image: url('~assets/images/sprites/spritesmith-main-24.png');
|
||||
background-position: -82px -100px;
|
||||
width: 81px;
|
||||
height: 99px;
|
||||
}
|
||||
.Pet-Wolf-Ghost {
|
||||
.Pet-Whale-Base {
|
||||
background-image: url('~assets/images/sprites/spritesmith-main-24.png');
|
||||
background-position: -164px -100px;
|
||||
width: 81px;
|
||||
height: 99px;
|
||||
}
|
||||
.Pet-Wolf-Glass {
|
||||
.Pet-Whale-CottonCandyBlue {
|
||||
background-image: url('~assets/images/sprites/spritesmith-main-24.png');
|
||||
background-position: -246px 0px;
|
||||
width: 81px;
|
||||
height: 99px;
|
||||
}
|
||||
.Pet-Wolf-Glow {
|
||||
.Pet-Whale-CottonCandyPink {
|
||||
background-image: url('~assets/images/sprites/spritesmith-main-24.png');
|
||||
background-position: -246px -100px;
|
||||
width: 81px;
|
||||
height: 99px;
|
||||
}
|
||||
.Pet-Wolf-Golden {
|
||||
.Pet-Whale-Desert {
|
||||
background-image: url('~assets/images/sprites/spritesmith-main-24.png');
|
||||
background-position: 0px -200px;
|
||||
width: 81px;
|
||||
height: 99px;
|
||||
}
|
||||
.Pet-Wolf-Holly {
|
||||
.Pet-Whale-Golden {
|
||||
background-image: url('~assets/images/sprites/spritesmith-main-24.png');
|
||||
background-position: -82px -200px;
|
||||
width: 81px;
|
||||
height: 99px;
|
||||
}
|
||||
.Pet-Wolf-IcySnow {
|
||||
.Pet-Whale-Red {
|
||||
background-image: url('~assets/images/sprites/spritesmith-main-24.png');
|
||||
background-position: -164px -200px;
|
||||
width: 81px;
|
||||
height: 99px;
|
||||
}
|
||||
.Pet-Wolf-Peppermint {
|
||||
.Pet-Whale-Shade {
|
||||
background-image: url('~assets/images/sprites/spritesmith-main-24.png');
|
||||
background-position: -246px -200px;
|
||||
width: 81px;
|
||||
height: 99px;
|
||||
}
|
||||
.Pet-Wolf-Rainbow {
|
||||
.Pet-Whale-Skeleton {
|
||||
background-image: url('~assets/images/sprites/spritesmith-main-24.png');
|
||||
background-position: -328px 0px;
|
||||
width: 81px;
|
||||
height: 99px;
|
||||
}
|
||||
.Pet-Wolf-Red {
|
||||
.Pet-Whale-White {
|
||||
background-image: url('~assets/images/sprites/spritesmith-main-24.png');
|
||||
background-position: -328px -100px;
|
||||
width: 81px;
|
||||
height: 99px;
|
||||
}
|
||||
.Pet-Wolf-RoseQuartz {
|
||||
.Pet-Whale-Zombie {
|
||||
background-image: url('~assets/images/sprites/spritesmith-main-24.png');
|
||||
background-position: -328px -200px;
|
||||
width: 81px;
|
||||
height: 99px;
|
||||
}
|
||||
.Pet-Wolf-RoyalPurple {
|
||||
.Pet-Wolf-Aquatic {
|
||||
background-image: url('~assets/images/sprites/spritesmith-main-24.png');
|
||||
background-position: 0px -300px;
|
||||
width: 81px;
|
||||
height: 99px;
|
||||
}
|
||||
.Pet-Wolf-Shade {
|
||||
.Pet-Wolf-Base {
|
||||
background-image: url('~assets/images/sprites/spritesmith-main-24.png');
|
||||
background-position: -82px -300px;
|
||||
width: 81px;
|
||||
height: 99px;
|
||||
}
|
||||
.Pet-Wolf-Shimmer {
|
||||
.Pet-Wolf-CottonCandyBlue {
|
||||
background-image: url('~assets/images/sprites/spritesmith-main-24.png');
|
||||
background-position: -164px -300px;
|
||||
width: 81px;
|
||||
height: 99px;
|
||||
}
|
||||
.Pet-Wolf-Skeleton {
|
||||
.Pet-Wolf-CottonCandyPink {
|
||||
background-image: url('~assets/images/sprites/spritesmith-main-24.png');
|
||||
background-position: -246px -300px;
|
||||
width: 81px;
|
||||
height: 99px;
|
||||
}
|
||||
.Pet-Wolf-Spooky {
|
||||
.Pet-Wolf-Cupid {
|
||||
background-image: url('~assets/images/sprites/spritesmith-main-24.png');
|
||||
background-position: -328px -300px;
|
||||
width: 81px;
|
||||
height: 99px;
|
||||
}
|
||||
.Pet-Wolf-StarryNight {
|
||||
.Pet-Wolf-Desert {
|
||||
background-image: url('~assets/images/sprites/spritesmith-main-24.png');
|
||||
background-position: -410px 0px;
|
||||
width: 81px;
|
||||
height: 99px;
|
||||
}
|
||||
.Pet-Wolf-Thunderstorm {
|
||||
.Pet-Wolf-Ember {
|
||||
background-image: url('~assets/images/sprites/spritesmith-main-24.png');
|
||||
background-position: -410px -100px;
|
||||
width: 81px;
|
||||
height: 99px;
|
||||
}
|
||||
.Pet-Wolf-Veteran {
|
||||
.Pet-Wolf-Fairy {
|
||||
background-image: url('~assets/images/sprites/spritesmith-main-24.png');
|
||||
background-position: -410px -200px;
|
||||
width: 81px;
|
||||
height: 99px;
|
||||
}
|
||||
.Pet-Wolf-White {
|
||||
.Pet-Wolf-Floral {
|
||||
background-image: url('~assets/images/sprites/spritesmith-main-24.png');
|
||||
background-position: -410px -300px;
|
||||
width: 81px;
|
||||
height: 99px;
|
||||
}
|
||||
.Pet-Wolf-Zombie {
|
||||
.Pet-Wolf-Frost {
|
||||
background-image: url('~assets/images/sprites/spritesmith-main-24.png');
|
||||
background-position: -492px 0px;
|
||||
width: 81px;
|
||||
height: 99px;
|
||||
}
|
||||
.Pet-Yarn-Base {
|
||||
.Pet-Wolf-Ghost {
|
||||
background-image: url('~assets/images/sprites/spritesmith-main-24.png');
|
||||
background-position: -492px -100px;
|
||||
width: 81px;
|
||||
height: 99px;
|
||||
}
|
||||
.Pet-Yarn-CottonCandyBlue {
|
||||
.Pet-Wolf-Glass {
|
||||
background-image: url('~assets/images/sprites/spritesmith-main-24.png');
|
||||
background-position: -492px -200px;
|
||||
width: 81px;
|
||||
height: 99px;
|
||||
}
|
||||
.Pet-Yarn-CottonCandyPink {
|
||||
.Pet-Wolf-Glow {
|
||||
background-image: url('~assets/images/sprites/spritesmith-main-24.png');
|
||||
background-position: -492px -300px;
|
||||
width: 81px;
|
||||
height: 99px;
|
||||
}
|
||||
.Pet-Yarn-Desert {
|
||||
.Pet-Wolf-Golden {
|
||||
background-image: url('~assets/images/sprites/spritesmith-main-24.png');
|
||||
background-position: 0px -400px;
|
||||
width: 81px;
|
||||
height: 99px;
|
||||
}
|
||||
.Pet-Yarn-Golden {
|
||||
.Pet-Wolf-Holly {
|
||||
background-image: url('~assets/images/sprites/spritesmith-main-24.png');
|
||||
background-position: -82px -400px;
|
||||
width: 81px;
|
||||
height: 99px;
|
||||
}
|
||||
.Pet-Yarn-Red {
|
||||
.Pet-Wolf-IcySnow {
|
||||
background-image: url('~assets/images/sprites/spritesmith-main-24.png');
|
||||
background-position: -164px -400px;
|
||||
width: 81px;
|
||||
height: 99px;
|
||||
}
|
||||
.Pet-Yarn-Shade {
|
||||
.Pet-Wolf-Peppermint {
|
||||
background-image: url('~assets/images/sprites/spritesmith-main-24.png');
|
||||
background-position: -246px -400px;
|
||||
width: 81px;
|
||||
height: 99px;
|
||||
}
|
||||
.Pet-Yarn-Skeleton {
|
||||
.Pet-Wolf-Rainbow {
|
||||
background-image: url('~assets/images/sprites/spritesmith-main-24.png');
|
||||
background-position: 0px 0px;
|
||||
background-position: -328px -400px;
|
||||
width: 81px;
|
||||
height: 99px;
|
||||
}
|
||||
.Pet-Yarn-White {
|
||||
.Pet-Wolf-Red {
|
||||
background-image: url('~assets/images/sprites/spritesmith-main-24.png');
|
||||
background-position: -410px -400px;
|
||||
width: 81px;
|
||||
height: 99px;
|
||||
}
|
||||
.Pet-Yarn-Zombie {
|
||||
.Pet-Wolf-RoseQuartz {
|
||||
background-image: url('~assets/images/sprites/spritesmith-main-24.png');
|
||||
background-position: -492px -400px;
|
||||
width: 81px;
|
||||
height: 99px;
|
||||
}
|
||||
.Pet-Wolf-RoyalPurple {
|
||||
background-image: url('~assets/images/sprites/spritesmith-main-24.png');
|
||||
background-position: -574px 0px;
|
||||
width: 81px;
|
||||
height: 99px;
|
||||
}
|
||||
.Pet-Wolf-Shade {
|
||||
background-image: url('~assets/images/sprites/spritesmith-main-24.png');
|
||||
background-position: -574px -100px;
|
||||
width: 81px;
|
||||
height: 99px;
|
||||
}
|
||||
.Pet-Wolf-Shimmer {
|
||||
background-image: url('~assets/images/sprites/spritesmith-main-24.png');
|
||||
background-position: -574px -200px;
|
||||
width: 81px;
|
||||
height: 99px;
|
||||
}
|
||||
.Pet-Wolf-Skeleton {
|
||||
background-image: url('~assets/images/sprites/spritesmith-main-24.png');
|
||||
background-position: -574px -300px;
|
||||
width: 81px;
|
||||
height: 99px;
|
||||
}
|
||||
.Pet-Wolf-Spooky {
|
||||
background-image: url('~assets/images/sprites/spritesmith-main-24.png');
|
||||
background-position: -574px -400px;
|
||||
width: 81px;
|
||||
height: 99px;
|
||||
}
|
||||
.Pet-Wolf-StarryNight {
|
||||
background-image: url('~assets/images/sprites/spritesmith-main-24.png');
|
||||
background-position: 0px -500px;
|
||||
width: 81px;
|
||||
height: 99px;
|
||||
}
|
||||
.Pet-Wolf-Thunderstorm {
|
||||
background-image: url('~assets/images/sprites/spritesmith-main-24.png');
|
||||
background-position: -82px -500px;
|
||||
width: 81px;
|
||||
height: 99px;
|
||||
}
|
||||
.Pet-Wolf-Veteran {
|
||||
background-image: url('~assets/images/sprites/spritesmith-main-24.png');
|
||||
background-position: 0px 0px;
|
||||
width: 81px;
|
||||
height: 99px;
|
||||
}
|
||||
.Pet-Wolf-White {
|
||||
background-image: url('~assets/images/sprites/spritesmith-main-24.png');
|
||||
background-position: -246px -500px;
|
||||
width: 81px;
|
||||
height: 99px;
|
||||
}
|
||||
.Pet-Wolf-Zombie {
|
||||
background-image: url('~assets/images/sprites/spritesmith-main-24.png');
|
||||
background-position: -328px -500px;
|
||||
width: 81px;
|
||||
height: 99px;
|
||||
}
|
||||
.Pet-Yarn-Base {
|
||||
background-image: url('~assets/images/sprites/spritesmith-main-24.png');
|
||||
background-position: -410px -500px;
|
||||
width: 81px;
|
||||
height: 99px;
|
||||
}
|
||||
.Pet-Yarn-CottonCandyBlue {
|
||||
background-image: url('~assets/images/sprites/spritesmith-main-24.png');
|
||||
background-position: -492px -500px;
|
||||
width: 81px;
|
||||
height: 99px;
|
||||
}
|
||||
.Pet-Yarn-CottonCandyPink {
|
||||
background-image: url('~assets/images/sprites/spritesmith-main-24.png');
|
||||
background-position: -574px -500px;
|
||||
width: 81px;
|
||||
height: 99px;
|
||||
}
|
||||
.Pet-Yarn-Desert {
|
||||
background-image: url('~assets/images/sprites/spritesmith-main-24.png');
|
||||
background-position: -656px 0px;
|
||||
width: 81px;
|
||||
height: 99px;
|
||||
}
|
||||
.Pet-Yarn-Golden {
|
||||
background-image: url('~assets/images/sprites/spritesmith-main-24.png');
|
||||
background-position: -656px -100px;
|
||||
width: 81px;
|
||||
height: 99px;
|
||||
}
|
||||
.Pet-Yarn-Red {
|
||||
background-image: url('~assets/images/sprites/spritesmith-main-24.png');
|
||||
background-position: -656px -200px;
|
||||
width: 81px;
|
||||
height: 99px;
|
||||
}
|
||||
.Pet-Yarn-Shade {
|
||||
background-image: url('~assets/images/sprites/spritesmith-main-24.png');
|
||||
background-position: -656px -300px;
|
||||
width: 81px;
|
||||
height: 99px;
|
||||
}
|
||||
.Pet-Yarn-Skeleton {
|
||||
background-image: url('~assets/images/sprites/spritesmith-main-24.png');
|
||||
background-position: -656px -400px;
|
||||
width: 81px;
|
||||
height: 99px;
|
||||
}
|
||||
.Pet-Yarn-White {
|
||||
background-image: url('~assets/images/sprites/spritesmith-main-24.png');
|
||||
background-position: -656px -500px;
|
||||
width: 81px;
|
||||
height: 99px;
|
||||
}
|
||||
.Pet-Yarn-Zombie {
|
||||
background-image: url('~assets/images/sprites/spritesmith-main-24.png');
|
||||
background-position: 0px -600px;
|
||||
width: 81px;
|
||||
height: 99px;
|
||||
}
|
||||
.Pet_HatchingPotion_Aquatic {
|
||||
background-image: url('~assets/images/sprites/spritesmith-main-24.png');
|
||||
background-position: -69px -500px;
|
||||
background-position: -151px -600px;
|
||||
width: 68px;
|
||||
height: 68px;
|
||||
}
|
||||
.Pet_HatchingPotion_Base {
|
||||
background-image: url('~assets/images/sprites/spritesmith-main-24.png');
|
||||
background-position: -574px -483px;
|
||||
background-position: -738px -414px;
|
||||
width: 68px;
|
||||
height: 68px;
|
||||
}
|
||||
.Pet_HatchingPotion_CottonCandyBlue {
|
||||
background-image: url('~assets/images/sprites/spritesmith-main-24.png');
|
||||
background-position: -138px -500px;
|
||||
background-position: -220px -600px;
|
||||
width: 68px;
|
||||
height: 68px;
|
||||
}
|
||||
.Pet_HatchingPotion_CottonCandyPink {
|
||||
background-image: url('~assets/images/sprites/spritesmith-main-24.png');
|
||||
background-position: -207px -500px;
|
||||
background-position: -289px -600px;
|
||||
width: 68px;
|
||||
height: 68px;
|
||||
}
|
||||
.Pet_HatchingPotion_Cupid {
|
||||
background-image: url('~assets/images/sprites/spritesmith-main-24.png');
|
||||
background-position: -276px -500px;
|
||||
background-position: -358px -600px;
|
||||
width: 68px;
|
||||
height: 68px;
|
||||
}
|
||||
.Pet_HatchingPotion_Desert {
|
||||
background-image: url('~assets/images/sprites/spritesmith-main-24.png');
|
||||
background-position: -345px -500px;
|
||||
background-position: -427px -600px;
|
||||
width: 68px;
|
||||
height: 68px;
|
||||
}
|
||||
.Pet_HatchingPotion_Ember {
|
||||
background-image: url('~assets/images/sprites/spritesmith-main-24.png');
|
||||
background-position: -414px -500px;
|
||||
background-position: -496px -600px;
|
||||
width: 68px;
|
||||
height: 68px;
|
||||
}
|
||||
.Pet_HatchingPotion_Fairy {
|
||||
background-image: url('~assets/images/sprites/spritesmith-main-24.png');
|
||||
background-position: -483px -500px;
|
||||
background-position: -565px -600px;
|
||||
width: 68px;
|
||||
height: 68px;
|
||||
}
|
||||
.Pet_HatchingPotion_Floral {
|
||||
background-image: url('~assets/images/sprites/spritesmith-main-24.png');
|
||||
background-position: -574px 0px;
|
||||
background-position: -634px -600px;
|
||||
width: 68px;
|
||||
height: 68px;
|
||||
}
|
||||
.Pet_HatchingPotion_Frost {
|
||||
background-image: url('~assets/images/sprites/spritesmith-main-24.png');
|
||||
background-position: -574px -69px;
|
||||
background-position: -738px 0px;
|
||||
width: 68px;
|
||||
height: 68px;
|
||||
}
|
||||
.Pet_HatchingPotion_Ghost {
|
||||
background-image: url('~assets/images/sprites/spritesmith-main-24.png');
|
||||
background-position: -574px -138px;
|
||||
background-position: -738px -69px;
|
||||
width: 68px;
|
||||
height: 68px;
|
||||
}
|
||||
.Pet_HatchingPotion_Glass {
|
||||
background-image: url('~assets/images/sprites/spritesmith-main-24.png');
|
||||
background-position: -574px -207px;
|
||||
background-position: -738px -138px;
|
||||
width: 68px;
|
||||
height: 68px;
|
||||
}
|
||||
.Pet_HatchingPotion_Glow {
|
||||
background-image: url('~assets/images/sprites/spritesmith-main-24.png');
|
||||
background-position: -574px -276px;
|
||||
background-position: -738px -207px;
|
||||
width: 68px;
|
||||
height: 68px;
|
||||
}
|
||||
.Pet_HatchingPotion_Golden {
|
||||
background-image: url('~assets/images/sprites/spritesmith-main-24.png');
|
||||
background-position: -574px -345px;
|
||||
background-position: -738px -276px;
|
||||
width: 68px;
|
||||
height: 68px;
|
||||
}
|
||||
.Pet_HatchingPotion_Holly {
|
||||
background-image: url('~assets/images/sprites/spritesmith-main-24.png');
|
||||
background-position: -574px -414px;
|
||||
background-position: -738px -345px;
|
||||
width: 68px;
|
||||
height: 68px;
|
||||
}
|
||||
.Pet_HatchingPotion_IcySnow {
|
||||
background-image: url('~assets/images/sprites/spritesmith-main-24.png');
|
||||
background-position: 0px -500px;
|
||||
background-position: -82px -600px;
|
||||
width: 68px;
|
||||
height: 68px;
|
||||
}
|
||||
.Pet_HatchingPotion_Peppermint {
|
||||
background-image: url('~assets/images/sprites/spritesmith-main-24.png');
|
||||
background-position: 0px -569px;
|
||||
background-position: -738px -483px;
|
||||
width: 68px;
|
||||
height: 68px;
|
||||
}
|
||||
.Pet_HatchingPotion_Purple {
|
||||
background-image: url('~assets/images/sprites/spritesmith-main-24.png');
|
||||
background-position: -69px -569px;
|
||||
background-position: -738px -552px;
|
||||
width: 68px;
|
||||
height: 68px;
|
||||
}
|
||||
.Pet_HatchingPotion_Rainbow {
|
||||
background-image: url('~assets/images/sprites/spritesmith-main-24.png');
|
||||
background-position: -138px -569px;
|
||||
background-position: -738px -621px;
|
||||
width: 68px;
|
||||
height: 68px;
|
||||
}
|
||||
.Pet_HatchingPotion_Red {
|
||||
background-image: url('~assets/images/sprites/spritesmith-main-24.png');
|
||||
background-position: -207px -569px;
|
||||
background-position: 0px -700px;
|
||||
width: 68px;
|
||||
height: 68px;
|
||||
}
|
||||
.Pet_HatchingPotion_RoseQuartz {
|
||||
background-image: url('~assets/images/sprites/spritesmith-main-24.png');
|
||||
background-position: -276px -569px;
|
||||
background-position: -69px -700px;
|
||||
width: 68px;
|
||||
height: 68px;
|
||||
}
|
||||
.Pet_HatchingPotion_RoyalPurple {
|
||||
background-image: url('~assets/images/sprites/spritesmith-main-24.png');
|
||||
background-position: -345px -569px;
|
||||
background-position: -138px -700px;
|
||||
width: 68px;
|
||||
height: 68px;
|
||||
}
|
||||
.Pet_HatchingPotion_Shade {
|
||||
background-image: url('~assets/images/sprites/spritesmith-main-24.png');
|
||||
background-position: -414px -569px;
|
||||
background-position: -207px -700px;
|
||||
width: 68px;
|
||||
height: 68px;
|
||||
}
|
||||
.Pet_HatchingPotion_Shimmer {
|
||||
background-image: url('~assets/images/sprites/spritesmith-main-24.png');
|
||||
background-position: -483px -569px;
|
||||
background-position: -276px -700px;
|
||||
width: 68px;
|
||||
height: 68px;
|
||||
}
|
||||
.Pet_HatchingPotion_Skeleton {
|
||||
background-image: url('~assets/images/sprites/spritesmith-main-24.png');
|
||||
background-position: -552px -569px;
|
||||
background-position: -345px -700px;
|
||||
width: 68px;
|
||||
height: 68px;
|
||||
}
|
||||
.Pet_HatchingPotion_Spooky {
|
||||
background-image: url('~assets/images/sprites/spritesmith-main-24.png');
|
||||
background-position: -643px 0px;
|
||||
background-position: -414px -700px;
|
||||
width: 68px;
|
||||
height: 68px;
|
||||
}
|
||||
.Pet_HatchingPotion_StarryNight {
|
||||
background-image: url('~assets/images/sprites/spritesmith-main-24.png');
|
||||
background-position: -643px -69px;
|
||||
background-position: -483px -700px;
|
||||
width: 68px;
|
||||
height: 68px;
|
||||
}
|
||||
.Pet_HatchingPotion_Thunderstorm {
|
||||
background-image: url('~assets/images/sprites/spritesmith-main-24.png');
|
||||
background-position: -643px -138px;
|
||||
background-position: -552px -700px;
|
||||
width: 68px;
|
||||
height: 68px;
|
||||
}
|
||||
.Pet_HatchingPotion_White {
|
||||
background-image: url('~assets/images/sprites/spritesmith-main-24.png');
|
||||
background-position: -643px -207px;
|
||||
background-position: -621px -700px;
|
||||
width: 68px;
|
||||
height: 68px;
|
||||
}
|
||||
.Pet_HatchingPotion_Zombie {
|
||||
background-image: url('~assets/images/sprites/spritesmith-main-24.png');
|
||||
background-position: -643px -276px;
|
||||
background-position: -690px -700px;
|
||||
width: 68px;
|
||||
height: 68px;
|
||||
}
|
||||
|
||||
|
Before Width: | Height: | Size: 53 KiB After Width: | Height: | Size: 71 KiB |
|
Before Width: | Height: | Size: 560 KiB After Width: | Height: | Size: 557 KiB |
|
Before Width: | Height: | Size: 551 KiB After Width: | Height: | Size: 562 KiB |
|
Before Width: | Height: | Size: 114 KiB After Width: | Height: | Size: 116 KiB |
|
Before Width: | Height: | Size: 370 KiB After Width: | Height: | Size: 354 KiB |
|
Before Width: | Height: | Size: 302 KiB After Width: | Height: | Size: 307 KiB |
|
Before Width: | Height: | Size: 162 KiB After Width: | Height: | Size: 159 KiB |
|
Before Width: | Height: | Size: 144 KiB After Width: | Height: | Size: 143 KiB |
|
Before Width: | Height: | Size: 132 KiB After Width: | Height: | Size: 136 KiB |
|
Before Width: | Height: | Size: 159 KiB After Width: | Height: | Size: 152 KiB |
|
Before Width: | Height: | Size: 140 KiB After Width: | Height: | Size: 144 KiB |
|
Before Width: | Height: | Size: 149 KiB After Width: | Height: | Size: 149 KiB |
|
Before Width: | Height: | Size: 156 KiB After Width: | Height: | Size: 153 KiB |
|
Before Width: | Height: | Size: 78 KiB After Width: | Height: | Size: 77 KiB |
|
Before Width: | Height: | Size: 151 KiB After Width: | Height: | Size: 152 KiB |
|
Before Width: | Height: | Size: 182 KiB After Width: | Height: | Size: 183 KiB |
|
Before Width: | Height: | Size: 161 KiB After Width: | Height: | Size: 159 KiB |
|
Before Width: | Height: | Size: 162 KiB After Width: | Height: | Size: 165 KiB |
|
Before Width: | Height: | Size: 24 KiB After Width: | Height: | Size: 33 KiB |
|
Before Width: | Height: | Size: 66 KiB After Width: | Height: | Size: 65 KiB |
|
Before Width: | Height: | Size: 56 KiB After Width: | Height: | Size: 58 KiB |
|
Before Width: | Height: | Size: 125 KiB After Width: | Height: | Size: 118 KiB |
|
Before Width: | Height: | Size: 123 KiB After Width: | Height: | Size: 123 KiB |
|
Before Width: | Height: | Size: 123 KiB After Width: | Height: | Size: 123 KiB |
|
Before Width: | Height: | Size: 145 KiB After Width: | Height: | Size: 144 KiB |
|
Before Width: | Height: | Size: 119 KiB After Width: | Height: | Size: 115 KiB |
@@ -43,6 +43,8 @@
|
||||
li(v-html='$t("communityForum")')
|
||||
li
|
||||
a(href='https://www.facebook.com/Habitica', target='_blank') {{ $t('communityFacebook') }}
|
||||
li
|
||||
a(href='https://www.instagram.com/habitica', target='_blank') {{ $t('communityInstagram') }}
|
||||
li
|
||||
a(href='https://www.reddit.com/r/habitrpg/', target='_blank') {{ $t('communityReddit') }}
|
||||
.col-12.col-md-6
|
||||
@@ -56,23 +58,22 @@
|
||||
a(:href="getDataDisplayToolUrl", target='_blank') {{ $t('dataDisplayTool') }}
|
||||
li
|
||||
a(href='http://habitica.fandom.com/wiki/Guidance_for_Blacksmiths', target='_blank') {{ $t('guidanceForBlacksmiths') }}
|
||||
li
|
||||
a(href='http://devs.habitica.com/', target='_blank') {{ $t('devBlog') }}
|
||||
.col-6.social
|
||||
h3 {{ $t('footerSocial') }}
|
||||
a.social-circle(href='https://twitter.com/habitica', target='_blank')
|
||||
.social-icon.svg-icon(v-html='icons.twitter')
|
||||
// TODO: Not ready yet. a.social-circle(href='https://www.instagram.com/habitica/', target='_blank')
|
||||
.social-icon.svg-icon.instagram(v-html='icons.instagram')
|
||||
a.social-circle(href='https://www.facebook.com/Habitica', target='_blank')
|
||||
.social-icon.facebook.svg-icon(v-html='icons.facebook')
|
||||
.icons
|
||||
a.social-circle(href='https://twitter.com/habitica', target='_blank')
|
||||
.social-icon.svg-icon(v-html='icons.twitter')
|
||||
a.social-circle(href='https://www.instagram.com/habitica/', target='_blank')
|
||||
.social-icon.svg-icon.instagram(v-html='icons.instagram')
|
||||
a.social-circle(href='https://www.facebook.com/Habitica', target='_blank')
|
||||
.social-icon.facebook.svg-icon(v-html='icons.facebook')
|
||||
.row
|
||||
.col-12.col-md-8 {{ $t('donateText3') }}
|
||||
.col-12.col-md-4
|
||||
button.btn.btn-contribute(@click="donate()", v-if="user")
|
||||
button.btn.btn-contribute.btn-flat(@click="donate()", v-if="user")
|
||||
.svg-icon.heart(v-html="icons.heart")
|
||||
.text {{ $t('companyDonate') }}
|
||||
.btn.btn-contribute(v-else)
|
||||
.btn.btn-contribute.btn-flat(v-else)
|
||||
a(href='http://habitica.fandom.com/wiki/Contributing_to_Habitica', target='_blank')
|
||||
.svg-icon.heart(v-html="icons.heart")
|
||||
.text {{ $t('companyContribute') }}
|
||||
@@ -145,6 +146,22 @@
|
||||
}
|
||||
}
|
||||
|
||||
.icons {
|
||||
display: flex;
|
||||
justify-content: flex-end;
|
||||
flex-shrink: 1;
|
||||
}
|
||||
|
||||
// smaller than desktop
|
||||
@media only screen and (max-width: 992px) {
|
||||
.social-circle {
|
||||
height: 32px !important;
|
||||
width: 32px !important;
|
||||
|
||||
margin-left: 0.75em !important;
|
||||
}
|
||||
}
|
||||
|
||||
.social-circle {
|
||||
width: 40px;
|
||||
height: 40px;
|
||||
@@ -152,17 +169,20 @@
|
||||
background-color: #c3c0c7;
|
||||
display: flex;
|
||||
margin-left: 1em;
|
||||
float: right;
|
||||
|
||||
&:first-child {
|
||||
margin-left: 0;
|
||||
}
|
||||
|
||||
&:hover {
|
||||
background-color: #a5a1ac;
|
||||
}
|
||||
|
||||
.social-icon {
|
||||
color: #e1e0e3;
|
||||
width: 16px;
|
||||
margin: auto;
|
||||
}
|
||||
|
||||
.instagram {
|
||||
margin-top: .85em;
|
||||
}
|
||||
}
|
||||
|
||||
.logo {
|
||||
@@ -185,6 +205,14 @@
|
||||
box-shadow: none;
|
||||
border-radius: 4px;
|
||||
|
||||
&:hover {
|
||||
background: #a5a1ac;
|
||||
|
||||
.text {
|
||||
color: white;
|
||||
}
|
||||
}
|
||||
|
||||
a {
|
||||
display: flex;
|
||||
}
|
||||
|
||||
@@ -1,8 +1,8 @@
|
||||
<template lang="pug">
|
||||
div
|
||||
.mentioned-icon(v-if='isUserMentioned')
|
||||
.message-hidden(v-if='msg.flagCount === 1 && user.contributor.admin') Message flagged once, not hidden
|
||||
.message-hidden(v-if='msg.flagCount > 1 && user.contributor.admin') Message hidden
|
||||
.message-hidden(v-if='!inbox && msg.flagCount === 1 && user.contributor.admin') Message flagged once, not hidden
|
||||
.message-hidden(v-if='!inbox && msg.flagCount > 1 && user.contributor.admin') Message hidden
|
||||
.card-body
|
||||
user-link(:userId="msg.uuid", :name="msg.user", :backer="msg.backer", :contributor="msg.contributor")
|
||||
p.time
|
||||
@@ -11,25 +11,28 @@ div
|
||||
span(v-b-tooltip="", :title="msg.timestamp | date") {{ msg.timestamp | timeAgo }}
|
||||
span(v-if="msg.client && user.contributor.level >= 4") ({{ msg.client }})
|
||||
.text(v-html='atHighlight(parseMarkdown(msg.text))')
|
||||
.reported(v-if="isMessageReported && (inbox === true)")
|
||||
span(v-once) {{ $t('reportedMessage')}}
|
||||
br
|
||||
span(v-once) {{ $t('canDeleteNow') }}
|
||||
hr
|
||||
.d-flex(v-if='msg.id')
|
||||
.action.d-flex.align-items-center(v-if='!inbox', @click='copyAsTodo(msg)')
|
||||
.svg-icon(v-html="icons.copy")
|
||||
div {{$t('copyAsTodo')}}
|
||||
.action.d-flex.align-items-center(v-if='!inbox && user.flags.communityGuidelinesAccepted && msg.uuid !== "system"', @click='report(msg)')
|
||||
.svg-icon(v-html="icons.report")
|
||||
div {{$t('report')}}
|
||||
// @TODO make flagging/reporting work in the inbox. NOTE: it must work even if the communityGuidelines are not accepted and it MUST work for messages that you have SENT as well as received. -- Alys
|
||||
.action.d-flex.align-items-center(v-if='(inbox || (user.flags.communityGuidelinesAccepted && msg.uuid !== "system")) && !isMessageReported', @click='report(msg)')
|
||||
.svg-icon(v-html="icons.report", v-once)
|
||||
div(v-once) {{$t('report')}}
|
||||
.action.d-flex.align-items-center(v-if='msg.uuid === user._id || inbox || user.contributor.admin', @click='remove()')
|
||||
.svg-icon(v-html="icons.delete")
|
||||
| {{$t('delete')}}
|
||||
.svg-icon(v-html="icons.delete", v-once)
|
||||
div(v-once) {{$t('delete')}}
|
||||
.ml-auto.d-flex(v-b-tooltip="{title: likeTooltip(msg.likes[user._id])}", v-if='!inbox')
|
||||
.action.d-flex.align-items-center.mr-0(@click='like()', v-if='likeCount > 0', :class='{active: msg.likes[user._id]}')
|
||||
.svg-icon(v-html="icons.liked", :title='$t("liked")')
|
||||
| +{{ likeCount }}
|
||||
.action.d-flex.align-items-center.mr-0(@click='like()', v-if='likeCount === 0', :class='{active: msg.likes[user._id]}')
|
||||
.svg-icon(v-html="icons.like", :title='$t("like")')
|
||||
span(v-if='!msg.likes[user._id]') {{ $t('like') }}
|
||||
span(v-if='!msg.likes[user._id] && !inbox') {{ $t('like') }}
|
||||
</template>
|
||||
|
||||
<style lang="scss">
|
||||
@@ -111,6 +114,11 @@ div
|
||||
color: $purple-400;
|
||||
}
|
||||
}
|
||||
|
||||
.reported {
|
||||
margin-top: 18px;
|
||||
color: $red-50;
|
||||
}
|
||||
</style>
|
||||
|
||||
<script>
|
||||
@@ -132,8 +140,15 @@ import reportIcon from 'assets/svg/report.svg';
|
||||
import {highlightUsers} from '../../libs/highlightUsers';
|
||||
|
||||
export default {
|
||||
props: ['msg', 'inbox', 'groupId'],
|
||||
components: {userLink},
|
||||
props: {
|
||||
msg: {},
|
||||
inbox: {
|
||||
type: Boolean,
|
||||
default: false,
|
||||
},
|
||||
groupId: {},
|
||||
},
|
||||
data () {
|
||||
return {
|
||||
icons: Object.freeze({
|
||||
@@ -143,6 +158,7 @@ export default {
|
||||
delete: deleteIcon,
|
||||
liked: likedIcon,
|
||||
}),
|
||||
reported: false,
|
||||
};
|
||||
},
|
||||
filters: {
|
||||
@@ -191,6 +207,9 @@ export default {
|
||||
}
|
||||
return likeCount;
|
||||
},
|
||||
isMessageReported () {
|
||||
return this.msg.flags && this.msg.flags[this.user.id] || this.reported;
|
||||
},
|
||||
},
|
||||
methods: {
|
||||
async like () {
|
||||
@@ -216,10 +235,18 @@ export default {
|
||||
copyAsTodo (message) {
|
||||
this.$root.$emit('habitica::copy-as-todo', message);
|
||||
},
|
||||
async report () {
|
||||
report () {
|
||||
this.$root.$on('habitica:report-result', data => {
|
||||
if (data.ok) {
|
||||
this.reported = true;
|
||||
}
|
||||
|
||||
this.$root.$off('habitica:report-result');
|
||||
});
|
||||
|
||||
this.$root.$emit('habitica::report-chat', {
|
||||
message: this.msg,
|
||||
groupId: this.groupId,
|
||||
groupId: this.groupId || 'privateMessage',
|
||||
});
|
||||
},
|
||||
async remove () {
|
||||
|
||||
@@ -3,7 +3,6 @@
|
||||
.row
|
||||
.col-12
|
||||
copy-as-todo-modal(:group-type='groupType', :group-name='groupName', :group-id='groupId')
|
||||
report-flag-modal
|
||||
div(v-for="(msg, index) in messages", v-if='chat && canViewFlag(msg)', :class='{row: inbox}')
|
||||
.d-flex(v-if='user._id !== msg.uuid', :class='{"flex-grow-1": inbox}')
|
||||
avatar.avatar-left(
|
||||
@@ -105,14 +104,21 @@ import findIndex from 'lodash/findIndex';
|
||||
|
||||
import Avatar from '../avatar';
|
||||
import copyAsTodoModal from './copyAsTodoModal';
|
||||
import reportFlagModal from './reportFlagModal';
|
||||
import chatCard from './chatCard';
|
||||
|
||||
export default {
|
||||
props: ['chat', 'groupType', 'groupId', 'groupName', 'inbox'],
|
||||
props: {
|
||||
chat: {},
|
||||
inbox: {
|
||||
type: Boolean,
|
||||
default: false,
|
||||
},
|
||||
groupType: {},
|
||||
groupId: {},
|
||||
groupName: {},
|
||||
},
|
||||
components: {
|
||||
copyAsTodoModal,
|
||||
reportFlagModal,
|
||||
chatCard,
|
||||
Avatar,
|
||||
},
|
||||
|
||||
@@ -106,14 +106,16 @@ export default {
|
||||
this.$root.$emit('bv::hide::modal', 'report-flag');
|
||||
},
|
||||
async reportAbuse () {
|
||||
this.notify('Thank you for reporting this violation. The moderators have been notified.');
|
||||
this.text(this.$t(this.groupId === 'privateMessage' ? 'pmReported' : 'abuseReported'));
|
||||
|
||||
await this.$store.dispatch('chat:flag', {
|
||||
let result = await this.$store.dispatch('chat:flag', {
|
||||
groupId: this.groupId,
|
||||
chatId: this.abuseObject.id,
|
||||
comment: this.reportComment,
|
||||
});
|
||||
|
||||
this.$root.$emit('habitica:report-result', result);
|
||||
|
||||
this.close();
|
||||
},
|
||||
async clearFlagCount () {
|
||||
|
||||
@@ -20,7 +20,7 @@ div
|
||||
select.form-control(@change='changeSortDirection($event)')
|
||||
option(v-for='sortDirection in sortDirections', :value='sortDirection.value') {{sortDirection.text}}
|
||||
|
||||
.row.apply-options.d-flex.justify-content-center(v-if='sortDirty')
|
||||
.row.apply-options.d-flex.justify-content-center(v-if='sortDirty && group.type === "party"')
|
||||
a(@click='applySortOptions()') {{ $t('applySortToHeader') }}
|
||||
.row(v-if='invites.length > 0')
|
||||
.col-6.offset-3.nav
|
||||
|
||||
@@ -8,7 +8,7 @@
|
||||
.row
|
||||
.form.col-6(v-if='!hero.profile')
|
||||
.form-group
|
||||
input.form-control(type='text', v-model='heroID', :placeholder="$t('UUID')")
|
||||
input.form-control(type='text', v-model='heroID', :placeholder="'User ID or Username'")
|
||||
.form-group
|
||||
button.btn.btn-secondary(@click='loadHero(heroID)')
|
||||
| {{ $t('loadUser') }}
|
||||
|
||||
@@ -48,6 +48,7 @@ div
|
||||
color: $header-color;
|
||||
flex-wrap: nowrap;
|
||||
position: relative;
|
||||
max-height: 10.25rem;
|
||||
}
|
||||
|
||||
.hide-header {
|
||||
|
||||
@@ -3,12 +3,13 @@ div
|
||||
inbox-modal
|
||||
creator-intro
|
||||
profileModal
|
||||
report-flag-modal
|
||||
send-gems-modal
|
||||
b-navbar.topbar.navbar-inverse.static-top.navbar-expand-lg(type="dark", :class="navbarZIndexClass")
|
||||
b-navbar.topbar.navbar-inverse.static-top(toggleable="lg", type="dark", :class="navbarZIndexClass")
|
||||
b-navbar-brand.brand
|
||||
.logo.svg-icon.d-none.d-xl-block(v-html="icons.logo")
|
||||
.svg-icon.gryphon.d-xs-block.d-xl-none
|
||||
b-nav-toggle(target='menu_collapse').menu-toggle
|
||||
b-navbar-toggle(target='menu_collapse').menu-toggle
|
||||
.quick-menu.mobile-only.form-inline
|
||||
a.item-with-icon(@click="sync", v-b-tooltip.hover.bottom="$t('sync')")
|
||||
.top-menu-icon.svg-icon(v-html="icons.sync")
|
||||
@@ -351,12 +352,15 @@ import profileModal from '../userMenu/profileModal';
|
||||
import sendGemsModal from 'client/components/payments/sendGemsModal';
|
||||
import userDropdown from './userDropdown';
|
||||
|
||||
import reportFlagModal from '../chat/reportFlagModal';
|
||||
|
||||
export default {
|
||||
components: {
|
||||
creatorIntro,
|
||||
InboxModal,
|
||||
notificationMenu,
|
||||
profileModal,
|
||||
reportFlagModal,
|
||||
sendGemsModal,
|
||||
userDropdown,
|
||||
},
|
||||
|
||||
@@ -82,7 +82,7 @@
|
||||
)
|
||||
div(
|
||||
v-for="group in itemsGroups",
|
||||
v-if="viewOptions[group.key].selected",
|
||||
v-if="!anyFilterSelected || viewOptions[group.key].selected",
|
||||
:key="group.key",
|
||||
:class='group.key',
|
||||
)
|
||||
@@ -383,10 +383,13 @@ export default {
|
||||
items () {
|
||||
return this.groupBy === 'type' ? this.gearItemsByType : this.gearItemsByClass;
|
||||
},
|
||||
anyFilterSelected () {
|
||||
return Object.values(this.viewOptions).some(g => g.selected);
|
||||
},
|
||||
itemsGroups () {
|
||||
return map(this.groups, (label, group) => {
|
||||
this.$set(this.viewOptions, group, {
|
||||
selected: true,
|
||||
selected: false,
|
||||
open: false,
|
||||
itemsInFirstPosition: [],
|
||||
firstRender: true,
|
||||
|
||||
@@ -25,7 +25,7 @@
|
||||
b-dropdown-item(@click="sortBy = 'AZ'", :active="sortBy === 'AZ'") {{ $t('AZ') }}
|
||||
div(
|
||||
v-for="group in groups",
|
||||
v-if="group.selected",
|
||||
v-if="!anyFilterSelected || group.selected",
|
||||
:key="group.key",
|
||||
)
|
||||
h2.mb-3
|
||||
@@ -225,7 +225,7 @@ const groups = [
|
||||
return {
|
||||
key: group,
|
||||
quantity: 0,
|
||||
selected: true,
|
||||
selected: false,
|
||||
classPrefix,
|
||||
allowedItems,
|
||||
};
|
||||
@@ -340,6 +340,10 @@ export default {
|
||||
|
||||
return itemsByType;
|
||||
},
|
||||
|
||||
anyFilterSelected () {
|
||||
return this.groups.some(g => g.selected);
|
||||
},
|
||||
},
|
||||
methods: {
|
||||
userHasPet (potionKey, eggKey) {
|
||||
@@ -465,8 +469,6 @@ export default {
|
||||
let openedItem = result.data.data;
|
||||
let text = this.content.gear.flat[openedItem.key].text();
|
||||
this.drop(this.$t('messageDropMysteryItem', {dropText: text}), openedItem);
|
||||
item.quantity--;
|
||||
this.$forceUpdate();
|
||||
} else {
|
||||
this.$root.$emit('selectMembersModal::showItem', item);
|
||||
}
|
||||
|
||||
@@ -69,7 +69,7 @@
|
||||
span.badge.badge-pill.badge-default {{countOwnedAnimals(petGroups[0], 'pet')}}
|
||||
|
||||
div(v-for="(petGroup, index) in petGroups",
|
||||
v-if="viewOptions[petGroup.key].selected",
|
||||
v-if="!anyFilterSelected || viewOptions[petGroup.key].selected",
|
||||
:key="petGroup.key")
|
||||
h4(v-if="viewOptions[petGroup.key].animalCount !== 0") {{ petGroup.label }}
|
||||
|
||||
@@ -92,7 +92,11 @@
|
||||
@click="petClicked(item)"
|
||||
)
|
||||
template(slot="itemBadge", slot-scope="context")
|
||||
starBadge(:selected="item.key === currentPet", :show="isOwned('pet', item)", @click="selectPet(item)")
|
||||
starBadge(
|
||||
:selected="context.item.key === currentPet",
|
||||
:show="isOwned('pet', context.item)",
|
||||
@click="selectPet(context.item)"
|
||||
)
|
||||
|
||||
.btn.btn-flat.btn-show-more(@click="setShowMore(petGroup.key)", v-if='petGroup.key !== "specialPets"')
|
||||
| {{ $_openedItemRows_isToggled(petGroup.key) ? $t('showLess') : $t('showMore') }}
|
||||
@@ -103,7 +107,7 @@
|
||||
span.badge.badge-pill.badge-default {{countOwnedAnimals(mountGroups[0], 'mount')}}
|
||||
|
||||
div(v-for="mountGroup in mountGroups",
|
||||
v-if="viewOptions[mountGroup.key].selected",
|
||||
v-if="!anyFilterSelected || viewOptions[mountGroup.key].selected",
|
||||
:key="mountGroup.key")
|
||||
h4(v-if="viewOptions[mountGroup.key].animalCount != 0") {{ mountGroup.label }}
|
||||
|
||||
@@ -469,7 +473,7 @@
|
||||
|
||||
petGroups.map((petGroup) => {
|
||||
this.$set(this.viewOptions, petGroup.key, {
|
||||
selected: true,
|
||||
selected: false,
|
||||
animalCount: 0,
|
||||
});
|
||||
});
|
||||
@@ -514,7 +518,7 @@
|
||||
|
||||
mountGroups.map((mountGroup) => {
|
||||
this.$set(this.viewOptions, mountGroup.key, {
|
||||
selected: true,
|
||||
selected: false,
|
||||
animalCount: 0,
|
||||
});
|
||||
});
|
||||
@@ -538,6 +542,9 @@
|
||||
},
|
||||
];
|
||||
},
|
||||
anyFilterSelected () {
|
||||
return Object.values(this.viewOptions).some(g => g.selected);
|
||||
},
|
||||
},
|
||||
methods: {
|
||||
setShowMore (key) {
|
||||
|
||||
@@ -23,21 +23,31 @@
|
||||
span.mr-1(v-if="member.auth && member.auth.local && member.auth.local.username") @{{ member.auth.local.username }}
|
||||
span.mr-1(v-if="member.auth && member.auth.local && member.auth.local.username") •
|
||||
span {{ characterLevel }}
|
||||
.progress-container(v-b-tooltip.hover.bottom="$t('health')")
|
||||
.svg-icon(v-html="icons.health")
|
||||
.progress
|
||||
.progress-bar.bg-health(:style="{width: `${percent(member.stats.hp, MAX_HEALTH)}%`}")
|
||||
span.small-text {{member.stats.hp | statFloor}} / {{MAX_HEALTH}}
|
||||
.progress-container(v-b-tooltip.hover.bottom="$t('experience')")
|
||||
.svg-icon(v-html="icons.experience")
|
||||
.progress
|
||||
.progress-bar.bg-experience(:style="{width: `${percent(member.stats.exp, toNextLevel)}%`}")
|
||||
span.small-text {{member.stats.exp | statFloor}} / {{toNextLevel}}
|
||||
.progress-container(v-if="hasClass", v-b-tooltip.hover.bottom="$t('mana')")
|
||||
.svg-icon(v-html="icons.mana")
|
||||
.progress
|
||||
.progress-bar.bg-mana(:style="{width: `${percent(member.stats.mp, maxMP)}%`}")
|
||||
span.small-text {{member.stats.mp | statFloor}} / {{maxMP}}
|
||||
stats-bar(
|
||||
:icon="icons.health",
|
||||
:value="member.stats.hp",
|
||||
:maxValue="MAX_HEALTH",
|
||||
:tooltip="$t('health')",
|
||||
progressClass="bg-health",
|
||||
:condensed="condensed"
|
||||
)
|
||||
stats-bar(
|
||||
:icon="icons.experience",
|
||||
:value="member.stats.exp",
|
||||
:maxValue="toNextLevel",
|
||||
:tooltip="$t('experience')",
|
||||
progressClass="bg-experience",
|
||||
:condensed="condensed"
|
||||
)
|
||||
stats-bar(
|
||||
v-if="hasClass",
|
||||
:icon="icons.mana",
|
||||
:value="member.stats.mp",
|
||||
:maxValue="maxMP",
|
||||
:tooltip="$t('mana')",
|
||||
progressClass="bg-mana",
|
||||
:condensed="condensed"
|
||||
)
|
||||
</template>
|
||||
|
||||
<style lang="scss" scoped>
|
||||
@@ -99,44 +109,6 @@
|
||||
margin-bottom: .5em
|
||||
}
|
||||
|
||||
.progress-container {
|
||||
margin-left: 4px;
|
||||
margin-bottom: .5em;
|
||||
height: 24px;
|
||||
}
|
||||
|
||||
.progress-container > span {
|
||||
color: $header-color;
|
||||
margin-left: 8px;
|
||||
font-style: normal;
|
||||
line-height: 1;
|
||||
}
|
||||
|
||||
.progress-container > .svg-icon {
|
||||
width: 24px;
|
||||
height: 24px;
|
||||
margin-right: 8px;
|
||||
}
|
||||
|
||||
.progress-container > .progress {
|
||||
min-width: 200px;
|
||||
margin: 0px;
|
||||
border-radius: 2px;
|
||||
height: 12px;
|
||||
background-color: $header-dark-background;
|
||||
}
|
||||
|
||||
.progress-container > .progress > .progress-bar {
|
||||
border-radius: 2px;
|
||||
height: 12px;
|
||||
min-width: 0px;
|
||||
}
|
||||
|
||||
.progress-container .svg-icon, .progress-container .progress, .progress-container .small-text {
|
||||
display: inline-block;
|
||||
vertical-align: middle;
|
||||
}
|
||||
|
||||
// Condensed version
|
||||
.member-details.condensed.expanded {
|
||||
background: $header-dark-background;
|
||||
@@ -163,25 +135,6 @@
|
||||
border-bottom-left-radius: 4px;
|
||||
z-index: 9;
|
||||
}
|
||||
|
||||
.progress-container > .svg-icon {
|
||||
width: 19px;
|
||||
height: 19px;
|
||||
margin-top: -2px;
|
||||
}
|
||||
|
||||
.progress-container > .progress {
|
||||
width: 152px;
|
||||
border-radius: 0px;
|
||||
height: 10px;
|
||||
margin-top: 2px;
|
||||
background: $purple-100;
|
||||
}
|
||||
|
||||
.progress-container > .progress > .progress-bar {
|
||||
border-radius: 0px;
|
||||
height: 10px;
|
||||
}
|
||||
}
|
||||
</style>
|
||||
|
||||
@@ -190,6 +143,7 @@ import Avatar from './avatar';
|
||||
import ClassBadge from './members/classBadge';
|
||||
import { mapState } from 'client/libs/store';
|
||||
import Profile from './userMenu/profile';
|
||||
import StatsBar from './ui/statsbar';
|
||||
|
||||
import { toNextLevel } from '../../common/script/statHelpers';
|
||||
import statsComputed from '../../common/script/libs/statsComputed';
|
||||
@@ -205,9 +159,7 @@ export default {
|
||||
Avatar,
|
||||
Profile,
|
||||
ClassBadge,
|
||||
},
|
||||
directives: {
|
||||
// bTooltip,
|
||||
StatsBar,
|
||||
},
|
||||
props: {
|
||||
member: {
|
||||
|
||||
@@ -1,41 +1,57 @@
|
||||
<template lang="pug">
|
||||
.row(:class="{'small-version': smallVersion}")
|
||||
dl
|
||||
template(v-if="quest.collect")
|
||||
dt(:class="smallVersion ? 'col-3' : 'col-4'") {{ $t('collect') + ':' }}
|
||||
dd.col-8
|
||||
.table-row(v-if="quest.collect")
|
||||
dt {{ $t('collect') + ':' }}
|
||||
dd
|
||||
div(v-for="(collect, key) of quest.collect")
|
||||
span {{ collect.count }} {{ getCollectText(collect) }}
|
||||
|
||||
template(v-if="quest.boss")
|
||||
dt(:class="smallVersion ? 'col-3' : 'col-4'") {{ $t('bossHP') + ':' }}
|
||||
dd.col-8 {{ quest.boss.hp }}
|
||||
.table-row(v-if="quest.boss")
|
||||
dt {{ $t('bossHP') + ':' }}
|
||||
dd {{ quest.boss.hp }}
|
||||
|
||||
dt(:class="smallVersion ? 'col-3' : 'col-4'") {{ $t('difficulty') + ':' }}
|
||||
dd.col-8
|
||||
.svg-icon.inline(
|
||||
v-for="star of stars()", v-html="icons[star]",
|
||||
:class="smallVersion ? 'icon-12' : 'icon-16'",
|
||||
)
|
||||
.table-row
|
||||
dt {{ $t('difficulty') + ':' }}
|
||||
dd
|
||||
.svg-icon.inline(
|
||||
v-for="star of stars()", v-html="icons[star]",
|
||||
:class="smallVersion ? 'icon-12' : 'icon-16'",
|
||||
)
|
||||
</template>
|
||||
|
||||
<style lang="scss" scoped>
|
||||
@import '~client/assets/scss/colors.scss';
|
||||
|
||||
.row {
|
||||
display: table;
|
||||
color: #E1E0E3;
|
||||
}
|
||||
|
||||
.table-row {
|
||||
display: table-row;
|
||||
margin-bottom: 4px;
|
||||
}
|
||||
|
||||
dd {
|
||||
padding-left: 1em;
|
||||
padding-bottom: 4px;
|
||||
}
|
||||
|
||||
dt, dd {
|
||||
display: table-cell;
|
||||
}
|
||||
|
||||
dt, dd, dd > * {
|
||||
text-align: left;
|
||||
}
|
||||
|
||||
dt {
|
||||
font-size: 1.3em;
|
||||
line-height: 1.2;
|
||||
color: $gray-50;
|
||||
}
|
||||
|
||||
.col-8 {
|
||||
text-align: left;
|
||||
}
|
||||
|
||||
.col-8:not(:last-child) {
|
||||
margin-bottom: 4px;
|
||||
}
|
||||
|
||||
.svg-icon {
|
||||
margin-right: 4px;
|
||||
}
|
||||
|
||||
@@ -37,8 +37,9 @@
|
||||
draggable.sortable-tasks(
|
||||
ref="tasksList",
|
||||
@update='taskSorted',
|
||||
@start="isDragging(true)",
|
||||
@end="isDragging(false)",
|
||||
:options='{disabled: activeFilter.label === "scheduled", scrollSensitivity: 64}',
|
||||
class="sortable-tasks"
|
||||
)
|
||||
task(
|
||||
v-for="task in taskList",
|
||||
@@ -49,12 +50,11 @@
|
||||
:group='group',
|
||||
)
|
||||
template(v-if="hasRewardsList")
|
||||
draggable(
|
||||
draggable.reward-items(
|
||||
ref="rewardsList",
|
||||
@update="rewardSorted",
|
||||
@start="rewardDragStart",
|
||||
@end="rewardDragEnd",
|
||||
class="reward-items",
|
||||
)
|
||||
shopItem(
|
||||
v-for="reward in inAppRewards",
|
||||
@@ -76,6 +76,9 @@
|
||||
<style lang="scss" scoped>
|
||||
@import '~client/assets/scss/colors.scss';
|
||||
|
||||
/deep/ .draggable-cursor {
|
||||
cursor: grabbing;
|
||||
}
|
||||
|
||||
.tasks-column {
|
||||
min-height: 556px;
|
||||
@@ -89,7 +92,6 @@
|
||||
margin-top: 16px;
|
||||
}
|
||||
|
||||
|
||||
.reward-items {
|
||||
@supports (display: grid) {
|
||||
display: grid;
|
||||
@@ -335,6 +337,7 @@ export default {
|
||||
showPopovers: true,
|
||||
|
||||
selectedItemToBuy: {},
|
||||
dragging: false,
|
||||
};
|
||||
},
|
||||
created () {
|
||||
@@ -521,9 +524,11 @@ export default {
|
||||
rewardDragStart () {
|
||||
// We need to stop popovers from interfering with our dragging
|
||||
this.showPopovers = false;
|
||||
this.isDragging(true);
|
||||
},
|
||||
rewardDragEnd () {
|
||||
this.showPopovers = true;
|
||||
this.isDragging(false);
|
||||
},
|
||||
quickAdd (ev) {
|
||||
// Add a new line if Shift+Enter Pressed
|
||||
@@ -678,6 +683,14 @@ export default {
|
||||
this.error(e.message);
|
||||
}
|
||||
},
|
||||
isDragging (dragging) {
|
||||
this.dragging = dragging;
|
||||
if (dragging) {
|
||||
document.documentElement.classList.add('draggable-cursor');
|
||||
} else {
|
||||
document.documentElement.classList.remove('draggable-cursor');
|
||||
}
|
||||
},
|
||||
},
|
||||
};
|
||||
</script>
|
||||
|
||||
@@ -20,7 +20,7 @@
|
||||
v-if="isUser && !isRunningYesterdailies",
|
||||
:right="task.type === 'reward'",
|
||||
ref="taskDropdown",
|
||||
v-b-tooltip.hover.top="$t('showMore')"
|
||||
v-b-tooltip.hover.top="$t('options')"
|
||||
)
|
||||
div(slot="dropdown-toggle", draggable=false)
|
||||
.svg-icon.dropdown-icon(v-html="icons.menu")
|
||||
@@ -141,6 +141,11 @@
|
||||
min-width: 0px;
|
||||
overflow-wrap: break-word;
|
||||
|
||||
// markdown p-tag, can't find without /deep/
|
||||
/deep/ p {
|
||||
margin-bottom: 0;
|
||||
}
|
||||
|
||||
&.has-notes {
|
||||
padding-bottom: 4px;
|
||||
}
|
||||
@@ -229,7 +234,7 @@
|
||||
overflow-wrap: break-word;
|
||||
|
||||
&.has-checklist {
|
||||
padding-bottom: 8px;
|
||||
padding-bottom: 2px;
|
||||
}
|
||||
}
|
||||
|
||||
@@ -285,7 +290,7 @@
|
||||
margin-bottom: -3px;
|
||||
min-height: 0px;
|
||||
width: 100%;
|
||||
margin-left: 8px;
|
||||
margin-left: 0;
|
||||
padding-right: 20px;
|
||||
overflow-wrap: break-word;
|
||||
|
||||
@@ -427,7 +432,7 @@
|
||||
border-left: none;
|
||||
}
|
||||
|
||||
.task-control, .reward-control {
|
||||
.task-control:not(.task-disabled-habit-control-inner), .reward-control {
|
||||
cursor: pointer;
|
||||
}
|
||||
|
||||
|
||||
@@ -12,7 +12,7 @@
|
||||
.col-12.col-md-4.offset-md-4
|
||||
.d-flex
|
||||
input.form-control.input-search(type="text", :placeholder="$t('search')", v-model="searchText")
|
||||
button.btn.btn-secondary.dropdown-toggle.ml-2.d-flex.align-items-center(
|
||||
button.btn.btn-secondary.dropdown-toggle.ml-2.d-flex.align-items-center.search-button(
|
||||
type="button",
|
||||
@click="toggleFilterPanel()",
|
||||
:class="{active: selectedTags.length > 0}",
|
||||
@@ -110,6 +110,10 @@
|
||||
padding-top: 16px;
|
||||
}
|
||||
|
||||
.input-search, .search-button {
|
||||
height: 40px;
|
||||
}
|
||||
|
||||
.tasks-navigation {
|
||||
margin-bottom: 20px;
|
||||
}
|
||||
|
||||
@@ -0,0 +1,126 @@
|
||||
<template lang="pug">
|
||||
.progress-container(ref="container", :id="elementId", :class="{condensed}")
|
||||
.svg-icon(v-html="icon")
|
||||
.progress
|
||||
.progress-bar(:class="progressClass", :style="{width: `${percent(value, maxValue)}%`}")
|
||||
span.small-text {{value | statFloor}} / {{maxValue}}
|
||||
b-tooltip.myClass(:target="() => $refs.container", :container="elementId", :title="tooltip", triggers="hover", placement="bottom")
|
||||
</template>
|
||||
|
||||
<style lang="scss" scoped>
|
||||
@import '~client/assets/scss/colors.scss';
|
||||
|
||||
.progress-container {
|
||||
margin-left: 4px;
|
||||
margin-bottom: .5em;
|
||||
height: 24px;
|
||||
|
||||
/deep/ .bs-tooltip-bottom {
|
||||
top: -16px !important
|
||||
}
|
||||
}
|
||||
|
||||
.progress-container > span {
|
||||
color: $header-color;
|
||||
margin-left: 8px;
|
||||
font-style: normal;
|
||||
line-height: 1;
|
||||
}
|
||||
|
||||
.progress-container > .svg-icon {
|
||||
width: 24px;
|
||||
height: 24px;
|
||||
margin-right: 8px;
|
||||
}
|
||||
|
||||
.progress-container > .progress {
|
||||
min-width: 200px;
|
||||
margin: 0px;
|
||||
border-radius: 1px;
|
||||
height: 12px;
|
||||
background-color: $header-dark-background;
|
||||
}
|
||||
|
||||
.progress-container > .progress > .progress-bar {
|
||||
border-radius: 1px;
|
||||
height: 12px;
|
||||
min-width: 0px;
|
||||
}
|
||||
|
||||
.progress-container .svg-icon, .progress-container .progress, .progress-container .small-text {
|
||||
display: inline-block;
|
||||
vertical-align: middle;
|
||||
}
|
||||
|
||||
.progress-container.condensed {
|
||||
> .svg-icon {
|
||||
width: 19px;
|
||||
height: 19px;
|
||||
margin-top: -2px;
|
||||
}
|
||||
|
||||
> .progress {
|
||||
width: 152px;
|
||||
border-radius: 1px;
|
||||
height: 10px;
|
||||
margin-top: 2px;
|
||||
background: $purple-100;
|
||||
}
|
||||
|
||||
> .progress > .progress-bar {
|
||||
border-radius: 1px;
|
||||
height: 10px;
|
||||
}
|
||||
}
|
||||
</style>
|
||||
|
||||
<script>
|
||||
import percent from '../../../common/script/libs/percent';
|
||||
|
||||
export default {
|
||||
props: {
|
||||
icon: {
|
||||
type: String,
|
||||
},
|
||||
value: {
|
||||
type: Number,
|
||||
},
|
||||
maxValue: {
|
||||
type: Number,
|
||||
},
|
||||
tooltip: {
|
||||
type: String,
|
||||
},
|
||||
progressClass: {
|
||||
type: String,
|
||||
},
|
||||
condensed: {
|
||||
type: Boolean,
|
||||
default: false,
|
||||
},
|
||||
},
|
||||
data () {
|
||||
return {
|
||||
elementId: null,
|
||||
};
|
||||
},
|
||||
filters: {
|
||||
statFloor (value) {
|
||||
if (value < 1 && value > 0) {
|
||||
return Math.ceil(value * 10) / 10;
|
||||
} else {
|
||||
return Math.floor(value);
|
||||
}
|
||||
},
|
||||
},
|
||||
methods: {
|
||||
percent,
|
||||
click () {
|
||||
this.$emit('click');
|
||||
},
|
||||
},
|
||||
mounted () {
|
||||
this.elementId = `container_${this._uid}`;
|
||||
},
|
||||
};
|
||||
</script>
|
||||
@@ -324,6 +324,7 @@
|
||||
}
|
||||
|
||||
.progress-container > .progress {
|
||||
border-radius: 1px;
|
||||
background-color: $gray-500;
|
||||
}
|
||||
}
|
||||
@@ -371,8 +372,10 @@
|
||||
|
||||
.progress {
|
||||
height: 8px;
|
||||
border-radius: 1px;
|
||||
|
||||
.progress-bar {
|
||||
border-radius: 1px;
|
||||
background-color: $green-10 !important;
|
||||
}
|
||||
}
|
||||
@@ -495,6 +498,9 @@ export default {
|
||||
async userId () {
|
||||
this.loadUser();
|
||||
},
|
||||
userLoggedIn () {
|
||||
this.loadUser();
|
||||
},
|
||||
},
|
||||
methods: {
|
||||
async loadUser () {
|
||||
|
||||
@@ -48,10 +48,18 @@ export async function like (store, payload) {
|
||||
}
|
||||
|
||||
export async function flag (store, payload) {
|
||||
const url = `/api/v4/groups/${payload.groupId}/chat/${payload.chatId}/flag`;
|
||||
let url = '';
|
||||
|
||||
if (payload.groupId === 'privateMessage') {
|
||||
url = `/api/v4/members/flag-private-message/${payload.chatId}`;
|
||||
} else {
|
||||
url = `/api/v4/groups/${payload.groupId}/chat/${payload.chatId}/flag`;
|
||||
}
|
||||
|
||||
const response = await axios.post(url, {
|
||||
comment: payload.comment,
|
||||
});
|
||||
|
||||
return response.data.data;
|
||||
}
|
||||
|
||||
|
||||
@@ -5,6 +5,7 @@ import axios from 'axios';
|
||||
import { togglePinnedItem as togglePinnedItemOp } from 'common/script/ops/pinnedGearUtils';
|
||||
import changeClassOp from 'common/script/ops/changeClass';
|
||||
import disableClassesOp from 'common/script/ops/disableClasses';
|
||||
import openMysteryItemOp from 'common/script/ops/openMysteryItem';
|
||||
|
||||
export function fetch (store, options = {}) { // eslint-disable-line no-shadow
|
||||
return loadAsyncResource({
|
||||
@@ -127,7 +128,9 @@ export function castSpell (store, params) {
|
||||
return axios.post(spellUrl, data);
|
||||
}
|
||||
|
||||
export function openMysteryItem () {
|
||||
export async function openMysteryItem (store) {
|
||||
let user = store.state.user.data;
|
||||
openMysteryItemOp(user);
|
||||
return axios.post('/api/v4/user/open-mystery-item');
|
||||
}
|
||||
|
||||
|
||||
@@ -8,11 +8,14 @@ module.exports = {
|
||||
|
||||
missingTypeKeyEquip: '"key" and "type" are required parameters.',
|
||||
|
||||
chatIdRequired: 'req.params.chatId must contain a chatId.',
|
||||
messageIdRequired: 'req.params.messageId must contain a message ID.',
|
||||
|
||||
guildsOnlyPaginate: 'Only public guilds support pagination.',
|
||||
guildsPaginateBooleanString: 'req.query.paginate must be a boolean string.',
|
||||
groupIdRequired: 'req.params.groupId must contain a groupId.',
|
||||
groupRemainOrLeaveChallenges: 'req.query.keep must be either "remain-in-challenges" or "leave-challenges"',
|
||||
managerIdRequired: 'req.body.managerId must contain a user ID.',
|
||||
managerIdRequired: 'req.body.managerId must contain a User ID.',
|
||||
noSudoAccess: 'You don\'t have sudo access.',
|
||||
|
||||
eventRequired: '"req.params.event" is required.',
|
||||
@@ -22,6 +25,4 @@ module.exports = {
|
||||
missingCustomerId: 'Missing "req.query.customerId"',
|
||||
missingPaypalBlock: 'Missing "req.session.paypalBlock"',
|
||||
missingSubKey: 'Missing "req.query.sub"',
|
||||
|
||||
messageIdRequired: '\"messageId\" must be a valid UUID.",',
|
||||
};
|
||||
|
||||
@@ -2,9 +2,9 @@
|
||||
"potionText": "Heiltrank",
|
||||
"potionNotes": "Heilt 15 Lebenspunkte (wird sofort angewendet)",
|
||||
"armoireText": "Verzauberter Schrank",
|
||||
"armoireNotesFull": "Öffne den Schrank, um zufällig spezielle Ausrüstung, Erfahrung oder Futter zu erhalten! Verbleibende Ausrüstungsgegenstände:",
|
||||
"armoireNotesFull": "Öffne den Schrank, um zufällig spezielle Ausrüstung, Erfahrung oder Futter zu erhalten! Verbleibende Ausrüstungsgegenstände: ",
|
||||
"armoireLastItem": "Du hast das letzte Stück seltener Ausrüstung im verzauberten Schrank gefunden.",
|
||||
"armoireNotesEmpty": "Im verzauberten Schrank gibt es jeweils in der ersten Woche eines Monats neue Ausrüstung. Bis dahin, klicke weiter für Erfahrung und Futter.",
|
||||
"armoireNotesEmpty": "Im verzauberten Schrank gibt es jeweils in der ersten Woche eines Monats neue Ausrüstung. Bis dahin, klicke weiter für Erfahrung und Futter!",
|
||||
"dropEggWolfText": "Wolfsjunges",
|
||||
"dropEggWolfMountText": "Wolfs-Reittier",
|
||||
"dropEggWolfAdjective": "ein treues",
|
||||
@@ -291,7 +291,7 @@
|
||||
"foodCandyWhite": "Vanillebonbon",
|
||||
"foodCandyWhiteThe": "das Vanillebonbon",
|
||||
"foodCandyWhiteA": "ein Vanillebonbon",
|
||||
"foodCandyGolden": "Honigbonbon",
|
||||
"foodCandyGolden": "Honigbonbon ",
|
||||
"foodCandyGoldenThe": "das Honigbonbon",
|
||||
"foodCandyGoldenA": "ein Honigbonbon",
|
||||
"foodCandyZombie": "Verrottetes Bonbon",
|
||||
@@ -306,5 +306,6 @@
|
||||
"foodSaddleText": "Magischer Sattel",
|
||||
"foodSaddleNotes": "Lässt eines Deiner Haustiere augenblicklich zum Reittier heranwachsen.",
|
||||
"foodSaddleSellWarningNote": "Hey! Das ist ein sehr nützlicher Gegenstand! Bist Du vertraut damit, wie Du den Sattel mit Deinen Haustieren nutzt?",
|
||||
"foodNotes": "Verfüttere das an ein Haustier und es wächst bald zu einem kräftigen Reittier heran."
|
||||
}
|
||||
"foodNotes": "Verfüttere das an ein Haustier und es wächst bald zu einem kräftigen Reittier heran.",
|
||||
"hatchingPotionRoseQuartz": "Rosenquarz"
|
||||
}
|
||||
|
||||
@@ -84,7 +84,7 @@
|
||||
"resetDo": "Ja, setzt mein Konto jetzt zurück!",
|
||||
"resetComplete": "Zurückgesetzt!",
|
||||
"fixValues": "Werte reparieren",
|
||||
"fixValuesText1": "Wenn Du Opfer eines Bugs geworden bist oder einen Fehler gemacht hast, der Deinen Charakter unfair beeinflusst hat (Schaden, den Du nicht hättest erleiden dürfen, Gold das Du nicht verdient hast, usw.), dann kannst Du das hier manuell korrigieren. Ja, das eröffnet die Möglichkeit zu cheaten: Verwende dieses Feature mit Bedacht, oder Du verdirbst Dir das Ausbilden Deiner Gewohnheiten! ",
|
||||
"fixValuesText1": "Wenn Du Opfer eines Bugs geworden bist oder einen Fehler gemacht hast, der Deinen Charakter unfair beeinflusst hat (Schaden, den Du nicht hättest erleiden dürfen, Gold das Du nicht verdient hast, usw.), dann kannst Du das hier manuell korrigieren. Ja, das eröffnet die Möglichkeit zu cheaten: Verwende dieses Feature mit Bedacht, oder Du verdirbst Dir das Ausbilden Deiner Gewohnheiten!",
|
||||
"fixValuesText2": "Beachte, dass Du hier keine Strähnen einzelner Aufgaben wiederherstellen kannst. Um das zu tun, bearbeite eine Tagesaufgabe unter erweiterte Optionen. Dort wirst Du ein \"Strähne wiederherstellen\"-Feld finden.",
|
||||
"disabledWinterEvent": "Während des Winter-Wunderland-Events Teil 4 geschlossen (Weil die Belohnungen mit Gold erworben werden).",
|
||||
"fix21Streaks": "21-Tage-Strähnen",
|
||||
@@ -205,4 +205,4 @@
|
||||
"usernameNotVerified": "Bitte bestätige Deinen Benutzernamen.",
|
||||
"changeUsernameDisclaimer": "Wir werden bald die Anmeldenamen zu eindeutigen, öffentlichen Benutzernamen umstellen. Dieser Benutzername wird für Einladungen, @Erwähnungen im Chat und Nachrichten verwendet werden.",
|
||||
"verifyUsernameVeteranPet": "Eines dieser Veteranen-Haustiere wartet auf Dich wenn Du die Bestätigung abgeschlossen hast"
|
||||
}
|
||||
}
|
||||
|
||||
@@ -473,5 +473,13 @@
|
||||
"backgroundOldFashionedBakeryText": "Old-Fashioned Bakery",
|
||||
"backgroundOldFashionedBakeryNotes": "Enjoy delicious smells outside an Old-Fashioned Bakery.",
|
||||
"backgroundValentinesDayFeastingHallText": "Valentine's Day Feasting Hall",
|
||||
"backgroundValentinesDayFeastingHallNotes": "Feel the love in a Valentine's Day Feasting Hall."
|
||||
"backgroundValentinesDayFeastingHallNotes": "Feel the love in a Valentine's Day Feasting Hall.",
|
||||
|
||||
"backgrounds032019": "SET 58: Released March 2019",
|
||||
"backgroundDuckPondText": "Duck Pond",
|
||||
"backgroundDuckPondNotes": "Feed aquatic birds at the Duck Pond.",
|
||||
"backgroundFieldWithColoredEggsText": "Field with Colored Eggs",
|
||||
"backgroundFieldWithColoredEggsNotes": "Hunt for springtime treasure in a Field with Colored Eggs.",
|
||||
"backgroundFlowerMarketText": "Flower Market",
|
||||
"backgroundFlowerMarketNotes": "Find the perfect colors for bouquet or garden in a Flower Market."
|
||||
}
|
||||
|
||||
@@ -3,7 +3,7 @@
|
||||
"potionNotes": "Recover 15 Health (Instant Use)",
|
||||
|
||||
"armoireText": "Enchanted Armoire",
|
||||
"armoireNotesFull": "Open the Armoire to randomly receive special Equipment, Experience, or food! Equipment pieces remaining: ",
|
||||
"armoireNotesFull": "Open the Armoire to randomly receive special Equipment, Experience, or food! Equipment pieces remaining:",
|
||||
"armoireLastItem": "You've found the last piece of rare Equipment in the Enchanted Armoire.",
|
||||
"armoireNotesEmpty": "The Armoire will have new Equipment in the first week of every month. Until then, keep clicking for Experience and Food!",
|
||||
|
||||
@@ -364,7 +364,7 @@
|
||||
"foodCandyWhite": "Vanilla Candy",
|
||||
"foodCandyWhiteThe": "the Vanilla Candy",
|
||||
"foodCandyWhiteA": "Vanilla Candy",
|
||||
"foodCandyGolden": "Honey Candy ",
|
||||
"foodCandyGolden": "Honey Candy",
|
||||
"foodCandyGoldenThe": "the Honey Candy",
|
||||
"foodCandyGoldenA": "Honey Candy",
|
||||
"foodCandyZombie": "Rotten Candy",
|
||||
|
||||
@@ -23,6 +23,7 @@
|
||||
"communityBug": "Submit Bug",
|
||||
"communityExtensions": "<a href='http://habitica.fandom.com/wiki/Extensions,_Add-Ons,_and_Customizations' target='_blank'>Add-ons & Extensions</a>",
|
||||
"communityFacebook": "Facebook",
|
||||
"communityInstagram": "Instagram",
|
||||
"communityFeature": "Request Feature",
|
||||
"communityForum": "<a target='_blank' href='http://habitica.fandom.com/wiki/Special:Forum'>Forum</a>",
|
||||
"communityKickstarter": "Kickstarter",
|
||||
|
||||
@@ -406,7 +406,9 @@
|
||||
"weaponArmoireArcaneScrollText": "Arcane Scroll",
|
||||
"weaponArmoireArcaneScrollNotes": "This ancient To-Do list is filled with strange symbols and spells from a forgotten age. Increases Intelligence by <%= int %>. Enchanted Armoire: Scribe Set (Item 3 of 3).",
|
||||
"weaponArmoireChefsSpoonText": "Chef's Spoon",
|
||||
"weaponArmoireChefsSpoonNotes": "Raise it as you release your battle cry: “SPOOOON!!” Increases Intelligence by <%= int %>. Enchanted Armoire: Chef Set (Item 3 of 4). ",
|
||||
"weaponArmoireChefsSpoonNotes": "Raise it as you release your battle cry: “SPOOOON!!” Increases Intelligence by <%= int %>. Enchanted Armoire: Chef Set (Item 3 of 4).",
|
||||
"weaponArmoireVernalTaperText": "Vernal Taper",
|
||||
"weaponArmoireVernalTaperNotes": "The days are getting longer, but this candle will help you find your way before sunrise. Increases Constitution by <%= con %>. Enchanted Armoire: Vernal Vestments Set (Item 3 of 3).",
|
||||
|
||||
"armor": "armor",
|
||||
"armorCapitalized": "Armor",
|
||||
@@ -881,7 +883,9 @@
|
||||
"armorArmoireScribesRobeText": "Scribe's Robes",
|
||||
"armorArmoireScribesRobeNotes": "These velvety robes are woven with inspirational and motivational magic. Increases Perception and Intelligence by <%= attrs %> each. Enchanted Armoire: Scribe Set (Item 1 of 3).",
|
||||
"armorArmoireChefsJacketText": "Chef's Jacket",
|
||||
"armorArmoireChefsJacketNotes": "This thick cotton jacket is double-breasted to protect you from spills (and conveniently reversible…). Increases Intelligence by <%= int %>. Enchanted Armoire: Chef Set (Item 2 of 4). ",
|
||||
"armorArmoireChefsJacketNotes": "This thick cotton jacket is double-breasted to protect you from spills (and conveniently reversible…). Increases Intelligence by <%= int %>. Enchanted Armoire: Chef Set (Item 2 of 4).",
|
||||
"armorArmoireVernalVestmentText": "Vernal Vestment",
|
||||
"armorArmoireVernalVestmentNotes": "This silky garment is perfect for enjoying mild spring weather in style. Increases Strength and Intelligence by <%= attrs %> each. Enchanted Armoire: Vernal Vestments Set (Item 2 of 3).",
|
||||
|
||||
"headgear": "helm",
|
||||
"headgearCapitalized": "Headgear",
|
||||
@@ -1366,7 +1370,9 @@
|
||||
"headArmoireVeilOfSpadesText": "Veil of Spades",
|
||||
"headArmoireVeilOfSpadesNotes": "A shadowy and mysterious veil that will boost your stealth. Increases Perception by <%= per %>. Enchanted Armoire: Ace of Spades Set (Item 1 of 3).",
|
||||
"headArmoireToqueBlancheText": "Toque Blanche",
|
||||
"headArmoireToqueBlancheNotes": "According to legend, the number of folds in this hat indicate the number of ways you know how to cook an egg! Is it accurate? Increases Perception by <%= per %>. Enchanted Armoire: Chef Set (Item 1 of 4). ",
|
||||
"headArmoireToqueBlancheNotes": "According to legend, the number of folds in this hat indicate the number of ways you know how to cook an egg! Is it accurate? Increases Perception by <%= per %>. Enchanted Armoire: Chef Set (Item 1 of 4).",
|
||||
"headArmoireVernalHenninText": "Vernal Hennin",
|
||||
"headArmoireVernalHenninNotes": "More than just a pretty hat, this conical chapeau can also hold a rolled-up To-Do list inside. Increases Perception by <%= per %>. Enchanted Armoire: Vernal Vestments Set (Item 1 of 3).",
|
||||
|
||||
"offhand": "off-hand item",
|
||||
"offhandCapitalized": "Off-Hand Item",
|
||||
|
||||
@@ -34,6 +34,7 @@
|
||||
"saveEdits": "Save Edits",
|
||||
"showMore": "Show More",
|
||||
"showLess": "Show Less",
|
||||
"options": "Options",
|
||||
|
||||
"expandToolbar": "Expand Toolbar",
|
||||
"collapseToolbar": "Collapse Toolbar",
|
||||
|
||||
@@ -162,6 +162,7 @@
|
||||
"abuseFlagModalBody": "Are you sure you want to report this post? You should <strong>only</strong> report a post that violates the <%= firstLinkStart %>Community Guidelines<%= linkEnd %> and/or <%= secondLinkStart %>Terms of Service<%= linkEnd %>. Inappropriately reporting a post is a violation of the Community Guidelines and may give you an infraction.",
|
||||
"abuseFlagModalButton": "Report Violation",
|
||||
"abuseReported": "Thank you for reporting this violation. The moderators have been notified.",
|
||||
"pmReported": "Thank you for reporting this message.",
|
||||
"abuseAlreadyReported": "You have already reported this message.",
|
||||
"whyReportingPost": "Why are you reporting this post?",
|
||||
"whyReportingPostPlaceholder": "Please help our moderators by letting us know why you are reporting this post for a violation, e.g., spam, swearing, religious oaths, bigotry, slurs, adult topics, violence.",
|
||||
@@ -230,9 +231,9 @@
|
||||
"memberCannotRemoveYourself": "You cannot remove yourself!",
|
||||
"groupMemberNotFound": "User not found among group's members",
|
||||
"mustBeGroupMember": "Must be member of the group.",
|
||||
"canOnlyInviteEmailUuid": "Can only invite using user IDs, emails, or usernames.",
|
||||
"canOnlyInviteEmailUuid": "Can only invite using User IDs, emails, or usernames.",
|
||||
"inviteMissingEmail": "Missing email address in invite.",
|
||||
"inviteMissingUuid": "Missing user id in invite",
|
||||
"inviteMissingUuid": "Missing User ID in invite",
|
||||
"inviteMustNotBeEmpty": "Invite must not be empty.",
|
||||
"partyMustbePrivate": "Parties must be private",
|
||||
"userAlreadyInGroup": "UserID: <%= userId %>, User \"<%= username %>\" already in that group.",
|
||||
|
||||
@@ -45,7 +45,7 @@
|
||||
"messageAuthEmailTaken": "Email already taken",
|
||||
"messageAuthNoUserFound": "No user found.",
|
||||
"messageAuthMustBeLoggedIn": "You must be logged in.",
|
||||
"messageAuthMustIncludeTokens": "You must include a token and uid (user id) in your request",
|
||||
"messageAuthMustIncludeTokens": "You must include a token and uid (User ID) in your request",
|
||||
|
||||
"messageGroupAlreadyInParty": "Already in a party, try refreshing.",
|
||||
"messageGroupOnlyLeaderCanUpdate": "Only the group leader can update the group!",
|
||||
@@ -71,6 +71,7 @@
|
||||
"beginningOfConversation": "This is the beginning of your conversation with <%= userName %>. Remember to be kind, respectful, and follow the Community Guidelines!",
|
||||
|
||||
"messageDeletedUser": "Sorry, this user has deleted their account.",
|
||||
|
||||
"messageMissingDisplayName": "Missing display name."
|
||||
"messageMissingDisplayName": "Missing display name.",
|
||||
"reportedMessage": "You have reported this message to moderators.",
|
||||
"canDeleteNow": "You can now delete the message if you wish."
|
||||
}
|
||||
|
||||
@@ -408,5 +408,7 @@
|
||||
"backgroundArchaeologicalDigText": "Escavação Arqueológica",
|
||||
"backgroundArchaeologicalDigNotes": "Desenterre segredos de um passado remoto em uma Escavação Arqueológica.",
|
||||
"backgroundScribesWorkshopText": "Oficina do Escriba",
|
||||
"backgroundScribesWorkshopNotes": "Escreva seu próximo grande pergaminho na Oficina do Escriba."
|
||||
}
|
||||
"backgroundScribesWorkshopNotes": "Escreva seu próximo grande pergaminho na Oficina do Escriba.",
|
||||
"backgrounds022019": "Conjunto 57: Lançado em Fevereiro de 2019",
|
||||
"backgroundMedievalKitchenText": "Cozinheiro Medieval"
|
||||
}
|
||||
|
||||
@@ -92,7 +92,7 @@
|
||||
"backgroundDriftingRaftText": "Дрейфующий плот",
|
||||
"backgroundDriftingRaftNotes": "Поплавайте на дрейфующем плоте.",
|
||||
"backgroundShimmeryBubblesText": "Блестящие пузыри",
|
||||
"backgroundShimmeryBubblesNotes": "Переплывите море Блестящих пузырей",
|
||||
"backgroundShimmeryBubblesNotes": "Переплывите море Блестящих пузырей.",
|
||||
"backgroundIslandWaterfallsText": "Остров Водопадов",
|
||||
"backgroundIslandWaterfallsNotes": "Устройте пикник на Острове Водопадов.",
|
||||
"backgrounds072015": "Набор 14: Выпущен в июле 2015",
|
||||
@@ -111,7 +111,7 @@
|
||||
"backgroundTwinklyPartyLightsNotes": "Танцуйте под мерцающими праздничными огоньками!",
|
||||
"backgrounds092015": "Набор 16: Выпущен в сентябре 2015",
|
||||
"backgroundMarketText": "Рынок Habitica",
|
||||
"backgroundMarketNotes": "Покупайте на рынке Habitica",
|
||||
"backgroundMarketNotes": "Покупайте на рынке Habitica.",
|
||||
"backgroundStableText": "Стойла Habitica",
|
||||
"backgroundStableNotes": "Заботьтесь о скакунах в стойлах Habitica.",
|
||||
"backgroundTavernText": "Таверна Habitica",
|
||||
@@ -157,7 +157,7 @@
|
||||
"backgroundRainforestText": "Тропический лес",
|
||||
"backgroundRainforestNotes": "Отправьтесь в тропический лес.",
|
||||
"backgroundStoneCircleText": "Круг Каменных глыб",
|
||||
"backgroundStoneCircleNotes": "Творите заклинания в круге Каменных глыб!",
|
||||
"backgroundStoneCircleNotes": "Творите заклинания в круге каменных глыб!",
|
||||
"backgrounds042016": "Набор 23: Выпущен в апреле 2016",
|
||||
"backgroundArcheryRangeText": "Лучное стрельбище",
|
||||
"backgroundArcheryRangeNotes": "Практикуйтесь на лучном стрельбище.",
|
||||
@@ -165,7 +165,7 @@
|
||||
"backgroundGiantFlowersNotes": "Веселитесь над Гигантскими Цветами.",
|
||||
"backgroundRainbowsEndText": "Там, где кончается радуга",
|
||||
"backgroundRainbowsEndNotes": "Отыщите золото там, где кончается радуга.",
|
||||
"backgrounds052016": "Набор 24: Выпущен в Мае 2016",
|
||||
"backgrounds052016": "Набор 24: Выпущен в мае 2016",
|
||||
"backgroundBeehiveText": "Пчелиный улей",
|
||||
"backgroundBeehiveNotes": "Жужжите и танцуйте в Пчелином улье.",
|
||||
"backgroundGazeboText": "Беседка",
|
||||
@@ -207,12 +207,12 @@
|
||||
"backgroundStrangeSewersNotes": "Пройдите сквозь Странные стоки.",
|
||||
"backgroundRainyCityText": "Дождливый город",
|
||||
"backgroundRainyCityNotes": "Шлепайте по лужам Дождливого города.",
|
||||
"backgrounds112016": "Набор 30: Выпущен в октябре 2016",
|
||||
"backgrounds112016": "Набор 30: Выпущен в ноябре 2016",
|
||||
"backgroundMidnightCloudsText": "Полуночные облака",
|
||||
"backgroundMidnightCloudsNotes": "Совершите полет сквозь Полуночные Облака.",
|
||||
"backgroundStormyRooftopsText": "Крыши, открытые всем ветрам",
|
||||
"backgroundStormyRooftopsNotes": "Преодолейте путь по Крышам, открытым всем ветрам.",
|
||||
"backgroundWindyAutumnText": "Ветренная Осень ",
|
||||
"backgroundWindyAutumnText": "Ветреная осень",
|
||||
"backgroundWindyAutumnNotes": "Ветреная Осень — время гоняться за листьями.",
|
||||
"incentiveBackgrounds": "Набор простых фонов",
|
||||
"backgroundVioletText": "Фиолетовый",
|
||||
@@ -243,26 +243,26 @@
|
||||
"backgroundStoikalmVolcanoesNotes": "Исследуйте Стойкальмский вулкан.",
|
||||
"backgrounds022017": "Набор 33: Выпущен в феврале 2017",
|
||||
"backgroundBellTowerText": "Колокольня",
|
||||
"backgroundBellTowerNotes": "Поднимитесь на Колокольню",
|
||||
"backgroundBellTowerNotes": "Поднимитесь на колокольню.",
|
||||
"backgroundTreasureRoomText": "Сокровищница",
|
||||
"backgroundTreasureRoomNotes": "Окунитесь в роскошь Сокровищницы",
|
||||
"backgroundTreasureRoomNotes": "Окунитесь в роскошь сокровищницы.",
|
||||
"backgroundWeddingArchText": "Свадебная Арка",
|
||||
"backgroundWeddingArchNotes": "Покрасуйтесь под Свадебной Аркой",
|
||||
"backgroundWeddingArchNotes": "Покрасуйтесь под свадебной аркой.",
|
||||
"backgrounds032017": "Набор 34: Выпущен в марте 2017",
|
||||
"backgroundMagicBeanstalkText": "Волшебный бобовый стебель",
|
||||
"backgroundMagicBeanstalkNotes": "Подняться по Волшебному Бобовому Стеблю",
|
||||
"backgroundMagicBeanstalkNotes": "Поднимитесь по волшебному бобовому стеблю.",
|
||||
"backgroundMeanderingCaveText": "Извилистая пещера",
|
||||
"backgroundMeanderingCaveNotes": "Исследуйте Извилистую пещеру",
|
||||
"backgroundMeanderingCaveNotes": "Исследуйте извилистую пещеру.",
|
||||
"backgroundMistiflyingCircusText": "Мистический Цирк",
|
||||
"backgroundMistiflyingCircusNotes": "Пирушка в Мистическом Цирке",
|
||||
"backgrounds042017": "Набор 35: Выпущен в Апреле 2017",
|
||||
"backgroundMistiflyingCircusNotes": "Попируйте в мистическом цирке.",
|
||||
"backgrounds042017": "Набор 35: Выпущен в апреле 2017",
|
||||
"backgroundBugCoveredLogText": "Покрытое жучками бревно",
|
||||
"backgroundBugCoveredLogNotes": "Исследуйте покрытое жучками бревно.",
|
||||
"backgroundGiantBirdhouseText": "Гигантский скворечник ",
|
||||
"backgroundGiantBirdhouseNotes": "Взгромоздиться на птичий скворечник",
|
||||
"backgroundGiantBirdhouseText": "Гигантский скворечник",
|
||||
"backgroundGiantBirdhouseNotes": "Взгромоздитесь на птичий скворечник.",
|
||||
"backgroundMistShroudedMountainText": "Туманная гора",
|
||||
"backgroundMistShroudedMountainNotes": "Встреча на вершине Туманной горы.",
|
||||
"backgrounds052017": "Набор 36: Выпущен в Мае 2017",
|
||||
"backgrounds052017": "Набор 36: Выпущен в мае 2017",
|
||||
"backgroundGuardianStatuesText": "Статуи стражей",
|
||||
"backgroundGuardianStatuesNotes": "Встаньте на дежурство перед Статуями Стражей.",
|
||||
"backgroundHabitCityStreetsText": "Улицы города Habit",
|
||||
@@ -276,11 +276,11 @@
|
||||
"backgroundOceanSunriseNotes": "Восхититься рассветом у океана.",
|
||||
"backgroundSandcastleText": "Замок из песка",
|
||||
"backgroundSandcastleNotes": "Править замком из песка.",
|
||||
"backgrounds072017": "Набор 38: выпущен в июле 2017 года",
|
||||
"backgrounds072017": "Набор 38: Выпущен в июле 2017",
|
||||
"backgroundGiantSeashellText": "Огромная ракушка",
|
||||
"backgroundGiantSeashellNotes": "Развалитесь в огромной ракушке.",
|
||||
"backgroundKelpForestText": "Лес вородослей",
|
||||
"backgroundKelpForestNotes": "Проплывите по лесу из водорослей",
|
||||
"backgroundKelpForestNotes": "Проплывите по лесу из водорослей.",
|
||||
"backgroundMidnightLakeText": "Полуночное озеро",
|
||||
"backgroundMidnightLakeNotes": "Отдохните в полночь у озера.",
|
||||
"backgrounds082017": "Набор 39: Выпущен в августе 2017",
|
||||
@@ -288,9 +288,9 @@
|
||||
"backgroundBackOfGiantBeastNotes": "Ехать на Спине Гиганта.",
|
||||
"backgroundDesertDunesText": "Пустынные дюны",
|
||||
"backgroundDesertDunesNotes": "Смело обследовать Пустынные Дюны.",
|
||||
"backgroundSummerFireworksText": "Летние фейерверки ",
|
||||
"backgroundSummerFireworksText": "Летние фейерверки",
|
||||
"backgroundSummerFireworksNotes": "Отпраздновать День Именования Habitica летними фейерверками!",
|
||||
"backgrounds092017": "Набор 40: выпущен в сентябре 2017",
|
||||
"backgrounds092017": "Набор 40: Выпущен в сентябре 2017",
|
||||
"backgroundBesideWellText": "Возле колодца",
|
||||
"backgroundBesideWellNotes": "Прогуляйтесь возле колодца.",
|
||||
"backgroundGardenShedText": "Сарай в саду",
|
||||
@@ -306,11 +306,11 @@
|
||||
"backgroundTarPitsNotes": "Пройдитесь на цыпочках по смоляным ямам.",
|
||||
"backgrounds112017": "Набор 42: Выпущен в ноябре 2017",
|
||||
"backgroundFiberArtsRoomText": "Прядильная комната",
|
||||
"backgroundFiberArtsRoomNotes": "Сплетите нить в прядильной комнате",
|
||||
"backgroundFiberArtsRoomNotes": "Сплетите нить в прядильной комнате.",
|
||||
"backgroundMidnightCastleText": "Полуночной замок",
|
||||
"backgroundMidnightCastleNotes": "Совершите ночную прогулку у замка.",
|
||||
"backgroundTornadoText": "Торнадо",
|
||||
"backgroundTornadoNotes": "Пролетите сквозь торнадо",
|
||||
"backgroundTornadoNotes": "Пролетите сквозь торнадо.",
|
||||
"backgrounds122017": "Набор 43: Выпущен в декабре 2017",
|
||||
"backgroundCrosscountrySkiTrailText": "Лыжная трасса в лесу",
|
||||
"backgroundCrosscountrySkiTrailNotes": "Проскользите по Лыжной трассе в лесу.",
|
||||
@@ -339,35 +339,35 @@
|
||||
"backgroundElegantBalconyNotes": "Осмотрите пейзаж с Элегантного балкона.",
|
||||
"backgroundDrivingACoachText": "Кучер повозки",
|
||||
"backgroundDrivingACoachNotes": "Наслаждайтесь видом на поля цветов, управляя повозкой.",
|
||||
"backgrounds042018": "Набор 47: Выпущен в Апреле 2018",
|
||||
"backgrounds042018": "Набор 47: Выпущен в апреле 2018",
|
||||
"backgroundTulipGardenText": "Сад тюльпанов",
|
||||
"backgroundTulipGardenNotes": "Пройдитесь на цыпочках через Сад Тюльпанов.",
|
||||
"backgroundFlyingOverWildflowerFieldText": "Поле цветов",
|
||||
"backgroundFlyingOverWildflowerFieldNotes": "Парите над полем цветов.",
|
||||
"backgroundFlyingOverAncientForestText": "Древний лес",
|
||||
"backgroundFlyingOverAncientForestNotes": "Летите над куполом Древнего Леса.",
|
||||
"backgrounds052018": "Набор 48: Выпущен в Мае 2018",
|
||||
"backgrounds052018": "Набор 48: Выпущен в мае 2018",
|
||||
"backgroundTerracedRiceFieldText": "Рисовое поле",
|
||||
"backgroundTerracedRiceFieldNotes": "Насладитесь усеянным рисовым полем в сезон созревания",
|
||||
"backgroundTerracedRiceFieldNotes": "Насладитесь усеянным рисовым полем в сезон созревания.",
|
||||
"backgroundFantasticalShoeStoreText": "Удивительная обувная лавка",
|
||||
"backgroundFantasticalShoeStoreNotes": "Найдите себе новую пару обуви в Удивительной обувной лавке.",
|
||||
"backgroundChampionsColosseumText": "Колизей Чемпионов",
|
||||
"backgroundChampionsColosseumNotes": "Окунитесь в лучах славы на Колизеи Чемпионов.",
|
||||
"backgrounds062018": "Набор 49: Выпущен в Июне 2018",
|
||||
"backgrounds062018": "Набор 49: Выпущен в июне 2018",
|
||||
"backgroundDocksText": "Причал",
|
||||
"backgroundDocksNotes": "Рыбачить с поверхности причала",
|
||||
"backgroundDocksNotes": "Порыбачьте на причале.",
|
||||
"backgroundRowboatText": "Гребная лодка",
|
||||
"backgroundRowboatNotes": "Петь песни в гребной лодке",
|
||||
"backgroundRowboatNotes": "Спойте в гребной лодке.",
|
||||
"backgroundPirateFlagText": "Пиратский флаг",
|
||||
"backgroundPirateFlagNotes": "Расправить устрашающий Пиратский флаг",
|
||||
"backgrounds072018": "Набор 50: Выпущен в Июле 2018",
|
||||
"backgroundPirateFlagNotes": "Расправьте устрашающий пиратский флаг.",
|
||||
"backgrounds072018": "Набор 50: Выпущен в июле 2018",
|
||||
"backgroundDarkDeepText": "Темные глубины",
|
||||
"backgroundDarkDeepNotes": "Ныряйте в темные глубины среди светящихся обитателей.",
|
||||
"backgroundDilatoryCityText": "Город Промедления",
|
||||
"backgroundDilatoryCityNotes": "Побродите по подводному городу Промедления.",
|
||||
"backgroundTidePoolText": "Приливной бассейн",
|
||||
"backgroundTidePoolNotes": "Исследуйте морскую фауну возле приливного бассейна.",
|
||||
"backgrounds082018": "Набор 51: Выпущен в Августе 2018",
|
||||
"backgrounds082018": "Набор 51: Выпущен в августе 2018",
|
||||
"backgroundTrainingGroundsText": "Тренировочная площадка",
|
||||
"backgroundTrainingGroundsNotes": "Сразитесь на тренировочной площадке.",
|
||||
"backgroundFlyingOverRockyCanyonText": "Скалистый каньон",
|
||||
@@ -381,7 +381,7 @@
|
||||
"backgroundGiantBookNotes": "Прочтите гигантскую книгу, пройдя по её страницам.",
|
||||
"backgroundCozyBarnText": "Уютный амбар",
|
||||
"backgroundCozyBarnNotes": "Отдохните со своими питомцами и скакунами в вашем уютном амбаре.",
|
||||
"backgrounds102018": "Набор 53: Выпущен в Октябре 2018",
|
||||
"backgrounds102018": "Набор 53: Выпущен в октябре 2018",
|
||||
"backgroundBayouText": "Болото",
|
||||
"backgroundBayouNotes": "Насладитесь блеском светлячков на болоте.",
|
||||
"backgroundCreepyCastleText": "Пугающий замок",
|
||||
@@ -408,5 +408,12 @@
|
||||
"backgroundArchaeologicalDigText": "Археологические раскопки",
|
||||
"backgroundArchaeologicalDigNotes": "Раскройте тайны древнего прошлого на археологических раскопках.",
|
||||
"backgroundScribesWorkshopText": "Мастерская писца",
|
||||
"backgroundScribesWorkshopNotes": "Напишите свой следующий великий свиток в мастерской писца."
|
||||
}
|
||||
"backgroundScribesWorkshopNotes": "Напишите свой следующий великий свиток в мастерской писца.",
|
||||
"backgrounds022019": "Набор 57: Выпущен в феврале 2019",
|
||||
"backgroundMedievalKitchenText": "Средневековая кухня",
|
||||
"backgroundMedievalKitchenNotes": "Приготовьте бурю на средневековой кухне.",
|
||||
"backgroundOldFashionedBakeryText": "Старомодная пекарня",
|
||||
"backgroundOldFashionedBakeryNotes": "Насладитесь вкусными запахами из старомодной пекарни.",
|
||||
"backgroundValentinesDayFeastingHallText": "Праздничный зал Дня святого Валентина",
|
||||
"backgroundValentinesDayFeastingHallNotes": "Почувствуйте любовь в праздничном зале Дня святого Валентина."
|
||||
}
|
||||
|
||||
@@ -87,7 +87,7 @@
|
||||
"onlyLeaderUpdateChal": "Только лидер испытания может обновить его.",
|
||||
"winnerNotFound": "Победитель с ID \"<%= userId %>\" не найден или не участвует в этом испытании.",
|
||||
"noCompletedTodosChallenge": "\"includeCompletedTodos\" не поддерживается при получении заданий испытания.",
|
||||
"userTasksNoChallengeId": "Когда \"tasksOwner\" - \"user\", \"challengeId\" не может быть передано",
|
||||
"userTasksNoChallengeId": "Когда \"tasksOwner\" - \"user\", \"challengeId\" не может быть передано.",
|
||||
"onlyChalLeaderEditTasks": "Задания, связанные с испытанием, может редактировать только лидер.",
|
||||
"userAlreadyInChallenge": "Пользователь уже участвует в этом испытании.",
|
||||
"cantOnlyUnlinkChalTask": "Только испорченные задания испытаний могут быть откреплены.",
|
||||
@@ -97,7 +97,7 @@
|
||||
"myChallenges": "Мои испытания",
|
||||
"findChallenges": "Найти испытания",
|
||||
"noChallengeTitle": "У вас нет испытаний.",
|
||||
"challengeDescription1": "Испытания это мероприятия сообщества, в которых игроки получают награду за прохождение групповых заданий",
|
||||
"challengeDescription1": "Испытания – это мероприятия сообщества, в которых игроки получают награду за прохождение групповых заданий.",
|
||||
"challengeDescription2": "Найдите рекомендованные испытания по вашим интересам, посмотрите общедоступные испытания или создайте свое собственное.",
|
||||
"noChallengeMatchFilters": "Не найдены подходящие Испытания.",
|
||||
"createdBy": "Создано",
|
||||
@@ -136,4 +136,4 @@
|
||||
"selectMember": "Выбрать учасника",
|
||||
"confirmKeepChallengeTasks": "Вы хотите оставить задания испытания?",
|
||||
"selectParticipant": "Выбрать участника"
|
||||
}
|
||||
}
|
||||
|
||||
@@ -201,7 +201,7 @@
|
||||
"hatchingPotionThunderstorm": "Грозовой",
|
||||
"hatchingPotionGhost": "Призрачный",
|
||||
"hatchingPotionRoyalPurple": "Королевский пурпурный",
|
||||
"hatchingPotionHolly": "Oстролистный",
|
||||
"hatchingPotionHolly": "Остролистный",
|
||||
"hatchingPotionCupid": "Амурный",
|
||||
"hatchingPotionShimmer": "Мерцающий",
|
||||
"hatchingPotionFairy": "Сказочный",
|
||||
@@ -306,5 +306,6 @@
|
||||
"foodSaddleText": "Седло",
|
||||
"foodSaddleNotes": "Моментально делает одного из питомцев скакуном.",
|
||||
"foodSaddleSellWarningNote": "Эй! Это довольно полезная вещь! Знаете ли вы, как пользоваться седлом?",
|
||||
"foodNotes": "Кормите этим питомца, и он сможет вырасти выносливым скакуном."
|
||||
}
|
||||
"foodNotes": "Кормите этим питомца, и он сможет вырасти выносливым скакуном.",
|
||||
"hatchingPotionRoseQuartz": "Розовый кварцевый"
|
||||
}
|
||||
|
||||
@@ -131,7 +131,7 @@
|
||||
"weaponSpecialSpringHealerText": "Милая косточка",
|
||||
"weaponSpecialSpringHealerNotes": "АПОРТ! Увеличивает интеллект на <%= int %>. Ограниченный выпуск весны 2014.",
|
||||
"weaponSpecialSummerRogueText": "Пиратская сабля",
|
||||
"weaponSpecialSummerRogueNotes": "Встать на якорь! Пусть задания прогуляются по доске! Увеличивает силу на <%= str %>. Ограниченный выпуск лета 2014.",
|
||||
"weaponSpecialSummerRogueNotes": "Тысяча чертей! Заставь свои задания прогуляться по доске! Увеличивает силу на <%= str %>. Ограниченный выпуск лета 2014.",
|
||||
"weaponSpecialSummerWarriorText": "Нож морехода",
|
||||
"weaponSpecialSummerWarriorNotes": "Ни одно задание не посмеет связаться с этим зазубренным ножом! Увеличивает силу на <%= str %>. Ограниченный выпуск лета 2014.",
|
||||
"weaponSpecialSummerMageText": "Ловец ламинарий",
|
||||
@@ -175,8 +175,8 @@
|
||||
"weaponSpecialFall2015WarriorText": "Деревянная доска",
|
||||
"weaponSpecialFall2015WarriorNotes": "Отлично подходит для поднимания вещей в кукурузных полях и/или для расправы с заданиями. Увеличивает силу на <%= str %>. Ограниченный выпуск осени 2015.",
|
||||
"weaponSpecialFall2015MageText": "Волшебная нить",
|
||||
"weaponSpecialFall2015MageNotes": "Властительная Лоскутная Ведьма может управлять этой волшебной нитью, даже не прикасаясь к ней! Увеличивает интеллект на <%= int %> и восприятие на <%= per %>. Ограниченный выпуск осени 2015.",
|
||||
"weaponSpecialFall2015HealerText": "Болотно-слизневое зелье ",
|
||||
"weaponSpecialFall2015MageNotes": "Властительная лоскутная колдунья может управлять этой волшебной нитью, даже не прикасаясь к ней! Увеличивает интеллект на <%= int %> и восприятие на <%= per %>. Ограниченный выпуск осени 2015.",
|
||||
"weaponSpecialFall2015HealerText": "Болотно-слизневое зелье",
|
||||
"weaponSpecialFall2015HealerNotes": "Сварено на славу! Теперь вам только остаётся заставить себя это выпить. Увеличивает интеллект на <%= int %>. Ограниченный выпуск осени 2015.",
|
||||
"weaponSpecialWinter2016RogueText": "Кружка какао",
|
||||
"weaponSpecialWinter2016RogueNotes": "Согревающее питье или раскаленный снаряд? Решать вам... Увеличивает силу на <%= str %>. Ограниченный выпуск зимы 2015-2016.",
|
||||
@@ -197,7 +197,7 @@
|
||||
"weaponSpecialSummer2016RogueText": "Электрический стержень",
|
||||
"weaponSpecialSummer2016RogueNotes": "Тот, кто сражается с вами, получит шокирующий сюрприз... Увеличивает силу на <%= str %>. Ограниченный выпуск лета 2016.",
|
||||
"weaponSpecialSummer2016WarriorText": "Меч с крюками",
|
||||
"weaponSpecialSummer2016WarriorNotes": "Разрубите трудные задачи этим крючковатым мечем! Увеличивает силу на <%= str %>. Ограниченный выпуск лета 2016.",
|
||||
"weaponSpecialSummer2016WarriorNotes": "Разрубите трудные задачи этим крючковатым мечем! Увеличивает силу на <%= str %>. Ограниченный выпуск лета 2016.",
|
||||
"weaponSpecialSummer2016MageText": "Посох морской пены",
|
||||
"weaponSpecialSummer2016MageNotes": "Вся сила морских фильтров протекает в этом посохе. Увеличивает интеллект на <%= int %> и восприятие на <%= per %>. Ограниченный выпуск лета 2016.",
|
||||
"weaponSpecialSummer2016HealerText": "Целительный трезубец",
|
||||
@@ -207,7 +207,7 @@
|
||||
"weaponSpecialFall2016WarriorText": "Корни-убийцы",
|
||||
"weaponSpecialFall2016WarriorNotes": "Расправьтесь с задачами извивающимися корнями! Увеличивают силу на <%= str %>. Ограниченный выпуск осени 2016.",
|
||||
"weaponSpecialFall2016MageText": "Зловещий шар",
|
||||
"weaponSpecialFall2016MageNotes": "Не стоит просить предсказаний у этого шара... Увеличивает интеллект на <%= int %> и восприятие на <%= per %>. Ограниченный выпуск лета 2016.",
|
||||
"weaponSpecialFall2016MageNotes": "Не стоит просить предсказаний у этого шара... Увеличивает интеллект на <%= int %> и восприятие на <%= per %>. Ограниченный выпуск осени 2016.",
|
||||
"weaponSpecialFall2016HealerText": "Ядовитый змей",
|
||||
"weaponSpecialFall2016HealerNotes": "Один укус отравляет, другой лечит. Увеличивает интеллект на <%= int %>. Ограниченный выпуск осени 2016.",
|
||||
"weaponSpecialWinter2017RogueText": "Ледяной топор",
|
||||
@@ -271,7 +271,7 @@
|
||||
"weaponSpecialFall2018WarriorText": "Кнут Минотавра",
|
||||
"weaponSpecialFall2018WarriorNotes": "Не такой длинный, чтобы, распутываясь, провести вас через весь лабиринт. Ну, может, если только лабиринт очень маленький. Увеличивает силу на <%= str %>. Ограниченый выпуск осени 2018.",
|
||||
"weaponSpecialFall2018MageText": "Сладостный посох",
|
||||
"weaponSpecialFall2018MageNotes": "Это не простой леденец! Сияющая сфера из магического сахара на верхушке посоха заставит хорошие привычки к вам буквально прилипнуть. Увеличивает интеллект на<%= int %> и восприятие на <%= per %>. Ограниченный выпуск осени 2018.",
|
||||
"weaponSpecialFall2018MageNotes": "Это не простой леденец! Сияющая сфера из магического сахара на верхушке посоха заставит хорошие привычки к вам буквально прилипнуть. Увеличивает интеллект на <%= int %> и восприятие на <%= per %>. Ограниченный выпуск осени 2018.",
|
||||
"weaponSpecialFall2018HealerText": "Проголодавшийся посох",
|
||||
"weaponSpecialFall2018HealerNotes": "Просто следите, чтобы этот посох был сыт, и он будет одаривать вас Благословениями. Если же вы забыли его покормить, что ж, лучше держите пальцы подальше. Увеличивает интеллект на<%= int %>. Ограниченный выпуск осени 2018.",
|
||||
"weaponSpecialWinter2019RogueText": "Букет из пуансеттии",
|
||||
@@ -462,18 +462,18 @@
|
||||
"armorSpecialCandycaneNotes": "Спрядена из сахара и шелка. Увеличивает интеллект на <%= int %>. Ограниченный выпуск зимы 2013-2014.",
|
||||
"armorSpecialSnowflakeText": "Мантия «Снежинка»",
|
||||
"armorSpecialSnowflakeNotes": "Эта мантия согреет вас даже в пургу и метель. Увеличивает телосложение на <%= con %>. Ограниченный выпуск зимы 2013-2014.",
|
||||
"armorSpecialBirthdayText": "Мантия праздника абсурда",
|
||||
"armorSpecialBirthdayText": "Абсурдная праздничная мантия",
|
||||
"armorSpecialBirthdayNotes": "С днём рождения, Habitica! Примерьте эти нелепые наряды, чтобы отпраздновать этот замечательный день. Бонусов не дает.",
|
||||
"armorSpecialBirthday2015Text": "Глупая Праздничная Мантия",
|
||||
"armorSpecialBirthday2015Text": "Глупая праздничная мантия",
|
||||
"armorSpecialBirthday2015Notes": "С днём рождения, Habitica! Примерьте эти нелепые наряды, чтобы отпраздновать этот замечательный день. Бонусов не дает.",
|
||||
"armorSpecialBirthday2016Text": "Смешная праздничная мантия",
|
||||
"armorSpecialBirthday2016Notes": "С днем рождения, Habitica! Носите эту Смешную праздничную мантию, чтобы отметить этот чудесный день. Бонусов не дает.",
|
||||
"armorSpecialBirthday2017Text": "Причудливая Праздничная Мантия",
|
||||
"armorSpecialBirthday2017Text": "Причудливая праздничная мантия",
|
||||
"armorSpecialBirthday2017Notes": "С днем рождения, Habitica! Носите эту причудливую праздничную мантию, чтобы отметить этот чудесный день. Бонусов не дает.",
|
||||
"armorSpecialBirthday2018Text": "Причудливая праздничная мантия",
|
||||
"armorSpecialBirthday2018Text": "Странная праздничная мантия",
|
||||
"armorSpecialBirthday2018Notes": "С днем рождения, Habitica! Носите эту Странную праздничную мантию, чтобы отметить этот чудесный день. Бонусов не дает.",
|
||||
"armorSpecialBirthday2019Text": "Outlandish Party Robes",
|
||||
"armorSpecialBirthday2019Notes": "Happy Birthday, Habitica! Wear these Outlandish Party Robes to celebrate this wonderful day. Confers no benefit.",
|
||||
"armorSpecialBirthday2019Text": "Диковинная праздничная мантия",
|
||||
"armorSpecialBirthday2019Notes": "С днем рождения, Habitica! Носите эту Диковинную праздничную мантию, чтобы отметить этот чудесный день. Бонусов не дает.",
|
||||
"armorSpecialGaymerxText": "Доспехи радужного воина",
|
||||
"armorSpecialGaymerxNotes": "В честь Конференции GaymerX эти особые доспехи выкрашены в яркие радужные цвета! GaymerX это интернациональная игровая конвенция, поддерживающая ЛГБТ+ сообщества и видео игры. Она открыта каждому!",
|
||||
"armorSpecialSpringRogueText": "Блестящий кошачий костюм",
|
||||
@@ -485,9 +485,9 @@
|
||||
"armorSpecialSpringHealerText": "Облачение пушистого щенка",
|
||||
"armorSpecialSpringHealerNotes": "Теплый и уютный, но способен защитить владельца от урона. Увеличивает телосложение на <%= con %>. Экипировка ограниченного выпуска весны 2014.",
|
||||
"armorSpecialSummerRogueText": "Пиратская роба",
|
||||
"armorSpecialSummerRogueNotes": "В этой удобной робе можно спрятать не одну бутылку рома, аррр! Увеличивает восприятие на <%= per %>. Ограниченный выпуск весны 2014.",
|
||||
"armorSpecialSummerRogueNotes": "В этой удобной робе можно спрятать не одну бутылку рома, ар-р-р! Увеличивает восприятие на <%= per %>. Ограниченный выпуск весны 2014.",
|
||||
"armorSpecialSummerWarriorText": "Роба головореза",
|
||||
"armorSpecialSummerWarriorNotes": "Изящная резьба выглядит эффектно, особенно на чьих-то головах. Добавляет <%= con %> очков к телосложению. Ограниченный выпуск лета 2014.",
|
||||
"armorSpecialSummerWarriorNotes": "Изящная резьба выглядит эффектно, особенно на чьих-то головах. Увеличивает телосложение на <%= con %>. Ограниченный выпуск лета 2014.",
|
||||
"armorSpecialSummerMageText": "Изумрудный хвост",
|
||||
"armorSpecialSummerMageNotes": "Это одеяние из сияющих чешуек наделяет его владельца настоящей магией русалок! Увеличивает интеллект на <%= int %>. Ограниченный выпуск лета 2014.",
|
||||
"armorSpecialSummerHealerText": "Хвост морского целителя",
|
||||
@@ -529,8 +529,8 @@
|
||||
"armorSpecialFall2015WarriorText": "Доспех пугала",
|
||||
"armorSpecialFall2015WarriorNotes": "Эта броня, несмотря на то, что набита соломой, крайне тяжела! Увеличивает телосложение на <%= con %>. Ограниченный выпуск осени 2015.",
|
||||
"armorSpecialFall2015MageText": "Клочковатая роба",
|
||||
"armorSpecialFall2015MageNotes": "Каждый шов в этих доспехах мерцает волшебством. Увеличивает интеллект на <%= int %>. Ограниченный выпуск осени 2015.",
|
||||
"armorSpecialFall2015HealerText": "Облачение знахаря",
|
||||
"armorSpecialFall2015MageNotes": "Каждый шов в этих доспехах мерцает волшебством. Увеличивает интеллект на <%= int %>. Ограниченный выпуск осени 2015.",
|
||||
"armorSpecialFall2015HealerText": "Облачение зельевара",
|
||||
"armorSpecialFall2015HealerNotes": "Что? Конечно, это был эликсир телосложения. Нет, ты совершенно точно НЕ превращаешься в жабу! Не квакай больше. Увеличивает телосложение на <%= con %>. Ограниченный выпуск осени 2015.",
|
||||
"armorSpecialWinter2016RogueText": "Какао-доспехи",
|
||||
"armorSpecialWinter2016RogueNotes": "Эта какао-броня сохраняет тепло и уют. Она на самом деле сделана из какао? Кто знает... Увеличивает восприятие на <%= per %>. Ограниченный выпуск зимы 2015-2016.",
|
||||
@@ -561,7 +561,7 @@
|
||||
"armorSpecialFall2016WarriorText": "Слизистый доспех",
|
||||
"armorSpecialFall2016WarriorNotes": "Влажный и липкий на ощупь! Увеличивает телосложение на <%= con %>. Ограниченный выпуск осени 2016.",
|
||||
"armorSpecialFall2016MageText": "Накидка злорадности",
|
||||
"armorSpecialFall2016MageNotes": "Одевая накидку, слышно злорадный смех. Увеличивает интеллект на <%= int %>. Ограниченный выпуск осени 2016.",
|
||||
"armorSpecialFall2016MageNotes": "Одевая накидку, вы услышите злорадный смех. Увеличивает интеллект на <%= int %>. Ограниченный выпуск осени 2016.",
|
||||
"armorSpecialFall2016HealerText": "Одеяние горгоны",
|
||||
"armorSpecialFall2016HealerNotes": "Оно полностью из камня. Почему оно такое удобное? Увеличивает телосложение на <%= con %>. Ограниченный выпуск осени 2016.",
|
||||
"armorSpecialWinter2017RogueText": "Ледяные доспехи",
|
||||
@@ -589,7 +589,7 @@
|
||||
"armorSpecialSummer2017HealerText": "Серебряный морской хвост",
|
||||
"armorSpecialSummer2017HealerNotes": "Эта одежда из серебряных чешуек превращает своего хозяина в настоящего Морского Целителя! Увеличивает телосложение на <%= con %>. Ограниченный выпуск лета 2017.",
|
||||
"armorSpecialFall2017RogueText": "Тыквенная мантия",
|
||||
"armorSpecialFall2017RogueNotes": "Нужно спрятаться? Ползите у Джеков-Светильников и эта мантия вас скроет! Увеличивает восприятие на <%= per %>. Ограниченный выпуск осени 2017.",
|
||||
"armorSpecialFall2017RogueNotes": "Нужно спрятаться? Проползите среди светильников Джека и эта мантия скроет вас! Увеличивает восприятие на <%= per %>. Ограниченный выпуск осени 2017.",
|
||||
"armorSpecialFall2017WarriorText": "Прочные сладкие доспехи",
|
||||
"armorSpecialFall2017WarriorNotes": "Эти доспехи защитят вас как вкусная корочка конфеты. Увеличивают телосложение на <%= con %>. Ограниченный выпуск осени 2017.",
|
||||
"armorSpecialFall2017MageText": "Маскарадная мантия",
|
||||
@@ -620,7 +620,7 @@
|
||||
"armorSpecialSummer2018MageNotes": "Магия ядов относится к навыкам хитрости. Но броня ярких оттенков, давая ясно понять хищнику: я ядовитый! Увеличивает интеллект на <%= int %>. Ограниченный выпуск лета 2018.",
|
||||
"armorSpecialSummer2018HealerText": "Роба амфибии",
|
||||
"armorSpecialSummer2018HealerNotes": "Эти лазурные облачения приоткрывают тайну, что у вас есть ноги для ходьбы по суше. Ну... Даже монарх не настолько идеальный. Увеличивает телосложение на <%= con %>. Ограниченный выпуск лета 2018.",
|
||||
"armorSpecialFall2018RogueText": "Сюртук Альтер-эго",
|
||||
"armorSpecialFall2018RogueText": "Сюртук альтер эго",
|
||||
"armorSpecialFall2018RogueNotes": "Днем выглядит стильно. Ночью - дарует комфорт и защиту. Увеличивает восприятие на <%= per %>. Ограниченный выпуск осени 2018.",
|
||||
"armorSpecialFall2018WarriorText": "Броня Минотавра",
|
||||
"armorSpecialFall2018WarriorNotes": "И в завершение - копыта, чтобы отбивать успокаивающий ритм, пока вы блуждаете по медитативному лабиринту. Увеличивает телосложение на <%= con %>. Ограниченый выпуск осени 2018.",
|
||||
@@ -898,8 +898,8 @@
|
||||
"headSpecialTurkeyHelmBaseNotes": "Ваш костюм на день благодарения будет закончен с этим шлемом с клювом.",
|
||||
"headSpecialTurkeyHelmGildedText": "Позолоченный индюшачий шлем",
|
||||
"headSpecialTurkeyHelmGildedNotes": "Кулдык-кулдык! Драгоценности! Бонусов не дает.",
|
||||
"headSpecialNyeText": "Шляпа праздника абсурда",
|
||||
"headSpecialNyeNotes": "Вы получили Шляпу Праздника Абсурда! Носите ее с гордостью в Новый год! Бонусов не дает.",
|
||||
"headSpecialNyeText": "Абсурдная праздничная шляпа",
|
||||
"headSpecialNyeNotes": "Вы получили Абсурдную праздничную шляпу! Носите ее с гордостью в Новый год! Бонусов не дает.",
|
||||
"headSpecialYetiText": "Шлем укротителя Йети",
|
||||
"headSpecialYetiNotes": "Восхитительно страшная шляпа. Увеличивает силу на <%= str %>. Ограниченный выпуск зимы 2013-2014.",
|
||||
"headSpecialSkiText": "Шлем лыжника-ассасина",
|
||||
@@ -960,12 +960,12 @@
|
||||
"headSpecialSummer2015HealerNotes": "Надев эту шляпу вы не пропадете даже в самый страшный шторм. Увеличивает интеллект на <%= int %>. Ограниченный выпуск лета 2015.",
|
||||
"headSpecialFall2015RogueText": "Крылья мышехвоста",
|
||||
"headSpecialFall2015RogueNotes": "Ваши враги будут найдены с помощью этой мощной шляпы-эхолота! Увеличивает восприятие на <%= per %>. Ограниченный выпуск осени 2015.",
|
||||
"headSpecialFall2015WarriorText": "Шапка пугала",
|
||||
"headSpecialFall2015WarriorText": "Шляпа пугала",
|
||||
"headSpecialFall2015WarriorNotes": "Все бы хотели эту шляпу... Если бы у них были мозги. Увеличивает силу на <%= str %>. Ограниченный выпуск осени 2015.",
|
||||
"headSpecialFall2015MageText": "Клочковатая шапка",
|
||||
"headSpecialFall2015MageNotes": "Каждый шов в этой шляпе прибавляет ей мощи. Увеличивает восприятие на <%= per %>. Ограниченный выпуск осени 2015.",
|
||||
"headSpecialFall2015HealerText": "Шапка лягухи",
|
||||
"headSpecialFall2015HealerNotes": "Это чрезвычайно серьезная шляпа, которая достойна только самых передовых зельеваров. Увеличивает интеллект на <%= int %>. Ограниченный выпуск осени 2015.",
|
||||
"headSpecialFall2015HealerNotes": "Это чрезвычайно серьезная шапка, которая достойна только самых передовых зельеваров. Увеличивает интеллект на <%= int %>. Ограниченный выпуск осени 2015.",
|
||||
"headSpecialNye2015Text": "Смешная шляпа для вечеринок",
|
||||
"headSpecialNye2015Notes": "Вы получили Смешную Праздничную Шляпу! Носите её с гордостью в Новый Год! Бонусов не дает.",
|
||||
"headSpecialWinter2016RogueText": "Какао-шлем",
|
||||
@@ -991,14 +991,14 @@
|
||||
"headSpecialSummer2016MageText": "Шляпа-водомёт",
|
||||
"headSpecialSummer2016MageNotes": "Волшебная вода все время струится из этой шляпы. Улучшает восприятие на <%= per %>. Ограниченный выпуск лета 2016.",
|
||||
"headSpecialSummer2016HealerText": "Шлем морского конька",
|
||||
"headSpecialSummer2016HealerNotes": "Шлем демонстрирует, что владелец обучался у волшебных морских коньков-целителей в Медлительске. Увеличивает интеллект на <%= int %>. Ограниченный выпуск лета 2016.",
|
||||
"headSpecialSummer2016HealerNotes": "Шлем демонстрирует, что владелец обучался у волшебных морских коньков-целителей в Промедлении. Увеличивает интеллект на <%= int %>. Ограниченный выпуск лета 2016.",
|
||||
"headSpecialFall2016RogueText": "Шлем черной вдовы",
|
||||
"headSpecialFall2016RogueNotes": "Лапки на шлеме непрерывно подергиваются. Улучшает восприятие на <%= per %>. Ограниченный выпуск осени 2016.",
|
||||
"headSpecialFall2016WarriorText": "Шлем из корявой коры",
|
||||
"headSpecialFall2016WarriorNotes": "Шлем покрыт тиной и кусочками мха. Увеличивает силу на <%= str %>. Ограниченный выпуск осени 2016.",
|
||||
"headSpecialFall2016MageText": "Капюшон злорадности",
|
||||
"headSpecialFall2016MageNotes": "Плети интриги под этим темным капюшоном. Увеличивает восприятие на <%= per %>. Ограниченный выпуск осени 2016.",
|
||||
"headSpecialFall2016HealerText": "Корона медузы",
|
||||
"headSpecialFall2016HealerText": "Корона Медузы",
|
||||
"headSpecialFall2016HealerNotes": "Горе посмотревшему в ваши очи... Увеличивает интеллект на <%= int %>. Ограниченный выпуск осени 2016.",
|
||||
"headSpecialNye2016Text": "Причудливая шляпа для вечеринок",
|
||||
"headSpecialNye2016Notes": "Вы получили причудливую праздничную шляпу! Носите её с гордостью в Новый Год! Бонусов не дает.",
|
||||
@@ -1060,8 +1060,8 @@
|
||||
"headSpecialSummer2018MageNotes": "Свирепо бросьте взгляд на всякого, кто посмеет сказать, что вы похожи на «вкусную рыбу». Увеличивает восприятие на <%= per %>. Ограниченный выпуск лета 2018.",
|
||||
"headSpecialSummer2018HealerText": "Корона амфибии",
|
||||
"headSpecialSummer2018HealerNotes": "Эта украшенная аквамарином диадема с плавниками выделяет лидерство народа, рыб, и тех, кто отчасти относится к обеим группам! Увеличивает интеллект на <%= int %>. Ограниченный выпуск лета 2018.",
|
||||
"headSpecialFall2018RogueText": "Лицо Альтер-эго",
|
||||
"headSpecialFall2018RogueNotes": "Большинство из нас скрывают свои переживания внутри. Но эта маска наглядно показывает, что у всех нас есть как положительные, так и отрицательные порывы. А в добавок к ней идет отличная шляпа! Увеличивает восприятие на <%= per %>. Ограниченый выпуск осени 2018.",
|
||||
"headSpecialFall2018RogueText": "Лицо альтер эго",
|
||||
"headSpecialFall2018RogueNotes": "Большинство из нас скрывают свои переживания внутри. Но эта маска наглядно показывает, что у всех нас есть как положительные, так и отрицательные порывы. А в добавок к ней идет отличная шляпа! Увеличивает восприятие на <%= per %>. Ограниченный выпуск осени 2018.",
|
||||
"headSpecialFall2018WarriorText": "Морда Минотавра",
|
||||
"headSpecialFall2018WarriorNotes": "Эта устрашающая маска показывает, что вы можете взять свои дела за рога! Увеличивает силу на <%= str %>. Ограниченный выпуск осени 2018.",
|
||||
"headSpecialFall2018MageText": "Шляпа сладоманта",
|
||||
@@ -1160,7 +1160,7 @@
|
||||
"headMystery201810Notes": "Если вы обнаружите, что путешествуете по пугающему месту, то светящиеся красные глаза этой маски наверняка отпугнут всех врагов на вашем пути. Бонусов не дает. Подарок подписчикам октября 2018.",
|
||||
"headMystery201811Text": "Шляпа Великолепного чародея",
|
||||
"headMystery201811Notes": "Носите эту шляпу с пером, чтобы выделяться даже на самых странных колдовских собраниях! Бонусов не дает. Подарок подписчикам ноября 2018.",
|
||||
"headMystery201901Text": "Polaris Helm",
|
||||
"headMystery201901Text": "Шлем полярной звезды",
|
||||
"headMystery201901Notes": "The glowing gems on this helm contain light magically captured from winter auroras. Confers no benefit. January 2019 Subscriber Item.",
|
||||
"headMystery301404Text": "Модный цилиндр",
|
||||
"headMystery301404Notes": "Модный цилиндр для самых уважаемых господ! Подарок подписчикам января 3015. Бонусов не дает.",
|
||||
@@ -1329,7 +1329,7 @@
|
||||
"shieldSpecialSummerWarriorText": "Деревянный щит",
|
||||
"shieldSpecialSummerWarriorNotes": "Этот щит из обломков корабельной древесины способен сдержать даже самые бурные задания. Увеличивает телосложение на <%= con %>. Ограниченный выпуск лета 2014.",
|
||||
"shieldSpecialSummerHealerText": "Щит мелководья",
|
||||
"shieldSpecialSummerHealerNotes": "Никто не осмелится атаковать коралловый риф, увидав этот сияющий щит! Увеличивает телосложение на <%= con %>. Ограниченный выпуск лета 2014.",
|
||||
"shieldSpecialSummerHealerNotes": "Никто не осмелится атаковать коралловый риф, увидав этот сияющий щит! Увеличивает телосложение на <%= con %>. Ограниченный выпуск лета 2014.",
|
||||
"shieldSpecialFallRogueText": "Серебряная Конфета",
|
||||
"shieldSpecialFallRogueNotes": "Убивает нежить. Также дает преимущество против оборотней, ведь осторожность никогда не помешает. Увеличивает силу на <%= str %>. Ограниченный выпуск осени 2014.",
|
||||
"shieldSpecialFallWarriorText": "Мощный эликсир науки",
|
||||
@@ -1359,7 +1359,7 @@
|
||||
"shieldSpecialFall2015WarriorText": "Сумка птичьих семян",
|
||||
"shieldSpecialFall2015WarriorNotes": "Это, конечно, правда, что вы должны быть ПУГАЛОМ и пугать ворон, но нет ничего плохого в том, чтобы с ними подружиться! Увеличивает телосложение на <%= con %>. Ограниченный выпуск осени 2015.",
|
||||
"shieldSpecialFall2015HealerText": "Палочка для помешивания",
|
||||
"shieldSpecialFall2015HealerNotes": "Эта палка может помешивать всё без таяния, растворения, или воспламенения! Она может быть также использована, чтобы яростно тыкать в враждебные задачи. Увеличивает телосложение на <%= con %>. Ограниченный выпуск осени 2015.",
|
||||
"shieldSpecialFall2015HealerNotes": "Эта палочка может помешивать всё без таяния, растворения, или воспламенения! Она может быть также использована, чтобы яростно тыкать в враждебные задачи. Увеличивает телосложение на <%= con %>. Ограниченный выпуск осени 2015.",
|
||||
"shieldSpecialWinter2016RogueText": "Кружка какао",
|
||||
"shieldSpecialWinter2016RogueNotes": "Согревающее питье или раскаленный снаряд? Решать тебе... Увеличивает силу на <%= str %>. Ограниченный выпуск зимы 2015-2016.",
|
||||
"shieldSpecialWinter2016WarriorText": "Щит \"Сани\"",
|
||||
@@ -1375,13 +1375,13 @@
|
||||
"shieldSpecialSummer2016RogueText": "Электрический стержень",
|
||||
"shieldSpecialSummer2016RogueNotes": "Тот, кто сражается с вами получит шокирующий сюрприз... Увеличивает силу на <%= str %>. Ограниченный выпуск лета 2016.",
|
||||
"shieldSpecialSummer2016WarriorText": "Зуб акулы",
|
||||
"shieldSpecialSummer2016WarriorNotes": "Укусите трудные дела зубастым щитом! Усиливает телосложение на <%= con %>. Ограниченный выпуск лета 2016.",
|
||||
"shieldSpecialSummer2016WarriorNotes": "Укусите трудные дела зубастым щитом! Увеличивает телосложение на <%= con %>. Ограниченный выпуск лета 2016.",
|
||||
"shieldSpecialSummer2016HealerText": "Щит морской звезды",
|
||||
"shieldSpecialSummer2016HealerNotes": "Иногда ошибочно называется Щитом Звёздной рыбы. Увеличивает телосложение на <%= con %>. Ограниченный выпуск лета 2016.",
|
||||
"shieldSpecialFall2016RogueText": "Кинжал паучьего укуса",
|
||||
"shieldSpecialFall2016RogueNotes": "Ощути остроту паучьего жала! Увеличивает силу на <%= str %>. Ограниченный выпуск осени 2016.",
|
||||
"shieldSpecialFall2016WarriorText": "Корни-защитники",
|
||||
"shieldSpecialFall2016WarriorNotes": "Защищайтесь от ежедневных задач корчащимися корнями! Увеличивает телосложение на <%= con %>. Ограниченный выпуск осени 2016.",
|
||||
"shieldSpecialFall2016WarriorNotes": "Защищайтесь от ежедневных задач корчащимися корнями! Увеличивает телосложение на <%= con %>. Ограниченный выпуск осени 2016.",
|
||||
"shieldSpecialFall2016HealerText": "Щит горгоны",
|
||||
"shieldSpecialFall2016HealerNotes": "Ваше отражение прекрасно, спору нет. Увеличивает телосложение на <%= con %>. Ограниченный выпуск осени 2016.",
|
||||
"shieldSpecialWinter2017RogueText": "Ледяной топор",
|
||||
@@ -1423,7 +1423,7 @@
|
||||
"shieldSpecialSummer2018HealerText": "Герб амфибии",
|
||||
"shieldSpecialSummer2018HealerNotes": "Этот щит может создать воздушный купол для удобства проживающих на суше посетителей вашего водяного царства. Увеличивает телосложение на <%= con %>. Ограниченный выпуск лета 2018.",
|
||||
"shieldSpecialFall2018RogueText": "Флакон искушения",
|
||||
"shieldSpecialFall2018RogueNotes": "Эта бутылочка олицетворяет все проблемы и отвлекающие факторы, которые не дают вам быть лучшей версией себя. Держитесь! Мы верим в вас! Увеличивает силу на <%= str %>. Ограниченый выпуск осени 2018.",
|
||||
"shieldSpecialFall2018RogueNotes": "Эта бутылочка олицетворяет все проблемы и отвлекающие факторы, которые не дают вам быть лучшей версией себя. Держитесь! Мы верим в вас! Увеличивает силу на <%= str %>. Ограниченный выпуск осени 2018.",
|
||||
"shieldSpecialFall2018WarriorText": "Бриллиантовый щит",
|
||||
"shieldSpecialFall2018WarriorNotes": "Отражающая поверхность заставит надоедливых Горгон дважды подумать, стоит ли неожиданно выпрыгивать на вас из-за угла! Увеличивает телосложение на <%= con %>. Ограниченый выпуск осени 2018.",
|
||||
"shieldSpecialFall2018HealerText": "Голодный щит",
|
||||
@@ -1588,7 +1588,7 @@
|
||||
"bodySpecialAetherAmuletText": "Амулет эфира",
|
||||
"bodySpecialAetherAmuletNotes": "Этот амулет имеет таинственную историю. Увеличивает телосложение и силу на <%= attrs %>.",
|
||||
"bodySpecialSummerMageText": "Сияющее пончо",
|
||||
"bodySpecialSummerMageNotes": "Ни соленая, ни свежая вода не лишат блеска эту металическую пелерину. Бонусов не дает. Ограниченный выпуск лета 2014.",
|
||||
"bodySpecialSummerMageNotes": "Ни соленая, ни свежая вода не лишат блеска эту металлическую пелерину. Бонусов не дает. Ограниченный выпуск лета 2014.",
|
||||
"bodySpecialSummerHealerText": "Коралловое ожерелье",
|
||||
"bodySpecialSummerHealerNotes": "Стильное ожерелье из настоящих кораллов. Бонусов не дает. Ограниченный выпуск лета 2014.",
|
||||
"bodySpecialSummer2015RogueText": "Пояс Ренегата",
|
||||
@@ -1607,7 +1607,7 @@
|
||||
"bodyMystery201706Notes": "В этом плаще есть потайные карманы, чтобы прятать золото, награбленное у задач. Бонусов не даёт. Подарок подписчикам июня 2017.",
|
||||
"bodyMystery201711Text": "Шарф коврового наездника",
|
||||
"bodyMystery201711Notes": "Этот мягко связанный шарф выглядит довольно величественно, развеваясь на ветру. Бонусов не дает. Подарок подписчикам ноября 2017.",
|
||||
"bodyMystery201901Text": "Polaris Pauldrons",
|
||||
"bodyMystery201901Text": "Наплечники полярной звезды",
|
||||
"bodyMystery201901Notes": "These shimmering pauldrons are strong, but will rest on your shoulders as weightlessly as a ray of dancing light. Confers no benefit. January 2019 Subscriber Item.",
|
||||
"bodyArmoireCozyScarfText": "Уютный шарф",
|
||||
"bodyArmoireCozyScarfNotes": "Этот славный шарф сохранит вас в тепле, пока вы будете заниматься своими застывшими делами. Увеличивает телосложение и восприятие на <%= attrs %>. Зачарованный сундук: Набор фонарщика (предмет 4 из 4).",
|
||||
@@ -1747,5 +1747,10 @@
|
||||
"eyewearArmoirePlagueDoctorMaskNotes": "Такие маски носили доктора, боровшиеся с Чумой Прокрастинации. Увеличивает телосложение и интеллект на<%= attrs %>. Зачарованный сундук: Набор Чумного доктора (предмет 2 из 3).",
|
||||
"eyewearArmoireGoofyGlassesText": "Глупые очки",
|
||||
"eyewearArmoireGoofyGlassesNotes": "Идеально подходит, чтоб стать инкогнито или просто для того, чтобы ваши товарищи хихикали. Увеличивает восприятие на <%= per %>. Зачарованный Сундук: Независимый предмет.",
|
||||
"twoHandedItem": "Двуручник"
|
||||
}
|
||||
"twoHandedItem": "Двуручник",
|
||||
"weaponArmoireChefsSpoonText": "Ложка шеф-повара",
|
||||
"armorArmoireChefsJacketText": "Фартук шеф-повара",
|
||||
"headArmoireToqueBlancheText": "Тока шеф-повара",
|
||||
"headArmoireToqueBlancheNotes": "Согласно легенде, количество сгибов в этом колпаке показывает сколько способов вы знаете для приготовления яичницы! Верно? Увеличивает восприятие на <%= per %>. Зачарованный сундук: Набор шеф-повара (предмет 1 из 4). ",
|
||||
"shieldArmoireMightyPizzaText": "Могучая пицца"
|
||||
}
|
||||
|
||||
@@ -47,7 +47,7 @@
|
||||
"gingerbreadSet": "Пряничный воин (Воин)",
|
||||
"snowDaySet": "Боец снежного дня (Воин)",
|
||||
"snowboardingSet": "Сноуборд-Колдун (Маг)",
|
||||
"festiveFairySet": "Праздничная фея (Лекарь)",
|
||||
"festiveFairySet": "Праздничная фея (Целитель)",
|
||||
"cocoaSet": "Какао-разбойник (Разбойник)",
|
||||
"toAndFromCard": "Для <%= toName %>, от <%= fromName %>",
|
||||
"nyeCard": "Новогодняя открытка",
|
||||
@@ -81,10 +81,10 @@
|
||||
"sunfishWarriorSet": "Луна-рыба-воин (Воин)",
|
||||
"shipSoothsayerSet": "Корабельный предсказатель (Маг)",
|
||||
"strappingSailorSet": "Здоровый матрос (Целитель)",
|
||||
"reefRenegadeSet": "Предатель Рифа (Разбойник)",
|
||||
"reefRenegadeSet": "Рифовый Ренегат (Разбойник)",
|
||||
"scarecrowWarriorSet": "Боевое пугало (Воин)",
|
||||
"stitchWitchSet": "Лоскутная колдунья (Маг)",
|
||||
"potionerSet": "Зельевар (Лекарь)",
|
||||
"potionerSet": "Зельевар (Целитель)",
|
||||
"battleRogueSet": "Разбойник-мышехвост (Разбойник) ",
|
||||
"springingBunnySet": "Скачущий Зайчик (Целитель)",
|
||||
"grandMalkinSet": "Великий Малкин (Маг)",
|
||||
@@ -94,9 +94,9 @@
|
||||
"summer2016DolphinMageSet": "Маг-дельфин (Маг)",
|
||||
"summer2016SeahorseHealerSet": "Целитель - морской конёк (Целитель)",
|
||||
"summer2016EelSet": "Разбойник-угорь (Разбойник)",
|
||||
"fall2016SwampThingSet": "Болотная штука (Воин)",
|
||||
"fall2016WickedSorcererSet": "Злой колдун (маг)",
|
||||
"fall2016GorgonHealerSet": "Горгон Целитель (Целитель)",
|
||||
"fall2016SwampThingSet": "Болотная тварь (Воин)",
|
||||
"fall2016WickedSorcererSet": "Злой колдун (Маг)",
|
||||
"fall2016GorgonHealerSet": "Горгона-целитель (Целитель)",
|
||||
"fall2016BlackWidowSet": "Черная вдова-разбойница (Разбойник)",
|
||||
"winter2017IceHockeySet": "Хоккейная клюшка (воин)",
|
||||
"winter2017WinterWolfSet": "Зимний волк (Маг)",
|
||||
@@ -152,4 +152,4 @@
|
||||
"discountBundle": "комплект",
|
||||
"g1g1Announcement": "Подарите подписку и получите такую же бесплатно!",
|
||||
"g1g1Details": "Подарите подписку другу из своего профиля и получите такую же бесплатно!"
|
||||
}
|
||||
}
|
||||
|
||||
@@ -1,38 +1,38 @@
|
||||
{
|
||||
"tipTitle": "Совет #<%= tipNumber %>",
|
||||
"tip1": "Отмечайте задания на ходу с помощью мобильных приложений Habitica.",
|
||||
"tip2": "Нажмите на любое снаряжение, чтобы предварительно осмотреть его, или сразу наденьте его, нажав на звезду в левом верхнем углу!",
|
||||
"tip3": "Используйте эмодзи, чтобы быстро различать задания.",
|
||||
"tip4": "Используйте символ # перед названием задания, чтобы сделать его очень большим!",
|
||||
"tip5": "Лучше всего использовать вызывающие баффы навыки с утра пораньше, чтобы они длились дольше.",
|
||||
"tip6": "Наведите мышь на задачу и нажмите на точки, чтобы получить доступ к расширенным элементам управления, таким как возможность отправить задачу в верхнюю или нижнюю часть списка.",
|
||||
"tip7": "Некоторые фоны идеально соединяются друг с другом, если члены команды используют одно и то же изображение. Например: Горное озеро, Пагода или Круглые холмы.",
|
||||
"tip8": "Чтобы отправить кому-нибудь сообщение, сначала нажмите на его имя в чате, а затем на значок конверта в верхней части его профиля!",
|
||||
"tip9": "Используйте фильтры и панель поиска в Инвентаре, Магазине, Гильдии и Испытаниях чтобы быстро находить что хотите.",
|
||||
"tip10": "Вы можете выиграть самоцветы, участвуя в испытаниях. Каждый день появляются новые!",
|
||||
"tip11": "Если в команде больше четырех человек, это увеличивает вашу ответственность!",
|
||||
"tip12": "Добавляйте списки в задачи для увеличения награды!",
|
||||
"tip13": "Нажмите «Теги» на странице задач, чтобы сделать громоздкий список дел очень легким в обращении! ",
|
||||
"tip14": "Вы можете добавить заголовки или вдохновляющие цитаты как привычки без (+/-).",
|
||||
"tip15": "Завершите квестовые линии ордена Мастеров, чтобы узнать о тайных знаниях страны Habitica.",
|
||||
"tip16": "Нажмите на ссылку «Анализ данных» внизу для получения ценных сведений о вашем развитии.",
|
||||
"tip17": "Используйте мобильное приложение, чтобы устанавливать напоминания на ваши задачи.",
|
||||
"tip18": "Только полезные или вредные привычки со временем «меркнут» и снова становятся желтыми.",
|
||||
"tip19": "Повышайте Интеллект, чтобы получать больше опыта при выполнении заданий.",
|
||||
"tip20": "Повышайте Восприятие, чтобы получить больше добычи и золота.",
|
||||
"tip21": "Повышайте свою Силу, чтобы наносить больше урона боссам или делать критические удары.",
|
||||
"tip22": "Повышайте Телосложение, чтобы невыполненные ежедневные задания наносили меньше урона.",
|
||||
"tip23": "Достигните 100 уровня, чтобы получить Шар возрождения и начать новое приключение!",
|
||||
"tip24": "Есть вопрос? Спросите в Гильдии Помощи страны Habitica!",
|
||||
"tip25": "Начало четырех сезонных Больших праздников приходится на солнцестояния и равноденствия.",
|
||||
"tip26": "Вы можете искать Команду или участников в вашу Команду - в гильдии Party Wanted Guild!",
|
||||
"tip27": "Если вы завершили свои дела, но забыли отметить их, то теперь с фичей «задним числом» у вас есть возможность отметить их перед началом вашего нового дня.",
|
||||
"tip28": "Установите персональное начало дня в разделе Значок Пользователя > Настройки, чтобы задать, когда ваш день начинается заново.",
|
||||
"tip29": "Выполните все ежедневные дела, чтобы получить баф «Прекрасный день», повышающий ваши характеристики!",
|
||||
"tip30": "Вы можете приглашать людей в гильдии так же, как в команды.",
|
||||
"tip31": "Посмотрите примеры заданий в гильдии Library of Tasks and Challenges.",
|
||||
"tip32": "Знаете ли вы, что значительная часть кода, текстов и картинок для Habitica была сделана самими участниками! Чтобы оказать участие, обращайтесь в гильдию Aspiring Legends.",
|
||||
"tip33": "Заглядывайте в гильдию The Bulletin Board, чтобы узнавать о новых гильдиях, испытаниях и других, созданных игроками, событиях - или даже анонсировать свое собственное!",
|
||||
"tip34": "Иногда пересматривайте свои задачи, чтобы удостовериться в их актуальности!",
|
||||
"tip35": "Пользователи, входящие в групповой план, получают возможность назначать задачи другим пользователям в этой группе для управления дополнительными задачами и возможности учета."
|
||||
"tipTitle": "Совет #<%= tipNumber %>",
|
||||
"tip1": "Отмечайте задания на ходу с помощью мобильных приложений Habitica.",
|
||||
"tip2": "Нажмите на любое снаряжение, чтобы предварительно осмотреть его, или сразу наденьте его, нажав на звезду в левом верхнем углу!",
|
||||
"tip3": "Используйте эмодзи, чтобы быстро различать задания.",
|
||||
"tip4": "Используйте символ # перед названием задания, чтобы сделать его очень большим!",
|
||||
"tip5": "Лучше всего использовать вызывающие баффы навыки с утра пораньше, чтобы они длились дольше.",
|
||||
"tip6": "Наведите мышь на задачу и нажмите на точки, чтобы получить доступ к расширенным элементам управления, таким как возможность отправить задачу в верхнюю или нижнюю часть списка.",
|
||||
"tip7": "Некоторые фоны идеально соединяются друг с другом, если члены команды используют одно и то же изображение. Например: Горное озеро, Пагода или Круглые холмы.",
|
||||
"tip8": "Чтобы отправить кому-нибудь сообщение, сначала нажмите на его имя в чате, а затем на значок конверта в верхней части его профиля!",
|
||||
"tip9": "Используйте фильтры и панель поиска в Инвентаре, Магазине, Гильдии и Испытаниях чтобы быстро находить что хотите.",
|
||||
"tip10": "Вы можете выиграть самоцветы, участвуя в испытаниях. Каждый день появляются новые!",
|
||||
"tip11": "Если в команде больше четырех человек, это увеличивает вашу ответственность!",
|
||||
"tip12": "Добавляйте списки в задачи для увеличения награды!",
|
||||
"tip13": "Нажмите «Теги» на странице задач, чтобы сделать громоздкий список дел очень легким в обращении!",
|
||||
"tip14": "Вы можете добавить заголовки или вдохновляющие цитаты как привычки без (+/-).",
|
||||
"tip15": "Завершите квестовые линии ордена Мастеров, чтобы узнать о тайных знаниях страны Habitica.",
|
||||
"tip16": "Нажмите на ссылку «Анализ данных» внизу для получения ценных сведений о вашем развитии.",
|
||||
"tip17": "Используйте мобильное приложение, чтобы устанавливать напоминания на ваши задачи.",
|
||||
"tip18": "Только полезные или вредные привычки со временем «меркнут» и снова становятся желтыми.",
|
||||
"tip19": "Повышайте Интеллект, чтобы получать больше опыта при выполнении заданий.",
|
||||
"tip20": "Повышайте Восприятие, чтобы получить больше добычи и золота.",
|
||||
"tip21": "Повышайте свою Силу, чтобы наносить больше урона боссам или делать критические удары.",
|
||||
"tip22": "Повышайте Телосложение, чтобы невыполненные ежедневные задания наносили меньше урона.",
|
||||
"tip23": "Достигните 100 уровня, чтобы получить Шар возрождения и начать новое приключение!",
|
||||
"tip24": "Есть вопрос? Спросите в Гильдии Помощи страны Habitica!",
|
||||
"tip25": "Начало четырех сезонных Больших праздников приходится на солнцестояния и равноденствия.",
|
||||
"tip26": "Вы можете искать Команду или участников в вашу Команду - в гильдии Party Wanted Guild!",
|
||||
"tip27": "Если вы завершили свои дела, но забыли отметить их, то теперь с фичей «задним числом» у вас есть возможность отметить их перед началом вашего нового дня.",
|
||||
"tip28": "Установите персональное начало дня в разделе Значок Пользователя > Настройки, чтобы задать, когда ваш день начинается заново.",
|
||||
"tip29": "Выполните все ежедневные дела, чтобы получить баф «Прекрасный день», повышающий ваши характеристики!",
|
||||
"tip30": "Вы можете приглашать людей в гильдии так же, как в команды.",
|
||||
"tip31": "Посмотрите примеры заданий в гильдии Library of Tasks and Challenges.",
|
||||
"tip32": "Знаете ли вы, что значительная часть кода, текстов и картинок для Habitica была сделана самими участниками! Чтобы оказать участие, обращайтесь в гильдию Aspiring Legends.",
|
||||
"tip33": "Заглядывайте в гильдию The Bulletin Board, чтобы узнавать о новых гильдиях, испытаниях и других, созданных игроками, событиях - или даже анонсировать свое собственное!",
|
||||
"tip34": "Иногда пересматривайте свои задачи, чтобы удостовериться в их актуальности!",
|
||||
"tip35": "Пользователи, входящие в групповой план, получают возможность назначать задачи другим пользователям в этой группе для управления дополнительными задачами и возможности учета."
|
||||
}
|
||||
|
||||
@@ -25,7 +25,7 @@
|
||||
"sleepBullet4": "Ваш урон боссу или количество собранных предметов в квестах не изменятся пока вы не отметите выполненные дела",
|
||||
"pauseDailies": "Отдохнуть в гостинице",
|
||||
"unpauseDailies": "Возобновить получение урона",
|
||||
"staffAndModerators": "Сотрудники и Модераторы",
|
||||
"staffAndModerators": "Сотрудники и модераторы",
|
||||
"communityGuidelinesIntro": "Страна Habitica старается создавать приятную атмосферу для пользователей всех возрастов и народов, особенно в общественных местах, таких, как таверна. Если у вас возникнут вопросы, пожалуйста, обратитесь к нашим <a href='/static/community-guidelines' target='_blank'>Правилам сообщества</a>.",
|
||||
"acceptCommunityGuidelines": "Я согласен следовать Правилам сообщества",
|
||||
"daniel": "Даниэль",
|
||||
@@ -55,7 +55,7 @@
|
||||
"amountGold": "<%= amount %> золота",
|
||||
"namedHatchingPotion": "<%= type %> инкубационный эликсир",
|
||||
"buyGems": "Купить самоцветы",
|
||||
"purchaseGems": "Приобрести Самоцветы",
|
||||
"purchaseGems": "Приобрести самоцветы",
|
||||
"items": "Предметы",
|
||||
"AZ": "А-Я",
|
||||
"sort": "Сортировать",
|
||||
@@ -64,7 +64,7 @@
|
||||
"sortByName": "имени",
|
||||
"quantity": "количеству",
|
||||
"cost": "цене",
|
||||
"shops": "Магазины",
|
||||
"shops": "Лавки",
|
||||
"custom": "Сезонные",
|
||||
"wishlist": "Отложенные",
|
||||
"wrongItemType": "Тип элемента \"<%= type %>\" недопустим.",
|
||||
@@ -168,4 +168,4 @@
|
||||
"welcome5": "Теперь вы можете персонализировать аватар и настроить задачи...",
|
||||
"imReady": "Войдите в Habitica",
|
||||
"limitedOffer": "Доступно до <%= date %>"
|
||||
}
|
||||
}
|
||||
|
||||
@@ -117,7 +117,7 @@
|
||||
"fortifyName": "Эликсир укрепления",
|
||||
"fortifyPop": "Вернуть все задания в нейтральное состояние (желтый цвет) и восстановить всё здоровье.",
|
||||
"fortify": "Укрепление",
|
||||
"fortifyText": "Укрепление вернет все задания, кроме испытаний, в нейтральное (желтое) состояние, как если бы вы только что добавили их, и восстановит Здоровье до максимума. Это отличная возможность, если все ваши красные задания делают игру слишком тяжелой, или же все ваши голубые задания делают игру слишком легкой. Если сбросить все до начальной стадии и обновиться звучит мотивирующе, то потратье Самоцветы и сделайте передышку.",
|
||||
"fortifyText": "Укрепление вернет все задания, кроме испытаний, в нейтральное (желтое) состояние, как если бы вы только что добавили их, и восстановит Здоровье до максимума. Это отличная возможность, если все ваши красные задания делают игру слишком тяжелой, или же все ваши голубые задания делают игру слишком легкой. Если сбросить все до начальной стадии и обновиться звучит мотивирующе, то потратьте Самоцветы и сделайте передышку.",
|
||||
"confirmFortify": "Вы уверены?",
|
||||
"fortifyComplete": "Укрепление завершено!",
|
||||
"deleteTask": "Удалить это Задание",
|
||||
@@ -145,11 +145,11 @@
|
||||
"rewardHelp3": "Здесь появится особое снаряжение во время Мировых Событий.",
|
||||
"rewardHelp4": "Не бойтесь назначать себе персональные награды! Посмотрите <a href='http://habitica.fandom.com/wiki/Sample_Custom_Rewards' target='_blank'>примеры наград здесь </a>.",
|
||||
"clickForHelp": "Помощь",
|
||||
"taskAliasAlreadyUsed": "Псевдоним задания уже используется другим заданием",
|
||||
"taskAliasAlreadyUsed": "Псевдоним задания уже используется другим заданием.",
|
||||
"taskNotFound": "Задача не найдена.",
|
||||
"invalidTaskType": "Тип задачи должен быть \"habit\", \"daily\", \"todo\", либо \"reward\".",
|
||||
"invalidTasksType": "Тип задачи должен быть одним из «Привычки», «Ежедневные задания», «Задачи», «Награды».",
|
||||
"invalidTasksTypeExtra": "Тип задачи должен быть одним из «Привычки», «Ежедневные задания», «Задачи», «Награды», «Выполненные задачи»",
|
||||
"invalidTasksTypeExtra": "Тип задачи должен быть одним из «Привычки», «Ежедневные задания», «Задачи», «Награды», «Выполненные задачи».",
|
||||
"cantDeleteChallengeTasks": "Задание, принадлежащее испытанию не может быть удалено.",
|
||||
"checklistOnlyDailyTodo": "Списки могут быть только у ежедневных заданий и задач",
|
||||
"checklistItemNotFound": "Пункт списка с заданным ID не найден.",
|
||||
@@ -163,7 +163,7 @@
|
||||
"strengthExample": "Относится к физическим упражнениям и активности",
|
||||
"intelligenceExample": "Относится к академическим или умственно сложным занятиям",
|
||||
"perceptionExample": "Относится к работе и финансовым заданиям",
|
||||
"constitutionExample": "Относится к здоровью, благополучию и социальным взаимодействиям.",
|
||||
"constitutionExample": "Относится к здоровью, благополучию и социальным взаимодействиям",
|
||||
"counterPeriod": "Счетчик сбрасывается каждые",
|
||||
"counterPeriodDay": "День",
|
||||
"counterPeriodWeek": "Неделя",
|
||||
@@ -199,7 +199,7 @@
|
||||
"monthlyRepeatHelpContent": "Это задание будет появляться каждые N месяцев",
|
||||
"yearlyRepeatHelpContent": "Это задание будет появляться каждые N лет",
|
||||
"resets": "Сбрасывается",
|
||||
"summaryStart": "Повторяется <%= frequency %> каждые <%= everyX %> <%= frequencyPlural %>",
|
||||
"summaryStart": "Повторяется <%= frequency %> каждые <%= everyX %> <%= frequencyPlural %>. ",
|
||||
"nextDue": "Следующие сроки выполнения",
|
||||
"checkOffYesterDailies": "Отметьте любые ежедневные задания, которые вы выполнили вчера:",
|
||||
"yesterDailiesTitle": "Вчера вы оставили некоторые ежедневные задания непроверенными! Хотите ли вы отметить какие-либо из них сейчас?",
|
||||
@@ -210,4 +210,4 @@
|
||||
"searchTasks": "Поиск заголовков и описаний...",
|
||||
"sessionOutdated": "Ваша сессия истекла. Пожалуйста, обновите страницу или синхронизируйтесь.",
|
||||
"errorTemporaryItem": "Это предмет временный и не может быть закреплен."
|
||||
}
|
||||
}
|
||||
|
||||
@@ -801,6 +801,20 @@ let backgrounds = {
|
||||
notes: t('backgroundValentinesDayFeastingHallNotes'),
|
||||
},
|
||||
},
|
||||
backgrounds032019: {
|
||||
duck_pond: {
|
||||
text: t('backgroundDuckPondText'),
|
||||
notes: t('backgroundDuckPondNotes'),
|
||||
},
|
||||
field_with_colored_eggs: {
|
||||
text: t('backgroundFieldWithColoredEggsText'),
|
||||
notes: t('backgroundFieldWithColoredEggsNotes'),
|
||||
},
|
||||
flower_market: {
|
||||
text: t('backgroundFlowerMarketText'),
|
||||
notes: t('backgroundFlowerMarketNotes'),
|
||||
},
|
||||
},
|
||||
incentiveBackgrounds: {
|
||||
violet: {
|
||||
text: t('backgroundVioletText'),
|
||||
|
||||
@@ -444,6 +444,15 @@ let armor = {
|
||||
set: 'chef',
|
||||
canOwn: ownsItem('armor_armoire_chefsJacket'),
|
||||
},
|
||||
vernalVestment: {
|
||||
text: t('armorArmoireVernalVestmentText'),
|
||||
notes: t('armorArmoireVernalVestmentNotes', { attrs: 6 }),
|
||||
value: 100,
|
||||
str: 6,
|
||||
int: 6,
|
||||
set: 'vernalVestments',
|
||||
canOwn: ownsItem('armor_armoire_vernalVestment'),
|
||||
},
|
||||
};
|
||||
|
||||
let body = {
|
||||
@@ -907,6 +916,14 @@ let head = {
|
||||
set: 'chef',
|
||||
canOwn: ownsItem('head_armoire_toqueBlanche'),
|
||||
},
|
||||
vernalHennin: {
|
||||
text: t('headArmoireVernalHenninText'),
|
||||
notes: t('headArmoireVernalHenninNotes', { per: 12 }),
|
||||
value: 100,
|
||||
per: 12,
|
||||
set: 'vernalVestments',
|
||||
canOwn: ownsItem('head_armoire_vernalHennin'),
|
||||
},
|
||||
};
|
||||
|
||||
let shield = {
|
||||
@@ -1528,6 +1545,14 @@ let weapon = {
|
||||
set: 'chef',
|
||||
canOwn: ownsItem('weapon_armoire_chefsSpoon'),
|
||||
},
|
||||
vernalTaper: {
|
||||
text: t('weaponArmoireVernalTaperText'),
|
||||
notes: t('weaponArmoireVernalTaperNotes', { con: 8 }),
|
||||
value: 100,
|
||||
con: 8,
|
||||
set: 'vernalVestments',
|
||||
canOwn: ownsItem('weapon_armoire_vernalTaper'),
|
||||
},
|
||||
};
|
||||
|
||||
let armoireSet = {
|
||||
|
||||