Compare commits
117 Commits
| Author | SHA1 | Date | |
|---|---|---|---|
| 07ecbd4444 | |||
| 4f0f058b2d | |||
| 7f0bdd6a9c | |||
| 1a484b56ac | |||
| 876a7b766c | |||
| 30c202dbbe | |||
| 572e709d63 | |||
| b4dc3796a1 | |||
| cae36ea554 | |||
| f9a0939796 | |||
| 62602a997c | |||
| 7870ffece8 | |||
| 9a2df5c1e5 | |||
| 76fccd80ac | |||
| b3adc88138 | |||
| 1435b7a012 | |||
| c7f58ddf9a | |||
| 6344a90f41 | |||
| b240490142 | |||
| 96af878c3b | |||
| 4d9c366a7e | |||
| 4862264172 | |||
| ecc00889da | |||
| f86bb98ccd | |||
| 234252d7d1 | |||
| ccd37a5b88 | |||
| 001c771dc1 | |||
| b3cfcab5fb | |||
| 28e133858a | |||
| 435b41604e | |||
| 8540c7ab85 | |||
| f289fe5ce5 | |||
| a322555a36 | |||
| 13e7d45549 | |||
| 2398714fc2 | |||
| f9deea3b8d | |||
| f26cbab27f | |||
| c0bb10a82b | |||
| 86d042034b | |||
| 44a4740e1d | |||
| e066c50774 | |||
| 48f1bec83a | |||
| d707070627 | |||
| 268f25e42c | |||
| ca185f0198 | |||
| 72b9642ed5 | |||
| 22ec56748f | |||
| 3f04f64ea3 | |||
| ee333967fc | |||
| 949011c505 | |||
| cb223423dc | |||
| 68a23fb3aa | |||
| 47e25e1231 | |||
| faa78628c3 | |||
| cf062c41a0 | |||
| 45fa2a3221 | |||
| bb8df83fb6 | |||
| 82df649ff8 | |||
| e31c57027c | |||
| b666649463 | |||
| f38aba68b9 | |||
| a420ef0109 | |||
| 686277b3dc | |||
| 8feaf35200 | |||
| 534d296195 | |||
| cca1565b99 | |||
| 03d3e32be9 | |||
| 6655e351cd | |||
| 0639f5f337 | |||
| e2b53dc716 | |||
| edc5fd50d6 | |||
| b4bc6f1ef5 | |||
| e830e676c3 | |||
| 8a423997a7 | |||
| 08ddfe7d99 | |||
| ec050f504b | |||
| 40273c1de2 | |||
| 2b15c92163 | |||
| 524c0b8654 | |||
| 958f929a25 | |||
| 753211a629 | |||
| c335269ad7 | |||
| 6f43c8c3b7 | |||
| 16b5b755cd | |||
| 0cdbfcf42b | |||
| 5830672a68 | |||
| 9fc05821c1 | |||
| 1c53287700 | |||
| 3757480a8d | |||
| 65582834a2 | |||
| 6766c577c9 | |||
| 66be468065 | |||
| e8fd66f522 | |||
| 5f908d72f7 | |||
| b81903b241 | |||
| ee7fa99172 | |||
| 248d55daa7 | |||
| 9e9a301f04 | |||
| 63c780759a | |||
| 534450c4d5 | |||
| 4607f1afd6 | |||
| 793d2f40c3 | |||
| d07a29abc9 | |||
| b5a3641f17 | |||
| c61d4ca023 | |||
| d5284da7e3 | |||
| 5fa6e51b10 | |||
| faa37bb3e8 | |||
| 65e62b48ae | |||
| 037d6d9ee4 | |||
| 8fe4ad09ed | |||
| a65d05d3a7 | |||
| 97b3db9b94 | |||
| 212691508a | |||
| 32ba02df28 | |||
| 07b9cc533b | |||
| 73710b2ae4 |
@@ -0,0 +1,138 @@
|
||||
/* eslint-disable no-console */
|
||||
const MIGRATION_NAME = '20210824_pet_group_achievements';
|
||||
import { model as User } from '../../../website/server/models/user';
|
||||
|
||||
const progressCount = 1000;
|
||||
let count = 0;
|
||||
|
||||
async function updateUser (user) {
|
||||
count++;
|
||||
|
||||
const set = {
|
||||
migration: MIGRATION_NAME,
|
||||
};
|
||||
|
||||
if (user && user.items && user.items.pets) {
|
||||
const pets = user.items.pets;
|
||||
if (pets['FlyingPig-Base']
|
||||
&& pets['FlyingPig-CottonCandyBlue']
|
||||
&& pets['FlyingPig-CottonCandyPink']
|
||||
&& pets['FlyingPig-Desert']
|
||||
&& pets['FlyingPig-Golden']
|
||||
&& pets['FlyingPig-Red']
|
||||
&& pets['FlyingPig-Shade']
|
||||
&& pets['FlyingPig-Skeleton']
|
||||
&& pets['FlyingPig-White']
|
||||
&& pets['FlyingPig-Zombie']
|
||||
&& pets['Ferret-Base']
|
||||
&& pets['Ferret-CottonCandyBlue']
|
||||
&& pets['Ferret-CottonCandyPink']
|
||||
&& pets['Ferret-Desert']
|
||||
&& pets['Ferret-Golden']
|
||||
&& pets['Ferret-Red']
|
||||
&& pets['Ferret-Shade']
|
||||
&& pets['Ferret-Skeleton']
|
||||
&& pets['Ferret-White']
|
||||
&& pets['Ferret-Zombie']
|
||||
&& pets['GuineaPig-Base']
|
||||
&& pets['GuineaPig-CottonCandyBlue']
|
||||
&& pets['GuineaPig-CottonCandyPink']
|
||||
&& pets['GuineaPig-Desert']
|
||||
&& pets['GuineaPig-Golden']
|
||||
&& pets['GuineaPig-Red']
|
||||
&& pets['GuineaPig-Shade']
|
||||
&& pets['GuineaPig-Skeleton']
|
||||
&& pets['GuineaPig-White']
|
||||
&& pets['GuineaPig-Zombie']
|
||||
&& pets['Rooster-Base']
|
||||
&& pets['Rooster-CottonCandyBlue']
|
||||
&& pets['Rooster-CottonCandyPink']
|
||||
&& pets['Rooster-Desert']
|
||||
&& pets['Rooster-Golden']
|
||||
&& pets['Rooster-Red']
|
||||
&& pets['Rooster-Shade']
|
||||
&& pets['Rooster-Skeleton']
|
||||
&& pets['Rooster-White']
|
||||
&& pets['Rooster-Zombie']
|
||||
&& pets['Rat-Base']
|
||||
&& pets['Rat-CottonCandyBlue']
|
||||
&& pets['Rat-CottonCandyPink']
|
||||
&& pets['Rat-Desert']
|
||||
&& pets['Rat-Golden']
|
||||
&& pets['Rat-Red']
|
||||
&& pets['Rat-Shade']
|
||||
&& pets['Rat-Skeleton']
|
||||
&& pets['Rat-White']
|
||||
&& pets['Rat-Zombie']
|
||||
&& pets['Bunny-Base']
|
||||
&& pets['Bunny-CottonCandyBlue']
|
||||
&& pets['Bunny-CottonCandyPink']
|
||||
&& pets['Bunny-Desert']
|
||||
&& pets['Bunny-Golden']
|
||||
&& pets['Bunny-Red']
|
||||
&& pets['Bunny-Shade']
|
||||
&& pets['Bunny-Skeleton']
|
||||
&& pets['Bunny-White']
|
||||
&& pets['Bunny-Zombie']
|
||||
&& pets['Horse-Base']
|
||||
&& pets['Horse-CottonCandyBlue']
|
||||
&& pets['Horse-CottonCandyPink']
|
||||
&& pets['Horse-Desert']
|
||||
&& pets['Horse-Golden']
|
||||
&& pets['Horse-Red']
|
||||
&& pets['Horse-Shade']
|
||||
&& pets['Horse-Skeleton']
|
||||
&& pets['Horse-White']
|
||||
&& pets['Horse-Zombie']
|
||||
&& pets['Cow-Base']
|
||||
&& pets['Cow-CottonCandyBlue']
|
||||
&& pets['Cow-CottonCandyPink']
|
||||
&& pets['Cow-Desert']
|
||||
&& pets['Cow-Golden']
|
||||
&& pets['Cow-Red']
|
||||
&& pets['Cow-Shade']
|
||||
&& pets['Cow-Skeleton']
|
||||
&& pets['Cow-White']
|
||||
&& pets['Cow-Zombie']) {
|
||||
set['achievements.domesticated'] = true;
|
||||
}
|
||||
}
|
||||
|
||||
if (count % progressCount === 0) console.warn(`${count} ${user._id}`);
|
||||
|
||||
return await User.update({ _id: user._id }, { $set: set }).exec();
|
||||
}
|
||||
|
||||
export default async function processUsers () {
|
||||
let query = {
|
||||
// migration: { $ne: MIGRATION_NAME },
|
||||
'auth.timestamps.loggedin': { $gt: new Date('2021-08-01') },
|
||||
};
|
||||
|
||||
const fields = {
|
||||
_id: 1,
|
||||
items: 1,
|
||||
};
|
||||
|
||||
while (true) { // eslint-disable-line no-constant-condition
|
||||
const users = await User // eslint-disable-line no-await-in-loop
|
||||
.find(query)
|
||||
.limit(250)
|
||||
.sort({_id: 1})
|
||||
.select(fields)
|
||||
.lean()
|
||||
.exec();
|
||||
|
||||
if (users.length === 0) {
|
||||
console.warn('All appropriate users found and modified.');
|
||||
console.warn(`\n${count} users processed\n`);
|
||||
break;
|
||||
} else {
|
||||
query._id = {
|
||||
$gt: users[users.length - 1]._id,
|
||||
};
|
||||
}
|
||||
|
||||
await Promise.all(users.map(updateUser)); // eslint-disable-line no-await-in-loop
|
||||
}
|
||||
};
|
||||
@@ -1,19 +1,19 @@
|
||||
{
|
||||
"name": "habitica",
|
||||
"description": "A habit tracker app which treats your goals like a Role Playing Game.",
|
||||
"version": "4.197.1",
|
||||
"version": "4.203.1",
|
||||
"main": "./website/server/index.js",
|
||||
"dependencies": {
|
||||
"@babel/core": "^7.14.3",
|
||||
"@babel/preset-env": "^7.14.4",
|
||||
"@babel/register": "^7.13.16",
|
||||
"@google-cloud/trace-agent": "^5.1.3",
|
||||
"@babel/core": "^7.15.0",
|
||||
"@babel/preset-env": "^7.15.0",
|
||||
"@babel/register": "^7.15.3",
|
||||
"@google-cloud/trace-agent": "^5.1.5",
|
||||
"@parse/node-apn": "^4.1.1",
|
||||
"@slack/webhook": "^6.0.0",
|
||||
"accepts": "^1.3.5",
|
||||
"amazon-payments": "^0.2.8",
|
||||
"amazon-payments": "^0.2.9",
|
||||
"amplitude": "^5.1.6",
|
||||
"apidoc": "^0.28.1",
|
||||
"apidoc": "^0.29.0",
|
||||
"apple-auth": "^1.0.7",
|
||||
"bcrypt": "^5.0.1",
|
||||
"body-parser": "^1.18.3",
|
||||
@@ -43,15 +43,15 @@
|
||||
"in-app-purchase": "^1.11.3",
|
||||
"js2xmlparser": "^4.0.1",
|
||||
"jsonwebtoken": "^8.5.1",
|
||||
"jwks-rsa": "^2.0.3",
|
||||
"jwks-rsa": "^2.0.4",
|
||||
"lodash": "^4.17.21",
|
||||
"merge-stream": "^2.0.0",
|
||||
"method-override": "^3.0.0",
|
||||
"moment": "^2.29.1",
|
||||
"moment-recur": "^1.0.7",
|
||||
"mongoose": "^5.12.10",
|
||||
"mongoose": "^5.13.7",
|
||||
"morgan": "^1.10.0",
|
||||
"nconf": "^0.11.2",
|
||||
"nconf": "^0.11.3",
|
||||
"node-gcm": "^1.0.4",
|
||||
"on-headers": "^1.0.2",
|
||||
"passport": "^0.4.1",
|
||||
@@ -61,13 +61,13 @@
|
||||
"paypal-rest-sdk": "^1.8.1",
|
||||
"pp-ipn": "^1.1.0",
|
||||
"ps-tree": "^1.0.0",
|
||||
"rate-limiter-flexible": "^2.2.2",
|
||||
"rate-limiter-flexible": "^2.2.4",
|
||||
"redis": "^3.1.2",
|
||||
"regenerator-runtime": "^0.13.7",
|
||||
"regenerator-runtime": "^0.13.9",
|
||||
"remove-markdown": "^0.3.0",
|
||||
"rimraf": "^3.0.2",
|
||||
"short-uuid": "^4.2.0",
|
||||
"stripe": "^8.150.0",
|
||||
"stripe": "^8.170.0",
|
||||
"superagent": "^6.1.0",
|
||||
"universal-analytics": "^0.4.23",
|
||||
"useragent": "^2.1.9",
|
||||
@@ -114,16 +114,16 @@
|
||||
"chai": "^4.3.4",
|
||||
"chai-as-promised": "^7.1.1",
|
||||
"chai-moment": "^0.1.0",
|
||||
"chalk": "^4.1.1",
|
||||
"chalk": "^4.1.2",
|
||||
"cross-spawn": "^7.0.3",
|
||||
"expect.js": "^0.3.1",
|
||||
"istanbul": "^1.1.0-alpha.1",
|
||||
"mocha": "^5.1.1",
|
||||
"monk": "^7.3.4",
|
||||
"require-again": "^2.0.0",
|
||||
"run-rs": "^0.7.4",
|
||||
"run-rs": "^0.7.5",
|
||||
"sinon": "^10.0.0",
|
||||
"sinon-chai": "^3.6.0",
|
||||
"sinon-chai": "^3.7.0",
|
||||
"sinon-stub-promise": "^4.0.0"
|
||||
},
|
||||
"optionalDependencies": {}
|
||||
|
||||
@@ -31,7 +31,6 @@ async function deleteAmplitudeData (userId, email) {
|
||||
console.log(`${userId} (${email}) Amplitude response: ${response.status} ${response.statusText}`);
|
||||
}
|
||||
}
|
||||
await new Promise(resolve => setTimeout(resolve, 1000));
|
||||
}
|
||||
|
||||
async function deleteHabiticaData (user, email) {
|
||||
@@ -83,6 +82,7 @@ async function processEmailAddress (email) {
|
||||
$or: [
|
||||
{ 'auth.facebook.emails.value': email },
|
||||
{ 'auth.google.emails.value': email },
|
||||
{ 'auth.apple.emails.value': email },
|
||||
],
|
||||
},
|
||||
{ _id: 1, apiToken: 1, auth: 1 },
|
||||
@@ -96,6 +96,7 @@ async function processEmailAddress (email) {
|
||||
return console.log(`No users found with email address ${email}`);
|
||||
}
|
||||
|
||||
await new Promise(resolve => setTimeout(resolve, 1000));
|
||||
return Promise.all(users.map(user => (async () => {
|
||||
await deleteAmplitudeData(user._id, email); // eslint-disable-line no-await-in-loop
|
||||
await deleteHabiticaData(user, email); // eslint-disable-line no-await-in-loop
|
||||
|
||||
@@ -488,20 +488,6 @@ describe('Group Model', () => {
|
||||
expect(party.quest.progress.collect.soapBars).to.eq(5);
|
||||
});
|
||||
|
||||
it('does not drop an item if not need when on a collection quest', async () => {
|
||||
party.quest.key = 'dilatoryDistress1';
|
||||
party.quest.active = false;
|
||||
await party.startQuest(questLeader);
|
||||
party.quest.progress.collect.fireCoral = 20;
|
||||
await party.save();
|
||||
|
||||
await Group.processQuestProgress(participatingMember, progress);
|
||||
|
||||
party = await Group.findOne({ _id: party._id });
|
||||
|
||||
expect(party.quest.progress.collect.fireCoral).to.eq(20);
|
||||
});
|
||||
|
||||
it('sends a chat message about progress', async () => {
|
||||
await Group.processQuestProgress(participatingMember, progress);
|
||||
|
||||
@@ -538,8 +524,8 @@ describe('Group Model', () => {
|
||||
});
|
||||
});
|
||||
|
||||
describe('collection quests with multiple items', () => {
|
||||
it('sends a chat message if no progress is made on quest with multiple items', async () => {
|
||||
describe('collection quests with multiple item types', () => {
|
||||
it('sends a chat message if no progress is made', async () => {
|
||||
progress.collectedItems = 0;
|
||||
party.quest.key = 'dilatoryDistress1';
|
||||
party.quest.active = false;
|
||||
@@ -609,6 +595,28 @@ describe('Group Model', () => {
|
||||
});
|
||||
});
|
||||
|
||||
it('does not drop items when an item type becomes full', async () => {
|
||||
progress.collectedItems = 20;
|
||||
party.quest.key = 'dilatoryDistress1';
|
||||
party.quest.active = false;
|
||||
|
||||
await party.startQuest(questLeader);
|
||||
party.quest.progress.collect.fireCoral = 19;
|
||||
await party.save();
|
||||
|
||||
await Group.processQuestProgress(participatingMember, progress);
|
||||
|
||||
party = await Group.findOne({ _id: party._id });
|
||||
|
||||
// There is a very small chance (~1 in 500K) that blueFins will
|
||||
// be 19 or 20 due to randomness and not any bug. In these cases, this
|
||||
// test doesn't actually verify anything, but it's rare enough that it
|
||||
// shouldn't be a problem, and to make it deterministic would require
|
||||
// stubbing out methods in implementation-specific ways.
|
||||
expect(party.quest.progress.collect.fireCoral).to.be.within(19, 20);
|
||||
expect(party.quest.progress.collect.blueFins).to.be.within(19, 20);
|
||||
});
|
||||
|
||||
it('sends message about victory', async () => {
|
||||
progress.collectedItems = 500;
|
||||
|
||||
|
||||
@@ -38,6 +38,7 @@ import Vue from 'vue';
|
||||
import BootstrapVue from 'bootstrap-vue';
|
||||
import StoreModule from '@/libs/store';
|
||||
import getStore from '@/store';
|
||||
import '../../src/filters/registerGlobals';
|
||||
|
||||
import i18n from '../../../common/script/i18n';
|
||||
|
||||
@@ -65,6 +66,9 @@ store.state.user.data = {
|
||||
|
||||
},
|
||||
},
|
||||
preferences: {
|
||||
|
||||
},
|
||||
};
|
||||
|
||||
Vue.prototype.$store = store;
|
||||
|
||||
@@ -13,37 +13,37 @@
|
||||
"storybook:serve": "vue-cli-service storybook:serve -p 6006 -c config/storybook"
|
||||
},
|
||||
"dependencies": {
|
||||
"@storybook/addon-actions": "^6.2.9",
|
||||
"@storybook/addon-knobs": "^6.2.9",
|
||||
"@storybook/addon-links": "^6.2.9",
|
||||
"@storybook/addon-actions": "^6.3.7",
|
||||
"@storybook/addon-knobs": "^6.3.0",
|
||||
"@storybook/addon-links": "^6.3.7",
|
||||
"@storybook/addon-notes": "^5.3.21",
|
||||
"@storybook/vue": "^6.2.9",
|
||||
"@storybook/vue": "^6.3.7",
|
||||
"@vue/cli-plugin-babel": "^4.5.13",
|
||||
"@vue/cli-plugin-eslint": "^4.5.13",
|
||||
"@vue/cli-plugin-router": "^4.5.13",
|
||||
"@vue/cli-plugin-unit-mocha": "^4.5.13",
|
||||
"@vue/cli-service": "^4.5.13",
|
||||
"@vue/test-utils": "1.0.0-beta.29",
|
||||
"amplitude-js": "^8.3.0",
|
||||
"amplitude-js": "^8.5.0",
|
||||
"axios": "^0.21.1",
|
||||
"axios-progress-bar": "^1.2.0",
|
||||
"babel-eslint": "^10.1.0",
|
||||
"bootstrap": "^4.6.0",
|
||||
"bootstrap-vue": "^2.21.2",
|
||||
"chai": "^4.3.4",
|
||||
"core-js": "^3.12.1",
|
||||
"core-js": "^3.16.2",
|
||||
"eslint": "^6.8.0",
|
||||
"eslint-config-habitrpg": "^6.2.0",
|
||||
"eslint-plugin-mocha": "^5.3.0",
|
||||
"eslint-plugin-vue": "^6.2.2",
|
||||
"habitica-markdown": "^3.0.0",
|
||||
"hellojs": "^1.19.3",
|
||||
"hellojs": "^1.19.4",
|
||||
"inspectpack": "^4.7.1",
|
||||
"intro.js": "^3.4.0",
|
||||
"intro.js": "^4.1.0",
|
||||
"jquery": "^3.6.0",
|
||||
"lodash": "^4.17.21",
|
||||
"moment": "^2.29.1",
|
||||
"nconf": "^0.11.2",
|
||||
"nconf": "^0.11.3",
|
||||
"sass": "^1.34.0",
|
||||
"sass-loader": "^8.0.2",
|
||||
"smartbanner.js": "^1.16.0",
|
||||
@@ -53,16 +53,16 @@
|
||||
"svgo-loader": "^2.2.1",
|
||||
"uuid": "^8.3.2",
|
||||
"validator": "^13.6.0",
|
||||
"vue": "^2.6.12",
|
||||
"vue-cli-plugin-storybook": "^2.0.0",
|
||||
"vue": "^2.6.14",
|
||||
"vue-cli-plugin-storybook": "^2.1.0",
|
||||
"vue-mugen-scroll": "^0.2.6",
|
||||
"vue-router": "^3.5.1",
|
||||
"vue-template-compiler": "^2.6.12",
|
||||
"vue-router": "^3.5.2",
|
||||
"vue-template-compiler": "^2.6.14",
|
||||
"vuedraggable": "^2.24.3",
|
||||
"vuejs-datepicker": "git://github.com/habitrpg/vuejs-datepicker.git#153d339e4dbebb73733658aeda1d5b7fcc55b0a0",
|
||||
"webpack": "^4.46.0"
|
||||
},
|
||||
"devDependencies": {
|
||||
"@babel/plugin-proposal-optional-chaining": "^7.14.2"
|
||||
"@babel/plugin-proposal-optional-chaining": "^7.14.5"
|
||||
}
|
||||
}
|
||||
|
||||
@@ -261,6 +261,12 @@ export default {
|
||||
this.$root.$emit('bv::show::modal', 'buy-modal');
|
||||
});
|
||||
|
||||
this.$root.$on('bv::modal::hidden', event => {
|
||||
if (event.componentId === 'buy-modal') {
|
||||
this.$root.$emit('buyModal::hidden', this.selectedItemToBuy.key);
|
||||
}
|
||||
});
|
||||
|
||||
this.$root.$on('selectMembersModal::showItem', item => {
|
||||
this.selectedSpellToBuy = item;
|
||||
this.$root.$emit('bv::show::modal', 'select-member-modal');
|
||||
@@ -545,5 +551,6 @@ export default {
|
||||
<style src="@/assets/css/sprites/spritesmith-main-28.css"></style>
|
||||
<style src="@/assets/css/sprites/spritesmith-main-29.css"></style>
|
||||
<style src="@/assets/css/sprites/spritesmith-main-30.css"></style>
|
||||
<style src="@/assets/css/sprites/spritesmith-main-31.css"></style>
|
||||
<style src="@/assets/css/sprites.css"></style>
|
||||
<style src="smartbanner.js/dist/smartbanner.min.css"></style>
|
||||
|
||||
@@ -10,6 +10,12 @@
|
||||
height: 219px;
|
||||
}
|
||||
|
||||
.quest_solarSystem {
|
||||
background: url("~@/assets/images/animated/quest_solarSystem.gif") no-repeat;
|
||||
width: 219px;
|
||||
height: 219px;
|
||||
}
|
||||
|
||||
.Pet_HatchingPotion_Dessert, .Pet_HatchingPotion_Veggie, .Pet_HatchingPotion_Windup {
|
||||
width: 68px;
|
||||
height: 68px;
|
||||
|
||||
@@ -1,814 +1,814 @@
|
||||
.background_heart_shaped_bubbles {
|
||||
.background_haunted_forest {
|
||||
background-image: url('~@/assets/images/sprites/spritesmith-main-1.png');
|
||||
background-position: 0px 0px;
|
||||
width: 141px;
|
||||
height: 147px;
|
||||
}
|
||||
.background_heather_field {
|
||||
.background_haunted_house {
|
||||
background-image: url('~@/assets/images/sprites/spritesmith-main-1.png');
|
||||
background-position: -142px 0px;
|
||||
width: 141px;
|
||||
height: 147px;
|
||||
}
|
||||
.background_herding_sheep_in_autumn {
|
||||
.background_heart_shaped_bubbles {
|
||||
background-image: url('~@/assets/images/sprites/spritesmith-main-1.png');
|
||||
background-position: -284px 0px;
|
||||
width: 141px;
|
||||
height: 147px;
|
||||
}
|
||||
.background_holiday_hearth {
|
||||
.background_heather_field {
|
||||
background-image: url('~@/assets/images/sprites/spritesmith-main-1.png');
|
||||
background-position: 0px -148px;
|
||||
width: 141px;
|
||||
height: 147px;
|
||||
}
|
||||
.background_holiday_market {
|
||||
.background_herding_sheep_in_autumn {
|
||||
background-image: url('~@/assets/images/sprites/spritesmith-main-1.png');
|
||||
background-position: -142px -148px;
|
||||
width: 141px;
|
||||
height: 147px;
|
||||
}
|
||||
.background_holiday_wreath {
|
||||
.background_holiday_hearth {
|
||||
background-image: url('~@/assets/images/sprites/spritesmith-main-1.png');
|
||||
background-position: -284px -148px;
|
||||
width: 141px;
|
||||
height: 147px;
|
||||
}
|
||||
.background_hot_air_balloon {
|
||||
.background_holiday_market {
|
||||
background-image: url('~@/assets/images/sprites/spritesmith-main-1.png');
|
||||
background-position: -426px 0px;
|
||||
width: 141px;
|
||||
height: 147px;
|
||||
}
|
||||
.background_hot_spring {
|
||||
.background_holiday_wreath {
|
||||
background-image: url('~@/assets/images/sprites/spritesmith-main-1.png');
|
||||
background-position: -426px -148px;
|
||||
width: 141px;
|
||||
height: 147px;
|
||||
}
|
||||
.background_ice_cave {
|
||||
.background_hot_air_balloon {
|
||||
background-image: url('~@/assets/images/sprites/spritesmith-main-1.png');
|
||||
background-position: 0px -296px;
|
||||
width: 141px;
|
||||
height: 147px;
|
||||
}
|
||||
.background_iceberg {
|
||||
.background_hot_spring {
|
||||
background-image: url('~@/assets/images/sprites/spritesmith-main-1.png');
|
||||
background-position: -142px -296px;
|
||||
width: 141px;
|
||||
height: 147px;
|
||||
}
|
||||
.background_icicle_bridge {
|
||||
.background_ice_cave {
|
||||
background-image: url('~@/assets/images/sprites/spritesmith-main-1.png');
|
||||
background-position: -284px -296px;
|
||||
width: 141px;
|
||||
height: 147px;
|
||||
}
|
||||
.background_idyllic_cabin {
|
||||
.background_iceberg {
|
||||
background-image: url('~@/assets/images/sprites/spritesmith-main-1.png');
|
||||
background-position: -426px -296px;
|
||||
width: 141px;
|
||||
height: 147px;
|
||||
}
|
||||
.background_in_a_classroom {
|
||||
.background_icicle_bridge {
|
||||
background-image: url('~@/assets/images/sprites/spritesmith-main-1.png');
|
||||
background-position: -568px 0px;
|
||||
width: 141px;
|
||||
height: 147px;
|
||||
}
|
||||
.background_in_an_ancient_tomb {
|
||||
.background_idyllic_cabin {
|
||||
background-image: url('~@/assets/images/sprites/spritesmith-main-1.png');
|
||||
background-position: -568px -148px;
|
||||
width: 141px;
|
||||
height: 147px;
|
||||
}
|
||||
.background_in_the_armory {
|
||||
.background_in_a_classroom {
|
||||
background-image: url('~@/assets/images/sprites/spritesmith-main-1.png');
|
||||
background-position: -568px -296px;
|
||||
width: 141px;
|
||||
height: 147px;
|
||||
}
|
||||
.background_inside_an_ornament {
|
||||
.background_in_an_ancient_tomb {
|
||||
background-image: url('~@/assets/images/sprites/spritesmith-main-1.png');
|
||||
background-position: 0px -444px;
|
||||
width: 141px;
|
||||
height: 147px;
|
||||
}
|
||||
.background_island_waterfalls {
|
||||
.background_in_the_armory {
|
||||
background-image: url('~@/assets/images/sprites/spritesmith-main-1.png');
|
||||
background-position: -142px -444px;
|
||||
width: 141px;
|
||||
height: 147px;
|
||||
}
|
||||
.background_jungle_canopy {
|
||||
.background_inside_an_ornament {
|
||||
background-image: url('~@/assets/images/sprites/spritesmith-main-1.png');
|
||||
background-position: -284px -444px;
|
||||
width: 141px;
|
||||
height: 147px;
|
||||
}
|
||||
.background_kelp_forest {
|
||||
.background_island_waterfalls {
|
||||
background-image: url('~@/assets/images/sprites/spritesmith-main-1.png');
|
||||
background-position: -426px -444px;
|
||||
width: 141px;
|
||||
height: 147px;
|
||||
}
|
||||
.background_lake_with_floating_lanterns {
|
||||
.background_jungle_canopy {
|
||||
background-image: url('~@/assets/images/sprites/spritesmith-main-1.png');
|
||||
background-position: -568px -444px;
|
||||
width: 141px;
|
||||
height: 147px;
|
||||
}
|
||||
.background_lighthouse_shore {
|
||||
.background_kelp_forest {
|
||||
background-image: url('~@/assets/images/sprites/spritesmith-main-1.png');
|
||||
background-position: -710px 0px;
|
||||
width: 141px;
|
||||
height: 147px;
|
||||
}
|
||||
.background_lilypad {
|
||||
.background_lake_with_floating_lanterns {
|
||||
background-image: url('~@/assets/images/sprites/spritesmith-main-1.png');
|
||||
background-position: -710px -148px;
|
||||
width: 141px;
|
||||
height: 147px;
|
||||
}
|
||||
.background_magic_beanstalk {
|
||||
.background_lighthouse_shore {
|
||||
background-image: url('~@/assets/images/sprites/spritesmith-main-1.png');
|
||||
background-position: -710px -296px;
|
||||
width: 141px;
|
||||
height: 147px;
|
||||
}
|
||||
.background_magical_candles {
|
||||
.background_lilypad {
|
||||
background-image: url('~@/assets/images/sprites/spritesmith-main-1.png');
|
||||
background-position: -710px -444px;
|
||||
width: 141px;
|
||||
height: 147px;
|
||||
}
|
||||
.background_magical_museum {
|
||||
.background_magic_beanstalk {
|
||||
background-image: url('~@/assets/images/sprites/spritesmith-main-1.png');
|
||||
background-position: 0px -592px;
|
||||
width: 141px;
|
||||
height: 147px;
|
||||
}
|
||||
.background_marble_temple {
|
||||
.background_magical_candles {
|
||||
background-image: url('~@/assets/images/sprites/spritesmith-main-1.png');
|
||||
background-position: -142px -592px;
|
||||
width: 141px;
|
||||
height: 147px;
|
||||
}
|
||||
.background_market {
|
||||
.background_magical_museum {
|
||||
background-image: url('~@/assets/images/sprites/spritesmith-main-1.png');
|
||||
background-position: -284px -592px;
|
||||
width: 141px;
|
||||
height: 147px;
|
||||
}
|
||||
.background_meandering_cave {
|
||||
.background_marble_temple {
|
||||
background-image: url('~@/assets/images/sprites/spritesmith-main-1.png');
|
||||
background-position: -426px -592px;
|
||||
width: 141px;
|
||||
height: 147px;
|
||||
}
|
||||
.background_medieval_kitchen {
|
||||
.background_market {
|
||||
background-image: url('~@/assets/images/sprites/spritesmith-main-1.png');
|
||||
background-position: -568px -592px;
|
||||
width: 141px;
|
||||
height: 147px;
|
||||
}
|
||||
.background_midnight_castle {
|
||||
.background_meandering_cave {
|
||||
background-image: url('~@/assets/images/sprites/spritesmith-main-1.png');
|
||||
background-position: -710px -592px;
|
||||
width: 141px;
|
||||
height: 147px;
|
||||
}
|
||||
.background_midnight_clouds {
|
||||
.background_medieval_kitchen {
|
||||
background-image: url('~@/assets/images/sprites/spritesmith-main-1.png');
|
||||
background-position: -852px 0px;
|
||||
width: 141px;
|
||||
height: 147px;
|
||||
}
|
||||
.background_midnight_lake {
|
||||
.background_midnight_castle {
|
||||
background-image: url('~@/assets/images/sprites/spritesmith-main-1.png');
|
||||
background-position: -852px -148px;
|
||||
width: 141px;
|
||||
height: 147px;
|
||||
}
|
||||
.background_mist_shrouded_mountain {
|
||||
.background_midnight_clouds {
|
||||
background-image: url('~@/assets/images/sprites/spritesmith-main-1.png');
|
||||
background-position: -852px -296px;
|
||||
width: 141px;
|
||||
height: 147px;
|
||||
}
|
||||
.background_mistiflying_circus {
|
||||
.background_midnight_lake {
|
||||
background-image: url('~@/assets/images/sprites/spritesmith-main-1.png');
|
||||
background-position: -852px -444px;
|
||||
width: 141px;
|
||||
height: 147px;
|
||||
}
|
||||
.background_monster_makers_workshop {
|
||||
.background_mist_shrouded_mountain {
|
||||
background-image: url('~@/assets/images/sprites/spritesmith-main-1.png');
|
||||
background-position: -852px -592px;
|
||||
width: 141px;
|
||||
height: 147px;
|
||||
}
|
||||
.background_mountain_lake {
|
||||
.background_mistiflying_circus {
|
||||
background-image: url('~@/assets/images/sprites/spritesmith-main-1.png');
|
||||
background-position: 0px -740px;
|
||||
width: 141px;
|
||||
height: 147px;
|
||||
}
|
||||
.background_mountain_pyramid {
|
||||
.background_monster_makers_workshop {
|
||||
background-image: url('~@/assets/images/sprites/spritesmith-main-1.png');
|
||||
background-position: -142px -740px;
|
||||
width: 141px;
|
||||
height: 147px;
|
||||
}
|
||||
.background_mystical_observatory {
|
||||
.background_mountain_lake {
|
||||
background-image: url('~@/assets/images/sprites/spritesmith-main-1.png');
|
||||
background-position: -284px -740px;
|
||||
width: 141px;
|
||||
height: 147px;
|
||||
}
|
||||
.background_night_dunes {
|
||||
.background_mountain_pyramid {
|
||||
background-image: url('~@/assets/images/sprites/spritesmith-main-1.png');
|
||||
background-position: -426px -740px;
|
||||
width: 141px;
|
||||
height: 147px;
|
||||
}
|
||||
.background_ocean_sunrise {
|
||||
.background_mystical_observatory {
|
||||
background-image: url('~@/assets/images/sprites/spritesmith-main-1.png');
|
||||
background-position: -568px -740px;
|
||||
width: 141px;
|
||||
height: 147px;
|
||||
}
|
||||
.background_old_fashioned_bakery {
|
||||
.background_night_dunes {
|
||||
background-image: url('~@/assets/images/sprites/spritesmith-main-1.png');
|
||||
background-position: -710px -740px;
|
||||
width: 141px;
|
||||
height: 147px;
|
||||
}
|
||||
.background_on_tree_branch {
|
||||
.background_ocean_sunrise {
|
||||
background-image: url('~@/assets/images/sprites/spritesmith-main-1.png');
|
||||
background-position: -852px -740px;
|
||||
width: 141px;
|
||||
height: 147px;
|
||||
}
|
||||
.background_open_waters {
|
||||
.background_old_fashioned_bakery {
|
||||
background-image: url('~@/assets/images/sprites/spritesmith-main-1.png');
|
||||
background-position: -994px 0px;
|
||||
width: 141px;
|
||||
height: 147px;
|
||||
}
|
||||
.background_orchard {
|
||||
.background_on_tree_branch {
|
||||
background-image: url('~@/assets/images/sprites/spritesmith-main-1.png');
|
||||
background-position: -994px -148px;
|
||||
width: 141px;
|
||||
height: 147px;
|
||||
}
|
||||
.background_pagodas {
|
||||
.background_open_waters {
|
||||
background-image: url('~@/assets/images/sprites/spritesmith-main-1.png');
|
||||
background-position: -994px -296px;
|
||||
width: 141px;
|
||||
height: 147px;
|
||||
}
|
||||
.background_park_with_statue {
|
||||
.background_orchard {
|
||||
background-image: url('~@/assets/images/sprites/spritesmith-main-1.png');
|
||||
background-position: -994px -444px;
|
||||
width: 141px;
|
||||
height: 147px;
|
||||
}
|
||||
.background_pirate_flag {
|
||||
.background_pagodas {
|
||||
background-image: url('~@/assets/images/sprites/spritesmith-main-1.png');
|
||||
background-position: -994px -592px;
|
||||
width: 141px;
|
||||
height: 147px;
|
||||
}
|
||||
.background_pixelists_workshop {
|
||||
.background_park_with_statue {
|
||||
background-image: url('~@/assets/images/sprites/spritesmith-main-1.png');
|
||||
background-position: -994px -740px;
|
||||
width: 141px;
|
||||
height: 147px;
|
||||
}
|
||||
.background_potion_shop {
|
||||
.background_pirate_flag {
|
||||
background-image: url('~@/assets/images/sprites/spritesmith-main-1.png');
|
||||
background-position: 0px -888px;
|
||||
width: 141px;
|
||||
height: 147px;
|
||||
}
|
||||
.background_productivity_plaza {
|
||||
.background_pixelists_workshop {
|
||||
background-image: url('~@/assets/images/sprites/spritesmith-main-1.png');
|
||||
background-position: -142px -888px;
|
||||
width: 141px;
|
||||
height: 147px;
|
||||
}
|
||||
.background_pumpkin_carriage {
|
||||
.background_potion_shop {
|
||||
background-image: url('~@/assets/images/sprites/spritesmith-main-1.png');
|
||||
background-position: -284px -888px;
|
||||
width: 141px;
|
||||
height: 147px;
|
||||
}
|
||||
.background_pumpkin_patch {
|
||||
.background_productivity_plaza {
|
||||
background-image: url('~@/assets/images/sprites/spritesmith-main-1.png');
|
||||
background-position: -426px -888px;
|
||||
width: 141px;
|
||||
height: 147px;
|
||||
}
|
||||
.background_purple {
|
||||
.background_pumpkin_carriage {
|
||||
background-image: url('~@/assets/images/sprites/spritesmith-main-1.png');
|
||||
background-position: -568px -888px;
|
||||
width: 141px;
|
||||
height: 147px;
|
||||
}
|
||||
.background_pyramids {
|
||||
.background_pumpkin_patch {
|
||||
background-image: url('~@/assets/images/sprites/spritesmith-main-1.png');
|
||||
background-position: -710px -888px;
|
||||
width: 141px;
|
||||
height: 147px;
|
||||
}
|
||||
.background_rainbow_meadow {
|
||||
.background_purple {
|
||||
background-image: url('~@/assets/images/sprites/spritesmith-main-1.png');
|
||||
background-position: -852px -888px;
|
||||
width: 141px;
|
||||
height: 147px;
|
||||
}
|
||||
.background_rainbows_end {
|
||||
.background_pyramids {
|
||||
background-image: url('~@/assets/images/sprites/spritesmith-main-1.png');
|
||||
background-position: -994px -888px;
|
||||
width: 141px;
|
||||
height: 147px;
|
||||
}
|
||||
.background_rainforest {
|
||||
.background_raging_river {
|
||||
background-image: url('~@/assets/images/sprites/spritesmith-main-1.png');
|
||||
background-position: -1136px 0px;
|
||||
width: 141px;
|
||||
height: 147px;
|
||||
}
|
||||
.background_rainy_barnyard {
|
||||
.background_rainbow_meadow {
|
||||
background-image: url('~@/assets/images/sprites/spritesmith-main-1.png');
|
||||
background-position: -1136px -148px;
|
||||
width: 141px;
|
||||
height: 147px;
|
||||
}
|
||||
.background_rainy_city {
|
||||
.background_rainbows_end {
|
||||
background-image: url('~@/assets/images/sprites/spritesmith-main-1.png');
|
||||
background-position: -1136px -296px;
|
||||
width: 141px;
|
||||
height: 147px;
|
||||
}
|
||||
.background_red {
|
||||
.background_rainforest {
|
||||
background-image: url('~@/assets/images/sprites/spritesmith-main-1.png');
|
||||
background-position: -1136px -444px;
|
||||
width: 141px;
|
||||
height: 147px;
|
||||
}
|
||||
.background_relaxation_river {
|
||||
.background_rainy_barnyard {
|
||||
background-image: url('~@/assets/images/sprites/spritesmith-main-1.png');
|
||||
background-position: -1136px -592px;
|
||||
width: 141px;
|
||||
height: 147px;
|
||||
}
|
||||
.background_resting_in_the_inn {
|
||||
.background_rainy_city {
|
||||
background-image: url('~@/assets/images/sprites/spritesmith-main-1.png');
|
||||
background-position: -1136px -740px;
|
||||
width: 141px;
|
||||
height: 147px;
|
||||
}
|
||||
.background_river_of_lava {
|
||||
.background_red {
|
||||
background-image: url('~@/assets/images/sprites/spritesmith-main-1.png');
|
||||
background-position: -1136px -888px;
|
||||
width: 141px;
|
||||
height: 147px;
|
||||
}
|
||||
.background_rolling_hills {
|
||||
.background_relaxation_river {
|
||||
background-image: url('~@/assets/images/sprites/spritesmith-main-1.png');
|
||||
background-position: 0px -1036px;
|
||||
width: 141px;
|
||||
height: 147px;
|
||||
}
|
||||
.background_rose_garden {
|
||||
.background_resting_in_the_inn {
|
||||
background-image: url('~@/assets/images/sprites/spritesmith-main-1.png');
|
||||
background-position: -142px -1036px;
|
||||
width: 141px;
|
||||
height: 147px;
|
||||
}
|
||||
.background_rowboat {
|
||||
.background_river_of_lava {
|
||||
background-image: url('~@/assets/images/sprites/spritesmith-main-1.png');
|
||||
background-position: -284px -1036px;
|
||||
width: 141px;
|
||||
height: 147px;
|
||||
}
|
||||
.background_salt_lake {
|
||||
.background_rolling_hills {
|
||||
background-image: url('~@/assets/images/sprites/spritesmith-main-1.png');
|
||||
background-position: -426px -1036px;
|
||||
width: 141px;
|
||||
height: 147px;
|
||||
}
|
||||
.background_sandcastle {
|
||||
.background_rope_bridge {
|
||||
background-image: url('~@/assets/images/sprites/spritesmith-main-1.png');
|
||||
background-position: -568px -1036px;
|
||||
width: 141px;
|
||||
height: 147px;
|
||||
}
|
||||
.background_school_of_fish {
|
||||
.background_rose_garden {
|
||||
background-image: url('~@/assets/images/sprites/spritesmith-main-1.png');
|
||||
background-position: -710px -1036px;
|
||||
width: 141px;
|
||||
height: 147px;
|
||||
}
|
||||
.background_scribes_workshop {
|
||||
.background_rowboat {
|
||||
background-image: url('~@/assets/images/sprites/spritesmith-main-1.png');
|
||||
background-position: -852px -1036px;
|
||||
width: 141px;
|
||||
height: 147px;
|
||||
}
|
||||
.background_seafarer_ship {
|
||||
.background_salt_lake {
|
||||
background-image: url('~@/assets/images/sprites/spritesmith-main-1.png');
|
||||
background-position: -994px -1036px;
|
||||
width: 141px;
|
||||
height: 147px;
|
||||
}
|
||||
.background_seaside_cliffs {
|
||||
.background_sandcastle {
|
||||
background-image: url('~@/assets/images/sprites/spritesmith-main-1.png');
|
||||
background-position: -1136px -1036px;
|
||||
width: 141px;
|
||||
height: 147px;
|
||||
}
|
||||
.background_shimmering_ice_prism {
|
||||
.background_school_of_fish {
|
||||
background-image: url('~@/assets/images/sprites/spritesmith-main-1.png');
|
||||
background-position: -1278px 0px;
|
||||
width: 141px;
|
||||
height: 147px;
|
||||
}
|
||||
.background_shimmery_bubbles {
|
||||
.background_scribes_workshop {
|
||||
background-image: url('~@/assets/images/sprites/spritesmith-main-1.png');
|
||||
background-position: -1278px -148px;
|
||||
width: 141px;
|
||||
height: 147px;
|
||||
}
|
||||
.background_slimy_swamp {
|
||||
.background_seafarer_ship {
|
||||
background-image: url('~@/assets/images/sprites/spritesmith-main-1.png');
|
||||
background-position: -1278px -296px;
|
||||
width: 141px;
|
||||
height: 147px;
|
||||
}
|
||||
.background_snowglobe {
|
||||
.background_seaside_cliffs {
|
||||
background-image: url('~@/assets/images/sprites/spritesmith-main-1.png');
|
||||
background-position: -1278px -444px;
|
||||
width: 141px;
|
||||
height: 147px;
|
||||
}
|
||||
.background_snowman_army {
|
||||
.background_shimmering_ice_prism {
|
||||
background-image: url('~@/assets/images/sprites/spritesmith-main-1.png');
|
||||
background-position: -1278px -592px;
|
||||
width: 141px;
|
||||
height: 147px;
|
||||
}
|
||||
.background_snowy_day_fireplace {
|
||||
.background_shimmery_bubbles {
|
||||
background-image: url('~@/assets/images/sprites/spritesmith-main-1.png');
|
||||
background-position: -1278px -740px;
|
||||
width: 141px;
|
||||
height: 147px;
|
||||
}
|
||||
.background_snowy_pines {
|
||||
.background_slimy_swamp {
|
||||
background-image: url('~@/assets/images/sprites/spritesmith-main-1.png');
|
||||
background-position: -1278px -888px;
|
||||
width: 141px;
|
||||
height: 147px;
|
||||
}
|
||||
.background_snowy_sunrise {
|
||||
.background_snowglobe {
|
||||
background-image: url('~@/assets/images/sprites/spritesmith-main-1.png');
|
||||
background-position: -1278px -1036px;
|
||||
width: 141px;
|
||||
height: 147px;
|
||||
}
|
||||
.background_south_pole {
|
||||
.background_snowman_army {
|
||||
background-image: url('~@/assets/images/sprites/spritesmith-main-1.png');
|
||||
background-position: 0px -1184px;
|
||||
width: 141px;
|
||||
height: 147px;
|
||||
}
|
||||
.background_sparkling_snowflake {
|
||||
.background_snowy_day_fireplace {
|
||||
background-image: url('~@/assets/images/sprites/spritesmith-main-1.png');
|
||||
background-position: -142px -1184px;
|
||||
width: 141px;
|
||||
height: 147px;
|
||||
}
|
||||
.background_spider_web {
|
||||
.background_snowy_pines {
|
||||
background-image: url('~@/assets/images/sprites/spritesmith-main-1.png');
|
||||
background-position: -284px -1184px;
|
||||
width: 141px;
|
||||
height: 147px;
|
||||
}
|
||||
.background_splash_in_a_puddle {
|
||||
.background_snowy_sunrise {
|
||||
background-image: url('~@/assets/images/sprites/spritesmith-main-1.png');
|
||||
background-position: -426px -1184px;
|
||||
width: 141px;
|
||||
height: 147px;
|
||||
}
|
||||
.background_spooky_hotel {
|
||||
.background_south_pole {
|
||||
background-image: url('~@/assets/images/sprites/spritesmith-main-1.png');
|
||||
background-position: -568px -1184px;
|
||||
width: 141px;
|
||||
height: 147px;
|
||||
}
|
||||
.background_spooky_scarecrow_field {
|
||||
.background_sparkling_snowflake {
|
||||
background-image: url('~@/assets/images/sprites/spritesmith-main-1.png');
|
||||
background-position: -710px -1184px;
|
||||
width: 141px;
|
||||
height: 147px;
|
||||
}
|
||||
.background_spring_rain {
|
||||
.background_spider_web {
|
||||
background-image: url('~@/assets/images/sprites/spritesmith-main-1.png');
|
||||
background-position: -852px -1184px;
|
||||
width: 141px;
|
||||
height: 147px;
|
||||
}
|
||||
.background_spring_thaw {
|
||||
.background_splash_in_a_puddle {
|
||||
background-image: url('~@/assets/images/sprites/spritesmith-main-1.png');
|
||||
background-position: -994px -1184px;
|
||||
width: 141px;
|
||||
height: 147px;
|
||||
}
|
||||
.background_stable {
|
||||
.background_spooky_hotel {
|
||||
background-image: url('~@/assets/images/sprites/spritesmith-main-1.png');
|
||||
background-position: -1136px -1184px;
|
||||
width: 141px;
|
||||
height: 147px;
|
||||
}
|
||||
.background_stained_glass {
|
||||
.background_spooky_scarecrow_field {
|
||||
background-image: url('~@/assets/images/sprites/spritesmith-main-1.png');
|
||||
background-position: -1278px -1184px;
|
||||
width: 141px;
|
||||
height: 147px;
|
||||
}
|
||||
.background_starry_skies {
|
||||
.background_spring_rain {
|
||||
background-image: url('~@/assets/images/sprites/spritesmith-main-1.png');
|
||||
background-position: -1420px 0px;
|
||||
width: 141px;
|
||||
height: 147px;
|
||||
}
|
||||
.background_starry_winter_night {
|
||||
.background_spring_thaw {
|
||||
background-image: url('~@/assets/images/sprites/spritesmith-main-1.png');
|
||||
background-position: -1420px -148px;
|
||||
width: 141px;
|
||||
height: 147px;
|
||||
}
|
||||
.background_stoikalm_volcanoes {
|
||||
.background_stable {
|
||||
background-image: url('~@/assets/images/sprites/spritesmith-main-1.png');
|
||||
background-position: -1420px -296px;
|
||||
width: 141px;
|
||||
height: 147px;
|
||||
}
|
||||
.background_stone_circle {
|
||||
.background_stained_glass {
|
||||
background-image: url('~@/assets/images/sprites/spritesmith-main-1.png');
|
||||
background-position: -1420px -444px;
|
||||
width: 141px;
|
||||
height: 147px;
|
||||
}
|
||||
.background_stormy_rooftops {
|
||||
.background_starry_skies {
|
||||
background-image: url('~@/assets/images/sprites/spritesmith-main-1.png');
|
||||
background-position: -1420px -592px;
|
||||
width: 141px;
|
||||
height: 147px;
|
||||
}
|
||||
.background_stormy_ship {
|
||||
.background_starry_winter_night {
|
||||
background-image: url('~@/assets/images/sprites/spritesmith-main-1.png');
|
||||
background-position: -1420px -740px;
|
||||
width: 141px;
|
||||
height: 147px;
|
||||
}
|
||||
.background_strange_sewers {
|
||||
.background_stoikalm_volcanoes {
|
||||
background-image: url('~@/assets/images/sprites/spritesmith-main-1.png');
|
||||
background-position: -1420px -888px;
|
||||
width: 141px;
|
||||
height: 147px;
|
||||
}
|
||||
.background_strawberry_patch {
|
||||
.background_stone_circle {
|
||||
background-image: url('~@/assets/images/sprites/spritesmith-main-1.png');
|
||||
background-position: -1420px -1036px;
|
||||
width: 141px;
|
||||
height: 147px;
|
||||
}
|
||||
.background_succulent_garden {
|
||||
.background_stone_tower {
|
||||
background-image: url('~@/assets/images/sprites/spritesmith-main-1.png');
|
||||
background-position: -1420px -1184px;
|
||||
width: 141px;
|
||||
height: 147px;
|
||||
}
|
||||
.background_summer_fireworks {
|
||||
.background_stormy_rooftops {
|
||||
background-image: url('~@/assets/images/sprites/spritesmith-main-1.png');
|
||||
background-position: 0px -1332px;
|
||||
width: 141px;
|
||||
height: 147px;
|
||||
}
|
||||
.background_sunken_ship {
|
||||
.background_stormy_ship {
|
||||
background-image: url('~@/assets/images/sprites/spritesmith-main-1.png');
|
||||
background-position: -142px -1332px;
|
||||
width: 141px;
|
||||
height: 147px;
|
||||
}
|
||||
.background_sunset_meadow {
|
||||
.background_strange_sewers {
|
||||
background-image: url('~@/assets/images/sprites/spritesmith-main-1.png');
|
||||
background-position: -284px -1332px;
|
||||
width: 141px;
|
||||
height: 147px;
|
||||
}
|
||||
.background_sunset_oasis {
|
||||
.background_strawberry_patch {
|
||||
background-image: url('~@/assets/images/sprites/spritesmith-main-1.png');
|
||||
background-position: -426px -1332px;
|
||||
width: 141px;
|
||||
height: 147px;
|
||||
}
|
||||
.background_sunset_savannah {
|
||||
.background_succulent_garden {
|
||||
background-image: url('~@/assets/images/sprites/spritesmith-main-1.png');
|
||||
background-position: -568px -1332px;
|
||||
width: 141px;
|
||||
height: 147px;
|
||||
}
|
||||
.background_swarming_darkness {
|
||||
.background_summer_fireworks {
|
||||
background-image: url('~@/assets/images/sprites/spritesmith-main-1.png');
|
||||
background-position: -710px -1332px;
|
||||
width: 141px;
|
||||
height: 147px;
|
||||
}
|
||||
.background_swimming_among_jellyfish {
|
||||
.background_sunken_ship {
|
||||
background-image: url('~@/assets/images/sprites/spritesmith-main-1.png');
|
||||
background-position: -852px -1332px;
|
||||
width: 141px;
|
||||
height: 147px;
|
||||
}
|
||||
.background_tar_pits {
|
||||
.background_sunset_meadow {
|
||||
background-image: url('~@/assets/images/sprites/spritesmith-main-1.png');
|
||||
background-position: -994px -1332px;
|
||||
width: 141px;
|
||||
height: 147px;
|
||||
}
|
||||
.background_tavern {
|
||||
.background_sunset_oasis {
|
||||
background-image: url('~@/assets/images/sprites/spritesmith-main-1.png');
|
||||
background-position: -1136px -1332px;
|
||||
width: 141px;
|
||||
height: 147px;
|
||||
}
|
||||
.background_tea_party {
|
||||
.background_sunset_savannah {
|
||||
background-image: url('~@/assets/images/sprites/spritesmith-main-1.png');
|
||||
background-position: -1278px -1332px;
|
||||
width: 141px;
|
||||
height: 147px;
|
||||
}
|
||||
.background_terraced_rice_field {
|
||||
.background_swarming_darkness {
|
||||
background-image: url('~@/assets/images/sprites/spritesmith-main-1.png');
|
||||
background-position: -1420px -1332px;
|
||||
width: 141px;
|
||||
height: 147px;
|
||||
}
|
||||
.background_throne_room {
|
||||
.background_swimming_among_jellyfish {
|
||||
background-image: url('~@/assets/images/sprites/spritesmith-main-1.png');
|
||||
background-position: -1562px 0px;
|
||||
width: 141px;
|
||||
height: 147px;
|
||||
}
|
||||
.background_thunderstorm {
|
||||
.background_tar_pits {
|
||||
background-image: url('~@/assets/images/sprites/spritesmith-main-1.png');
|
||||
background-position: -1562px -148px;
|
||||
width: 141px;
|
||||
height: 147px;
|
||||
}
|
||||
.background_tide_pool {
|
||||
.background_tavern {
|
||||
background-image: url('~@/assets/images/sprites/spritesmith-main-1.png');
|
||||
background-position: -1562px -296px;
|
||||
width: 141px;
|
||||
height: 147px;
|
||||
}
|
||||
.background_tornado {
|
||||
.background_tea_party {
|
||||
background-image: url('~@/assets/images/sprites/spritesmith-main-1.png');
|
||||
background-position: -1562px -444px;
|
||||
width: 141px;
|
||||
height: 147px;
|
||||
}
|
||||
.background_toymakers_workshop {
|
||||
.background_terraced_rice_field {
|
||||
background-image: url('~@/assets/images/sprites/spritesmith-main-1.png');
|
||||
background-position: -1562px -592px;
|
||||
width: 141px;
|
||||
height: 147px;
|
||||
}
|
||||
.background_training_grounds {
|
||||
.background_throne_room {
|
||||
background-image: url('~@/assets/images/sprites/spritesmith-main-1.png');
|
||||
background-position: -1562px -740px;
|
||||
width: 141px;
|
||||
height: 147px;
|
||||
}
|
||||
.background_treasure_room {
|
||||
.background_thunderstorm {
|
||||
background-image: url('~@/assets/images/sprites/spritesmith-main-1.png');
|
||||
background-position: -1562px -888px;
|
||||
width: 141px;
|
||||
height: 147px;
|
||||
}
|
||||
.background_tree_roots {
|
||||
.background_tide_pool {
|
||||
background-image: url('~@/assets/images/sprites/spritesmith-main-1.png');
|
||||
background-position: -1562px -1036px;
|
||||
width: 141px;
|
||||
height: 147px;
|
||||
}
|
||||
.background_treehouse {
|
||||
.background_tornado {
|
||||
background-image: url('~@/assets/images/sprites/spritesmith-main-1.png');
|
||||
background-position: -1562px -1184px;
|
||||
width: 141px;
|
||||
height: 147px;
|
||||
}
|
||||
.background_tulip_garden {
|
||||
.background_toymakers_workshop {
|
||||
background-image: url('~@/assets/images/sprites/spritesmith-main-1.png');
|
||||
background-position: -1562px -1332px;
|
||||
width: 141px;
|
||||
height: 147px;
|
||||
}
|
||||
.background_twinkly_lights {
|
||||
.background_training_grounds {
|
||||
background-image: url('~@/assets/images/sprites/spritesmith-main-1.png');
|
||||
background-position: 0px -1480px;
|
||||
width: 141px;
|
||||
height: 147px;
|
||||
}
|
||||
.background_twinkly_party_lights {
|
||||
.background_treasure_room {
|
||||
background-image: url('~@/assets/images/sprites/spritesmith-main-1.png');
|
||||
background-position: -142px -1480px;
|
||||
width: 141px;
|
||||
height: 147px;
|
||||
}
|
||||
.background_underwater_ruins {
|
||||
.background_tree_roots {
|
||||
background-image: url('~@/assets/images/sprites/spritesmith-main-1.png');
|
||||
background-position: -284px -1480px;
|
||||
width: 141px;
|
||||
height: 147px;
|
||||
}
|
||||
.background_underwater_vents {
|
||||
.background_treehouse {
|
||||
background-image: url('~@/assets/images/sprites/spritesmith-main-1.png');
|
||||
background-position: -426px -1480px;
|
||||
width: 141px;
|
||||
height: 147px;
|
||||
}
|
||||
.background_valentines_day_feasting_hall {
|
||||
.background_tulip_garden {
|
||||
background-image: url('~@/assets/images/sprites/spritesmith-main-1.png');
|
||||
background-position: -568px -1480px;
|
||||
width: 141px;
|
||||
height: 147px;
|
||||
}
|
||||
.background_viking_ship {
|
||||
.background_twinkly_lights {
|
||||
background-image: url('~@/assets/images/sprites/spritesmith-main-1.png');
|
||||
background-position: -710px -1480px;
|
||||
width: 141px;
|
||||
height: 147px;
|
||||
}
|
||||
.background_violet {
|
||||
.background_twinkly_party_lights {
|
||||
background-image: url('~@/assets/images/sprites/spritesmith-main-1.png');
|
||||
background-position: -852px -1480px;
|
||||
width: 141px;
|
||||
height: 147px;
|
||||
}
|
||||
.background_volcano {
|
||||
.background_underwater_among_koi {
|
||||
background-image: url('~@/assets/images/sprites/spritesmith-main-1.png');
|
||||
background-position: -994px -1480px;
|
||||
width: 141px;
|
||||
height: 147px;
|
||||
}
|
||||
.background_water_mill {
|
||||
.background_underwater_ruins {
|
||||
background-image: url('~@/assets/images/sprites/spritesmith-main-1.png');
|
||||
background-position: -1136px -1480px;
|
||||
width: 141px;
|
||||
height: 147px;
|
||||
}
|
||||
.background_waterfall_rock {
|
||||
.background_underwater_vents {
|
||||
background-image: url('~@/assets/images/sprites/spritesmith-main-1.png');
|
||||
background-position: -1278px -1480px;
|
||||
width: 141px;
|
||||
height: 147px;
|
||||
}
|
||||
.background_wedding_arch {
|
||||
.background_valentines_day_feasting_hall {
|
||||
background-image: url('~@/assets/images/sprites/spritesmith-main-1.png');
|
||||
background-position: -1420px -1480px;
|
||||
width: 141px;
|
||||
height: 147px;
|
||||
}
|
||||
.background_windmills {
|
||||
.background_viking_ship {
|
||||
background-image: url('~@/assets/images/sprites/spritesmith-main-1.png');
|
||||
background-position: -1562px -1480px;
|
||||
width: 141px;
|
||||
height: 147px;
|
||||
}
|
||||
.background_windy_autumn {
|
||||
.background_violet {
|
||||
background-image: url('~@/assets/images/sprites/spritesmith-main-1.png');
|
||||
background-position: -1704px 0px;
|
||||
width: 141px;
|
||||
height: 147px;
|
||||
}
|
||||
.background_winter_fireworks {
|
||||
.background_volcano {
|
||||
background-image: url('~@/assets/images/sprites/spritesmith-main-1.png');
|
||||
background-position: -1704px -148px;
|
||||
width: 141px;
|
||||
height: 147px;
|
||||
}
|
||||
.background_winter_night {
|
||||
.background_water_mill {
|
||||
background-image: url('~@/assets/images/sprites/spritesmith-main-1.png');
|
||||
background-position: -1704px -296px;
|
||||
width: 141px;
|
||||
height: 147px;
|
||||
}
|
||||
.background_winter_nocturne {
|
||||
.background_waterfall_rock {
|
||||
background-image: url('~@/assets/images/sprites/spritesmith-main-1.png');
|
||||
background-position: -1704px -444px;
|
||||
width: 141px;
|
||||
|
||||
@@ -0,0 +1,408 @@
|
||||
.Pet-Wolf-Veggie {
|
||||
background-image: url('~@/assets/images/sprites/spritesmith-main-31.png');
|
||||
background-position: 0px 0px;
|
||||
width: 81px;
|
||||
height: 99px;
|
||||
}
|
||||
.Pet-Wolf-Veteran {
|
||||
background-image: url('~@/assets/images/sprites/spritesmith-main-31.png');
|
||||
background-position: -82px 0px;
|
||||
width: 81px;
|
||||
height: 99px;
|
||||
}
|
||||
.Pet-Wolf-Watery {
|
||||
background-image: url('~@/assets/images/sprites/spritesmith-main-31.png');
|
||||
background-position: -164px 0px;
|
||||
width: 81px;
|
||||
height: 99px;
|
||||
}
|
||||
.Pet-Wolf-White {
|
||||
background-image: url('~@/assets/images/sprites/spritesmith-main-31.png');
|
||||
background-position: 0px -100px;
|
||||
width: 81px;
|
||||
height: 99px;
|
||||
}
|
||||
.Pet-Wolf-Windup {
|
||||
background-image: url('~@/assets/images/sprites/spritesmith-main-31.png');
|
||||
background-position: -82px -100px;
|
||||
width: 81px;
|
||||
height: 99px;
|
||||
}
|
||||
.Pet-Wolf-Zombie {
|
||||
background-image: url('~@/assets/images/sprites/spritesmith-main-31.png');
|
||||
background-position: -164px -100px;
|
||||
width: 81px;
|
||||
height: 99px;
|
||||
}
|
||||
.Pet-Yarn-Base {
|
||||
background-image: url('~@/assets/images/sprites/spritesmith-main-31.png');
|
||||
background-position: -246px 0px;
|
||||
width: 81px;
|
||||
height: 99px;
|
||||
}
|
||||
.Pet-Yarn-CottonCandyBlue {
|
||||
background-image: url('~@/assets/images/sprites/spritesmith-main-31.png');
|
||||
background-position: -246px -100px;
|
||||
width: 81px;
|
||||
height: 99px;
|
||||
}
|
||||
.Pet-Yarn-CottonCandyPink {
|
||||
background-image: url('~@/assets/images/sprites/spritesmith-main-31.png');
|
||||
background-position: 0px -200px;
|
||||
width: 81px;
|
||||
height: 99px;
|
||||
}
|
||||
.Pet-Yarn-Desert {
|
||||
background-image: url('~@/assets/images/sprites/spritesmith-main-31.png');
|
||||
background-position: -82px -200px;
|
||||
width: 81px;
|
||||
height: 99px;
|
||||
}
|
||||
.Pet-Yarn-Golden {
|
||||
background-image: url('~@/assets/images/sprites/spritesmith-main-31.png');
|
||||
background-position: -164px -200px;
|
||||
width: 81px;
|
||||
height: 99px;
|
||||
}
|
||||
.Pet-Yarn-Red {
|
||||
background-image: url('~@/assets/images/sprites/spritesmith-main-31.png');
|
||||
background-position: -246px -200px;
|
||||
width: 81px;
|
||||
height: 99px;
|
||||
}
|
||||
.Pet-Yarn-Shade {
|
||||
background-image: url('~@/assets/images/sprites/spritesmith-main-31.png');
|
||||
background-position: -328px 0px;
|
||||
width: 81px;
|
||||
height: 99px;
|
||||
}
|
||||
.Pet-Yarn-Skeleton {
|
||||
background-image: url('~@/assets/images/sprites/spritesmith-main-31.png');
|
||||
background-position: -328px -100px;
|
||||
width: 81px;
|
||||
height: 99px;
|
||||
}
|
||||
.Pet-Yarn-White {
|
||||
background-image: url('~@/assets/images/sprites/spritesmith-main-31.png');
|
||||
background-position: -328px -200px;
|
||||
width: 81px;
|
||||
height: 99px;
|
||||
}
|
||||
.Pet-Yarn-Zombie {
|
||||
background-image: url('~@/assets/images/sprites/spritesmith-main-31.png');
|
||||
background-position: 0px -300px;
|
||||
width: 81px;
|
||||
height: 99px;
|
||||
}
|
||||
.Pet_HatchingPotion_Amber {
|
||||
background-image: url('~@/assets/images/sprites/spritesmith-main-31.png');
|
||||
background-position: -82px -300px;
|
||||
width: 68px;
|
||||
height: 68px;
|
||||
}
|
||||
.Pet_HatchingPotion_Aquatic {
|
||||
background-image: url('~@/assets/images/sprites/spritesmith-main-31.png');
|
||||
background-position: -151px -300px;
|
||||
width: 68px;
|
||||
height: 68px;
|
||||
}
|
||||
.Pet_HatchingPotion_Aurora {
|
||||
background-image: url('~@/assets/images/sprites/spritesmith-main-31.png');
|
||||
background-position: -220px -300px;
|
||||
width: 68px;
|
||||
height: 68px;
|
||||
}
|
||||
.Pet_HatchingPotion_AutumnLeaf {
|
||||
background-image: url('~@/assets/images/sprites/spritesmith-main-31.png');
|
||||
background-position: -289px -300px;
|
||||
width: 68px;
|
||||
height: 68px;
|
||||
}
|
||||
.Pet_HatchingPotion_Base {
|
||||
background-image: url('~@/assets/images/sprites/spritesmith-main-31.png');
|
||||
background-position: -410px 0px;
|
||||
width: 68px;
|
||||
height: 68px;
|
||||
}
|
||||
.Pet_HatchingPotion_BirchBark {
|
||||
background-image: url('~@/assets/images/sprites/spritesmith-main-31.png');
|
||||
background-position: -410px -69px;
|
||||
width: 68px;
|
||||
height: 68px;
|
||||
}
|
||||
.Pet_HatchingPotion_BlackPearl {
|
||||
background-image: url('~@/assets/images/sprites/spritesmith-main-31.png');
|
||||
background-position: -410px -138px;
|
||||
width: 68px;
|
||||
height: 68px;
|
||||
}
|
||||
.Pet_HatchingPotion_Bronze {
|
||||
background-image: url('~@/assets/images/sprites/spritesmith-main-31.png');
|
||||
background-position: -410px -207px;
|
||||
width: 68px;
|
||||
height: 68px;
|
||||
}
|
||||
.Pet_HatchingPotion_Celestial {
|
||||
background-image: url('~@/assets/images/sprites/spritesmith-main-31.png');
|
||||
background-position: -410px -276px;
|
||||
width: 68px;
|
||||
height: 68px;
|
||||
}
|
||||
.Pet_HatchingPotion_CottonCandyBlue {
|
||||
background-image: url('~@/assets/images/sprites/spritesmith-main-31.png');
|
||||
background-position: 0px -400px;
|
||||
width: 68px;
|
||||
height: 68px;
|
||||
}
|
||||
.Pet_HatchingPotion_CottonCandyPink {
|
||||
background-image: url('~@/assets/images/sprites/spritesmith-main-31.png');
|
||||
background-position: -69px -400px;
|
||||
width: 68px;
|
||||
height: 68px;
|
||||
}
|
||||
.Pet_HatchingPotion_Cupid {
|
||||
background-image: url('~@/assets/images/sprites/spritesmith-main-31.png');
|
||||
background-position: -138px -400px;
|
||||
width: 68px;
|
||||
height: 68px;
|
||||
}
|
||||
.Pet_HatchingPotion_Desert {
|
||||
background-image: url('~@/assets/images/sprites/spritesmith-main-31.png');
|
||||
background-position: -207px -400px;
|
||||
width: 68px;
|
||||
height: 68px;
|
||||
}
|
||||
.Pet_HatchingPotion_Ember {
|
||||
background-image: url('~@/assets/images/sprites/spritesmith-main-31.png');
|
||||
background-position: -276px -400px;
|
||||
width: 68px;
|
||||
height: 68px;
|
||||
}
|
||||
.Pet_HatchingPotion_Fairy {
|
||||
background-image: url('~@/assets/images/sprites/spritesmith-main-31.png');
|
||||
background-position: -345px -400px;
|
||||
width: 68px;
|
||||
height: 68px;
|
||||
}
|
||||
.Pet_HatchingPotion_Floral {
|
||||
background-image: url('~@/assets/images/sprites/spritesmith-main-31.png');
|
||||
background-position: -479px 0px;
|
||||
width: 68px;
|
||||
height: 68px;
|
||||
}
|
||||
.Pet_HatchingPotion_Fluorite {
|
||||
background-image: url('~@/assets/images/sprites/spritesmith-main-31.png');
|
||||
background-position: -479px -69px;
|
||||
width: 68px;
|
||||
height: 68px;
|
||||
}
|
||||
.Pet_HatchingPotion_Frost {
|
||||
background-image: url('~@/assets/images/sprites/spritesmith-main-31.png');
|
||||
background-position: -479px -138px;
|
||||
width: 68px;
|
||||
height: 68px;
|
||||
}
|
||||
.Pet_HatchingPotion_Ghost {
|
||||
background-image: url('~@/assets/images/sprites/spritesmith-main-31.png');
|
||||
background-position: -479px -207px;
|
||||
width: 68px;
|
||||
height: 68px;
|
||||
}
|
||||
.Pet_HatchingPotion_Glass {
|
||||
background-image: url('~@/assets/images/sprites/spritesmith-main-31.png');
|
||||
background-position: -479px -276px;
|
||||
width: 68px;
|
||||
height: 68px;
|
||||
}
|
||||
.Pet_HatchingPotion_Glow {
|
||||
background-image: url('~@/assets/images/sprites/spritesmith-main-31.png');
|
||||
background-position: -479px -345px;
|
||||
width: 68px;
|
||||
height: 68px;
|
||||
}
|
||||
.Pet_HatchingPotion_Golden {
|
||||
background-image: url('~@/assets/images/sprites/spritesmith-main-31.png');
|
||||
background-position: 0px -469px;
|
||||
width: 68px;
|
||||
height: 68px;
|
||||
}
|
||||
.Pet_HatchingPotion_Holly {
|
||||
background-image: url('~@/assets/images/sprites/spritesmith-main-31.png');
|
||||
background-position: -69px -469px;
|
||||
width: 68px;
|
||||
height: 68px;
|
||||
}
|
||||
.Pet_HatchingPotion_IcySnow {
|
||||
background-image: url('~@/assets/images/sprites/spritesmith-main-31.png');
|
||||
background-position: -138px -469px;
|
||||
width: 68px;
|
||||
height: 68px;
|
||||
}
|
||||
.Pet_HatchingPotion_Moonglow {
|
||||
background-image: url('~@/assets/images/sprites/spritesmith-main-31.png');
|
||||
background-position: -207px -469px;
|
||||
width: 68px;
|
||||
height: 68px;
|
||||
}
|
||||
.Pet_HatchingPotion_MossyStone {
|
||||
background-image: url('~@/assets/images/sprites/spritesmith-main-31.png');
|
||||
background-position: -276px -469px;
|
||||
width: 68px;
|
||||
height: 68px;
|
||||
}
|
||||
.Pet_HatchingPotion_Peppermint {
|
||||
background-image: url('~@/assets/images/sprites/spritesmith-main-31.png');
|
||||
background-position: -345px -469px;
|
||||
width: 68px;
|
||||
height: 68px;
|
||||
}
|
||||
.Pet_HatchingPotion_PolkaDot {
|
||||
background-image: url('~@/assets/images/sprites/spritesmith-main-31.png');
|
||||
background-position: -414px -469px;
|
||||
width: 68px;
|
||||
height: 68px;
|
||||
}
|
||||
.Pet_HatchingPotion_Purple {
|
||||
background-image: url('~@/assets/images/sprites/spritesmith-main-31.png');
|
||||
background-position: -548px 0px;
|
||||
width: 68px;
|
||||
height: 68px;
|
||||
}
|
||||
.Pet_HatchingPotion_Rainbow {
|
||||
background-image: url('~@/assets/images/sprites/spritesmith-main-31.png');
|
||||
background-position: -548px -69px;
|
||||
width: 68px;
|
||||
height: 68px;
|
||||
}
|
||||
.Pet_HatchingPotion_Red {
|
||||
background-image: url('~@/assets/images/sprites/spritesmith-main-31.png');
|
||||
background-position: -548px -138px;
|
||||
width: 68px;
|
||||
height: 68px;
|
||||
}
|
||||
.Pet_HatchingPotion_RoseQuartz {
|
||||
background-image: url('~@/assets/images/sprites/spritesmith-main-31.png');
|
||||
background-position: -548px -207px;
|
||||
width: 68px;
|
||||
height: 68px;
|
||||
}
|
||||
.Pet_HatchingPotion_RoyalPurple {
|
||||
background-image: url('~@/assets/images/sprites/spritesmith-main-31.png');
|
||||
background-position: -548px -276px;
|
||||
width: 68px;
|
||||
height: 68px;
|
||||
}
|
||||
.Pet_HatchingPotion_Ruby {
|
||||
background-image: url('~@/assets/images/sprites/spritesmith-main-31.png');
|
||||
background-position: -548px -345px;
|
||||
width: 68px;
|
||||
height: 68px;
|
||||
}
|
||||
.Pet_HatchingPotion_SandSculpture {
|
||||
background-image: url('~@/assets/images/sprites/spritesmith-main-31.png');
|
||||
background-position: -548px -414px;
|
||||
width: 68px;
|
||||
height: 68px;
|
||||
}
|
||||
.Pet_HatchingPotion_Shade {
|
||||
background-image: url('~@/assets/images/sprites/spritesmith-main-31.png');
|
||||
background-position: 0px -538px;
|
||||
width: 68px;
|
||||
height: 68px;
|
||||
}
|
||||
.Pet_HatchingPotion_Shadow {
|
||||
background-image: url('~@/assets/images/sprites/spritesmith-main-31.png');
|
||||
background-position: -69px -538px;
|
||||
width: 68px;
|
||||
height: 68px;
|
||||
}
|
||||
.Pet_HatchingPotion_Shimmer {
|
||||
background-image: url('~@/assets/images/sprites/spritesmith-main-31.png');
|
||||
background-position: -138px -538px;
|
||||
width: 68px;
|
||||
height: 68px;
|
||||
}
|
||||
.Pet_HatchingPotion_Silver {
|
||||
background-image: url('~@/assets/images/sprites/spritesmith-main-31.png');
|
||||
background-position: -207px -538px;
|
||||
width: 68px;
|
||||
height: 68px;
|
||||
}
|
||||
.Pet_HatchingPotion_Skeleton {
|
||||
background-image: url('~@/assets/images/sprites/spritesmith-main-31.png');
|
||||
background-position: -276px -538px;
|
||||
width: 68px;
|
||||
height: 68px;
|
||||
}
|
||||
.Pet_HatchingPotion_SolarSystem {
|
||||
background-image: url('~@/assets/images/sprites/spritesmith-main-31.png');
|
||||
background-position: -345px -538px;
|
||||
width: 68px;
|
||||
height: 68px;
|
||||
}
|
||||
.Pet_HatchingPotion_Spooky {
|
||||
background-image: url('~@/assets/images/sprites/spritesmith-main-31.png');
|
||||
background-position: -414px -538px;
|
||||
width: 68px;
|
||||
height: 68px;
|
||||
}
|
||||
.Pet_HatchingPotion_StainedGlass {
|
||||
background-image: url('~@/assets/images/sprites/spritesmith-main-31.png');
|
||||
background-position: -483px -538px;
|
||||
width: 68px;
|
||||
height: 68px;
|
||||
}
|
||||
.Pet_HatchingPotion_StarryNight {
|
||||
background-image: url('~@/assets/images/sprites/spritesmith-main-31.png');
|
||||
background-position: -617px 0px;
|
||||
width: 68px;
|
||||
height: 68px;
|
||||
}
|
||||
.Pet_HatchingPotion_Sunset {
|
||||
background-image: url('~@/assets/images/sprites/spritesmith-main-31.png');
|
||||
background-position: -617px -69px;
|
||||
width: 68px;
|
||||
height: 68px;
|
||||
}
|
||||
.Pet_HatchingPotion_Sunshine {
|
||||
background-image: url('~@/assets/images/sprites/spritesmith-main-31.png');
|
||||
background-position: -617px -138px;
|
||||
width: 68px;
|
||||
height: 68px;
|
||||
}
|
||||
.Pet_HatchingPotion_Thunderstorm {
|
||||
background-image: url('~@/assets/images/sprites/spritesmith-main-31.png');
|
||||
background-position: -617px -207px;
|
||||
width: 68px;
|
||||
height: 68px;
|
||||
}
|
||||
.Pet_HatchingPotion_Turquoise {
|
||||
background-image: url('~@/assets/images/sprites/spritesmith-main-31.png');
|
||||
background-position: -617px -276px;
|
||||
width: 68px;
|
||||
height: 68px;
|
||||
}
|
||||
.Pet_HatchingPotion_Vampire {
|
||||
background-image: url('~@/assets/images/sprites/spritesmith-main-31.png');
|
||||
background-position: -617px -345px;
|
||||
width: 68px;
|
||||
height: 68px;
|
||||
}
|
||||
.Pet_HatchingPotion_Watery {
|
||||
background-image: url('~@/assets/images/sprites/spritesmith-main-31.png');
|
||||
background-position: -617px -414px;
|
||||
width: 68px;
|
||||
height: 68px;
|
||||
}
|
||||
.Pet_HatchingPotion_White {
|
||||
background-image: url('~@/assets/images/sprites/spritesmith-main-31.png');
|
||||
background-position: -617px -483px;
|
||||
width: 68px;
|
||||
height: 68px;
|
||||
}
|
||||
.Pet_HatchingPotion_Zombie {
|
||||
background-image: url('~@/assets/images/sprites/spritesmith-main-31.png');
|
||||
background-position: 0px -607px;
|
||||
width: 68px;
|
||||
height: 68px;
|
||||
}
|
||||
|
After Width: | Height: | Size: 35 KiB |
|
Before Width: | Height: | Size: 7.1 KiB After Width: | Height: | Size: 7.4 KiB |
|
Before Width: | Height: | Size: 14 KiB After Width: | Height: | Size: 8.1 KiB |
|
Before Width: | Height: | Size: 11 KiB After Width: | Height: | Size: 7.4 KiB |
|
Before Width: | Height: | Size: 461 KiB After Width: | Height: | Size: 462 KiB |
|
Before Width: | Height: | Size: 468 KiB After Width: | Height: | Size: 470 KiB |
|
Before Width: | Height: | Size: 141 KiB After Width: | Height: | Size: 147 KiB |
|
Before Width: | Height: | Size: 121 KiB After Width: | Height: | Size: 122 KiB |
|
Before Width: | Height: | Size: 128 KiB After Width: | Height: | Size: 121 KiB |
|
Before Width: | Height: | Size: 113 KiB After Width: | Height: | Size: 114 KiB |
|
Before Width: | Height: | Size: 339 KiB After Width: | Height: | Size: 321 KiB |
|
Before Width: | Height: | Size: 352 KiB After Width: | Height: | Size: 360 KiB |
|
Before Width: | Height: | Size: 171 KiB After Width: | Height: | Size: 195 KiB |
|
Before Width: | Height: | Size: 174 KiB After Width: | Height: | Size: 174 KiB |
|
Before Width: | Height: | Size: 148 KiB After Width: | Height: | Size: 150 KiB |
|
Before Width: | Height: | Size: 139 KiB After Width: | Height: | Size: 148 KiB |
|
Before Width: | Height: | Size: 512 KiB After Width: | Height: | Size: 533 KiB |
|
Before Width: | Height: | Size: 131 KiB After Width: | Height: | Size: 130 KiB |
|
Before Width: | Height: | Size: 199 KiB After Width: | Height: | Size: 200 KiB |
|
Before Width: | Height: | Size: 140 KiB After Width: | Height: | Size: 136 KiB |
|
Before Width: | Height: | Size: 154 KiB After Width: | Height: | Size: 155 KiB |
|
Before Width: | Height: | Size: 146 KiB After Width: | Height: | Size: 148 KiB |
|
Before Width: | Height: | Size: 160 KiB After Width: | Height: | Size: 159 KiB |
|
Before Width: | Height: | Size: 146 KiB After Width: | Height: | Size: 148 KiB |
|
Before Width: | Height: | Size: 190 KiB After Width: | Height: | Size: 173 KiB |
|
Before Width: | Height: | Size: 172 KiB After Width: | Height: | Size: 182 KiB |
|
Before Width: | Height: | Size: 163 KiB After Width: | Height: | Size: 166 KiB |
|
Before Width: | Height: | Size: 79 KiB After Width: | Height: | Size: 79 KiB |
|
Before Width: | Height: | Size: 138 KiB After Width: | Height: | Size: 175 KiB |
|
After Width: | Height: | Size: 23 KiB |
|
Before Width: | Height: | Size: 71 KiB After Width: | Height: | Size: 70 KiB |
|
Before Width: | Height: | Size: 54 KiB After Width: | Height: | Size: 54 KiB |
|
Before Width: | Height: | Size: 128 KiB After Width: | Height: | Size: 123 KiB |
|
Before Width: | Height: | Size: 119 KiB After Width: | Height: | Size: 121 KiB |
|
Before Width: | Height: | Size: 116 KiB After Width: | Height: | Size: 118 KiB |
|
Before Width: | Height: | Size: 141 KiB After Width: | Height: | Size: 133 KiB |
@@ -37,6 +37,9 @@ storiesOf('Group Components|Party/Quest States', module)
|
||||
_id: 'some-user',
|
||||
party: {
|
||||
|
||||
},
|
||||
preferences: {
|
||||
|
||||
},
|
||||
},
|
||||
},
|
||||
@@ -68,6 +71,9 @@ storiesOf('Group Components|Party/Quest States', module)
|
||||
_id: 'some-user',
|
||||
party: {
|
||||
|
||||
},
|
||||
preferences: {
|
||||
|
||||
},
|
||||
},
|
||||
},
|
||||
@@ -101,6 +107,9 @@ storiesOf('Group Components|Party/Quest States', module)
|
||||
_id: 'some-user',
|
||||
party: {
|
||||
|
||||
},
|
||||
preferences: {
|
||||
|
||||
},
|
||||
},
|
||||
},
|
||||
@@ -122,6 +131,9 @@ storiesOf('Group Components|Party/Quest States', module)
|
||||
_id: '05ca98f4-4706-47b5-8d02-142e6e78ba2e',
|
||||
party: {
|
||||
|
||||
},
|
||||
preferences: {
|
||||
|
||||
},
|
||||
},
|
||||
},
|
||||
@@ -143,6 +155,9 @@ storiesOf('Group Components|Party/Quest States', module)
|
||||
_id: 'just-a-member',
|
||||
party: {
|
||||
|
||||
},
|
||||
preferences: {
|
||||
|
||||
},
|
||||
},
|
||||
},
|
||||
@@ -164,6 +179,9 @@ storiesOf('Group Components|Party/Quest States', module)
|
||||
_id: 'just-a-member',
|
||||
party: {
|
||||
|
||||
},
|
||||
preferences: {
|
||||
|
||||
},
|
||||
},
|
||||
},
|
||||
@@ -190,6 +208,9 @@ storiesOf('Group Components|Party/Quest States', module)
|
||||
RSVPNeeded: true,
|
||||
},
|
||||
},
|
||||
preferences: {
|
||||
|
||||
},
|
||||
},
|
||||
},
|
||||
challengeOptions: {},
|
||||
@@ -218,6 +239,9 @@ storiesOf('Group Components|Party/Quest States', module)
|
||||
},
|
||||
},
|
||||
},
|
||||
preferences: {
|
||||
|
||||
},
|
||||
},
|
||||
},
|
||||
challengeOptions: {},
|
||||
@@ -246,6 +270,9 @@ storiesOf('Group Components|Party/Quest States', module)
|
||||
},
|
||||
},
|
||||
},
|
||||
preferences: {
|
||||
|
||||
},
|
||||
},
|
||||
},
|
||||
challengeOptions: {},
|
||||
@@ -274,6 +301,9 @@ storiesOf('Group Components|Party/Quest States', module)
|
||||
},
|
||||
},
|
||||
},
|
||||
preferences: {
|
||||
|
||||
},
|
||||
},
|
||||
},
|
||||
challengeOptions: {},
|
||||
@@ -302,6 +332,9 @@ storiesOf('Group Components|Party/Quest States', module)
|
||||
},
|
||||
},
|
||||
},
|
||||
preferences: {
|
||||
|
||||
},
|
||||
},
|
||||
},
|
||||
challengeOptions: {},
|
||||
@@ -330,6 +363,9 @@ storiesOf('Group Components|Party/Quest States', module)
|
||||
},
|
||||
},
|
||||
},
|
||||
preferences: {
|
||||
|
||||
},
|
||||
},
|
||||
},
|
||||
challengeOptions: {},
|
||||
@@ -355,6 +391,9 @@ storiesOf('Group Components|Party/Quest States', module)
|
||||
_id: 'some-user',
|
||||
party: {
|
||||
|
||||
},
|
||||
preferences: {
|
||||
|
||||
},
|
||||
},
|
||||
},
|
||||
|
||||
@@ -577,6 +577,7 @@ export default {
|
||||
groupId,
|
||||
includeAllPublicFields: true,
|
||||
});
|
||||
if (this.selectedPage === 'invites' && invites.length === 0) this.viewMembers();
|
||||
this.invites = invites;
|
||||
}
|
||||
},
|
||||
|
||||
@@ -113,11 +113,11 @@
|
||||
<div
|
||||
class="boss-health-bar"
|
||||
:style="{width: bossHpPercent + '%'}"
|
||||
></div>
|
||||
<div
|
||||
class="pending-health-bar"
|
||||
:style="{width: pendingHpPercent + '%'}"
|
||||
>
|
||||
<div
|
||||
class="pending-health-bar"
|
||||
:style="{width: pendingHpInBossHpPercent + '%'}"
|
||||
></div>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
@@ -291,12 +291,16 @@
|
||||
height: 0.75rem;
|
||||
|
||||
display: inline-block;
|
||||
position: relative;
|
||||
}
|
||||
|
||||
.pending-health-bar {
|
||||
height: 0.75rem;
|
||||
background-color: $yellow-50;
|
||||
display: inline-block;
|
||||
|
||||
position: absolute;
|
||||
right: 0;
|
||||
}
|
||||
|
||||
.rage-details {
|
||||
@@ -677,6 +681,15 @@ export default {
|
||||
pendingHpPercent () {
|
||||
return percent(this.user.party.quest.progress.up, this.questData.boss.hp);
|
||||
},
|
||||
pendingHpInBossHpPercent () {
|
||||
// Pending more than the current hp left, it is the full % of the pending bar
|
||||
if (this.user.party.quest.progress.up > this.group.quest.progress.hp) {
|
||||
return 100;
|
||||
}
|
||||
|
||||
// otherwise the percent inside that hp bar is needed
|
||||
return percent(this.user.party.quest.progress.up, this.group.quest.progress.hp);
|
||||
},
|
||||
questData () {
|
||||
if (!this.group.quest) return {};
|
||||
return quests.quests[this.group.quest.key];
|
||||
|
||||
@@ -275,11 +275,10 @@
|
||||
<div
|
||||
v-for="user in staff"
|
||||
:key="user.uuid"
|
||||
class="col-4 staff"
|
||||
class="col-6 staff"
|
||||
:class="{
|
||||
staff: user.type === 'Staff',
|
||||
moderator: user.type === 'Moderator',
|
||||
bailey: user.name === 'It\'s Bailey'}"
|
||||
moderator: user.type === 'Moderator'}"
|
||||
>
|
||||
<div>
|
||||
<router-link
|
||||
|
||||
@@ -1,6 +1,6 @@
|
||||
<template>
|
||||
<div class="class-badge d-flex justify-content-center"
|
||||
:style="{'--badge-size': badgeSize}">
|
||||
:style="{'--badge-size': badgeSize + 'px'}">
|
||||
<div
|
||||
class="align-self-center svg-icon"
|
||||
:aria-label="$t(memberClass)"
|
||||
@@ -24,7 +24,7 @@
|
||||
&.under-avatar {
|
||||
position: absolute;
|
||||
left: calc(50% - (16px));
|
||||
bottom: -(var(--badge-size) / 2);
|
||||
bottom: calc( (var(--badge-size) / 2) * -1);
|
||||
z-index: 1;
|
||||
}
|
||||
|
||||
|
||||
@@ -419,6 +419,14 @@ const NOTIFICATIONS = {
|
||||
achievement: 'wildBlueYonder',
|
||||
},
|
||||
},
|
||||
ACHIEVEMENT_DOMESTICATED: {
|
||||
achievement: true,
|
||||
label: $t => `${$t('achievement')}: ${$t('achievementDomesticated')}`,
|
||||
modalId: 'generic-achievement',
|
||||
data: {
|
||||
achievement: 'domesticated',
|
||||
},
|
||||
},
|
||||
};
|
||||
|
||||
export default {
|
||||
@@ -482,7 +490,7 @@ export default {
|
||||
'ACHIEVEMENT_FRESHWATER_FRIENDS', 'ACHIEVEMENT_GOOD_AS_GOLD', 'ACHIEVEMENT_ALL_THAT_GLITTERS',
|
||||
'ACHIEVEMENT_BONE_COLLECTOR', 'ACHIEVEMENT_SKELETON_CREW', 'ACHIEVEMENT_SEEING_RED',
|
||||
'ACHIEVEMENT_RED_LETTER_DAY', 'ACHIEVEMENT_LEGENDARY_BESTIARY', 'ACHIEVEMENT_SEASONAL_SPECIALIST',
|
||||
'ACHIEVEMENT_VIOLETS_ARE_BLUE', 'ACHIEVEMENT_WILD_BLUE_YONDER',
|
||||
'ACHIEVEMENT_VIOLETS_ARE_BLUE', 'ACHIEVEMENT_WILD_BLUE_YONDER', 'ACHIEVEMENT_DOMESTICATED',
|
||||
].forEach(type => {
|
||||
handledNotifications[type] = true;
|
||||
});
|
||||
@@ -909,6 +917,7 @@ export default {
|
||||
case 'ACHIEVEMENT_SEASONAL_SPECIALIST':
|
||||
case 'ACHIEVEMENT_VIOLETS_ARE_BLUE':
|
||||
case 'ACHIEVEMENT_WILD_BLUE_YONDER':
|
||||
case 'ACHIEVEMENT_DOMESTICATED':
|
||||
case 'GENERIC_ACHIEVEMENT':
|
||||
this.showNotificationWithModal(notification);
|
||||
break;
|
||||
|
||||
@@ -9,6 +9,7 @@
|
||||
<input
|
||||
v-model="user.preferences.pushNotifications.unsubscribeFromAll"
|
||||
type="checkbox"
|
||||
class="mr-2"
|
||||
@change="set('pushNotifications', 'unsubscribeFromAll')"
|
||||
>
|
||||
<span>{{ $t('unsubscribeAllPush') }}</span>
|
||||
@@ -20,6 +21,7 @@
|
||||
<input
|
||||
v-model="user.preferences.emailNotifications.unsubscribeFromAll"
|
||||
type="checkbox"
|
||||
class="mr-2"
|
||||
@change="set('emailNotifications', 'unsubscribeFromAll')"
|
||||
>
|
||||
<span>{{ $t('unsubscribeAllEmails') }}</span>
|
||||
|
||||
@@ -101,6 +101,7 @@
|
||||
<input
|
||||
v-model="user.preferences.advancedCollapsed"
|
||||
type="checkbox"
|
||||
class="mr-2"
|
||||
@change="set('advancedCollapsed')"
|
||||
>
|
||||
<span
|
||||
@@ -116,6 +117,7 @@
|
||||
<input
|
||||
v-model="user.preferences.dailyDueDefaultView"
|
||||
type="checkbox"
|
||||
class="mr-2"
|
||||
@change="set('dailyDueDefaultView')"
|
||||
>
|
||||
<span
|
||||
@@ -134,6 +136,7 @@
|
||||
<input
|
||||
v-model="user.preferences.displayInviteToPartyWhenPartyIs1"
|
||||
type="checkbox"
|
||||
class="mr-2"
|
||||
@change="set('displayInviteToPartyWhenPartyIs1')"
|
||||
>
|
||||
<span
|
||||
@@ -148,6 +151,7 @@
|
||||
<input
|
||||
v-model="user.preferences.suppressModals.levelUp"
|
||||
type="checkbox"
|
||||
class="mr-2"
|
||||
@change="set('suppressModals', 'levelUp')"
|
||||
>
|
||||
<label>{{ $t('suppressLevelUpModal') }}</label>
|
||||
@@ -156,6 +160,7 @@
|
||||
<input
|
||||
v-model="user.preferences.suppressModals.hatchPet"
|
||||
type="checkbox"
|
||||
class="mr-2"
|
||||
@change="set('suppressModals', 'hatchPet')"
|
||||
>
|
||||
<label>{{ $t('suppressHatchPetModal') }}</label>
|
||||
@@ -164,6 +169,7 @@
|
||||
<input
|
||||
v-model="user.preferences.suppressModals.raisePet"
|
||||
type="checkbox"
|
||||
class="mr-2"
|
||||
@change="set('suppressModals', 'raisePet')"
|
||||
>
|
||||
<label>{{ $t('suppressRaisePetModal') }}</label>
|
||||
@@ -172,6 +178,7 @@
|
||||
<input
|
||||
v-model="user.preferences.suppressModals.streak"
|
||||
type="checkbox"
|
||||
class="mr-2"
|
||||
@change="set('suppressModals', 'streak')"
|
||||
>
|
||||
<label>{{ $t('suppressStreakModal') }}</label>
|
||||
|
||||
@@ -537,7 +537,7 @@ export default {
|
||||
}
|
||||
|
||||
const ownedPets = reduce(this.user.items.pets, (sum, petValue, petKey) => {
|
||||
if (petKey.includes(this.item.key) && petValue > 0
|
||||
if (petKey.match(new RegExp(`(-|^)${this.item.key}(-|$)`)) && petValue > 0
|
||||
&& !petKey.includes('JackOLantern') // Jack-O-Lantern has "Ghost" version
|
||||
&& !petKey.includes('RoyalPurple') // to avoid counting Royal Purple Gryphons for gryphon eggs
|
||||
) return sum + 1;
|
||||
@@ -545,7 +545,7 @@ export default {
|
||||
}, 0);
|
||||
|
||||
const ownedMounts = reduce(this.user.items.mounts, (sum, mountValue, mountKey) => {
|
||||
if (mountKey.includes(this.item.key) && mountValue === true
|
||||
if (mountKey.match(new RegExp(`(-|^)${this.item.key}(-|$)`)) && mountValue === true
|
||||
&& !mountKey.includes('JackOLantern')
|
||||
&& !mountKey.includes('RoyalPurple')
|
||||
) return sum + 1;
|
||||
|
||||
@@ -76,7 +76,7 @@ export default {
|
||||
this.limitedString = this.$t('noLongerAvailable');
|
||||
this.availabilityClass = 'expired';
|
||||
this.cancelAutoUpdate();
|
||||
} else if (diffDuration.days() > 0) {
|
||||
} else if (diffDuration.days() > 0 || diffDuration.months() > 0) {
|
||||
this.limitedString = this.$t('limitedAvailabilityDays', {
|
||||
days: moment(this.endDate).diff(moment(), 'days'),
|
||||
hours: diffDuration.hours(),
|
||||
|
||||
@@ -513,6 +513,12 @@ export default {
|
||||
section: this.$t('shops'),
|
||||
});
|
||||
await this.$store.dispatch('worldState:getWorldState');
|
||||
|
||||
this.$root.$on('bv::modal::hidden', event => {
|
||||
if (event.componentId === 'buy-quest-modal') {
|
||||
this.$root.$emit('buyModal::hidden', this.selectedItemToBuy.key);
|
||||
}
|
||||
});
|
||||
},
|
||||
methods: {
|
||||
questItems (category, sortBy, searchBy, hideLocked, hidePinned) {
|
||||
|
||||
@@ -208,7 +208,7 @@ export default {
|
||||
|
||||
if (diffDuration.asSeconds() <= 0) {
|
||||
this.limitedString = this.$t('noLongerAvailable');
|
||||
} else if (diffDuration.days() > 0) {
|
||||
} else if (diffDuration.days() > 0 || diffDuration.months() > 0) {
|
||||
this.limitedString = this.$t('limitedAvailabilityDays', {
|
||||
days: moment(this.quest.event.end).diff(moment(), 'days'),
|
||||
hours: diffDuration.hours(),
|
||||
|
||||
@@ -6,6 +6,7 @@
|
||||
tabindex="0"
|
||||
@click="click()"
|
||||
@keypress.enter="click()"
|
||||
@blur="blur"
|
||||
>
|
||||
<div
|
||||
class="item"
|
||||
@@ -64,6 +65,7 @@
|
||||
</div>
|
||||
<b-popover
|
||||
v-if="showPopover"
|
||||
ref="popover"
|
||||
:target="itemId"
|
||||
triggers="hover focus"
|
||||
:placement="popoverPosition"
|
||||
@@ -318,11 +320,20 @@ export default {
|
||||
mounted () {
|
||||
this.countdownString();
|
||||
this.timer = setInterval(this.countdownString, 1000);
|
||||
this.$root.$on('buyModal::hidden', itemKey => {
|
||||
if (this.$refs && this.$refs.popover && itemKey === this.item.key) {
|
||||
this.$refs.popover.$emit('close');
|
||||
this.$refs.popover.$emit('disable');
|
||||
}
|
||||
});
|
||||
},
|
||||
methods: {
|
||||
click () {
|
||||
this.$emit('click', {});
|
||||
},
|
||||
blur () {
|
||||
this.$refs.popover.$emit('enable');
|
||||
},
|
||||
getPrice () {
|
||||
if (this.item.unlockCondition && this.item.unlockCondition.condition === 'party invite' && !this.owned) return this.item.unlockCondition.text();
|
||||
if (this.price === -1) {
|
||||
@@ -344,7 +355,7 @@ export default {
|
||||
|
||||
if (diffDuration.asSeconds() <= 0) {
|
||||
this.limitedString = this.$t('noLongerAvailable');
|
||||
} else if (diffDuration.days() > 0) {
|
||||
} else if (diffDuration.days() > 0 || diffDuration.months() > 0) {
|
||||
this.limitedString = this.$t('limitedAvailabilityDays', {
|
||||
days: moment(this.item.event.end).diff(moment(), 'days'),
|
||||
hours: diffDuration.hours(),
|
||||
|
||||
@@ -417,6 +417,11 @@ export default {
|
||||
this.$root.$on('buyModal::boughtItem', () => {
|
||||
this.backgroundUpdate = new Date();
|
||||
});
|
||||
this.$root.$on('bv::modal::hidden', event => {
|
||||
if (event.componentId === 'buy-quest-modal') {
|
||||
this.$root.$emit('buyModal::hidden', this.selectedItemToBuy.key);
|
||||
}
|
||||
});
|
||||
},
|
||||
beforeDestroy () {
|
||||
this.$root.$off('buyModal::boughtItem');
|
||||
|
||||
@@ -2,7 +2,7 @@
|
||||
<div class="container-fluid">
|
||||
<h1>{{ $t('communityGuidelines') }}</h1>
|
||||
<hr>
|
||||
<p>{{ $t('lastUpdated') }} March 29, 2018</p>
|
||||
<p>{{ $t('lastUpdated') }} July 28, 2021</p>
|
||||
<h2 id="welcome">
|
||||
{{ $t('commGuideHeadingWelcome') }}
|
||||
</h2>
|
||||
@@ -14,27 +14,32 @@
|
||||
</div>
|
||||
</div>
|
||||
<p v-html="$t('commGuidePara003')"></p>
|
||||
<p v-html="$t('commGuidePara004')"></p>
|
||||
<h2 id="interactions">
|
||||
{{ $t('commGuideHeadingInteractions') }}
|
||||
</h2>
|
||||
<p v-html="$t('commGuidePara015')"></p>
|
||||
<p v-html="$t('commGuidePara016')"></p>
|
||||
<p v-html="$t('commGuidePara017')"></p>
|
||||
<ul>
|
||||
<li v-html="$t('commGuideList01A')"></li>
|
||||
<li v-html="$t('commGuideList01B')"></li>
|
||||
<li v-html="$t('commGuideList01C')"></li>
|
||||
<li v-html="$t('commGuideList01D')"></li>
|
||||
<li v-html="$t('commGuideList01E')"></li>
|
||||
<li v-html="$t('commGuideList01F')"></li>
|
||||
</ul>
|
||||
<div class="media align-items-center">
|
||||
<div class="media-body">
|
||||
<p v-html="$t('commGuidePara015')"></p>
|
||||
<p v-html="$t('commGuidePara016')"></p>
|
||||
</div>
|
||||
<img src="~@/assets/images/community-guidelines/publicSpaces.png">
|
||||
</div>
|
||||
<ul>
|
||||
<li v-html="$t('commGuideList02A')"></li>
|
||||
<li v-html="$t('commGuideList02B')"></li>
|
||||
<li v-html="$t('commGuideList02G')"></li>
|
||||
<li v-html="$t('commGuideList02C')"></li>
|
||||
<li v-html="$t('commGuideList02D')"></li>
|
||||
<li v-html="$t('commGuideList02E')"></li>
|
||||
<li v-html="$t('commGuideList02F')"></li>
|
||||
<li v-html="$t('commGuideList02G')"></li>
|
||||
<li v-html="$t('commGuideList02H')"></li>
|
||||
<li v-html="$t('commGuideList02I')"></li>
|
||||
<li v-html="$t('commGuideList02M')"></li>
|
||||
<li v-html="$t('commGuideList02J')"></li>
|
||||
<li v-html="$t('commGuideList02K')"></li>
|
||||
<li v-html="$t('commGuideList02L')"></li>
|
||||
@@ -93,6 +98,7 @@
|
||||
<li v-html="$t('commGuideList05E')"></li>
|
||||
<li v-html="$t('commGuideList05F')"></li>
|
||||
<li v-html="$t('commGuideList05G')"></li>
|
||||
<li v-html="$t('commGuideList05H')"></li>
|
||||
</ul>
|
||||
<h4>{{ $t('commGuideHeadingModerateInfractions') }}</h4>
|
||||
<p v-html="$t('commGuidePara054')"></p>
|
||||
@@ -134,6 +140,7 @@
|
||||
<ul>
|
||||
<li v-html="$t('commGuideList09A')"></li>
|
||||
<li v-html="$t('commGuideList09C')"></li>
|
||||
<li v-html="$t('commGuideList09D')"></li>
|
||||
</ul>
|
||||
<h4>{{ $t('commGuideHeadingModerateConsequences') }}</h4>
|
||||
<ul>
|
||||
@@ -145,7 +152,6 @@
|
||||
</li>
|
||||
<li v-html="$t('commGuideList10C')"></li>
|
||||
<li v-html="$t('commGuideList10D')"></li>
|
||||
<li v-html="$t('commGuideList10E')"></li>
|
||||
<li v-html="$t('commGuideList10F')"></li>
|
||||
</ul>
|
||||
<h4>{{ $t('commGuideHeadingMinorConsequences') }}</h4>
|
||||
@@ -178,14 +184,15 @@
|
||||
<img src="~@/assets/images/community-guidelines/staff.png">
|
||||
<div class="media-body">
|
||||
<ul>
|
||||
<li>{{ $t('commGuideAKA', {habitName: 'Beffymaroo', realName: 'Beth'}) }}</li>
|
||||
<li>{{ $t('commGuideAKA', {habitName: 'Viirus', realName: 'Phillip'}) }}</li>
|
||||
<li>
|
||||
{{ $t('commGuideAKA', {habitName: 'redphoenix', realName: 'Vicky'}) }}
|
||||
({{ $t('commGuideOnGitHub', {gitHubName: 'veeeeeee'}) }})
|
||||
</li>
|
||||
<li>{{ $t('commGuideAKA', {habitName: 'Beffymaroo', realName: 'Beth'}) }}</li>
|
||||
<li>{{ $t('commGuideAKA', {habitName: 'SabreCat', realName: 'Sabe'}) }}</li>
|
||||
<li>{{ $t('commGuideAKA', {habitName: 'paglias', realName: 'Matteo'}) }}</li>
|
||||
<li>{{ $t('commGuideAKA', {habitName: 'Apollo', realName: 'Tressley'}) }}</li>
|
||||
<li>{{ $t('commGuideAKA', {habitName: 'Piyo', realName: 'Sara'}) }}</li>
|
||||
</ul>
|
||||
</div>
|
||||
</div>
|
||||
@@ -195,25 +202,24 @@
|
||||
<div class="media-body">
|
||||
<p v-html="$t('commGuidePara011')"></p>
|
||||
<ul>
|
||||
<li>Bailey (It's Bailey {{ $t('commGuidePara011a') }})</li>
|
||||
<li>Ryan (deilann {{ $t('commGuidePara011b') }})</li>
|
||||
<li>Dewines</li>
|
||||
<li>Nakonana</li>
|
||||
<li>Cantras</li>
|
||||
<li>Alys (LadyAlys {{ $t('commGuidePara011c') }})</li>
|
||||
<li>Fox_town</li>
|
||||
<li>Blade ({{ $t('commGuideOnGitHub', {gitHubName: 'crookedneighbor'}) }})</li>
|
||||
<li>Daniel the Bard</li>
|
||||
<li>MaybeSteveRogers</li>
|
||||
<li>shanaqui</li>
|
||||
<li>Dewines</li>
|
||||
<li>Megan</li>
|
||||
<li>Breadstrings</li>
|
||||
</ul>
|
||||
</div>
|
||||
</div>
|
||||
<p v-html="$t('commGuidePara012')"></p>
|
||||
<p v-html="$t('commGuidePara013')"></p>
|
||||
<p>
|
||||
{{ $t('commGuidePara014') }}
|
||||
<em>lefnire, Slappybag, litenull, Shaner, Bobbyroberts99, wc8</em>
|
||||
{{ $t('commGuidePara014') }}<br>
|
||||
<em>
|
||||
Lemoness, lefnire, Slappybag, litenull, Shaner, Bobbyroberts99, wc8,
|
||||
deilann, Breadstrings, Megan, Blade, and Daniel the Bard
|
||||
</em>
|
||||
</p>
|
||||
<h2 id="final">
|
||||
{{ $t('commGuideHeadingFinal') }}
|
||||
|
||||
@@ -49,7 +49,7 @@ multi<template>
|
||||
:key="item.id"
|
||||
class="ignore-hide multi-item"
|
||||
:class="{ 'none': item.id === 'none', selectListItem: true }"
|
||||
@click.prevent.stop="selectItem(item)"
|
||||
@click="selectItem(item)"
|
||||
>
|
||||
<div
|
||||
v-markdown="item.name"
|
||||
@@ -81,96 +81,96 @@ multi<template>
|
||||
</template>
|
||||
|
||||
<style lang="scss">
|
||||
@import '~@/assets/scss/colors.scss';
|
||||
@import '~@/assets/scss/colors.scss';
|
||||
|
||||
$itemHeight: 2rem;
|
||||
$itemHeight: 2rem;
|
||||
|
||||
.select-multi {
|
||||
.dropdown-toggle {
|
||||
padding-left: 0.75rem;
|
||||
.select-multi {
|
||||
.dropdown-toggle {
|
||||
padding-left: 0.75rem;
|
||||
}
|
||||
|
||||
.dropdown-header {
|
||||
background-color: $gray-700;
|
||||
padding-bottom: 0;
|
||||
min-height: 3rem;
|
||||
}
|
||||
|
||||
.dropdown-item, .dropdown-header {
|
||||
padding-left: 0.75rem;
|
||||
padding-right: 0.75rem;
|
||||
}
|
||||
|
||||
.none {
|
||||
cursor: default;
|
||||
pointer-events: none;
|
||||
}
|
||||
|
||||
.multi-item button {
|
||||
height: $itemHeight;
|
||||
display: flex;
|
||||
|
||||
.label {
|
||||
height: 1.5rem;
|
||||
font-size: 14px;
|
||||
line-height: 1.71;
|
||||
flex: 1;
|
||||
}
|
||||
|
||||
.dropdown-header {
|
||||
background-color: $gray-700;
|
||||
padding-bottom: 0;
|
||||
min-height: 3rem;
|
||||
}
|
||||
|
||||
.dropdown-item, .dropdown-header {
|
||||
padding-left: 0.75rem;
|
||||
padding-right: 0.75rem;
|
||||
}
|
||||
|
||||
.none {
|
||||
cursor: default;
|
||||
pointer-events: none;
|
||||
}
|
||||
|
||||
.multi-item button {
|
||||
height: $itemHeight;
|
||||
display: flex;
|
||||
|
||||
.label {
|
||||
height: 1.5rem;
|
||||
font-size: 14px;
|
||||
line-height: 1.71;
|
||||
flex: 1;
|
||||
}
|
||||
|
||||
.addl-text {
|
||||
height: 1rem;
|
||||
font-size: 12px;
|
||||
font-weight: normal;
|
||||
font-stretch: normal;
|
||||
font-style: normal;
|
||||
line-height: 1.33;
|
||||
letter-spacing: normal;
|
||||
text-align: right;
|
||||
color: $gray-100;
|
||||
align-self: center;
|
||||
margin-top: 0.5rem;
|
||||
margin-bottom: 0.5rem;
|
||||
margin-right: 0.25rem;
|
||||
}
|
||||
|
||||
&:hover {
|
||||
.addl-text {
|
||||
color: $purple-300;
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
.item-group {
|
||||
max-height: #{5*$itemHeight};
|
||||
|
||||
&.add-new {
|
||||
height: 30px;
|
||||
|
||||
.hint {
|
||||
display: block;
|
||||
}
|
||||
}
|
||||
&.scroll {
|
||||
overflow-y: scroll;
|
||||
}
|
||||
}
|
||||
|
||||
.hint {
|
||||
display: none;
|
||||
height: 2rem;
|
||||
.addl-text {
|
||||
height: 1rem;
|
||||
font-size: 12px;
|
||||
font-weight: normal;
|
||||
font-stretch: normal;
|
||||
font-style: normal;
|
||||
line-height: 1.33;
|
||||
letter-spacing: normal;
|
||||
text-align: right;
|
||||
color: $gray-100;
|
||||
|
||||
margin-left: 0.75rem;
|
||||
align-self: center;
|
||||
margin-top: 0.5rem;
|
||||
margin-bottom: 0.5rem;
|
||||
margin-right: 0.25rem;
|
||||
}
|
||||
|
||||
&:hover {
|
||||
.addl-text {
|
||||
color: $purple-300;
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
.item-group {
|
||||
max-height: #{5*$itemHeight};
|
||||
|
||||
&.add-new {
|
||||
height: 30px;
|
||||
|
||||
.hint {
|
||||
display: block;
|
||||
}
|
||||
}
|
||||
&.scroll {
|
||||
overflow-y: scroll;
|
||||
}
|
||||
}
|
||||
|
||||
.hint {
|
||||
display: none;
|
||||
height: 2rem;
|
||||
font-size: 12px;
|
||||
font-weight: normal;
|
||||
font-stretch: normal;
|
||||
font-style: normal;
|
||||
line-height: 1.33;
|
||||
letter-spacing: normal;
|
||||
color: $gray-100;
|
||||
|
||||
margin-left: 0.75rem;
|
||||
margin-top: 0.5rem;
|
||||
}
|
||||
}
|
||||
|
||||
</style>
|
||||
|
||||
<script>
|
||||
@@ -209,8 +209,8 @@ export default {
|
||||
},
|
||||
data () {
|
||||
return {
|
||||
preventHide: true,
|
||||
isOpened: false,
|
||||
wasTagAdded: false,
|
||||
selected: this.selectedItems,
|
||||
search: '',
|
||||
};
|
||||
@@ -261,9 +261,12 @@ export default {
|
||||
closeSelectPopup () {
|
||||
this.preventHide = false;
|
||||
this.isOpened = false;
|
||||
Vue.nextTick(() => {
|
||||
this.$refs.dropdown.hide();
|
||||
});
|
||||
if (!this.wasTagAdded) {
|
||||
Vue.nextTick(() => {
|
||||
this.$refs.dropdown.hide();
|
||||
});
|
||||
}
|
||||
this.wasTagAdded = false;
|
||||
},
|
||||
openOrClose ($event) {
|
||||
if (this.isOpened) {
|
||||
@@ -277,12 +280,12 @@ export default {
|
||||
selectItem (item) {
|
||||
this.selectedItems.push(item.id);
|
||||
this.$emit('toggle', item.id);
|
||||
this.preventHide = true;
|
||||
this.wasTagAdded = true;
|
||||
},
|
||||
removeItem ($event) {
|
||||
const foundIndex = this.selectedItems.findIndex(t => t === $event);
|
||||
|
||||
this.selectedItems.splice(foundIndex, 1);
|
||||
|
||||
this.$emit('toggle', $event);
|
||||
},
|
||||
hideCallback ($event) {
|
||||
@@ -290,12 +293,11 @@ export default {
|
||||
$event.preventDefault();
|
||||
return;
|
||||
}
|
||||
|
||||
this.isOpened = false;
|
||||
},
|
||||
wasOpened () {
|
||||
this.isOpened = true;
|
||||
this.preventHide = true;
|
||||
this.preventHide = false;
|
||||
},
|
||||
handleEsc (e) {
|
||||
if (e.keyCode === 27) {
|
||||
|
||||
@@ -92,11 +92,11 @@
|
||||
<!-- Task title, description and icons-->
|
||||
<div
|
||||
class="task-content"
|
||||
:class="[{'cursor-auto': !teamManagerAccess}, contentClass]"
|
||||
:class="contentClass"
|
||||
>
|
||||
<div
|
||||
class="task-clickable-area"
|
||||
:class="{'task-clickable-area-user': isUser}"
|
||||
:class="{ 'cursor-auto': !isUser && !teamManagerAccess }"
|
||||
tabindex="0"
|
||||
@click="edit($event, task)"
|
||||
@keypress.enter="edit($event, task)"
|
||||
@@ -236,6 +236,7 @@
|
||||
<label
|
||||
v-markdown="item.text"
|
||||
class="custom-control-label"
|
||||
:class="{ 'cursor-auto': !isUser }"
|
||||
:for="`checklist-${item.id}-${random}`"
|
||||
></label>
|
||||
</div>
|
||||
@@ -259,7 +260,8 @@
|
||||
class="d-flex align-items-center"
|
||||
>
|
||||
<div
|
||||
v-b-tooltip.hover.bottom="$t('streakCounter')"
|
||||
v-b-tooltip.hover.bottom="task.type === 'daily'
|
||||
? $t('streakCounter') : $t('counter')"
|
||||
class="svg-icon streak"
|
||||
v-html="icons.streak"
|
||||
></div>
|
||||
@@ -493,6 +495,7 @@
|
||||
padding: 7px 8px;
|
||||
padding-bottom: 0px;
|
||||
border: transparent solid 1px;
|
||||
cursor: pointer;
|
||||
|
||||
&-user {
|
||||
padding-right: 0px;
|
||||
@@ -603,7 +606,6 @@
|
||||
padding-top: 0px;
|
||||
padding-bottom: 7px;
|
||||
flex-grow: 1;
|
||||
cursor: pointer;
|
||||
background: $white;
|
||||
border: 1px solid transparent;
|
||||
transition-duration: 0.15;
|
||||
@@ -632,6 +634,7 @@
|
||||
text-align: center;
|
||||
color: $gray-200;
|
||||
border: transparent solid 1px;
|
||||
cursor: pointer;
|
||||
|
||||
&:focus {
|
||||
border: $purple-400 solid 1px;
|
||||
@@ -668,6 +671,7 @@
|
||||
}
|
||||
|
||||
.custom-control-label {
|
||||
cursor: pointer;
|
||||
margin-left: 6px;
|
||||
padding-top: 0px;
|
||||
min-width: 0px;
|
||||
|
||||
@@ -434,7 +434,7 @@
|
||||
<div class="form-group">
|
||||
<lockable-label
|
||||
:locked="challengeAccessRequired || groupAccessRequiredAndOnPersonalPage"
|
||||
:text="$t('resetStreak')"
|
||||
:text="$t('resetCounter')"
|
||||
/>
|
||||
<select-translated-array
|
||||
:disabled="challengeAccessRequired || groupAccessRequiredAndOnPersonalPage"
|
||||
@@ -549,7 +549,7 @@
|
||||
<label
|
||||
v-once
|
||||
class="mb-1"
|
||||
>{{ $t('restoreStreak') }}</label>
|
||||
>{{ $t('adjustCounter') }}</label>
|
||||
<div
|
||||
class="row streak-inputs"
|
||||
:class="{'both': task.up && task.down}"
|
||||
|
||||
@@ -1,19 +1,9 @@
|
||||
export default [
|
||||
{
|
||||
name: 'Lemoness',
|
||||
type: 'Staff',
|
||||
uuid: '7bde7864-ebc5-4ee2-a4b7-1070d464cdb0',
|
||||
},
|
||||
{
|
||||
name: 'redphoenix',
|
||||
type: 'Staff',
|
||||
uuid: 'cb46ad54-8c78-4dbc-a8ed-4e3185b2b3ff',
|
||||
},
|
||||
{
|
||||
name: 'paglias',
|
||||
type: 'Staff',
|
||||
uuid: 'ed4c688c-6652-4a92-9d03-a5a79844174a',
|
||||
},
|
||||
{
|
||||
name: 'SabreCat',
|
||||
type: 'Staff',
|
||||
@@ -39,36 +29,16 @@ export default [
|
||||
type: 'Staff',
|
||||
uuid: '61b2c855-0a30-444c-bcc6-1cac876460b0',
|
||||
},
|
||||
{
|
||||
name: 'It\'s Bailey',
|
||||
type: 'Moderator',
|
||||
uuid: '9da65443-ed43-4c21-804f-d260c1361596',
|
||||
},
|
||||
{
|
||||
name: 'Alys',
|
||||
type: 'Moderator',
|
||||
uuid: 'd904bd62-da08-416b-a816-ba797c9ee265',
|
||||
},
|
||||
{
|
||||
name: 'Blade',
|
||||
type: 'Moderator',
|
||||
uuid: '75f270e8-c5db-4722-a5e6-a83f1b23f76b',
|
||||
},
|
||||
{
|
||||
name: 'Breadstrings',
|
||||
type: 'Moderator',
|
||||
uuid: '3b675c0e-d7a6-440c-8687-bc67cd0bf4e9',
|
||||
},
|
||||
{
|
||||
name: 'Cantras',
|
||||
type: 'Moderator',
|
||||
uuid: '28771972-ca6d-4c03-8261-e1734aa7d21d',
|
||||
},
|
||||
{
|
||||
name: 'deilann 5.0.5b',
|
||||
type: 'Moderator',
|
||||
uuid: 'e7b5d1e2-3b6e-4192-b867-8bafdb03eeec',
|
||||
},
|
||||
{
|
||||
name: 'Dewines',
|
||||
type: 'Moderator',
|
||||
@@ -80,9 +50,14 @@ export default [
|
||||
uuid: 'a05f0152-d66b-4ef1-93ac-4adb195d0031',
|
||||
},
|
||||
{
|
||||
name: 'Megan',
|
||||
name: 'MaybeSteveRogers',
|
||||
type: 'Moderator',
|
||||
uuid: '73e5125c-2c87-4004-8ccd-972aeac4f17a',
|
||||
uuid: '767e5d92-0e13-4e30-acb1-d8bba62824fc',
|
||||
},
|
||||
{
|
||||
name: 'Nakonana',
|
||||
type: 'Moderator',
|
||||
uuid: '33bb14bd-814d-40cb-98a4-7b76a752761c',
|
||||
},
|
||||
{
|
||||
name: 'shanaqui',
|
||||
|
||||
@@ -6,7 +6,6 @@
|
||||
"commGuidePara001": "Greetings, adventurer! Welcome to Habitica, the land of productivity, healthy living, and the occasional rampaging gryphon. We have a cheerful community full of helpful people supporting each other on their way to self-improvement. To fit in, all it takes is a positive attitude, a respectful manner, and the understanding that everyone has different skills and limitations -- including you! Habiticans are patient with one another and try to help whenever they can.",
|
||||
"commGuidePara002": "To help keep everyone safe, happy, and productive in the community, we do have some guidelines. We have carefully crafted them to make them as friendly and easy-to-read as possible. Please take the time to read them before you start chatting.",
|
||||
"commGuidePara003": "These rules apply to all of the social spaces we use, including (but not necessarily limited to) Trello, GitHub, Transifex, and the Wikia (aka wiki). Sometimes, unforeseen situations will arise, like a new source of conflict or a vicious necromancer. When this happens, the mods may respond by editing these guidelines to keep the community safe from new threats. Fear not: you will be notified by an announcement from Bailey if the guidelines change.",
|
||||
"commGuidePara004": "Now ready your quills and scrolls for note-taking, and let's get started!",
|
||||
"commGuideHeadingInteractions": "Interactions in Habitica",
|
||||
"commGuidePara015": "Habitica has two kinds of social spaces: public, and private. Public spaces include the Tavern, Public Guilds, GitHub, Trello, and the Wiki. Private spaces are Private Guilds, Party chat, and Private Messages. All Display Names must comply with the public space guidelines. To change your Display Name, go on the website to User > Profile and click on the \"Edit\" button.",
|
||||
"commGuidePara016": "When navigating the public spaces in Habitica, there are some general rules to keep everyone safe and happy. These should be easy for adventurers like you!",
|
||||
@@ -17,8 +16,6 @@
|
||||
"commGuideList02E": "<strong>Avoid profanity. This includes milder, religious-based oaths that may be acceptable elsewhere</strong>. We have people from all religious and cultural backgrounds, and we want to make sure that all of them feel comfortable in public spaces. <strong>If a moderator or staff member tells you that a term is disallowed on Habitica, even if it is a term that you did not realize was problematic, that decision is final</strong>. Additionally, slurs will be dealt with very severely, as they are also a violation of the Terms of Service.",
|
||||
"commGuideList02F": "<strong>Avoid extended discussions of divisive topics in the Tavern and where it would be off-topic</strong>. If you feel that someone has said something rude or hurtful, do not engage them. If someone mentions something that is allowed by the guidelines but which is hurtful to you, it’s okay to politely let someone know that. If it is against the guidelines or the Terms of Service, you should flag it and let a mod respond. When in doubt, flag the post.",
|
||||
"commGuideList02G": "<strong>Comply immediately with any Mod request</strong>. This could include, but is not limited to, requesting you limit your posts in a particular space, editing your profile to remove unsuitable content, asking you to move your discussion to a more suitable space, etc.",
|
||||
"commGuideList02H": "<strong>Take time to reflect instead of responding in anger</strong> if someone tells you that something you said or did made them uncomfortable. There is great strength in being able to sincerely apologize to someone. If you feel that the way they responded to you was inappropriate, contact a mod rather than calling them out on it publicly.",
|
||||
"commGuideList02I": "<strong>Divisive/contentious conversations should be reported to mods</strong> by flagging the messages involved or using the <a href='http://contact.habitica.com/' target='_blank'>Moderator Contact Form</a>. If you feel that a conversation is getting heated, overly emotional, or hurtful, cease to engage. Instead, report the posts to let us know about it. Moderators will respond as quickly as possible. It's our job to keep you safe. If you feel that more context is required, you can report the problem using the <a href='http://contact.habitica.com/' target='_blank'>Moderator Contact Form</a>.",
|
||||
"commGuideList02J": "<strong>Do not spam</strong>. Spamming may include, but is not limited to: posting the same comment or query in multiple places, posting links without explanation or context, posting nonsensical messages, posting multiple promotional messages about a Guild, Party or Challenge, or posting many messages in a row. Asking for gems or a subscription in any of the chat spaces or via Private Message is also considered spamming. If people clicking on a link will result in any benefit to you, you need to disclose that in the text of your message or that will also be considered spam.<br/><br/>It is up to the mods to decide if something constitutes spam or might lead to spam, even if you don’t feel that you have been spamming. For example, advertising a Guild is acceptable once or twice, but multiple posts in one day would probably constitute spam, no matter how useful the Guild is!",
|
||||
"commGuideList02K": "<strong>Avoid posting large header text in the public chat spaces, particularly the Tavern</strong>. Much like ALL CAPS, it reads as if you were yelling, and interferes with the comfortable atmosphere.",
|
||||
"commGuideList02L": "<strong>We highly discourage the exchange of personal information -- particularly information that can be used to identify you -- in public chat spaces</strong>. Identifying information can include but is not limited to: your address, your email address, and your API token/password. This is for your safety! Staff or moderators may remove such posts at their discretion. If you are asked for personal information in a private Guild, Party, or PM, we highly recommend that you politely refuse and alert the staff and moderators by either 1) flagging the message if it is in a Party or private Guild, or 2) filling out the <a href='http://contact.habitica.com/' target='_blank'>Moderator Contact Form</a> and including screenshots.",
|
||||
@@ -106,7 +103,6 @@
|
||||
"commGuideOnGitHub": "<%= gitHubName %> on GitHub",
|
||||
"commGuidePara010": "There are also several Moderators who assist the staff members. They were selected carefully, so please give them your respect and listen to their suggestions.",
|
||||
"commGuidePara011": "The current Moderators are (from left to right):",
|
||||
"commGuidePara011a": "in Tavern chat",
|
||||
"commGuidePara011b": "on GitHub/Wikia",
|
||||
"commGuidePara011c": "on Wikia",
|
||||
"commGuidePara011d": "on GitHub",
|
||||
|
||||
@@ -1,12 +1,11 @@
|
||||
{
|
||||
|
||||
|
||||
"tavernCommunityGuidelinesPlaceholder": "Friendly reminder: this is an all-ages chat, so please keep content and language appropriate! Consult the Community Guidelines in the sidebar if you have questions.",
|
||||
"lastUpdated": "Last updated:",
|
||||
"commGuideHeadingWelcome": "Welkom in Habitica!",
|
||||
"commGuidePara001": "Greetings, adventurer! Welcome to Habitica, the land of productivity, healthy living, and the occasional rampaging gryphon. We have a cheerful community full of helpful people supporting each other on their way to self-improvement. To fit in, all it takes is a positive attitude, a respectful manner, and the understanding that everyone has different skills and limitations -- including you! Habiticans are patient with one another and try to help whenever they can.",
|
||||
"commGuidePara002": "To help keep everyone safe, happy, and productive in the community, we do have some guidelines. We have carefully crafted them to make them as friendly and easy-to-read as possible. Please take the time to read them before you start chatting.",
|
||||
"commGuidePara003": "Hierdie reëls geld vir al die sosiale bladsye wat ons gebruik, insluitende (maar nie noodwendig beperk tot) Trello, GitHub, Transifex en die Wikia (of wiki). Soms sal onvoorsiende omstandighede voorkom, soos 'n nuwe bron van konflik of 'n bose nekromanser. Wanneer dit gebeur, mag die mods reageer deur hierdie riglyne te redigeer om sodoende die gemeenskap veilig te hou van nuwe bedreigings. Bevrees nie: jy sal in kennis gestel word deur 'n aankondiging van Bailey indien die riglyne sou verander.",
|
||||
"commGuidePara004": "Reg, maak gereed jou veerpen en boekrolle vir notas, en laat ons begin!",
|
||||
"commGuideHeadingInteractions": "Interactions in Habitica",
|
||||
"commGuidePara015": "Habitica has two kinds of social spaces: public, and private. Public spaces include the Tavern, Public Guilds, GitHub, Trello, and the Wiki. Private spaces are Private Guilds, Party chat, and Private Messages. All Display Names must comply with the public space guidelines. To change your Display Name, go on the website to User > Profile and click on the \"Edit\" button.",
|
||||
"commGuidePara016": "When navigating the public spaces in Habitica, there are some general rules to keep everyone safe and happy. These should be easy for adventurers like you!",
|
||||
@@ -17,8 +16,6 @@
|
||||
"commGuideList02E": "<strong>Avoid profanity. This includes milder, religious-based oaths that may be acceptable elsewhere</strong>. We have people from all religious and cultural backgrounds, and we want to make sure that all of them feel comfortable in public spaces. <strong>If a moderator or staff member tells you that a term is disallowed on Habitica, even if it is a term that you did not realize was problematic, that decision is final</strong>. Additionally, slurs will be dealt with very severely, as they are also a violation of the Terms of Service.",
|
||||
"commGuideList02F": "<strong>Avoid extended discussions of divisive topics in the Tavern and where it would be off-topic</strong>. If you feel that someone has said something rude or hurtful, do not engage them. If someone mentions something that is allowed by the guidelines but which is hurtful to you, it’s okay to politely let someone know that. If it is against the guidelines or the Terms of Service, you should flag it and let a mod respond. When in doubt, flag the post.",
|
||||
"commGuideList02G": "<strong>Comply immediately with any Mod request</strong>. This could include, but is not limited to, requesting you limit your posts in a particular space, editing your profile to remove unsuitable content, asking you to move your discussion to a more suitable space, etc.",
|
||||
"commGuideList02H": "<strong>Take time to reflect instead of responding in anger</strong> if someone tells you that something you said or did made them uncomfortable. There is great strength in being able to sincerely apologize to someone. If you feel that the way they responded to you was inappropriate, contact a mod rather than calling them out on it publicly.",
|
||||
"commGuideList02I": "<strong>Divisive/contentious conversations should be reported to mods</strong> by flagging the messages involved or using the <a href='http://contact.habitica.com/' target='_blank'>Moderator Contact Form</a>. If you feel that a conversation is getting heated, overly emotional, or hurtful, cease to engage. Instead, report the posts to let us know about it. Moderators will respond as quickly as possible. It's our job to keep you safe. If you feel that more context is required, you can report the problem using the <a href='http://contact.habitica.com/' target='_blank'>Moderator Contact Form</a>.",
|
||||
"commGuideList02J": "<strong>Do not spam</strong>. Spamming may include, but is not limited to: posting the same comment or query in multiple places, posting links without explanation or context, posting nonsensical messages, posting multiple promotional messages about a Guild, Party or Challenge, or posting many messages in a row. Asking for gems or a subscription in any of the chat spaces or via Private Message is also considered spamming. If people clicking on a link will result in any benefit to you, you need to disclose that in the text of your message or that will also be considered spam.<br/><br/>It is up to the mods to decide if something constitutes spam or might lead to spam, even if you don’t feel that you have been spamming. For example, advertising a Guild is acceptable once or twice, but multiple posts in one day would probably constitute spam, no matter how useful the Guild is!",
|
||||
"commGuideList02K": "<strong>Avoid posting large header text in the public chat spaces, particularly the Tavern</strong>. Much like ALL CAPS, it reads as if you were yelling, and interferes with the comfortable atmosphere.",
|
||||
"commGuideList02L": "<strong>We highly discourage the exchange of personal information -- particularly information that can be used to identify you -- in public chat spaces</strong>. Identifying information can include but is not limited to: your address, your email address, and your API token/password. This is for your safety! Staff or moderators may remove such posts at their discretion. If you are asked for personal information in a private Guild, Party, or PM, we highly recommend that you politely refuse and alert the staff and moderators by either 1) flagging the message if it is in a Party or private Guild, or 2) filling out the <a href='http://contact.habitica.com/' target='_blank'>Moderator Contact Form</a> and including screenshots.",
|
||||
@@ -106,7 +103,6 @@
|
||||
"commGuideOnGitHub": "<%= gitHubName %> on GitHub",
|
||||
"commGuidePara010": "There are also several Moderators who assist the staff members. They were selected carefully, so please give them your respect and listen to their suggestions.",
|
||||
"commGuidePara011": "Die huidige Moderators is (van links na regs):",
|
||||
"commGuidePara011a": "in Kroeg gesels",
|
||||
"commGuidePara011b": "op GitHub/Wikia",
|
||||
"commGuidePara011c": "op Wikia",
|
||||
"commGuidePara011d": "on GitHub",
|
||||
@@ -125,4 +121,4 @@
|
||||
"commGuideLink06": "<a href='https://trello.com/b/vwuE9fbO/' target='_blank'>The Art Trello</a>: for submitting pixel art.",
|
||||
"commGuideLink07": "<a href='https://trello.com/b/nnv4QIRX/' target='_blank'>The Quest Trello</a>: for submitting quest writing.",
|
||||
"commGuidePara069": "The following talented artists contributed to these illustrations:"
|
||||
}
|
||||
}
|
||||
|
||||
@@ -1,16 +1,118 @@
|
||||
{
|
||||
"achievement": "إنجاز",
|
||||
"onwards": "فصاعداً!",
|
||||
"onwards": "إلى الأمام!",
|
||||
"levelup": "من خلال تحقيق أهداف حياتك الحقيقية ، قمت بالحصول على مرتبة أعلي وشفيت الآن بالكامل!",
|
||||
"reachedLevel": "لقد وصلت إلى المستوى<%= level %>",
|
||||
"achievementLostMasterclasser": "مهام المتحدي: سلسلة مستوي الخبير",
|
||||
"achievementLostMasterclasserText": "لقد أكملت جميع المهام الستة عشرة في سلسلة أسئلة مستوي الخبير وأجبت علي مستوي الخبير المفقود! ",
|
||||
"foundNewItems": "لقد وجدت عناصر جديدة !",
|
||||
"onboardingCompleteDescSmall": "لو اردت المزيد الق نظرة على الانجازات و ابدأ فى تجميعها !",
|
||||
"onboardingComplete": "لقد انجزت مهمات بدء اللعبة !",
|
||||
"earnedAchievement": "لقد حققت انجاز !",
|
||||
"viewAchievements": "اظهر الانجازات",
|
||||
"letsGetStarted": "فلنبدأ !",
|
||||
"achievementLostMasterclasser": "مكمل المغامرات: سلسلة الخبير",
|
||||
"achievementLostMasterclasserText": "لقد أكملت جميع المغامرات الستة عشرة في سلسلة مغامرات الخبير و حللت لغز الخبيرة المفقودة!",
|
||||
"foundNewItems": "لقد وجدت اغراضاً جديدة!",
|
||||
"onboardingCompleteDescSmall": "إذا اردت المزيد، الق نظرة على الانجازات و ابدأ فى تجميعها!",
|
||||
"onboardingComplete": "لقد أكملت مهام بدء اللعبة!",
|
||||
"earnedAchievement": "لقد حققت إنجازاً!",
|
||||
"viewAchievements": "الإطلاع على الانجازات",
|
||||
"letsGetStarted": "هيا بنا!",
|
||||
"yourProgress": "تقدمك",
|
||||
"yourRewards": "جوائزك"
|
||||
"yourRewards": "جوائزك",
|
||||
"onboardingCompleteDesc": "لقد حصلت على <strong> ٥ انجازات </strong> و <strong class=\"gold-amount\"> ١٠٠ قطعة ذهبية </strong> لإنهائك القائمة.",
|
||||
"gettingStartedDesc": "قم بإكمال هذه المهام الإبتدائية، وستحصل على <strong>خمسة انجازات</strong> و <strong class=\"gold-amount\">١٠٠ قطعة ذهبية</strong> بمجرد انتهائك!",
|
||||
"showAllAchievements": "اظهار الكل <%= category %>",
|
||||
"hideAchievements": "إخفاء <%= category %>",
|
||||
"foundNewItemsCTA": "إذهب إلى قائمة أغراضك وحاول جمع البيضة وجرعة التفقيس الجديدتين معاً!",
|
||||
"foundNewItemsExplanation": "القيام بمهامك يمنحك الفرصة للفوز بقطع جديدة مثل البيضات، جرعات التفقيس، وطعام الحيوانات الأليفة.",
|
||||
"onboardingProgress": "التقدم <%= percentage %>%",
|
||||
"achievementCreatedTask": "إصنع مهمتك الأولى",
|
||||
"achievementJustAddWaterModalText": "لقد أكملت جميع مغامرات حيوانات الأخطبوط، فرس البحر، الحبار، عارية الخيشوم، حية البحر، و الدلفين الأليفة!",
|
||||
"achievementJustAddWaterText": "قد أكمل جميع مغامرات حيوانات الأخطبوط، فرس البحر، الحبار، عارية الخيشوم، حية البحر، و الدلفين الأليفة.",
|
||||
"achievementMindOverMatterModalText": "لقد أكملت جميع مغامرات حيوانات الصخر، اللزج، والغزل الأليفة!",
|
||||
"achievementMindOverMatterText": "قد أكمل جميع مغامرات حيوانات الصخر، اللزج، والغزل الأليفة.",
|
||||
"achievementLostMasterclasserModalText": "لقد أكملت جميع المغامرات الستة عشرة في سلسلة مغامرات الخبير و حللت لغز الخبيرة المفقودة!",
|
||||
"achievementMonsterMagusModalText": "لقد جمعت جميع الحيوانات الأليفة من الأموات الأحياء!",
|
||||
"achievementMonsterMagusText": "قد جمع جميع الحيوانات الأليفة من الأموات الأحياء.",
|
||||
"achievementMonsterMagus": "ساحر الوحوش",
|
||||
"achievementPartyOn": "لقد نمت مجموعتك إلى أربع أعضاء!",
|
||||
"achievementAridAuthority": "السلطة الجرداء",
|
||||
"achievementDustDevilModalText": "لقد جمعت جميع الحيوانات الأليفة الصحراوية!",
|
||||
"achievementDustDevilText": "قد جمع جميع الحيوانات الأليفة الصحراوية.",
|
||||
"achievementDustDevil": "عفريت الغبار",
|
||||
"achievementBackToBasicsModalText": "لقد جمعت جميع الحيوانات الأليفة الأساسية!",
|
||||
"achievementBackToBasicsText": "قد جمع جميع الحيوانات الأليفة الأساسية.",
|
||||
"achievementBackToBasics": "عودة إلى الأساسيات",
|
||||
"achievementJustAddWater": "أضف الماء وحسب",
|
||||
"achievementMindOverMatter": "العقل فوق المادة",
|
||||
"achievementFedPet": "أطعم/ي حيواناً أليفاً",
|
||||
"achievementHatchedPetModalText": "إذهب/ي إلى قائمة أغراضك وحاول/ي جمع بيضة وجرعة تفقيس معاً",
|
||||
"achievementHatchedPetText": "فقصوا حيوانهم الأليف الأول.",
|
||||
"achievementHatchedPet": "افقس/ي حيواناً أليفاً",
|
||||
"achievementCompletedTaskModalText": "أكمل/ي أياً من مهامك للحصول على المكافآت",
|
||||
"achievementCompletedTaskText": "اكملوا مهمتهم الأولى.",
|
||||
"achievementKickstarter2019": "من مساهمي حملة كيك-ستارتر للدبابيس",
|
||||
"achievementAridAuthorityModalText": "لقد أكملت ترويض جميع حيوانات الركوب الصحراوية!",
|
||||
"achievementAridAuthorityText": "أكملوا ترويض جميع حيوانات الركوب الصحراوية.",
|
||||
"achievementPartyUp": "لقد كونت فريقاً مع عضو من مجموعتك!",
|
||||
"achievementAllYourBaseModalText": "لقد أكملت ترويض جميع حيوانات الركوب الأساسية!",
|
||||
"achievementAllYourBaseText": "أكمل(ت) ترويض جميع حيوانات الركوب الأساسية.",
|
||||
"achievementAllYourBase": "كل قاعدتك ملكنا الأن",
|
||||
"achievementFedPetText": "أطعموا حيوانهم الأليف الأول.",
|
||||
"achievementBugBonanza": "حفلة الحشرات",
|
||||
"achievementRosyOutlookModalText": "لقد أكملت ترويض جميع حيوانات غزل البنات الزهري للركوب!",
|
||||
"achievementRosyOutlookText": "أكملوا ترويض جميع حيوانات غزل البنات الزهري للركوب.",
|
||||
"achievementRosyOutlook": "نظرة وردية",
|
||||
"achievementTickledPinkModalText": "لقد جمعت جميع حيوانات غزل البنات الزهري الأليفة!",
|
||||
"achievementTickledPinkText": "قد جمعوا جميع حيوانات غزل البنات الزهري الأليفة.",
|
||||
"achievementTickledPink": "إحساس زهري",
|
||||
"achievementPearlyProModalText": "لقد أكملت ترويض جميع حيوانات الركوب البيضاء!",
|
||||
"achievementPearlyProText": "أكملوا ترويض جميع حيوانات الركوب البيضاء.",
|
||||
"achievementPearlyPro": "محترف/ة اللألئ",
|
||||
"achievementPrimedForPaintingModalText": "لقد جمعت جميع الحيوانات الأليفة البيضاء!",
|
||||
"achievementPrimedForPaintingText": "قد جمعوا جميع الحيوانات الأليفة البيضاء.",
|
||||
"achievementPrimedForPainting": "مستعد/ة للرسم",
|
||||
"achievementPurchasedEquipmentModalText": "المعدات طريقة لتمييز شخصيتك وتحسين مستوياتك",
|
||||
"achievementPurchasedEquipmentText": "اشتروا قطعتهم الأولى من المعدات.",
|
||||
"achievementPurchasedEquipment": "اشتري قطعةً من المعدات",
|
||||
"achievementFedPetModalText": "هناك أنواع كثيرة ومختلفة من الطعام، ولكن يمكن أن تكون الحيوانات الأليفة صعبة الإرضاء",
|
||||
"achievementSeasonalSpecialistText": "تم إكمال جميع مغامرات مواسم الربيع والشتاء: صيد البيض، سانتا الصياد، والبحث عن الشبل!",
|
||||
"achievementWildBlueYonderModalText": "لقد قمت بترويض جميع حيوانات غزل البنات الأزرق للركوب!",
|
||||
"achievementWildBlueYonderText": "تم ترويض جميع حيوانات غزل البنات الأزرق للركوب.",
|
||||
"achievementWildBlueYonder": "البر الأزرق الفسيح",
|
||||
"achievementVioletsAreBlueModalText": "لقد جمعت جميع حيوانات غزل البنات الأزرق الأليفة!",
|
||||
"achievementVioletsAreBlueText": "تم تجميع جميع حيوانات غزل البنات الأزرق الأليفة.",
|
||||
"achievementVioletsAreBlue": "زهرة البنفسج زرقاء",
|
||||
"achievementSeasonalSpecialistModalText": "لقد أكملت جميع المغامرات الموسمية!",
|
||||
"achievementSeasonalSpecialist": "متخصص المواسم",
|
||||
"achievementLegendaryBestiaryModalText": "لقد جمعت جميع الحيوانات الأليفة الخرافية!",
|
||||
"achievementLegendaryBestiaryText": "تم تفقيس جميع الألوان الأساسية للحيوانات الخرافية: التنين، الخنزير الطائر، الغرفين، ثعبان البحر، وأحادي القرن!",
|
||||
"achievementLegendaryBestiary": "سجل حيوانات أسطوري",
|
||||
"achievementRedLetterDayModalText": "لقد قمت بترويض جميع حيوانات الركوب الحمراء!",
|
||||
"achievementRedLetterDayText": "تم ترويض جميع حيوانات الركوب الحمراء.",
|
||||
"achievementRedLetterDay": "يوم الحروف الحمراء",
|
||||
"achievementSeeingRedModalText": "لقد جمعت جميع الحيوانات الأليفة الحمراء!",
|
||||
"achievementSeeingRedText": "تم تجميع جميع الحيوانات الأليفة الحمراء.",
|
||||
"achievementSeeingRed": "الرؤية الحمراء",
|
||||
"achievementSkeletonCrewModalText": "لقد قمت بترويض جميع حيوانات الركوب من الهياكل العظمية!",
|
||||
"achievementSkeletonCrewText": "تم ترويض جميع حيوانات الركوب من الهياكل العظمية.",
|
||||
"achievementSkeletonCrew": "عصابة العظام",
|
||||
"achievementBoneCollectorModalText": "لقد جمعت جميع الحيوانات الأليفة من الهياكل العظمية!",
|
||||
"achievementBoneCollectorText": "تم تجميع جميع الحيوانات الأليفة من الهياكل العظمية.",
|
||||
"achievementBoneCollector": "جامع العظام",
|
||||
"achievementAllThatGlittersModalText": "لقد قمت بترويض جميع حيوانات الركوب الذهبية!",
|
||||
"achievementAllThatGlittersText": "تم ترويض جميع حيوانات الركوب الذهبية.",
|
||||
"achievementAllThatGlitters": "كل ما يلمع",
|
||||
"achievementGoodAsGoldModalText": "لقد جمعت جميع الحيوانات الأليفة الذهبية!",
|
||||
"achievementGoodAsGoldText": "تم تجميع جميع الحيوانات الأليفة الذهبية.",
|
||||
"achievementGoodAsGold": "مثل الذهب",
|
||||
"achievementFreshwaterFriendsModalText": "لقد أكملت مغامرات حيوانات سمندل المكسيك، الضفدع، وفرس النهر الأليفة!",
|
||||
"achievementFreshwaterFriendsText": "تم إكمال مغامرات حيوانات سمندل المكسيك، الضفدع، وفرس النهر الأليفة.",
|
||||
"achievementBugBonanzaText": "تم إكمال مغامرات حيوانات الخنفساء، الفراشة، الحلزون، والعنكبوت الأليفة.",
|
||||
"achievementBugBonanzaModalText": "لقد أكملت مغامرات حيوانات الخنفساء، الفراشة، الحلزون، والعنكبوت الأليفة!",
|
||||
"achievementFreshwaterFriends": "أصدقاء المياه العذبة",
|
||||
"achievementBareNecessitiesModalText": "لقد أكملت مغامرات حيوانات القرد، الكسلان، الحلزون، والشجيرة الأليفة!",
|
||||
"achievementBareNecessitiesText": "تم إكمال مغامرات حيوانات القرد، الكسلان، الحلزون، والشجيرة الأليفة.",
|
||||
"achievementBareNecessities": "الضروريات البحتة",
|
||||
"achievementCompletedTask": "أكمل مهمة",
|
||||
"achievementCreatedTaskModalText": "أضف مهمةً لشيءٍ تريد إنجازه هذا الأسبوع",
|
||||
"achievementCreatedTaskText": "ألفوا مهمتهم الأولى.",
|
||||
"achievementUndeadUndertakerModalText": "لقد أكملت ترويض جميع حيوانات الركوب من الأحياء الموتى!",
|
||||
"achievementUndeadUndertakerText": "أكمل/ت ترويض جميع حيوانات الركوب من الأحياء الموتى.",
|
||||
"achievementUndeadUndertaker": "متعهد الأحياء الموتى",
|
||||
"achievementKickstarter2019Text": "من مساهمي حملة كيك-ستارتر للدبابيس"
|
||||
}
|
||||
|
||||