diff --git a/.github/pull_request_template.md b/.github/pull_request_template.md index 032e1fee69c..a25a2f807f3 100644 --- a/.github/pull_request_template.md +++ b/.github/pull_request_template.md @@ -65,7 +65,7 @@ Do the reviewers need to do something special in order to test your changes? - [ ] The PR is self-contained and cannot be split into smaller PRs? - [ ] Have I provided a clear explanation of the changes? - [ ] Have I tested the changes manually? -- [ ] Are all unit tests still passing? (`npm run test`) +- [ ] Are all unit tests still passing? (`npm run test:silent`) - [ ] Have I created new automated tests (`npm run create-test`) or updated existing tests related to the PR's changes? - [ ] Have I provided screenshots/videos of the changes (if applicable)? - [ ] Have I made sure that any UI change works for both UI themes (default and legacy)? diff --git a/.github/workflows/create-release.yml b/.github/workflows/create-release.yml new file mode 100644 index 00000000000..35a31f6b4d1 --- /dev/null +++ b/.github/workflows/create-release.yml @@ -0,0 +1,73 @@ +name: Create Release Branch +on: + workflow_dispatch: + inputs: + versionName: + description: "Name of version (i.e. 1.9.0)" + type: string + required: true + confirmVersion: + type: string + required: true + description: "Confirm version name" + +# explicitly specify the necessary scopes +permissions: + pull-requests: write + actions: write + contents: write + +jobs: + create-release: + if: github.repository == 'pagefaultgames/pokerogue' && (vars.BETA_DEPLOY_BRANCH == '' || ! startsWith(vars.BETA_DEPLOY_BRANCH, 'release')) + env: + GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }} # Needed for github cli commands + runs-on: ubuntu-latest + steps: + - name: Validate provided version + # Ensure version matches confirmation and conforms to expected pattern. + run: | + if [[ "${{ github.event.inputs.versionName }}" != "${{ github.event.inputs.confirmVersion }}" ]]; then + echo "Version name does not match confirmation. Exiting." + exit 1 + fi + if [[ ! "${{ github.event.inputs.versionName }}" =~ ^[0-9]+\.[0-9]+\.[0-9]+$ ]]; then + echo "Version name must follow the format X.Y.Z where X, Y, and Z are all numbers. Exiting..." + exit 1 + fi + shell: bash + - name: Check out code + uses: actions/checkout@v4 + with: + submodules: "recursive" + # Always base off of beta branch, regardless of the branch the workflow was triggered from. + ref: beta + - name: Create release branch + run: git checkout -b release + # In order to be able to open a PR into beta, we need the branch to have at least one change. + - name: Overwrite RELEASE file + run: | + git config --local user.name "github-actions[bot]" + git config --local user.email "41898282+github-actions[bot]@users.noreply.github.com" + echo "Release v${{ github.event.inputs.versionName }}" > RELEASE + git add RELEASE + git commit -m "Stage release v${{ github.event.inputs.versionName }}" + - name: Push new branch + run: git push origin release + # The repository variable is used by the deploy-beta workflow to determine whether to deploy from beta or release. + - name: Set repository variable + run: GITHUB_TOKEN="${{ secrets.RW_VARS_PAT }}" gh variable set BETA_DEPLOY_BRANCH --body "release" + - name: Create pull request to main + run: | + gh pr create --base main \ + --head release \ + --title "Release v${{ github.event.inputs.versionName }} to main" \ + --body "This PR is for the release of v${{ github.event.inputs.versionName }}, and was created automatically by the GitHub Actions workflow invoked by ${{ github.actor }}" \ + --draft + - name: Create pull request to beta + run: | + gh pr create --base beta \ + --head release \ + --title "Release v${{ github.event.inputs.versionName }} to beta" \ + --body "This PR is for the release of v${{ github.event.inputs.versionName }}, and was created automatically by the GitHub Actions workflow invoked by ${{ github.actor }}" \ + --draft diff --git a/.github/workflows/deploy-beta.yml b/.github/workflows/deploy-beta.yml index 8b0e33a18c4..90b3008c8e9 100644 --- a/.github/workflows/deploy-beta.yml +++ b/.github/workflows/deploy-beta.yml @@ -4,18 +4,23 @@ on: push: branches: - beta + - release + workflow_run: + types: completed + workflows: ["Post Release Deleted"] jobs: deploy: - if: github.repository == 'pagefaultgames/pokerogue' + if: github.repository == 'pagefaultgames/pokerogue' && github.ref_name == ${{ vars.BETA_DEPLOY_BRANCH || 'beta' }} runs-on: ubuntu-latest steps: - uses: actions/checkout@v4 with: - submodules: 'recursive' + submodules: "recursive" + ref: ${{ vars.BETA_DEPLOY_BRANCH || 'beta'}} - uses: actions/setup-node@v4 with: - node-version-file: '.nvmrc' + node-version-file: ".nvmrc" - name: Install dependencies run: npm ci - name: Build @@ -30,5 +35,5 @@ jobs: chmod 600 ~/.ssh/* ssh-keyscan -H ${{ secrets.BETA_SSH_HOST }} >> ~/.ssh/known_hosts - name: Deploy build on server - run: | - rsync --del --no-times --checksum -vrm dist/* ${{ secrets.BETA_SSH_USER }}@${{ secrets.BETA_SSH_HOST }}:${{ secrets.BETA_DESTINATION_DIR }} \ No newline at end of file + run: | + rsync --del --no-times --checksum -vrm dist/* ${{ secrets.BETA_SSH_USER }}@${{ secrets.BETA_SSH_HOST }}:${{ secrets.BETA_DESTINATION_DIR }} diff --git a/.github/workflows/post-release-deleted.yml b/.github/workflows/post-release-deleted.yml new file mode 100644 index 00000000000..65447e7826b --- /dev/null +++ b/.github/workflows/post-release-deleted.yml @@ -0,0 +1,12 @@ +name: Post Release Deleted +on: + delete: + +jobs: + # Set the BETA_DEPLOY_BRANCH variable to beta when a release branch is deleted + update-release-var: + if: github.repository == 'pagefaultgames/pokerogue' && github.event.ref_type == 'branch' && github.event.ref == 'release' + runs-on: ubuntu-latest + steps: + - name: Set BETA_DEPLOY_BRANCH to beta + run: GITHUB_TOKEN="${{ secrets.RW_VARS_PAT }}" gh variable set BETA_DEPLOY_BRANCH --body "beta" --repo "pagefaultgames/pokerogue" \ No newline at end of file diff --git a/.github/workflows/tests.yml b/.github/workflows/tests.yml index ccc8604ff7e..d9db8401f8e 100644 --- a/.github/workflows/tests.yml +++ b/.github/workflows/tests.yml @@ -7,6 +7,7 @@ on: branches: - main # Trigger on push events to the main branch - beta # Trigger on push events to the beta branch + - release # Trigger on push events to the release branch # go upvote https://github.com/actions/runner/issues/1182 and yell at microsoft until they fix this or ditch yml for workflows paths: # src and test files @@ -32,6 +33,7 @@ on: branches: - main # Trigger on pull request events targeting the main branch - beta # Trigger on pull request events targeting the beta branch + - release # Trigger on pull request events targeting the release branch paths: # go upvote https://github.com/actions/runner/issues/1182 and yell at microsoft because until then we have to duplicate this # src and test files - "src/**" diff --git a/.gitignore b/.gitignore index 9d96ed04a15..00df0002e01 100644 --- a/.gitignore +++ b/.gitignore @@ -13,7 +13,8 @@ dist-ssr *.local # Editor directories and files -.vscode/* +.vscode +*.code-workspace .idea .DS_Store *.suo diff --git a/biome.jsonc b/biome.jsonc index 9d0e6a9b5ff..3385614635c 100644 --- a/biome.jsonc +++ b/biome.jsonc @@ -38,6 +38,9 @@ "src/data/balance/tms.ts" ] }, + + // While it'd be nice to enable consistent sorting, enabling this causes issues due to circular import resolution order + // TODO: Remove if we ever get down to 0 circular imports "organizeImports": { "enabled": false }, "linter": { "ignore": [ @@ -55,13 +58,13 @@ }, "style": { "noVar": "error", - "useEnumInitializers": "off", + "useEnumInitializers": "off", // large enums like Moves/Species would make this cumbersome "useBlockStatements": "error", "useConst": "error", "useImportType": "error", - "noNonNullAssertion": "off", // TODO: Turn this on ASAP and fix all non-null assertions + "noNonNullAssertion": "off", // TODO: Turn this on ASAP and fix all non-null assertions in non-test files "noParameterAssign": "off", - "useExponentiationOperator": "off", + "useExponentiationOperator": "off", // Too typo-prone and easy to mixup with standard multiplication (* vs **) "useDefaultParameterLast": "off", // TODO: Fix spots in the codebase where this flag would be triggered, and then enable "useSingleVarDeclarator": "off", "useNodejsImportProtocol": "off", @@ -70,17 +73,20 @@ }, "suspicious": { "noDoubleEquals": "error", + // While this would be a nice rule to enable, the current structure of the codebase makes this infeasible + // due to being used for move/ability `args` params and save data-related code. + // This can likely be enabled for all non-utils files once these are eventually reworked, but until then we leave it off. "noExplicitAny": "off", "noAssignInExpressions": "off", "noPrototypeBuiltins": "off", - "noFallthroughSwitchClause": "off", - "noImplicitAnyLet": "info", // TODO: Refactor and make this an error - "noRedeclare": "off", // TODO: Refactor and make this an error + "noFallthroughSwitchClause": "error", // Prevents accidental automatic fallthroughs in switch cases (use disable comment if needed) + "noImplicitAnyLet": "warn", // TODO: Refactor and make this an error + "noRedeclare": "info", // TODO: Refactor and make this an error "noGlobalIsNan": "off", "noAsyncPromiseExecutor": "warn" // TODO: Refactor and make this an error }, "complexity": { - "noExcessiveCognitiveComplexity": "warn", + "noExcessiveCognitiveComplexity": "warn", // TODO: Refactor and make this an error "useLiteralKeys": "off", "noForEach": "off", // Foreach vs for of is not that simple. "noUselessSwitchCase": "off", // Explicit > Implicit @@ -99,10 +105,10 @@ "linter": { "rules": { "performance": { - "noDelete": "off" + "noDelete": "off" // TODO: evaluate if this is necessary for the test(s) to function }, "style": { - "noNamespaceImport": "off" + "noNamespaceImport": "off" // this is required for `vi.spyOn` to work in some tests } } } diff --git a/docs/comments.md b/docs/comments.md index 9610052adf2..ba6c9929625 100644 --- a/docs/comments.md +++ b/docs/comments.md @@ -1,64 +1,107 @@ -## How do I comment my code? +# Commenting code -### While we're not enforcing a strict standard, there are some things to keep in mind: +People spend more time reading code than writing it (sometimes substantially more so). As such, comments and documentation are **vital** for any large codebase like this. + +## General Guidelines +While we're not enforcing a strict standard, here are some things to keep in mind: - Make comments meaningful - - Comments should be explaining why a line or block of code exists and what the reason behind it is - - Comments should not be repeating chunks of code or explaining what 'true' and 'false' means in typescript + - Comments should **NOT** repeat _what_ code _does_[^1] or explain concepts obvious to someone with a basic understanding of the language at hand. Instead, focus on explaining _why_ a line or block of code exists. + - Anyone with basic reading comprehension and a good IDE can figure out what code does; gaining a _post hoc_ understanding of the _reasons_ behind its existence takes a lot more digging, effort and bloodshed. +- Keep comments readable + - A comment's verbosity should roughly scale with the complexity of its subject matter. Some people naturally write shorter or longer comments as a personal style, but summarizing a 300 line function with "does a thing" is about as good as writing nothing. Conversely, writing a paragraph-level response where a basic one-liner would suffice is no less undesirable. + - Long comments should ideally be broken into multiple lines at around the 100-120 character mark. This isn't _mandatory_, but avoids unnecessary scrolling in terminals and IDEs. - Make sure comments exist on Functions, Classes, Methods, and Properties - - This may be the most important things to comment. When someone goes to use a function/class/method/etc., having a comment reduces the need to flip back and forth between files to figure out how something works. Peek Definition is great until you're three nested functions deep. - - The best example of this is JSDoc-style comments as seen below: - - When formatted this way, the comment gets shown by intellisense in VS Code or similar IDEs just by hovering over the text! - - Functions also show each the comment for parameter as you type them, making keeping track of what each one does in lengthy functions much more clear -```js -/** - * Changes the type-based weather modifier if this move's power would be reduced by it - * @param user {@linkcode Pokemon} using this move - * @param target {@linkcode Pokemon} target of this move - * @param move {@linkcode Move} being used - * @param args [0] {@linkcode Utils.NumberHolder} for arenaAttackTypeMultiplier - * @returns true if the function succeeds - */ -apply(user: Pokemon, target: Pokemon, move: Move, args: any[]): boolean { -} + - These may be the most important things to comment. When someone goes to use a function/class/method/etc., having a comment reduces the need to flip back and forth between files to figure out what XYZ does. Peek Definition is great until you're three nested levels deep. -/** Set to true when experimental animated sprites from Gen6+ are used */ -public experimentalSprites: boolean = false; +[^1]: With exceptions for extremely long, convoluted or unintuitive methods (though an over-dependency on said comments is likely a symptom of poorly structured code). +# TSDoc +The codebase makes extensive use of [TSDoc](https://tsdoc.org), which is a TypeScript-specific version of [JSDoc](https://jsdoc.app/about-getting-started) +that uses similar syntax and attaches to functions, classes, etc. + +When formatted correctly, these comments are shown within VS Code or similar IDEs just by hovering over the function or object. +- Functions also show the comment for each parameter as you type them, making keeping track of arguments inside lengthy functions much more clear. + +They can also be used to generate a commentated overview of the codebase. There is a GitHub action that automatically updates [this docs site](https://pagefaultgames.github.io/pokerogue/main/index.html) +and you can generate it locally as well via `npm run docs` which will generate into the `typedoc/` directory. + +## Syntax +For an example of how TSDoc comments work, here are some TSDoc comments taken from `src/data/moves/move.ts`: +```ts /** - * Cures the user's party of non-volatile status conditions, ie. Heal Bell, Aromatherapy - * @extends MoveAttr - * @see {@linkcode apply} + * Attribute to put in a {@link https://bulbapedia.bulbagarden.net/wiki/Substitute_(doll) | Substitute Doll} for the user. */ -export class DontHealThePartyPlsAttr extends MoveAttr { +export class AddSubstituteAttr extends MoveEffectAttr { + /** The ratio of the user's max HP that is required to apply this effect */ + private hpCost: number; + /** Whether the damage taken should be rounded up (Shed Tail rounds up) */ + private roundUp: boolean; + + constructor(hpCost: number, roundUp: boolean) { + // code removed + } + + /** + * Removes 1/4 of the user's maximum HP (rounded down) to create a substitute for the user + * @param user - The {@linkcode Pokemon} that used the move. + * @param target - n/a + * @param move - The {@linkcode Move} with this attribute. + * @param args - n/a + * @returns `true` if the attribute successfully applies, `false` otherwise + */ + apply(user: Pokemon, target: Pokemon, move: Move, args: any[]): boolean { + // code removed + } + + getUserBenefitScore(user: Pokemon, target: Pokemon, move: Move): number { + // code removed + } + + getCondition(): MoveConditionFunc { + // code removed + } + + /** + * Get the substitute-specific failure message if one should be displayed. + * @param user - The pokemon using the move. + * @returns The substitute-specific failure message if the conditions apply, otherwise `undefined` + */ + getFailedText(user: Pokemon, _target: Pokemon, _move: Move): string | undefined { + // code removed + } } ``` -You'll notice this contains an `{@linkcode Object}` tag for each parameter. This provides an easy type denomination and hyperlink to that type using VS Code's Intellisense. `@linkcode` is used instead of `@link` so that the text appears in monospace which is more obviously a `type` rather than a random hyperlink. -If you're interested in going more in depth, you can find a reference guide for how comments like these work [here](https://jsdoc.app) +Looking at the example given, you'll notice this contains an `{@linkcode XYZ}` tag in some of the parameters. This provides a clickable hyperlink to that type or object in most modern IDEs. (`@linkcode` is used here instead of `@link` so that the text appears in monospace which is more obviously a `type` rather than a random hyperlink.) \ +Also note the dashes (` - `) between the parameter names and descriptions - these are **mandatory** under the TSDoc spec[^2]. + +If you're interested in going more in depth, you can find a reference guide for how comments like these work [on the TSDoc website](https://tsdoc.org). +The [playground page](https://tsdoc.org/play/) there can also be used for live testing of examples. + +[^2]: Incidentally, this is also the only place dashes are explicitly _required_. ### What not to do: - Don't leave comments for code you don't understand - - Incorrect information is worse than no information. If you aren't sure how something works, don't make something up to explain it. Ask for help instead. + - Incorrect information is worse than no information. If you aren't sure how something works, don't make something up to explain it - ask for help and/or mark it as TODO. - Don't over-comment - - Not everything needs an explanation. Try to summarize blocks of code instead of singular lines where possible. Single line comments should call out specific oddities. + - Not everything needs a comment. Try to summarize blocks of code instead of singular lines where possible, always preferring giving a reason over stating a fact. Single line comments should call out specific oddities or features. ## How do Abilities and Moves differ from other classes? While other classes should be fully documented, Abilities and Moves heavily incoperate inheritance (i.e. the `extends` keyword). Because of this, much of the functionality in these classes is duplicated or only slightly changed between classes. ### With this in mind, there's a few more things to keep in mind for these: - Do not document any parameters if the function mirrors the one they extend. - - Keep this in mind for functions that are not the `apply` function as they are usually sparce and mostly reused -- The class itself must be documented - - This must include the `@extends BaseClass` and `@see {@linkcode apply}` tags + - Keep this in mind for functions that are not the `apply` function as they are usually sparse and mostly reused - Class member variables must be documented - You can use a single line documentation comment for these `/** i.e. a comment like this */` - `args` parameters must be documented if used - - This should look something like this when there are multiple: + - This should look something vaguely like this when there are multiple: ```ts /** ... - * @param args [0] {@linkcode Utils.NumberHolder} of arenaAttackTypeMultiplier - * [1] {@linkcode Utils.BooleanHolder} of cancelled - * [2] {@linkcode Utils.BooleanHolder} of rWeDoneYet + * @param args - + * `[0]` The {@linkcode Move} being used + * `[1]` A {@linkcode BooleanHolder} used to track XYZ + * `[2]` {@linkcode BooleanHolder} `paramC` - paramC description here ... */ -``` \ No newline at end of file +``` diff --git a/docs/enemy-ai.md b/docs/enemy-ai.md index 8edf5a3f10e..d73b0af980e 100644 --- a/docs/enemy-ai.md +++ b/docs/enemy-ai.md @@ -37,12 +37,12 @@ The `EnemyCommandPhase` follows this process to determine whether or not an enem 1. If the Pokémon has a move already queued (e.g. they are recharging after using Hyper Beam), or they are trapped (e.g. by Bind or Arena Trap), skip to resolving a `FIGHT` command (see next section). 2. For each Pokémon in the enemy's party, [compute their matchup scores](#calculating-matchup-scores) against the active player Pokémon. If there are two active player Pokémon in the battle, add their matchup scores together. 3. Take the party member with the highest matchup score and apply a multiplier to the score that reduces the score based on how frequently the enemy trainer has switched Pokémon in the current battle. - - The multiplier scales off of a counter that increments when the enemy trainer chooses to switch a Pokémon and decrements when they choose to use a move. + - The multiplier scales off of a counter that increments when the enemy trainer chooses to switch a Pokémon and decrements when they choose to use a move. 4. Compare the result of Step 3 with the active enemy Pokémon's matchup score. If the party member's matchup score is at least three times that of the active Pokémon, switch to that party member. - - "Boss" trainers only require the party member's matchup score to be at least two times that of the active Pokémon, so they are more likely to switch than other trainers. The full list of boss trainers in the game is as follows: - - All gym leaders, Elite 4 members, and Champions - - All Evil Team leaders - - The last three Rival Fights (on waves 95, 145, and 195) + - "Boss" trainers only require the party member's matchup score to be at least two times that of the active Pokémon, so they are more likely to switch than other trainers. The full list of boss trainers in the game is as follows: + - All gym leaders, Elite 4 members, and Champions + - All Evil Team leaders + - The last three Rival Fights (on waves 95, 145, and 195) 5. If the enemy decided to switch, send a switch `turnCommand` and end this `EnemyCommandPhase`; otherwise, move on to resolving a `FIGHT` enemy command. ## Step 2: Selecting a Move @@ -54,28 +54,35 @@ At this point, the enemy (a wild or trainer Pokémon) has decided against switch In `getNextMove()`, the enemy Pokémon chooses a move to use in the following steps: 1. If the Pokémon has a move in its Move Queue (e.g. the second turn of a charging move), and the queued move is still usable, use that move against the given target. 2. Filter out any moves it can't use within its moveset. The remaining moves make up the enemy's **move pool** for the turn. - 1. A move can be unusable if it has no PP left or it has been disabled by another move or effect - 2. If the enemy's move pool is empty, use Struggle. + 1. A move can be unusable if it has no PP left or it has been disabled by another move or effect. + 2. If the enemy's move pool is empty, use Struggle. 3. Calculate the **move score** of each move in the enemy's move pool. - 1. A move's move score is equivalent to the move's maximum **target score** among all of the move's possible targets on the field ([more on this later](#calculating-move-and-target-scores)). - 2. A move's move score is set to -20 if at least one of these conditions are met: - - The move is unimplemented (or, more precisely, the move's name ends with " (N)"). - - Conditions for the move to succeed are not met (unless the move is Sucker Punch, Upper Hand, or Thunderclap, as those moves' conditions can't be resolved before the turn starts). - - The move's target scores are 0 or `NaN` for each target. In this case, the game assumes the target score calculation for that move is unimplemented. + 1. A move's move score is equivalent to the move's maximum **target score** among all of the move's possible targets on the field ([more on this later](#calculating-move-and-target-scores)). + 2. A move's move score is set to -20 if at least one of these conditions are met: + - The move is unimplemented (or, more precisely, the move's name ends with "(N)"). + - Conditions for the move to succeed are not met (unless the move is Sucker Punch, Upper Hand or Thunderclap, as those moves' conditions can't be resolved until after the turn starts). + - The move's target scores are 0 or `NaN` for each target. In this case, the game assumes the target score calculation for that move is unimplemented. 4. Sort the move pool in descending order of move scores. 5. From here, the enemy's move selection varies based on its `aiType`. If the enemy is a Boss Pokémon or has a Trainer, it uses the `SMART` AI type; otherwise, it uses the `SMART_RANDOM` AI type. - 1. Let $m_i$ be the *i*-th move in the sorted move pool $M$: - - If `aiType === SMART_RANDOM`, the enemy has a 5/8 chance of selecting $m_0$ and a 3/8 chance of advancing to the next best move $m_1$, where it then repeats this roll. This process stops when a move is selected or the last move in the move pool is reached. - - If `aiType === SMART`, a similar loop is used to decide between selecting the move $m_i$ and advancing to the next iteration with the move $m_{i+1}$. However, instead of using a flat probability, the following conditions need to be met to advance from selecting $m_i$ to $m_{i+1}$: - - $\text{sign}(s_i) = \text{sign}(s_{i+1})$, where $s_i$ is the move score of $m_i$. - - $\text{randInt}(0, 100) < \text{round}(\frac{s_{i+1}}{s_i}\times 50)$. In other words: if the scores of $m_i$ and $m_{i+1}$ have the same sign, the chance to advance to the next iteration with $m_{i+1}$ is proportional to how close the scores are to each other. The probability to advance to the next iteration is at most 50 percent (when $s_i$ and $s_{i+1}$ are equal). + 1. Let $m_i$ be the *i*-th move in the sorted move pool $M$: + - If `aiType === SMART_RANDOM`, the enemy has a 5/8 chance of selecting $m_0$ and a 3/8 chance of advancing to the next best move $m_1$, where it then repeats this roll. This process stops when a move is selected or the last move in the move pool is reached. + - If `aiType === SMART`, a similar loop is used to decide between selecting the move $m_i$ and advancing to the next iteration with the move $m_{i+1}$. However, instead of using a flat probability, the following conditions need to be met to advance from selecting $m_i$ to $m_{i+1}$: + - $\text{sign}(s_i) = \text{sign}(s_{i+1})$, where $s_i$ is the move score of $m_i$. + - $\text{randInt}(0, 100) < \text{round}(\frac{s_{i+1}}{s_i}\times 50)$. In other words: if the scores of $m_i$ and $m_{i+1}$ have the same sign, the chance to advance to the next iteration with $m_{i+1}$ is proportional to how close the scores are to each other. The probability to advance to the next iteration is at most 50 percent (when $s_i$ and $s_{i+1}$ are equal). 6. The enemy will use the move selected in Step 5 against the target(s) with the highest [**target selection score (TSS)**](#choosing-targets-with-getnexttargets) ### Calculating Move and Target Scores -As part of the move selection process, the enemy Pokémon must compute a **target score (TS)** for each legal target for each move in its move pool. The base target score for all moves is a combination of the move's **user benefit score (UBS)** and **target benefit score (TBS)**. +As part of the move selection process, the enemy Pokémon must compute a **target score (TS)** for each legal target for each move in its move pool. The base target score is a combination of the move's **user benefit score (UBS)** and **target benefit score (TBS)**, representing how much the move helps or hinders the user and/or its target(s). -![equation](https://latex.codecogs.com/png.image?%5Cinline%20%5Cdpi%7B100%7D%5Cbg%7Bwhite%7D%5Ctext%7BTS%7D=%5Ctext%7BUBS%7D+%5Ctext%7BTBS%7D%5Ctimes%5Cleft%5C%7B%5Cbegin%7Bmatrix%7D-1&%5Ctext%7Bif%20target%20is%20an%20opponent%7D%5C%5C1&%5Ctext%7Botherwise%7D%5C%5C%5Cend%7Bmatrix%7D%5Cright.) +$$ +\text{TS} = \text{UBS} + \left( \text{TBS} \times +\begin{cases} +-1 & \text{if target is an opponent} \\ +1 & \text{otherwise} +\end{cases} +\right) +$$ A move's UBS and TBS are computed with the respective functions in the `Move` class: @@ -96,19 +103,38 @@ In addition to the base score from `Move.getTargetBenefitScore()`, attack moves - The move's category (Physical/Special), and whether the user has a higher Attack or Special Attack stat. More specifically, the following steps are taken to compute the move's `attackScore`: -1. Compute a multiplier based on the move's type effectiveness: +1. Compute a multiplier based on the move's type effectiveness: - ![typeMultEqn](https://latex.codecogs.com/png.image?%5Cdpi%7B110%7D%5Cbg%7Bwhite%7D%5Ctext%7BtypeMult%7D=%5Cleft%5C%7B%5Cbegin%7Bmatrix%7D2&&%5Ctext%7Bif%20move%20is%20super%20effective(or%20better)%7D%5C%5C-2&&%5Ctext%7Botherwise%7D%5C%5C%5Cend%7Bmatrix%7D%5Cright.) + $$ + \text{typeMult} = + \begin{cases} + 2 & \text{if move is super effective (or better)} \\ + -2 & \text{otherwise} + \end{cases} + $$ 2. Compute a multiplier based on the move's category and the user's offensive stats: - 1. Compute the user's offensive stat ratio: - - ![statRatioEqn](https://latex.codecogs.com/png.image?%5Cinline%20%5Cdpi%7B100%7D%5Cbg%7Bwhite%7D%5Ctext%7BstatRatio%7D=%5Cleft%5C%7B%5Cbegin%7Bmatrix%7D%5Cfrac%7B%5Ctext%7BuserSpAtk%7D%7D%7B%5Ctext%7BuserAtk%7D%7D&%5Ctext%7Bif%20move%20is%20physical%7D%5C%5C%5Cfrac%7B%5Ctext%7BuserAtk%7D%7D%7B%5Ctext%7BuserSpAtk%7D%7D&%5Ctext%7Botherwise%7D%5C%5C%5Cend%7Bmatrix%7D%5Cright.) - 2. Compute the stat-based multiplier: + 1. Compute the user's offensive stat ratio: - ![statMultEqn](https://latex.codecogs.com/png.image?%5Cinline%20%5Cdpi%7B100%7D%5Cbg%7Bwhite%7D%5Ctext%7BstatMult%7D=%5Cleft%5C%7B%5Cbegin%7Bmatrix%7D2&%5Ctext%7Bif%20statRatio%7D%5Cle%200.75%5C%5C1.5&%5Ctext%7Bif%5C;%7D0.75%5Cle%5Ctext%7BstatRatio%7D%5Cle%200.875%5C%5C1&%5Ctext%7Botherwise%7D%5C%5C%5Cend%7Bmatrix%7D%5Cright.) + $$ + \text{statRatio} = + \begin{cases} + \frac{\text{userSpAtk}}{\text{userAtk}} & \text{if move is physical} \\ + \frac{\text{userAtk}}{\text{userSpAtk}} & \text{otherwise} + \end{cases} + $$ + 2. Compute the stat-based multiplier: + + $$ + \text{statMult} = + \begin{cases} + 2 & \text{if statRatio} \leq 0.75 \\ + 1.5 & \text{if } 0.75 \leq \text{statRatio} \leq 0.875 \\ + 1 & \text{otherwise} + \end{cases} + $$ 3. Calculate the move's `attackScore`: - $\text{attackScore} = (\text{typeMult}\times \text{statMult})+\lfloor \frac{\text{power}}{5} \rfloor$ + $\text{attackScore} = (\text{typeMult}\times \text{statMult})+\lfloor \frac{\text{power}}{5} \rfloor$ The maximum total multiplier in `attackScore` ($\text{typeMult}\times \text{statMult}$) is 4, which occurs for attacks that are super effective against the target and are categorically aligned with the user's offensive stats (e.g. the move is physical, and the user has much higher Attack than Sp. Atk). The minimum total multiplier of -4 occurs (somewhat confusingly) for attacks that are not super effective but are categorically aligned with the user's offensive stats. @@ -125,18 +151,31 @@ The final step to calculate an attack move's target score (TS) is to multiply th The enemy's target selection for single-target moves works in a very similar way to its move selection. Each potential target is given a **target selection score (TSS)** which is based on the move's [target benefit score](#calculating-move-and-target-scores) for that target: -![TSSEqn](https://latex.codecogs.com/png.image?%5Cinline%20%5Cdpi%7B100%7D%5Cbg%7Bwhite%7D%5Ctext%7BTSS%7D=%5Ctext%7BTBS%7D%5Ctimes%5Cleft%5C%7B%5Cbegin%7Bmatrix%7D-1&%5Ctext%7Bif%20target%20is%20an%20opponent%7D%5C%5C1&%5Ctext%7Botherwise%7D%5C%5C%5Cend%7Bmatrix%7D%5Cright.) +$$ +\text{TSS} = \text{TBS} \times +\begin{cases} +-1 & \text{if target is an opponent} \\ +1 & \text{otherwise} +\end{cases} +$$ Once the TSS is calculated for each target, the target is selected as follows: 1. Sort the targets (indexes) in decreasing order of their target selection scores (or weights). Let $t_i$ be the index of the *i*-th target in the sorted list, and let $w_i$ be that target's corresponding TSS. 2. Normalize the weights. Let $w_n$ be the lowest-weighted target in the sorted list, then: - - ![normWeightEqn](https://latex.codecogs.com/png.image?%5Cinline%20%5Cdpi%7B100%7D%5Cbg%7Bwhite%7DW_i=%5Cleft%5C%7B%5Cbegin%7Bmatrix%7Dw_i+%7Cw_n%7C&%5Ctext%7Bif%5C;%7Dw_n%5C;%5Ctext%7Bis%20negative%7D%5C%5Cw_i&%5Ctext%7Botherwise%7D%5C%5C%5Cend%7Bmatrix%7D%5Cright.) + + $$ + W_i = + \begin{cases} + w_i + |w_n| & \text{if } w_n \text{ is negative} \\ + w_i & \text{otherwise} + \end{cases} + $$ + 3. Remove all weights from the list such that $W_i < \frac{W_0}{2}$ 4. Generate a random integer $R=\text{rand}(0, W_{\text{total}})$ where $W_{\text{total}}$ is the sum of all the remaining weights after Step 3. 5. For each target $(t_i, W_i)$, - 1. if $R \le \sum_{j=0}^{i} W_i$, or if $t_i$ is the last target in the list, **return** $t_i$ - 2. otherwise, advance to the next target $t_{i+1}$ and repeat this check. + 1. if $R \le \sum_{j=0}^{i} W_i$, or if $t_i$ is the last target in the list, **return** $t_i$ + 2. otherwise, advance to the next target $t_{i+1}$ and repeat this check. Once the target is selected, the enemy has successfully determined its next action for the turn, and its corresponding `EnemyCommandPhase` ends. From here, the `TurnStartPhase` processes the enemy's commands alongside the player's commands and begins to resolve the turn. @@ -145,15 +184,15 @@ Once the target is selected, the enemy has successfully determined its next acti Suppose you enter a single battle against an enemy trainer with the following Pokémon in their party: 1. An [Excadrill](https://bulbapedia.bulbagarden.net/wiki/Excadrill_(Pok%C3%A9mon)) with the Ability Sand Force and the following moveset - 1. Earthquake - 2. Iron Head - 3. Crush Claw - 4. Swords Dance + 1. Earthquake + 2. Iron Head + 3. Crush Claw + 4. Swords Dance 2. A [Heatmor](https://bulbapedia.bulbagarden.net/wiki/Heatmor_(Pok%C3%A9mon)) with the Ability Flash Fire and the following moveset - 1. Fire Lash - 2. Inferno - 3. Hone Claws - 4. Shadow Claw + 1. Fire Lash + 2. Inferno + 3. Hone Claws + 4. Shadow Claw The enemy trainer leads with their Heatmor, and you lead with a [Dachsbun](https://bulbapedia.bulbagarden.net/wiki/Dachsbun_(Pok%C3%A9mon)) with the Ability Well-Baked Body. We'll cover the enemy's behavior over the next two turns. @@ -172,13 +211,13 @@ Based on the enemy party's matchup scores, whether or not the trainer switches o Now that the enemy Pokémon with the best matchup score is on the field (assuming it survives Dachsbun's attack on the last turn), the enemy will now decide to have Excadrill use one of its moves. Assuming all of its moves are usable, we'll go through the target score calculations for each move: - **Earthquake**: In a single battle, this move is just a 100-power Ground-type physical attack with no additional effects. With no additional benefit score from attributes, the move's base target score against the player's Dachsbun is just the `attackScore` from `AttackMove.getTargetBenefitScore()`. In this case, Earthquake's `attackScore` is given by - + $\text{attackScore}=(\text{typeMult}\times \text{statMult}) + \lfloor \frac{\text{power}}{5} \rfloor = -2\times 2 + 20 = 16$ Here, `typeMult` is -2 because the move is not super effective, and `statMult` is 2 because Excadrill's Attack is significantly higher than its Sp. Atk. Accounting for STAB thanks to Excadrill's typing, the final target score for this move is **24** - **Iron Head**: This move is an 80-power Steel-type physical attack with an additional chance to cause the target to flinch. With these properties, Iron Head has a user benefit score of 0 and a target benefit score given by - + $\text{TBS}=\text{getTargetBenefitScore(FlinchAttr)}-\text{attackScore}$ Under its current implementation, the target benefit score of `FlinchAttr` is -5. Calculating the move's `attackScore`, we get: @@ -198,7 +237,7 @@ Now that the enemy Pokémon with the best matchup score is on the field (assumin where `levels` is the number of stat stages added by the attribute (in this case, +2). The final score for this move is **6** (Note: because this move is self-targeted, we don't flip the sign of TBS when computing the target score). - **Crush Claw**: This move is a 75-power Normal-type physical attack with a 50 percent chance to lower the target's Defense by one stage. The additional effect is implemented by the same `StatStageChangeAttr` as Swords Dance, so we can use the same formulas from before to compute the total TBS and base target score. - + $\text{TBS}=\text{getTargetBenefitScore(StatStageChangeAttr)}-\text{attackScore}$ $\text{TBS}=(-4 + 2)-(-2\times 2 + \lfloor \frac{75}{5} \rfloor)=-2-11=-13$ diff --git a/docs/linting.md b/docs/linting.md index ff512740a80..d3b4e47675f 100644 --- a/docs/linting.md +++ b/docs/linting.md @@ -1,34 +1,65 @@ -# Biome +# Linting & Formatting -## Key Features +> "Any fool can write code that a computer can understand. Good programmers write code that humans can understand." +> +> — Martin Fowler -1. **Automation**: - - A pre-commit hook has been added to automatically run Biome on the added or modified files, ensuring code quality before commits. +Writing clean, readable code is important, and linters and formatters are an integral part of ensuring code quality and readability. +It is for this reason we are using [Biome](https://biomejs.dev), an opinionated linter/formatter (akin to Prettier) with a heavy focus on speed and performance. -2. **Manual Usage**: - - If you prefer not to use the pre-commit hook, you can manually run biome to automatically fix issues using the command: +### Installation +You probably installed Biome already without noticing it - it's included inside `package.json` and should've been downloaded when you ran `npm install` after cloning the repo (assuming you followed proper instructions, that is). If you haven't done that yet, go do it. - ```sh - npx @biomejs/biome --write - ``` +# Using Biome - - Running this command will lint all files in the repository. +For the most part, Biome attempts to stay "out of your hair", letting you write code while enforcing a consistent formatting standard and only notifying for errors it can't automatically fix.\ +On the other hand, if Biome complains about a piece of code, **there's probably a good reason why**. Disable comments should be used sparingly or when readabilty demands it - your first instinct should be to fix the code in question, not disable the rule. -3. **GitHub Action**: - - A GitHub Action has been added to automatically run Biome on every push and pull request, ensuring code quality in the CI/CD pipeline. +## Editor Integration +Biome has integration with many popular code editors. See [these](https://biomejs.dev/guides/editors/first-party-extensions/) [pages](https://biomejs.dev/guides/editors/third-party-extensions/) for information about enabling Biome in your editor of choice. -If you are getting linting errors from biome and want to see which files they are coming from, you can find that out by running biome in a way that is configured to only show the errors for that specific rule: ``npx @biomejs/biome lint --only=category/ruleName`` +## Automated Runs +Generally speaking, most users shouldn't need to run Biome directly; in addition to editor integration, [pre-commit hook](../lefthook.yml) will periodically run Biome before each commit. +You will **not** be able to push code with `error`-level linting problems - fix them beforehand. -## Summary of Biome Rules +We also have a [Github Action](../.github/workflows/quality.yml) to verify code quality each time a PR is updated, preventing bad code from inadvertently making its way upstream. -We use the [recommended ruleset](https://biomejs.dev/linter/rules/) for Biome, with some customizations to better suit our project's needs. +### Why am I getting errors for code I didn't write? + +To save time and minimize friction with existing code, both the pre-commit hook and workflow run will only check files **directly changed** by a given PR or commit. +As a result, changes to files not updated since Biome's introduction can cause any _prior_ linting errors in them to resurface and get flagged. +This should occur less and less often as time passes and more files are updated to the new standard. -For a complete list of rules and their configurations, refer to the `biome.jsonc` file in the project root. +## Running Biome via CLI +If you want Biome to check your files manually, you can run it from the command line like so: + +```sh +npx biome check --[flags] +``` + +A full list of flags and options can be found on [their website](https://biomejs.dev/reference/cli/), but here's a few useful ones to keep in mind: + +- `--write` will cause Biome to write all "safe" fixes and formatting changes directly to your files (rather than just complaining and doing nothing). +- `--changed` and `--staged` will only perform checks on all changed or staged files respectively. Biome sources this info from the relevant version control system (in this case Git). +- `diagnostic-level=XXX` will only show diagnostics with at least the given severity level (`info/warn/error`). Useful to only focus on errors causing a failed workflow run or similar. + +## Linting Rules + +We primarily use Biome's [recommended ruleset](https://biomejs.dev/linter/rules/) for linting JS/TS, with some customizations to better suit our project's needs[^1]. Some things to consider: -- We have disabled rules that prioritize style over performance, such as `useTemplate` -- Some rules are currently marked as warnings (`warn`) to allow for gradual refactoring without blocking development. Do not write new code that triggers these warnings. -- The linter is configured to ignore specific files and folders, such as large or complex files that are pending refactors, to improve performance and focus on actionable areas. +- We have disabled rules that prioritize style over performance, such as `useTemplate`. +- Some rules are currently disabled or marked as warnings (`warn`) to allow for gradual refactoring without blocking development. **Do not write new code that triggers these warnings.** +- The linter is configured to ignore specific files and folders (such as excessively large files or ones in need of refactoring) to improve performance and focus on actionable areas. -Formatting is also handled by Biome. You should not have to worry about manually formatting your code. +Any questions about linting rules should be brought up in the `#dev-corner` channel in the discord. + +[^1]: A complete list of rules can be found in the `biome.jsonc` file in the project root. + +## What about ESLint? + + +Our project migrated away from ESLint around March 2025 due to it simply not scaling well enough with the codebase's ever-growing size. The [existing eslint rules](../eslint.config.js) are considered _deprecated_, only kept due to Biome lacking the corresponding rules in its current ruleset. + +No additional ESLint rules should be added under any circumstances - even the few currently in circulation take longer to run than the entire Biome formatting/linting suite combined. \ No newline at end of file diff --git a/eslint.config.js b/eslint.config.js index a97e3902411..aebcab7feae 100644 --- a/eslint.config.js +++ b/eslint.config.js @@ -1,9 +1,10 @@ -import tseslint from "@typescript-eslint/eslint-plugin"; +/** @ts-check */ +import tseslint from "typescript-eslint"; import stylisticTs from "@stylistic/eslint-plugin-ts"; import parser from "@typescript-eslint/parser"; import importX from "eslint-plugin-import-x"; -export default [ +export default tseslint.config( { name: "eslint-config", files: ["src/**/*.{ts,tsx,js,jsx}", "test/**/*.{ts,tsx,js,jsx}"], @@ -14,12 +15,11 @@ export default [ plugins: { "import-x": importX, "@stylistic/ts": stylisticTs, - "@typescript-eslint": tseslint, + "@typescript-eslint": tseslint.plugin, }, rules: { - "prefer-const": "error", // Enforces the use of `const` for variables that are never reassigned "no-undef": "off", // Disables the rule that disallows the use of undeclared variables (TypeScript handles this) - "no-extra-semi": ["error"], // Disallows unnecessary semicolons for TypeScript-specific syntax + "no-extra-semi": "error", // Disallows unnecessary semicolons for TypeScript-specific syntax "import-x/extensions": ["error", "never", { json: "always" }], // Enforces no extension for imports unless json }, }, @@ -33,11 +33,11 @@ export default [ }, }, plugins: { - "@typescript-eslint": tseslint, + "@typescript-eslint": tseslint.plugin, }, rules: { "@typescript-eslint/no-floating-promises": "error", // Require Promise-like statements to be handled appropriately. - https://typescript-eslint.io/rules/no-floating-promises/ "@typescript-eslint/no-misused-promises": "error", // Disallow Promises in places not designed to handle them. - https://typescript-eslint.io/rules/no-misused-promises/ }, }, -]; +); diff --git a/lefthook.yml b/lefthook.yml index ddf875f15de..ff0ac00f9e5 100644 --- a/lefthook.yml +++ b/lefthook.yml @@ -2,13 +2,12 @@ pre-commit: parallel: true commands: biome-lint: - glob: "*.{js,jsx,ts,tsx}" - run: npx @biomejs/biome check --write --reporter=summary {staged_files} --no-errors-on-unmatched + run: npx biome check --write --reporter=summary --staged --no-errors-on-unmatched stage_fixed: true skip: - merge - rebase - + post-merge: commands: update-submodules: diff --git a/package-lock.json b/package-lock.json index 07fed79969e..02a5d375588 100644 --- a/package-lock.json +++ b/package-lock.json @@ -1,12 +1,12 @@ { "name": "pokemon-rogue-battle", - "version": "1.8.4", + "version": "1.9.3", "lockfileVersion": 3, "requires": true, "packages": { "": { "name": "pokemon-rogue-battle", - "version": "1.8.4", + "version": "1.9.3", "hasInstallScript": true, "dependencies": { "@material/material-color-utilities": "^0.2.7", @@ -39,10 +39,11 @@ "lefthook": "^1.11.5", "msw": "^2.7.3", "phaser3spectorjs": "^0.0.8", + "rollup": "^4.40.1", "typedoc": "^0.28.1", "typescript": "^5.8.2", "typescript-eslint": "^8.28.0", - "vite": "^6.2.0", + "vite": "^6.3.4", "vite-tsconfig-paths": "^5.1.4", "vitest": "^3.0.9", "vitest-canvas-mock": "^0.3.3" @@ -2161,9 +2162,9 @@ } }, "node_modules/@rollup/rollup-android-arm-eabi": { - "version": "4.38.0", - "resolved": "https://registry.npmjs.org/@rollup/rollup-android-arm-eabi/-/rollup-android-arm-eabi-4.38.0.tgz", - "integrity": "sha512-ldomqc4/jDZu/xpYU+aRxo3V4mGCV9HeTgUBANI3oIQMOL+SsxB+S2lxMpkFp5UamSS3XuTMQVbsS24R4J4Qjg==", + "version": "4.40.1", + "resolved": "https://registry.npmjs.org/@rollup/rollup-android-arm-eabi/-/rollup-android-arm-eabi-4.40.1.tgz", + "integrity": "sha512-kxz0YeeCrRUHz3zyqvd7n+TVRlNyTifBsmnmNPtk3hQURUyG9eAB+usz6DAwagMusjx/zb3AjvDUvhFGDAexGw==", "cpu": [ "arm" ], @@ -2175,9 +2176,9 @@ ] }, "node_modules/@rollup/rollup-android-arm64": { - "version": "4.38.0", - "resolved": "https://registry.npmjs.org/@rollup/rollup-android-arm64/-/rollup-android-arm64-4.38.0.tgz", - "integrity": "sha512-VUsgcy4GhhT7rokwzYQP+aV9XnSLkkhlEJ0St8pbasuWO/vwphhZQxYEKUP3ayeCYLhk6gEtacRpYP/cj3GjyQ==", + "version": "4.40.1", + "resolved": "https://registry.npmjs.org/@rollup/rollup-android-arm64/-/rollup-android-arm64-4.40.1.tgz", + "integrity": "sha512-PPkxTOisoNC6TpnDKatjKkjRMsdaWIhyuMkA4UsBXT9WEZY4uHezBTjs6Vl4PbqQQeu6oION1w2voYZv9yquCw==", "cpu": [ "arm64" ], @@ -2189,9 +2190,9 @@ ] }, "node_modules/@rollup/rollup-darwin-arm64": { - "version": "4.38.0", - "resolved": "https://registry.npmjs.org/@rollup/rollup-darwin-arm64/-/rollup-darwin-arm64-4.38.0.tgz", - "integrity": "sha512-buA17AYXlW9Rn091sWMq1xGUvWQFOH4N1rqUxGJtEQzhChxWjldGCCup7r/wUnaI6Au8sKXpoh0xg58a7cgcpg==", + "version": "4.40.1", + "resolved": "https://registry.npmjs.org/@rollup/rollup-darwin-arm64/-/rollup-darwin-arm64-4.40.1.tgz", + "integrity": "sha512-VWXGISWFY18v/0JyNUy4A46KCFCb9NVsH+1100XP31lud+TzlezBbz24CYzbnA4x6w4hx+NYCXDfnvDVO6lcAA==", "cpu": [ "arm64" ], @@ -2203,9 +2204,9 @@ ] }, "node_modules/@rollup/rollup-darwin-x64": { - "version": "4.38.0", - "resolved": "https://registry.npmjs.org/@rollup/rollup-darwin-x64/-/rollup-darwin-x64-4.38.0.tgz", - "integrity": "sha512-Mgcmc78AjunP1SKXl624vVBOF2bzwNWFPMP4fpOu05vS0amnLcX8gHIge7q/lDAHy3T2HeR0TqrriZDQS2Woeg==", + "version": "4.40.1", + "resolved": "https://registry.npmjs.org/@rollup/rollup-darwin-x64/-/rollup-darwin-x64-4.40.1.tgz", + "integrity": "sha512-nIwkXafAI1/QCS7pxSpv/ZtFW6TXcNUEHAIA9EIyw5OzxJZQ1YDrX+CL6JAIQgZ33CInl1R6mHet9Y/UZTg2Bw==", "cpu": [ "x64" ], @@ -2217,9 +2218,9 @@ ] }, "node_modules/@rollup/rollup-freebsd-arm64": { - "version": "4.38.0", - "resolved": "https://registry.npmjs.org/@rollup/rollup-freebsd-arm64/-/rollup-freebsd-arm64-4.38.0.tgz", - "integrity": "sha512-zzJACgjLbQTsscxWqvrEQAEh28hqhebpRz5q/uUd1T7VTwUNZ4VIXQt5hE7ncs0GrF+s7d3S4on4TiXUY8KoQA==", + "version": "4.40.1", + "resolved": "https://registry.npmjs.org/@rollup/rollup-freebsd-arm64/-/rollup-freebsd-arm64-4.40.1.tgz", + "integrity": "sha512-BdrLJ2mHTrIYdaS2I99mriyJfGGenSaP+UwGi1kB9BLOCu9SR8ZpbkmmalKIALnRw24kM7qCN0IOm6L0S44iWw==", "cpu": [ "arm64" ], @@ -2231,9 +2232,9 @@ ] }, "node_modules/@rollup/rollup-freebsd-x64": { - "version": "4.38.0", - "resolved": "https://registry.npmjs.org/@rollup/rollup-freebsd-x64/-/rollup-freebsd-x64-4.38.0.tgz", - "integrity": "sha512-hCY/KAeYMCyDpEE4pTETam0XZS4/5GXzlLgpi5f0IaPExw9kuB+PDTOTLuPtM10TlRG0U9OSmXJ+Wq9J39LvAg==", + "version": "4.40.1", + "resolved": "https://registry.npmjs.org/@rollup/rollup-freebsd-x64/-/rollup-freebsd-x64-4.40.1.tgz", + "integrity": "sha512-VXeo/puqvCG8JBPNZXZf5Dqq7BzElNJzHRRw3vjBE27WujdzuOPecDPc/+1DcdcTptNBep3861jNq0mYkT8Z6Q==", "cpu": [ "x64" ], @@ -2245,9 +2246,9 @@ ] }, "node_modules/@rollup/rollup-linux-arm-gnueabihf": { - "version": "4.38.0", - "resolved": "https://registry.npmjs.org/@rollup/rollup-linux-arm-gnueabihf/-/rollup-linux-arm-gnueabihf-4.38.0.tgz", - "integrity": "sha512-mimPH43mHl4JdOTD7bUMFhBdrg6f9HzMTOEnzRmXbOZqjijCw8LA5z8uL6LCjxSa67H2xiLFvvO67PT05PRKGg==", + "version": "4.40.1", + "resolved": "https://registry.npmjs.org/@rollup/rollup-linux-arm-gnueabihf/-/rollup-linux-arm-gnueabihf-4.40.1.tgz", + "integrity": "sha512-ehSKrewwsESPt1TgSE/na9nIhWCosfGSFqv7vwEtjyAqZcvbGIg4JAcV7ZEh2tfj/IlfBeZjgOXm35iOOjadcg==", "cpu": [ "arm" ], @@ -2259,9 +2260,9 @@ ] }, "node_modules/@rollup/rollup-linux-arm-musleabihf": { - "version": "4.38.0", - "resolved": "https://registry.npmjs.org/@rollup/rollup-linux-arm-musleabihf/-/rollup-linux-arm-musleabihf-4.38.0.tgz", - "integrity": "sha512-tPiJtiOoNuIH8XGG8sWoMMkAMm98PUwlriOFCCbZGc9WCax+GLeVRhmaxjJtz6WxrPKACgrwoZ5ia/uapq3ZVg==", + "version": "4.40.1", + "resolved": "https://registry.npmjs.org/@rollup/rollup-linux-arm-musleabihf/-/rollup-linux-arm-musleabihf-4.40.1.tgz", + "integrity": "sha512-m39iO/aaurh5FVIu/F4/Zsl8xppd76S4qoID8E+dSRQvTyZTOI2gVk3T4oqzfq1PtcvOfAVlwLMK3KRQMaR8lg==", "cpu": [ "arm" ], @@ -2273,9 +2274,9 @@ ] }, "node_modules/@rollup/rollup-linux-arm64-gnu": { - "version": "4.38.0", - "resolved": "https://registry.npmjs.org/@rollup/rollup-linux-arm64-gnu/-/rollup-linux-arm64-gnu-4.38.0.tgz", - "integrity": "sha512-wZco59rIVuB0tjQS0CSHTTUcEde+pXQWugZVxWaQFdQQ1VYub/sTrNdY76D1MKdN2NB48JDuGABP6o6fqos8mA==", + "version": "4.40.1", + "resolved": "https://registry.npmjs.org/@rollup/rollup-linux-arm64-gnu/-/rollup-linux-arm64-gnu-4.40.1.tgz", + "integrity": "sha512-Y+GHnGaku4aVLSgrT0uWe2o2Rq8te9hi+MwqGF9r9ORgXhmHK5Q71N757u0F8yU1OIwUIFy6YiJtKjtyktk5hg==", "cpu": [ "arm64" ], @@ -2287,9 +2288,9 @@ ] }, "node_modules/@rollup/rollup-linux-arm64-musl": { - "version": "4.38.0", - "resolved": "https://registry.npmjs.org/@rollup/rollup-linux-arm64-musl/-/rollup-linux-arm64-musl-4.38.0.tgz", - "integrity": "sha512-fQgqwKmW0REM4LomQ+87PP8w8xvU9LZfeLBKybeli+0yHT7VKILINzFEuggvnV9M3x1Ed4gUBmGUzCo/ikmFbQ==", + "version": "4.40.1", + "resolved": "https://registry.npmjs.org/@rollup/rollup-linux-arm64-musl/-/rollup-linux-arm64-musl-4.40.1.tgz", + "integrity": "sha512-jEwjn3jCA+tQGswK3aEWcD09/7M5wGwc6+flhva7dsQNRZZTe30vkalgIzV4tjkopsTS9Jd7Y1Bsj6a4lzz8gQ==", "cpu": [ "arm64" ], @@ -2301,9 +2302,9 @@ ] }, "node_modules/@rollup/rollup-linux-loongarch64-gnu": { - "version": "4.38.0", - "resolved": "https://registry.npmjs.org/@rollup/rollup-linux-loongarch64-gnu/-/rollup-linux-loongarch64-gnu-4.38.0.tgz", - "integrity": "sha512-hz5oqQLXTB3SbXpfkKHKXLdIp02/w3M+ajp8p4yWOWwQRtHWiEOCKtc9U+YXahrwdk+3qHdFMDWR5k+4dIlddg==", + "version": "4.40.1", + "resolved": "https://registry.npmjs.org/@rollup/rollup-linux-loongarch64-gnu/-/rollup-linux-loongarch64-gnu-4.40.1.tgz", + "integrity": "sha512-ySyWikVhNzv+BV/IDCsrraOAZ3UaC8SZB67FZlqVwXwnFhPihOso9rPOxzZbjp81suB1O2Topw+6Ug3JNegejQ==", "cpu": [ "loong64" ], @@ -2315,9 +2316,9 @@ ] }, "node_modules/@rollup/rollup-linux-powerpc64le-gnu": { - "version": "4.38.0", - "resolved": "https://registry.npmjs.org/@rollup/rollup-linux-powerpc64le-gnu/-/rollup-linux-powerpc64le-gnu-4.38.0.tgz", - "integrity": "sha512-NXqygK/dTSibQ+0pzxsL3r4Xl8oPqVoWbZV9niqOnIHV/J92fe65pOir0xjkUZDRSPyFRvu+4YOpJF9BZHQImw==", + "version": "4.40.1", + "resolved": "https://registry.npmjs.org/@rollup/rollup-linux-powerpc64le-gnu/-/rollup-linux-powerpc64le-gnu-4.40.1.tgz", + "integrity": "sha512-BvvA64QxZlh7WZWqDPPdt0GH4bznuL6uOO1pmgPnnv86rpUpc8ZxgZwcEgXvo02GRIZX1hQ0j0pAnhwkhwPqWg==", "cpu": [ "ppc64" ], @@ -2329,9 +2330,9 @@ ] }, "node_modules/@rollup/rollup-linux-riscv64-gnu": { - "version": "4.38.0", - "resolved": "https://registry.npmjs.org/@rollup/rollup-linux-riscv64-gnu/-/rollup-linux-riscv64-gnu-4.38.0.tgz", - "integrity": "sha512-GEAIabR1uFyvf/jW/5jfu8gjM06/4kZ1W+j1nWTSSB3w6moZEBm7iBtzwQ3a1Pxos2F7Gz+58aVEnZHU295QTg==", + "version": "4.40.1", + "resolved": "https://registry.npmjs.org/@rollup/rollup-linux-riscv64-gnu/-/rollup-linux-riscv64-gnu-4.40.1.tgz", + "integrity": "sha512-EQSP+8+1VuSulm9RKSMKitTav89fKbHymTf25n5+Yr6gAPZxYWpj3DzAsQqoaHAk9YX2lwEyAf9S4W8F4l3VBQ==", "cpu": [ "riscv64" ], @@ -2343,9 +2344,9 @@ ] }, "node_modules/@rollup/rollup-linux-riscv64-musl": { - "version": "4.38.0", - "resolved": "https://registry.npmjs.org/@rollup/rollup-linux-riscv64-musl/-/rollup-linux-riscv64-musl-4.38.0.tgz", - "integrity": "sha512-9EYTX+Gus2EGPbfs+fh7l95wVADtSQyYw4DfSBcYdUEAmP2lqSZY0Y17yX/3m5VKGGJ4UmIH5LHLkMJft3bYoA==", + "version": "4.40.1", + "resolved": "https://registry.npmjs.org/@rollup/rollup-linux-riscv64-musl/-/rollup-linux-riscv64-musl-4.40.1.tgz", + "integrity": "sha512-n/vQ4xRZXKuIpqukkMXZt9RWdl+2zgGNx7Uda8NtmLJ06NL8jiHxUawbwC+hdSq1rrw/9CghCpEONor+l1e2gA==", "cpu": [ "riscv64" ], @@ -2357,9 +2358,9 @@ ] }, "node_modules/@rollup/rollup-linux-s390x-gnu": { - "version": "4.38.0", - "resolved": "https://registry.npmjs.org/@rollup/rollup-linux-s390x-gnu/-/rollup-linux-s390x-gnu-4.38.0.tgz", - "integrity": "sha512-Mpp6+Z5VhB9VDk7RwZXoG2qMdERm3Jw07RNlXHE0bOnEeX+l7Fy4bg+NxfyN15ruuY3/7Vrbpm75J9QHFqj5+Q==", + "version": "4.40.1", + "resolved": "https://registry.npmjs.org/@rollup/rollup-linux-s390x-gnu/-/rollup-linux-s390x-gnu-4.40.1.tgz", + "integrity": "sha512-h8d28xzYb98fMQKUz0w2fMc1XuGzLLjdyxVIbhbil4ELfk5/orZlSTpF/xdI9C8K0I8lCkq+1En2RJsawZekkg==", "cpu": [ "s390x" ], @@ -2371,9 +2372,9 @@ ] }, "node_modules/@rollup/rollup-linux-x64-gnu": { - "version": "4.38.0", - "resolved": "https://registry.npmjs.org/@rollup/rollup-linux-x64-gnu/-/rollup-linux-x64-gnu-4.38.0.tgz", - "integrity": "sha512-vPvNgFlZRAgO7rwncMeE0+8c4Hmc+qixnp00/Uv3ht2x7KYrJ6ERVd3/R0nUtlE6/hu7/HiiNHJ/rP6knRFt1w==", + "version": "4.40.1", + "resolved": "https://registry.npmjs.org/@rollup/rollup-linux-x64-gnu/-/rollup-linux-x64-gnu-4.40.1.tgz", + "integrity": "sha512-XiK5z70PEFEFqcNj3/zRSz/qX4bp4QIraTy9QjwJAb/Z8GM7kVUsD0Uk8maIPeTyPCP03ChdI+VVmJriKYbRHQ==", "cpu": [ "x64" ], @@ -2385,9 +2386,9 @@ ] }, "node_modules/@rollup/rollup-linux-x64-musl": { - "version": "4.38.0", - "resolved": "https://registry.npmjs.org/@rollup/rollup-linux-x64-musl/-/rollup-linux-x64-musl-4.38.0.tgz", - "integrity": "sha512-q5Zv+goWvQUGCaL7fU8NuTw8aydIL/C9abAVGCzRReuj5h30TPx4LumBtAidrVOtXnlB+RZkBtExMsfqkMfb8g==", + "version": "4.40.1", + "resolved": "https://registry.npmjs.org/@rollup/rollup-linux-x64-musl/-/rollup-linux-x64-musl-4.40.1.tgz", + "integrity": "sha512-2BRORitq5rQ4Da9blVovzNCMaUlyKrzMSvkVR0D4qPuOy/+pMCrh1d7o01RATwVy+6Fa1WBw+da7QPeLWU/1mQ==", "cpu": [ "x64" ], @@ -2399,9 +2400,9 @@ ] }, "node_modules/@rollup/rollup-win32-arm64-msvc": { - "version": "4.38.0", - "resolved": "https://registry.npmjs.org/@rollup/rollup-win32-arm64-msvc/-/rollup-win32-arm64-msvc-4.38.0.tgz", - "integrity": "sha512-u/Jbm1BU89Vftqyqbmxdq14nBaQjQX1HhmsdBWqSdGClNaKwhjsg5TpW+5Ibs1mb8Es9wJiMdl86BcmtUVXNZg==", + "version": "4.40.1", + "resolved": "https://registry.npmjs.org/@rollup/rollup-win32-arm64-msvc/-/rollup-win32-arm64-msvc-4.40.1.tgz", + "integrity": "sha512-b2bcNm9Kbde03H+q+Jjw9tSfhYkzrDUf2d5MAd1bOJuVplXvFhWz7tRtWvD8/ORZi7qSCy0idW6tf2HgxSXQSg==", "cpu": [ "arm64" ], @@ -2413,9 +2414,9 @@ ] }, "node_modules/@rollup/rollup-win32-ia32-msvc": { - "version": "4.38.0", - "resolved": "https://registry.npmjs.org/@rollup/rollup-win32-ia32-msvc/-/rollup-win32-ia32-msvc-4.38.0.tgz", - "integrity": "sha512-mqu4PzTrlpNHHbu5qleGvXJoGgHpChBlrBx/mEhTPpnAL1ZAYFlvHD7rLK839LLKQzqEQMFJfGrrOHItN4ZQqA==", + "version": "4.40.1", + "resolved": "https://registry.npmjs.org/@rollup/rollup-win32-ia32-msvc/-/rollup-win32-ia32-msvc-4.40.1.tgz", + "integrity": "sha512-DfcogW8N7Zg7llVEfpqWMZcaErKfsj9VvmfSyRjCyo4BI3wPEfrzTtJkZG6gKP/Z92wFm6rz2aDO7/JfiR/whA==", "cpu": [ "ia32" ], @@ -2427,9 +2428,9 @@ ] }, "node_modules/@rollup/rollup-win32-x64-msvc": { - "version": "4.38.0", - "resolved": "https://registry.npmjs.org/@rollup/rollup-win32-x64-msvc/-/rollup-win32-x64-msvc-4.38.0.tgz", - "integrity": "sha512-jjqy3uWlecfB98Psxb5cD6Fny9Fupv9LrDSPTQZUROqjvZmcCqNu4UMl7qqhlUUGpwiAkotj6GYu4SZdcr/nLw==", + "version": "4.40.1", + "resolved": "https://registry.npmjs.org/@rollup/rollup-win32-x64-msvc/-/rollup-win32-x64-msvc-4.40.1.tgz", + "integrity": "sha512-ECyOuDeH3C1I8jH2MK1RtBJW+YPMvSfT0a5NN0nHfQYnDSJ6tUiZH3gzwVP5/Kfh/+Tt7tpWVF9LXNTnhTJ3kA==", "cpu": [ "x64" ], @@ -4427,6 +4428,21 @@ "reusify": "^1.0.4" } }, + "node_modules/fdir": { + "version": "6.4.4", + "resolved": "https://registry.npmjs.org/fdir/-/fdir-6.4.4.tgz", + "integrity": "sha512-1NZP+GK4GfuAv3PqKvxQRDMjdSRZjnkq7KfhlNrCNNlZ0ygQFpebfrnfnq/W7fpUnAv9aGWmY1zKx7FYL3gwhg==", + "dev": true, + "license": "MIT", + "peerDependencies": { + "picomatch": "^3 || ^4" + }, + "peerDependenciesMeta": { + "picomatch": { + "optional": true + } + } + }, "node_modules/file-entry-cache": { "version": "8.0.0", "resolved": "https://registry.npmjs.org/file-entry-cache/-/file-entry-cache-8.0.0.tgz", @@ -6559,9 +6575,9 @@ } }, "node_modules/rollup": { - "version": "4.38.0", - "resolved": "https://registry.npmjs.org/rollup/-/rollup-4.38.0.tgz", - "integrity": "sha512-5SsIRtJy9bf1ErAOiFMFzl64Ex9X5V7bnJ+WlFMb+zmP459OSWCEG7b0ERZ+PEU7xPt4OG3RHbrp1LJlXxYTrw==", + "version": "4.40.1", + "resolved": "https://registry.npmjs.org/rollup/-/rollup-4.40.1.tgz", + "integrity": "sha512-C5VvvgCCyfyotVITIAv+4efVytl5F7wt+/I2i9q9GZcEXW9BP52YYOXC58igUi+LFZVHukErIIqQSWwv/M3WRw==", "dev": true, "license": "MIT", "dependencies": { @@ -6575,26 +6591,26 @@ "npm": ">=8.0.0" }, "optionalDependencies": { - "@rollup/rollup-android-arm-eabi": "4.38.0", - "@rollup/rollup-android-arm64": "4.38.0", - "@rollup/rollup-darwin-arm64": "4.38.0", - "@rollup/rollup-darwin-x64": "4.38.0", - "@rollup/rollup-freebsd-arm64": "4.38.0", - "@rollup/rollup-freebsd-x64": "4.38.0", - "@rollup/rollup-linux-arm-gnueabihf": "4.38.0", - "@rollup/rollup-linux-arm-musleabihf": "4.38.0", - "@rollup/rollup-linux-arm64-gnu": "4.38.0", - "@rollup/rollup-linux-arm64-musl": "4.38.0", - "@rollup/rollup-linux-loongarch64-gnu": "4.38.0", - "@rollup/rollup-linux-powerpc64le-gnu": "4.38.0", - "@rollup/rollup-linux-riscv64-gnu": "4.38.0", - "@rollup/rollup-linux-riscv64-musl": "4.38.0", - "@rollup/rollup-linux-s390x-gnu": "4.38.0", - "@rollup/rollup-linux-x64-gnu": "4.38.0", - "@rollup/rollup-linux-x64-musl": "4.38.0", - "@rollup/rollup-win32-arm64-msvc": "4.38.0", - "@rollup/rollup-win32-ia32-msvc": "4.38.0", - "@rollup/rollup-win32-x64-msvc": "4.38.0", + "@rollup/rollup-android-arm-eabi": "4.40.1", + "@rollup/rollup-android-arm64": "4.40.1", + "@rollup/rollup-darwin-arm64": "4.40.1", + "@rollup/rollup-darwin-x64": "4.40.1", + "@rollup/rollup-freebsd-arm64": "4.40.1", + "@rollup/rollup-freebsd-x64": "4.40.1", + "@rollup/rollup-linux-arm-gnueabihf": "4.40.1", + "@rollup/rollup-linux-arm-musleabihf": "4.40.1", + "@rollup/rollup-linux-arm64-gnu": "4.40.1", + "@rollup/rollup-linux-arm64-musl": "4.40.1", + "@rollup/rollup-linux-loongarch64-gnu": "4.40.1", + "@rollup/rollup-linux-powerpc64le-gnu": "4.40.1", + "@rollup/rollup-linux-riscv64-gnu": "4.40.1", + "@rollup/rollup-linux-riscv64-musl": "4.40.1", + "@rollup/rollup-linux-s390x-gnu": "4.40.1", + "@rollup/rollup-linux-x64-gnu": "4.40.1", + "@rollup/rollup-linux-x64-musl": "4.40.1", + "@rollup/rollup-win32-arm64-msvc": "4.40.1", + "@rollup/rollup-win32-ia32-msvc": "4.40.1", + "@rollup/rollup-win32-x64-msvc": "4.40.1", "fsevents": "~2.3.2" } }, @@ -7043,6 +7059,23 @@ "dev": true, "license": "MIT" }, + "node_modules/tinyglobby": { + "version": "0.2.13", + "resolved": "https://registry.npmjs.org/tinyglobby/-/tinyglobby-0.2.13.tgz", + "integrity": "sha512-mEwzpUgrLySlveBwEVDMKk5B57bhLPYovRfPAXD5gA/98Opn0rCDj3GtLwFvCvH5RK9uPCExUROW5NjDwvqkxw==", + "dev": true, + "license": "MIT", + "dependencies": { + "fdir": "^6.4.4", + "picomatch": "^4.0.2" + }, + "engines": { + "node": ">=12.0.0" + }, + "funding": { + "url": "https://github.com/sponsors/SuperchupuDev" + } + }, "node_modules/tinypool": { "version": "1.0.2", "resolved": "https://registry.npmjs.org/tinypool/-/tinypool-1.0.2.tgz", @@ -7413,15 +7446,18 @@ "integrity": "sha512-EPD5q1uXyFxJpCrLnCc1nHnq3gOa6DZBocAIiI2TaSCA7VCJ1UJDMagCzIkXNsUYfD1daK//LTEQ8xiIbrHtcw==" }, "node_modules/vite": { - "version": "6.2.4", - "resolved": "https://registry.npmjs.org/vite/-/vite-6.2.4.tgz", - "integrity": "sha512-veHMSew8CcRzhL5o8ONjy8gkfmFJAd5Ac16oxBUjlwgX3Gq2Wqr+qNC3TjPIpy7TPV/KporLga5GT9HqdrCizw==", + "version": "6.3.4", + "resolved": "https://registry.npmjs.org/vite/-/vite-6.3.4.tgz", + "integrity": "sha512-BiReIiMS2fyFqbqNT/Qqt4CVITDU9M9vE+DKcVAsB+ZV0wvTKd+3hMbkpxz1b+NmEDMegpVbisKiAZOnvO92Sw==", "dev": true, "license": "MIT", "dependencies": { "esbuild": "^0.25.0", + "fdir": "^6.4.4", + "picomatch": "^4.0.2", "postcss": "^8.5.3", - "rollup": "^4.30.1" + "rollup": "^4.34.9", + "tinyglobby": "^0.2.13" }, "bin": { "vite": "bin/vite.js" diff --git a/package.json b/package.json index 341bca80c2e..715deefbe32 100644 --- a/package.json +++ b/package.json @@ -1,7 +1,7 @@ { "name": "pokemon-rogue-battle", "private": true, - "version": "1.8.5", + "version": "1.9.3", "type": "module", "scripts": { "start": "vite", @@ -9,7 +9,7 @@ "build": "vite build", "build:beta": "vite build --mode beta", "preview": "vite preview", - "test": "vitest run", + "test": "vitest run --no-isolate", "test:cov": "vitest run --coverage --no-isolate", "test:watch": "vitest watch --coverage --no-isolate", "test:silent": "vitest run --silent --no-isolate", @@ -48,7 +48,7 @@ "typedoc": "^0.28.1", "typescript": "^5.8.2", "typescript-eslint": "^8.28.0", - "vite": "^6.2.0", + "vite": "^6.3.4", "vite-tsconfig-paths": "^5.1.4", "vitest": "^3.0.9", "vitest-canvas-mock": "^0.3.3" diff --git a/public/battle-anims/psychic.json b/public/battle-anims/psychic.json index 5ad4898de5a..72161ff9aff 100644 --- a/public/battle-anims/psychic.json +++ b/public/battle-anims/psychic.json @@ -1,6 +1,6 @@ { "id": 94, - "graphic": "PRAS- PsychicBG", + "graphic": "PRAS- Psychic BG", "frames": [ [ { diff --git a/public/exp-sprites.json b/public/exp-sprites.json index d6c8534e008..2595b5a7983 100644 --- a/public/exp-sprites.json +++ b/public/exp-sprites.json @@ -613,12 +613,6 @@ "780", "781", "781", - "782", - "782", - "783", - "783", - "784", - "784", "785", "785", "786", @@ -1733,12 +1727,6 @@ "780b", "781b", "781b", - "782b", - "782b", - "783b", - "783b", - "784b", - "784b", "785b", "785b", "786b", @@ -2853,12 +2841,6 @@ "780sb", "781sb", "781sb", - "782sb", - "782sb", - "783sb", - "783sb", - "784sb", - "784sb", "785sb", "785sb", "786sb", @@ -3978,12 +3960,6 @@ "780s", "781s", "781s", - "782s", - "782s", - "783s", - "783s", - "784s", - "784s", "785s", "785s", "786s", diff --git a/public/images/events/spr25event-de.png b/public/images/events/spr25event-de.png new file mode 100644 index 00000000000..1ccd9557460 Binary files /dev/null and b/public/images/events/spr25event-de.png differ diff --git a/public/images/events/spr25event-en.png b/public/images/events/spr25event-en.png new file mode 100644 index 00000000000..0e73f9247e3 Binary files /dev/null and b/public/images/events/spr25event-en.png differ diff --git a/public/images/events/spr25event-es-ES.png b/public/images/events/spr25event-es-ES.png new file mode 100644 index 00000000000..137f1c6e743 Binary files /dev/null and b/public/images/events/spr25event-es-ES.png differ diff --git a/public/images/events/spr25event-es-MX.png b/public/images/events/spr25event-es-MX.png new file mode 100644 index 00000000000..137f1c6e743 Binary files /dev/null and b/public/images/events/spr25event-es-MX.png differ diff --git a/public/images/events/spr25event-fr.png b/public/images/events/spr25event-fr.png new file mode 100644 index 00000000000..7730e16d4a3 Binary files /dev/null and b/public/images/events/spr25event-fr.png differ diff --git a/public/images/events/spr25event-it.png b/public/images/events/spr25event-it.png new file mode 100644 index 00000000000..2664b4367cc Binary files /dev/null and b/public/images/events/spr25event-it.png differ diff --git a/public/images/events/spr25event-ja.png b/public/images/events/spr25event-ja.png new file mode 100644 index 00000000000..90b02af8050 Binary files /dev/null and b/public/images/events/spr25event-ja.png differ diff --git a/public/images/events/spr25event-ko.png b/public/images/events/spr25event-ko.png new file mode 100644 index 00000000000..a8fe279617a Binary files /dev/null and b/public/images/events/spr25event-ko.png differ diff --git a/public/images/events/spr25event-pt-BR.png b/public/images/events/spr25event-pt-BR.png new file mode 100644 index 00000000000..ae195fecc97 Binary files /dev/null and b/public/images/events/spr25event-pt-BR.png differ diff --git a/public/images/events/spr25event-zh-CN.png b/public/images/events/spr25event-zh-CN.png new file mode 100644 index 00000000000..1d8ad35c166 Binary files /dev/null and b/public/images/events/spr25event-zh-CN.png differ diff --git a/public/images/items.json b/public/images/items.json index 5848b02dd6a..4312f2a58c4 100644 --- a/public/images/items.json +++ b/public/images/items.json @@ -4,139 +4,13 @@ "image": "items.png", "format": "RGBA8888", "size": { - "w": 435, - "h": 435 + "w": 432, + "h": 432 }, "scale": 1, "frames": [ { - "filename": "relic_gold", - "rotated": false, - "trimmed": true, - "sourceSize": { - "w": 32, - "h": 32 - }, - "spriteSourceSize": { - "x": 9, - "y": 11, - "w": 15, - "h": 11 - }, - "frame": { - "x": 0, - "y": 0, - "w": 15, - "h": 11 - } - }, - { - "filename": "ability_capsule", - "rotated": false, - "trimmed": true, - "sourceSize": { - "w": 32, - "h": 32 - }, - "spriteSourceSize": { - "x": 4, - "y": 9, - "w": 24, - "h": 14 - }, - "frame": { - "x": 15, - "y": 0, - "w": 24, - "h": 14 - } - }, - { - "filename": "candy_overlay", - "rotated": false, - "trimmed": true, - "sourceSize": { - "w": 32, - "h": 32 - }, - "spriteSourceSize": { - "x": 8, - "y": 12, - "w": 16, - "h": 15 - }, - "frame": { - "x": 39, - "y": 0, - "w": 16, - "h": 15 - } - }, - { - "filename": "eviolite", - "rotated": false, - "trimmed": true, - "sourceSize": { - "w": 32, - "h": 32 - }, - "spriteSourceSize": { - "x": 8, - "y": 8, - "w": 15, - "h": 15 - }, - "frame": { - "x": 55, - "y": 0, - "w": 15, - "h": 15 - } - }, - { - "filename": "prism_scale", - "rotated": false, - "trimmed": true, - "sourceSize": { - "w": 32, - "h": 32 - }, - "spriteSourceSize": { - "x": 9, - "y": 8, - "w": 15, - "h": 15 - }, - "frame": { - "x": 70, - "y": 0, - "w": 15, - "h": 15 - } - }, - { - "filename": "silver_powder", - "rotated": false, - "trimmed": true, - "sourceSize": { - "w": 32, - "h": 32 - }, - "spriteSourceSize": { - "x": 4, - "y": 11, - "w": 24, - "h": 15 - }, - "frame": { - "x": 85, - "y": 0, - "w": 24, - "h": 15 - } - }, - { - "filename": "ultranecrozium_z", + "filename": "galarica_cuff", "rotated": false, "trimmed": true, "sourceSize": { @@ -145,7848 +19,15 @@ }, "spriteSourceSize": { "x": 1, - "y": 9, - "w": 30, - "h": 15 - }, - "frame": { - "x": 109, - "y": 0, - "w": 30, - "h": 15 - } - }, - { - "filename": "abomasite", - "rotated": false, - "trimmed": true, - "sourceSize": { - "w": 32, - "h": 32 - }, - "spriteSourceSize": { - "x": 8, - "y": 8, - "w": 16, - "h": 16 - }, - "frame": { - "x": 139, - "y": 0, - "w": 16, - "h": 16 - } - }, - { - "filename": "absolite", - "rotated": false, - "trimmed": true, - "sourceSize": { - "w": 32, - "h": 32 - }, - "spriteSourceSize": { - "x": 8, - "y": 8, - "w": 16, - "h": 16 - }, - "frame": { - "x": 155, - "y": 0, - "w": 16, - "h": 16 - } - }, - { - "filename": "aerodactylite", - "rotated": false, - "trimmed": true, - "sourceSize": { - "w": 32, - "h": 32 - }, - "spriteSourceSize": { - "x": 8, - "y": 8, - "w": 16, - "h": 16 - }, - "frame": { - "x": 171, - "y": 0, - "w": 16, - "h": 16 - } - }, - { - "filename": "aggronite", - "rotated": false, - "trimmed": true, - "sourceSize": { - "w": 32, - "h": 32 - }, - "spriteSourceSize": { - "x": 8, - "y": 8, - "w": 16, - "h": 16 - }, - "frame": { - "x": 187, - "y": 0, - "w": 16, - "h": 16 - } - }, - { - "filename": "alakazite", - "rotated": false, - "trimmed": true, - "sourceSize": { - "w": 32, - "h": 32 - }, - "spriteSourceSize": { - "x": 8, - "y": 8, - "w": 16, - "h": 16 - }, - "frame": { - "x": 203, - "y": 0, - "w": 16, - "h": 16 - } - }, - { - "filename": "altarianite", - "rotated": false, - "trimmed": true, - "sourceSize": { - "w": 32, - "h": 32 - }, - "spriteSourceSize": { - "x": 8, - "y": 8, - "w": 16, - "h": 16 - }, - "frame": { - "x": 219, - "y": 0, - "w": 16, - "h": 16 - } - }, - { - "filename": "ampharosite", - "rotated": false, - "trimmed": true, - "sourceSize": { - "w": 32, - "h": 32 - }, - "spriteSourceSize": { - "x": 8, - "y": 8, - "w": 16, - "h": 16 - }, - "frame": { - "x": 235, - "y": 0, - "w": 16, - "h": 16 - } - }, - { - "filename": "audinite", - "rotated": false, - "trimmed": true, - "sourceSize": { - "w": 32, - "h": 32 - }, - "spriteSourceSize": { - "x": 8, - "y": 8, - "w": 16, - "h": 16 - }, - "frame": { - "x": 251, - "y": 0, - "w": 16, - "h": 16 - } - }, - { - "filename": "banettite", - "rotated": false, - "trimmed": true, - "sourceSize": { - "w": 32, - "h": 32 - }, - "spriteSourceSize": { - "x": 8, - "y": 8, - "w": 16, - "h": 16 - }, - "frame": { - "x": 267, - "y": 0, - "w": 16, - "h": 16 - } - }, - { - "filename": "beedrillite", - "rotated": false, - "trimmed": true, - "sourceSize": { - "w": 32, - "h": 32 - }, - "spriteSourceSize": { - "x": 8, - "y": 8, - "w": 16, - "h": 16 - }, - "frame": { - "x": 283, - "y": 0, - "w": 16, - "h": 16 - } - }, - { - "filename": "blastoisinite", - "rotated": false, - "trimmed": true, - "sourceSize": { - "w": 32, - "h": 32 - }, - "spriteSourceSize": { - "x": 8, - "y": 8, - "w": 16, - "h": 16 - }, - "frame": { - "x": 299, - "y": 0, - "w": 16, - "h": 16 - } - }, - { - "filename": "blazikenite", - "rotated": false, - "trimmed": true, - "sourceSize": { - "w": 32, - "h": 32 - }, - "spriteSourceSize": { - "x": 8, - "y": 8, - "w": 16, - "h": 16 - }, - "frame": { - "x": 315, - "y": 0, - "w": 16, - "h": 16 - } - }, - { - "filename": "cameruptite", - "rotated": false, - "trimmed": true, - "sourceSize": { - "w": 32, - "h": 32 - }, - "spriteSourceSize": { - "x": 8, - "y": 8, - "w": 16, - "h": 16 - }, - "frame": { - "x": 331, - "y": 0, - "w": 16, - "h": 16 - } - }, - { - "filename": "charizardite_x", - "rotated": false, - "trimmed": true, - "sourceSize": { - "w": 32, - "h": 32 - }, - "spriteSourceSize": { - "x": 8, - "y": 8, - "w": 16, - "h": 16 - }, - "frame": { - "x": 347, - "y": 0, - "w": 16, - "h": 16 - } - }, - { - "filename": "charizardite_y", - "rotated": false, - "trimmed": true, - "sourceSize": { - "w": 32, - "h": 32 - }, - "spriteSourceSize": { - "x": 8, - "y": 8, - "w": 16, - "h": 16 - }, - "frame": { - "x": 363, - "y": 0, - "w": 16, - "h": 16 - } - }, - { - "filename": "diancite", - "rotated": false, - "trimmed": true, - "sourceSize": { - "w": 32, - "h": 32 - }, - "spriteSourceSize": { - "x": 8, - "y": 8, - "w": 16, - "h": 16 - }, - "frame": { - "x": 379, - "y": 0, - "w": 16, - "h": 16 - } - }, - { - "filename": "galladite", - "rotated": false, - "trimmed": true, - "sourceSize": { - "w": 32, - "h": 32 - }, - "spriteSourceSize": { - "x": 8, - "y": 8, - "w": 16, - "h": 16 - }, - "frame": { - "x": 395, - "y": 0, - "w": 16, - "h": 16 - } - }, - { - "filename": "garchompite", - "rotated": false, - "trimmed": true, - "sourceSize": { - "w": 32, - "h": 32 - }, - "spriteSourceSize": { - "x": 8, - "y": 8, - "w": 16, - "h": 16 - }, - "frame": { - "x": 411, - "y": 0, - "w": 16, - "h": 16 - } - }, - { - "filename": "revive", - "rotated": false, - "trimmed": true, - "sourceSize": { - "w": 32, - "h": 32 - }, - "spriteSourceSize": { - "x": 10, - "y": 8, - "w": 12, - "h": 17 - }, - "frame": { - "x": 0, - "y": 11, - "w": 12, - "h": 17 - } - }, - { - "filename": "gardevoirite", - "rotated": false, - "trimmed": true, - "sourceSize": { - "w": 32, - "h": 32 - }, - "spriteSourceSize": { - "x": 8, - "y": 8, - "w": 16, - "h": 16 - }, - "frame": { - "x": 12, - "y": 14, - "w": 16, - "h": 16 - } - }, - { - "filename": "gengarite", - "rotated": false, - "trimmed": true, - "sourceSize": { - "w": 32, - "h": 32 - }, - "spriteSourceSize": { - "x": 8, - "y": 8, - "w": 16, - "h": 16 - }, - "frame": { - "x": 28, - "y": 15, - "w": 16, - "h": 16 - } - }, - { - "filename": "glalitite", - "rotated": false, - "trimmed": true, - "sourceSize": { - "w": 32, - "h": 32 - }, - "spriteSourceSize": { - "x": 8, - "y": 8, - "w": 16, - "h": 16 - }, - "frame": { - "x": 44, - "y": 15, - "w": 16, - "h": 16 - } - }, - { - "filename": "gyaradosite", - "rotated": false, - "trimmed": true, - "sourceSize": { - "w": 32, - "h": 32 - }, - "spriteSourceSize": { - "x": 8, - "y": 8, - "w": 16, - "h": 16 - }, - "frame": { - "x": 60, - "y": 15, - "w": 16, - "h": 16 - } - }, - { - "filename": "heracronite", - "rotated": false, - "trimmed": true, - "sourceSize": { - "w": 32, - "h": 32 - }, - "spriteSourceSize": { - "x": 8, - "y": 8, - "w": 16, - "h": 16 - }, - "frame": { - "x": 76, - "y": 15, - "w": 16, - "h": 16 - } - }, - { - "filename": "houndoominite", - "rotated": false, - "trimmed": true, - "sourceSize": { - "w": 32, - "h": 32 - }, - "spriteSourceSize": { - "x": 8, - "y": 8, - "w": 16, - "h": 16 - }, - "frame": { - "x": 92, - "y": 15, - "w": 16, - "h": 16 - } - }, - { - "filename": "kangaskhanite", - "rotated": false, - "trimmed": true, - "sourceSize": { - "w": 32, - "h": 32 - }, - "spriteSourceSize": { - "x": 8, - "y": 8, - "w": 16, - "h": 16 - }, - "frame": { - "x": 108, - "y": 15, - "w": 16, - "h": 16 - } - }, - { - "filename": "latiasite", - "rotated": false, - "trimmed": true, - "sourceSize": { - "w": 32, - "h": 32 - }, - "spriteSourceSize": { - "x": 8, - "y": 8, - "w": 16, - "h": 16 - }, - "frame": { - "x": 124, - "y": 16, - "w": 16, - "h": 16 - } - }, - { - "filename": "latiosite", - "rotated": false, - "trimmed": true, - "sourceSize": { - "w": 32, - "h": 32 - }, - "spriteSourceSize": { - "x": 8, - "y": 8, - "w": 16, - "h": 16 - }, - "frame": { - "x": 140, - "y": 16, - "w": 16, - "h": 16 - } - }, - { - "filename": "lopunnite", - "rotated": false, - "trimmed": true, - "sourceSize": { - "w": 32, - "h": 32 - }, - "spriteSourceSize": { - "x": 8, - "y": 8, - "w": 16, - "h": 16 - }, - "frame": { - "x": 156, - "y": 16, - "w": 16, - "h": 16 - } - }, - { - "filename": "lucarionite", - "rotated": false, - "trimmed": true, - "sourceSize": { - "w": 32, - "h": 32 - }, - "spriteSourceSize": { - "x": 8, - "y": 8, - "w": 16, - "h": 16 - }, - "frame": { - "x": 172, - "y": 16, - "w": 16, - "h": 16 - } - }, - { - "filename": "manectite", - "rotated": false, - "trimmed": true, - "sourceSize": { - "w": 32, - "h": 32 - }, - "spriteSourceSize": { - "x": 8, - "y": 8, - "w": 16, - "h": 16 - }, - "frame": { - "x": 188, - "y": 16, - "w": 16, - "h": 16 - } - }, - { - "filename": "mawilite", - "rotated": false, - "trimmed": true, - "sourceSize": { - "w": 32, - "h": 32 - }, - "spriteSourceSize": { - "x": 8, - "y": 8, - "w": 16, - "h": 16 - }, - "frame": { - "x": 204, - "y": 16, - "w": 16, - "h": 16 - } - }, - { - "filename": "medichamite", - "rotated": false, - "trimmed": true, - "sourceSize": { - "w": 32, - "h": 32 - }, - "spriteSourceSize": { - "x": 8, - "y": 8, - "w": 16, - "h": 16 - }, - "frame": { - "x": 220, - "y": 16, - "w": 16, - "h": 16 - } - }, - { - "filename": "mega_bracelet", - "rotated": false, - "trimmed": true, - "sourceSize": { - "w": 32, - "h": 32 - }, - "spriteSourceSize": { - "x": 6, - "y": 8, - "w": 20, - "h": 16 - }, - "frame": { - "x": 236, - "y": 16, - "w": 20, - "h": 16 - } - }, - { - "filename": "metagrossite", - "rotated": false, - "trimmed": true, - "sourceSize": { - "w": 32, - "h": 32 - }, - "spriteSourceSize": { - "x": 8, - "y": 8, - "w": 16, - "h": 16 - }, - "frame": { - "x": 256, - "y": 16, - "w": 16, - "h": 16 - } - }, - { - "filename": "mewtwonite_x", - "rotated": false, - "trimmed": true, - "sourceSize": { - "w": 32, - "h": 32 - }, - "spriteSourceSize": { - "x": 8, - "y": 8, - "w": 16, - "h": 16 - }, - "frame": { - "x": 272, - "y": 16, - "w": 16, - "h": 16 - } - }, - { - "filename": "mewtwonite_y", - "rotated": false, - "trimmed": true, - "sourceSize": { - "w": 32, - "h": 32 - }, - "spriteSourceSize": { - "x": 8, - "y": 8, - "w": 16, - "h": 16 - }, - "frame": { - "x": 288, - "y": 16, - "w": 16, - "h": 16 - } - }, - { - "filename": "nugget", - "rotated": false, - "trimmed": true, - "sourceSize": { - "w": 32, - "h": 32 - }, - "spriteSourceSize": { - "x": 8, - "y": 8, - "w": 16, - "h": 16 - }, - "frame": { - "x": 304, - "y": 16, - "w": 16, - "h": 16 - } - }, - { - "filename": "pidgeotite", - "rotated": false, - "trimmed": true, - "sourceSize": { - "w": 32, - "h": 32 - }, - "spriteSourceSize": { - "x": 8, - "y": 8, - "w": 16, - "h": 16 - }, - "frame": { - "x": 320, - "y": 16, - "w": 16, - "h": 16 - } - }, - { - "filename": "pinsirite", - "rotated": false, - "trimmed": true, - "sourceSize": { - "w": 32, - "h": 32 - }, - "spriteSourceSize": { - "x": 8, - "y": 8, - "w": 16, - "h": 16 - }, - "frame": { - "x": 336, - "y": 16, - "w": 16, - "h": 16 - } - }, - { - "filename": "rayquazite", - "rotated": false, - "trimmed": true, - "sourceSize": { - "w": 32, - "h": 32 - }, - "spriteSourceSize": { - "x": 8, - "y": 8, - "w": 16, - "h": 16 - }, - "frame": { - "x": 352, - "y": 16, - "w": 16, - "h": 16 - } - }, - { - "filename": "relic_band", - "rotated": false, - "trimmed": true, - "sourceSize": { - "w": 32, - "h": 32 - }, - "spriteSourceSize": { - "x": 7, - "y": 9, - "w": 17, - "h": 16 - }, - "frame": { - "x": 368, - "y": 16, - "w": 17, - "h": 16 - } - }, - { - "filename": "sablenite", - "rotated": false, - "trimmed": true, - "sourceSize": { - "w": 32, - "h": 32 - }, - "spriteSourceSize": { - "x": 8, - "y": 8, - "w": 16, - "h": 16 - }, - "frame": { - "x": 385, - "y": 16, - "w": 16, - "h": 16 - } - }, - { - "filename": "salamencite", - "rotated": false, - "trimmed": true, - "sourceSize": { - "w": 32, - "h": 32 - }, - "spriteSourceSize": { - "x": 8, - "y": 8, - "w": 16, - "h": 16 - }, - "frame": { - "x": 401, - "y": 16, - "w": 16, - "h": 16 - } - }, - { - "filename": "sceptilite", - "rotated": false, - "trimmed": true, - "sourceSize": { - "w": 32, - "h": 32 - }, - "spriteSourceSize": { - "x": 8, - "y": 8, - "w": 16, - "h": 16 - }, - "frame": { - "x": 417, - "y": 16, - "w": 16, - "h": 16 - } - }, - { - "filename": "scizorite", - "rotated": false, - "trimmed": true, - "sourceSize": { - "w": 32, - "h": 32 - }, - "spriteSourceSize": { - "x": 8, - "y": 8, - "w": 16, - "h": 16 - }, - "frame": { - "x": 0, - "y": 30, - "w": 16, - "h": 16 - } - }, - { - "filename": "sharpedonite", - "rotated": false, - "trimmed": true, - "sourceSize": { - "w": 32, - "h": 32 - }, - "spriteSourceSize": { - "x": 8, - "y": 8, - "w": 16, - "h": 16 - }, - "frame": { - "x": 16, - "y": 31, - "w": 16, - "h": 16 - } - }, - { - "filename": "slowbronite", - "rotated": false, - "trimmed": true, - "sourceSize": { - "w": 32, - "h": 32 - }, - "spriteSourceSize": { - "x": 8, - "y": 8, - "w": 16, - "h": 16 - }, - "frame": { - "x": 32, - "y": 31, - "w": 16, - "h": 16 - } - }, - { - "filename": "soul_dew", - "rotated": false, - "trimmed": true, - "sourceSize": { - "w": 32, - "h": 32 - }, - "spriteSourceSize": { - "x": 8, - "y": 8, - "w": 16, - "h": 16 - }, - "frame": { - "x": 48, - "y": 31, - "w": 16, - "h": 16 - } - }, - { - "filename": "steelixite", - "rotated": false, - "trimmed": true, - "sourceSize": { - "w": 32, - "h": 32 - }, - "spriteSourceSize": { - "x": 8, - "y": 8, - "w": 16, - "h": 16 - }, - "frame": { - "x": 64, - "y": 31, - "w": 16, - "h": 16 - } - }, - { - "filename": "strawberry_sweet", - "rotated": false, - "trimmed": true, - "sourceSize": { - "w": 32, - "h": 32 - }, - "spriteSourceSize": { - "x": 9, - "y": 7, - "w": 16, - "h": 16 - }, - "frame": { - "x": 80, - "y": 31, - "w": 16, - "h": 16 - } - }, - { - "filename": "swampertite", - "rotated": false, - "trimmed": true, - "sourceSize": { - "w": 32, - "h": 32 - }, - "spriteSourceSize": { - "x": 8, - "y": 8, - "w": 16, - "h": 16 - }, - "frame": { - "x": 96, - "y": 31, - "w": 16, - "h": 16 - } - }, - { - "filename": "tyranitarite", - "rotated": false, - "trimmed": true, - "sourceSize": { - "w": 32, - "h": 32 - }, - "spriteSourceSize": { - "x": 8, - "y": 8, - "w": 16, - "h": 16 - }, - "frame": { - "x": 112, - "y": 32, - "w": 16, - "h": 16 - } - }, - { - "filename": "venusaurite", - "rotated": false, - "trimmed": true, - "sourceSize": { - "w": 32, - "h": 32 - }, - "spriteSourceSize": { - "x": 8, - "y": 8, - "w": 16, - "h": 16 - }, - "frame": { - "x": 128, - "y": 32, - "w": 16, - "h": 16 - } - }, - { - "filename": "black_glasses", - "rotated": false, - "trimmed": true, - "sourceSize": { - "w": 32, - "h": 32 - }, - "spriteSourceSize": { - "x": 4, - "y": 8, - "w": 23, - "h": 17 - }, - "frame": { - "x": 144, - "y": 32, - "w": 23, - "h": 17 - } - }, - { - "filename": "burn_drive", - "rotated": false, - "trimmed": true, - "sourceSize": { - "w": 32, - "h": 32 - }, - "spriteSourceSize": { - "x": 4, - "y": 8, - "w": 23, - "h": 17 - }, - "frame": { - "x": 167, - "y": 32, - "w": 23, - "h": 17 - } - }, - { - "filename": "chill_drive", - "rotated": false, - "trimmed": true, - "sourceSize": { - "w": 32, - "h": 32 - }, - "spriteSourceSize": { - "x": 4, - "y": 8, - "w": 23, - "h": 17 - }, - "frame": { - "x": 190, - "y": 32, - "w": 23, - "h": 17 - } - }, - { - "filename": "douse_drive", - "rotated": false, - "trimmed": true, - "sourceSize": { - "w": 32, - "h": 32 - }, - "spriteSourceSize": { - "x": 4, - "y": 8, - "w": 23, - "h": 17 - }, - "frame": { - "x": 213, - "y": 32, - "w": 23, - "h": 17 - } - }, - { - "filename": "everstone", - "rotated": false, - "trimmed": true, - "sourceSize": { - "w": 32, - "h": 32 - }, - "spriteSourceSize": { - "x": 6, - "y": 8, - "w": 20, - "h": 17 - }, - "frame": { - "x": 236, - "y": 32, - "w": 20, - "h": 17 - } - }, - { - "filename": "shock_drive", - "rotated": false, - "trimmed": true, - "sourceSize": { - "w": 32, - "h": 32 - }, - "spriteSourceSize": { - "x": 4, - "y": 8, - "w": 23, - "h": 17 - }, - "frame": { - "x": 256, - "y": 32, - "w": 23, - "h": 17 - } - }, - { - "filename": "wise_glasses", - "rotated": false, - "trimmed": true, - "sourceSize": { - "w": 32, - "h": 32 - }, - "spriteSourceSize": { - "x": 4, - "y": 8, - "w": 23, - "h": 17 - }, - "frame": { - "x": 279, - "y": 32, - "w": 23, - "h": 17 - } - }, - { - "filename": "baton", - "rotated": false, - "trimmed": true, - "sourceSize": { - "w": 32, - "h": 32 - }, - "spriteSourceSize": { - "x": 7, - "y": 7, - "w": 18, - "h": 18 - }, - "frame": { - "x": 302, - "y": 32, - "w": 18, - "h": 18 - } - }, - { - "filename": "candy", - "rotated": false, - "trimmed": true, - "sourceSize": { - "w": 32, - "h": 32 - }, - "spriteSourceSize": { - "x": 7, - "y": 11, - "w": 18, - "h": 18 - }, - "frame": { - "x": 320, - "y": 32, - "w": 18, - "h": 18 - } - }, - { - "filename": "choice_specs", - "rotated": false, - "trimmed": true, - "sourceSize": { - "w": 32, - "h": 32 - }, - "spriteSourceSize": { - "x": 4, - "y": 8, - "w": 24, - "h": 18 - }, - "frame": { - "x": 338, - "y": 32, - "w": 24, - "h": 18 - } - }, - { - "filename": "dark_stone", - "rotated": false, - "trimmed": true, - "sourceSize": { - "w": 32, - "h": 32 - }, - "spriteSourceSize": { - "x": 7, - "y": 7, - "w": 18, - "h": 18 - }, - "frame": { - "x": 362, - "y": 32, - "w": 18, - "h": 18 - } - }, - { - "filename": "dragon_scale", - "rotated": false, - "trimmed": true, - "sourceSize": { - "w": 32, - "h": 32 - }, - "spriteSourceSize": { - "x": 4, - "y": 8, - "w": 24, - "h": 18 - }, - "frame": { - "x": 380, - "y": 32, - "w": 24, - "h": 18 - } - }, - { - "filename": "flame_orb", - "rotated": false, - "trimmed": true, - "sourceSize": { - "w": 32, - "h": 32 - }, - "spriteSourceSize": { - "x": 7, - "y": 7, - "w": 18, - "h": 18 - }, - "frame": { - "x": 404, - "y": 32, - "w": 18, - "h": 18 - } - }, - { - "filename": "mystery_egg", - "rotated": false, - "trimmed": true, - "sourceSize": { - "w": 32, - "h": 32 - }, - "spriteSourceSize": { - "x": 8, - "y": 8, - "w": 16, - "h": 18 - }, - "frame": { - "x": 0, - "y": 46, - "w": 16, - "h": 18 - } - }, - { - "filename": "light_ball", - "rotated": false, - "trimmed": true, - "sourceSize": { - "w": 32, - "h": 32 - }, - "spriteSourceSize": { - "x": 7, - "y": 7, - "w": 18, - "h": 18 - }, - "frame": { - "x": 16, - "y": 47, - "w": 18, - "h": 18 - } - }, - { - "filename": "light_stone", - "rotated": false, - "trimmed": true, - "sourceSize": { - "w": 32, - "h": 32 - }, - "spriteSourceSize": { - "x": 7, - "y": 7, - "w": 18, - "h": 18 - }, - "frame": { - "x": 34, - "y": 47, - "w": 18, - "h": 18 - } - }, - { - "filename": "masterpiece_teacup", - "rotated": false, - "trimmed": true, - "sourceSize": { - "w": 32, - "h": 32 - }, - "spriteSourceSize": { - "x": 5, - "y": 7, - "w": 21, - "h": 18 - }, - "frame": { - "x": 52, - "y": 47, - "w": 21, - "h": 18 - } - }, - { - "filename": "old_gateau", - "rotated": false, - "trimmed": true, - "sourceSize": { - "w": 32, - "h": 32 - }, - "spriteSourceSize": { - "x": 6, - "y": 8, - "w": 21, - "h": 18 - }, - "frame": { - "x": 73, - "y": 47, - "w": 21, - "h": 18 - } - }, - { - "filename": "toxic_orb", - "rotated": false, - "trimmed": true, - "sourceSize": { - "w": 32, - "h": 32 - }, - "spriteSourceSize": { - "x": 7, - "y": 7, - "w": 18, - "h": 18 - }, - "frame": { - "x": 94, - "y": 47, - "w": 18, - "h": 18 - } - }, - { - "filename": "relic_crown", - "rotated": false, - "trimmed": true, - "sourceSize": { - "w": 32, - "h": 32 - }, - "spriteSourceSize": { - "x": 4, - "y": 7, - "w": 23, - "h": 18 - }, - "frame": { - "x": 112, - "y": 48, - "w": 23, - "h": 18 - } - }, - { - "filename": "sharp_meteorite", - "rotated": false, - "trimmed": true, - "sourceSize": { - "w": 32, - "h": 32 - }, - "spriteSourceSize": { - "x": 6, - "y": 8, - "w": 21, - "h": 18 - }, - "frame": { - "x": 135, - "y": 49, - "w": 21, - "h": 18 - } - }, - { - "filename": "unremarkable_teacup", - "rotated": false, - "trimmed": true, - "sourceSize": { - "w": 32, - "h": 32 - }, - "spriteSourceSize": { - "x": 5, - "y": 7, - "w": 21, - "h": 18 - }, - "frame": { - "x": 156, - "y": 49, - "w": 21, - "h": 18 - } - }, - { - "filename": "wl_ability_urge", - "rotated": false, - "trimmed": true, - "sourceSize": { - "w": 32, - "h": 32 - }, - "spriteSourceSize": { - "x": 6, - "y": 8, - "w": 20, - "h": 18 - }, - "frame": { - "x": 177, - "y": 49, - "w": 20, - "h": 18 - } - }, - { - "filename": "wl_antidote", - "rotated": false, - "trimmed": true, - "sourceSize": { - "w": 32, - "h": 32 - }, - "spriteSourceSize": { - "x": 6, - "y": 8, - "w": 20, - "h": 18 - }, - "frame": { - "x": 197, - "y": 49, - "w": 20, - "h": 18 - } - }, - { - "filename": "wl_awakening", - "rotated": false, - "trimmed": true, - "sourceSize": { - "w": 32, - "h": 32 - }, - "spriteSourceSize": { - "x": 6, - "y": 8, - "w": 20, - "h": 18 - }, - "frame": { - "x": 217, - "y": 49, - "w": 20, - "h": 18 - } - }, - { - "filename": "wl_burn_heal", - "rotated": false, - "trimmed": true, - "sourceSize": { - "w": 32, - "h": 32 - }, - "spriteSourceSize": { - "x": 6, - "y": 8, - "w": 20, - "h": 18 - }, - "frame": { - "x": 237, - "y": 49, - "w": 20, - "h": 18 - } - }, - { - "filename": "wl_custom_spliced", - "rotated": false, - "trimmed": true, - "sourceSize": { - "w": 32, - "h": 32 - }, - "spriteSourceSize": { - "x": 6, - "y": 8, - "w": 20, - "h": 18 - }, - "frame": { - "x": 257, - "y": 49, - "w": 20, - "h": 18 - } - }, - { - "filename": "wl_custom_thief", - "rotated": false, - "trimmed": true, - "sourceSize": { - "w": 32, - "h": 32 - }, - "spriteSourceSize": { - "x": 6, - "y": 8, - "w": 20, - "h": 18 - }, - "frame": { - "x": 277, - "y": 49, - "w": 20, - "h": 18 - } - }, - { - "filename": "wl_elixir", - "rotated": false, - "trimmed": true, - "sourceSize": { - "w": 32, - "h": 32 - }, - "spriteSourceSize": { - "x": 6, - "y": 8, - "w": 20, - "h": 18 - }, - "frame": { - "x": 297, - "y": 50, - "w": 20, - "h": 18 - } - }, - { - "filename": "wl_ether", - "rotated": false, - "trimmed": true, - "sourceSize": { - "w": 32, - "h": 32 - }, - "spriteSourceSize": { - "x": 6, - "y": 8, - "w": 20, - "h": 18 - }, - "frame": { - "x": 317, - "y": 50, - "w": 20, - "h": 18 - } - }, - { - "filename": "wl_full_heal", - "rotated": false, - "trimmed": true, - "sourceSize": { - "w": 32, - "h": 32 - }, - "spriteSourceSize": { - "x": 6, - "y": 8, - "w": 20, - "h": 18 - }, - "frame": { - "x": 337, - "y": 50, - "w": 20, - "h": 18 - } - }, - { - "filename": "wl_full_restore", - "rotated": false, - "trimmed": true, - "sourceSize": { - "w": 32, - "h": 32 - }, - "spriteSourceSize": { - "x": 6, - "y": 8, - "w": 20, - "h": 18 - }, - "frame": { - "x": 357, - "y": 50, - "w": 20, - "h": 18 - } - }, - { - "filename": "wl_guard_spec", - "rotated": false, - "trimmed": true, - "sourceSize": { - "w": 32, - "h": 32 - }, - "spriteSourceSize": { - "x": 6, - "y": 8, - "w": 20, - "h": 18 - }, - "frame": { - "x": 377, - "y": 50, - "w": 20, - "h": 18 - } - }, - { - "filename": "wl_hyper_potion", - "rotated": false, - "trimmed": true, - "sourceSize": { - "w": 32, - "h": 32 - }, - "spriteSourceSize": { - "x": 6, - "y": 8, - "w": 20, - "h": 18 - }, - "frame": { - "x": 397, - "y": 50, - "w": 20, - "h": 18 - } - }, - { - "filename": "oval_stone", - "rotated": false, - "trimmed": true, - "sourceSize": { - "w": 32, - "h": 32 - }, - "spriteSourceSize": { - "x": 7, - "y": 7, - "w": 18, - "h": 19 - }, - "frame": { - "x": 417, - "y": 50, - "w": 18, - "h": 19 - } - }, - { - "filename": "wl_ice_heal", - "rotated": false, - "trimmed": true, - "sourceSize": { - "w": 32, - "h": 32 - }, - "spriteSourceSize": { - "x": 6, - "y": 8, - "w": 20, - "h": 18 - }, - "frame": { - "x": 0, - "y": 65, - "w": 20, - "h": 18 - } - }, - { - "filename": "wl_item_drop", - "rotated": false, - "trimmed": true, - "sourceSize": { - "w": 32, - "h": 32 - }, - "spriteSourceSize": { - "x": 6, - "y": 8, - "w": 20, - "h": 18 - }, - "frame": { - "x": 20, - "y": 65, - "w": 20, - "h": 18 - } - }, - { - "filename": "wl_item_urge", - "rotated": false, - "trimmed": true, - "sourceSize": { - "w": 32, - "h": 32 - }, - "spriteSourceSize": { - "x": 6, - "y": 8, - "w": 20, - "h": 18 - }, - "frame": { - "x": 40, - "y": 65, - "w": 20, - "h": 18 - } - }, - { - "filename": "wl_max_elixir", - "rotated": false, - "trimmed": true, - "sourceSize": { - "w": 32, - "h": 32 - }, - "spriteSourceSize": { - "x": 6, - "y": 8, - "w": 20, - "h": 18 - }, - "frame": { - "x": 60, - "y": 65, - "w": 20, - "h": 18 - } - }, - { - "filename": "wl_max_ether", - "rotated": false, - "trimmed": true, - "sourceSize": { - "w": 32, - "h": 32 - }, - "spriteSourceSize": { - "x": 6, - "y": 8, - "w": 20, - "h": 18 - }, - "frame": { - "x": 80, - "y": 65, - "w": 20, - "h": 18 - } - }, - { - "filename": "wl_max_potion", - "rotated": false, - "trimmed": true, - "sourceSize": { - "w": 32, - "h": 32 - }, - "spriteSourceSize": { - "x": 6, - "y": 8, - "w": 20, - "h": 18 - }, - "frame": { - "x": 100, - "y": 66, - "w": 20, - "h": 18 - } - }, - { - "filename": "wl_max_revive", - "rotated": false, - "trimmed": true, - "sourceSize": { - "w": 32, - "h": 32 - }, - "spriteSourceSize": { - "x": 6, - "y": 8, - "w": 20, - "h": 18 - }, - "frame": { - "x": 120, - "y": 67, - "w": 20, - "h": 18 - } - }, - { - "filename": "wl_paralyze_heal", - "rotated": false, - "trimmed": true, - "sourceSize": { - "w": 32, - "h": 32 - }, - "spriteSourceSize": { - "x": 6, - "y": 8, - "w": 20, - "h": 18 - }, - "frame": { - "x": 140, - "y": 67, - "w": 20, - "h": 18 - } - }, - { - "filename": "wl_potion", - "rotated": false, - "trimmed": true, - "sourceSize": { - "w": 32, - "h": 32 - }, - "spriteSourceSize": { - "x": 6, - "y": 8, - "w": 20, - "h": 18 - }, - "frame": { - "x": 160, - "y": 67, - "w": 20, - "h": 18 - } - }, - { - "filename": "wl_reset_urge", - "rotated": false, - "trimmed": true, - "sourceSize": { - "w": 32, - "h": 32 - }, - "spriteSourceSize": { - "x": 6, - "y": 8, - "w": 20, - "h": 18 - }, - "frame": { - "x": 180, - "y": 67, - "w": 20, - "h": 18 - } - }, - { - "filename": "wl_revive", - "rotated": false, - "trimmed": true, - "sourceSize": { - "w": 32, - "h": 32 - }, - "spriteSourceSize": { - "x": 6, - "y": 8, - "w": 20, - "h": 18 - }, - "frame": { - "x": 200, - "y": 67, - "w": 20, - "h": 18 - } - }, - { - "filename": "wl_super_potion", - "rotated": false, - "trimmed": true, - "sourceSize": { - "w": 32, - "h": 32 - }, - "spriteSourceSize": { - "x": 6, - "y": 8, - "w": 20, - "h": 18 - }, - "frame": { - "x": 220, - "y": 67, - "w": 20, - "h": 18 - } - }, - { - "filename": "big_mushroom", - "rotated": false, - "trimmed": true, - "sourceSize": { - "w": 32, - "h": 32 - }, - "spriteSourceSize": { - "x": 6, - "y": 6, - "w": 19, - "h": 19 - }, - "frame": { - "x": 240, - "y": 67, - "w": 19, - "h": 19 - } - }, - { - "filename": "black_sludge", - "rotated": false, - "trimmed": true, - "sourceSize": { - "w": 32, - "h": 32 - }, - "spriteSourceSize": { - "x": 5, - "y": 7, - "w": 22, - "h": 19 - }, - "frame": { - "x": 259, - "y": 67, - "w": 22, - "h": 19 - } - }, - { - "filename": "blunder_policy", - "rotated": false, - "trimmed": true, - "sourceSize": { - "w": 32, - "h": 32 - }, - "spriteSourceSize": { - "x": 5, - "y": 6, - "w": 22, - "h": 19 - }, - "frame": { - "x": 281, - "y": 68, - "w": 22, - "h": 19 - } - }, - { - "filename": "coupon", - "rotated": false, - "trimmed": true, - "sourceSize": { - "w": 32, - "h": 32 - }, - "spriteSourceSize": { - "x": 4, - "y": 7, - "w": 23, - "h": 19 - }, - "frame": { - "x": 303, - "y": 68, - "w": 23, - "h": 19 - } - }, - { - "filename": "dubious_disc", - "rotated": false, - "trimmed": true, - "sourceSize": { - "w": 32, - "h": 32 - }, - "spriteSourceSize": { - "x": 5, - "y": 7, - "w": 22, - "h": 19 - }, - "frame": { - "x": 326, - "y": 68, - "w": 22, - "h": 19 - } - }, - { - "filename": "golden_mystic_ticket", - "rotated": false, - "trimmed": true, - "sourceSize": { - "w": 32, - "h": 32 - }, - "spriteSourceSize": { - "x": 4, - "y": 7, - "w": 23, - "h": 19 - }, - "frame": { - "x": 348, - "y": 68, - "w": 23, - "h": 19 - } - }, - { - "filename": "lum_berry", - "rotated": false, - "trimmed": true, - "sourceSize": { - "w": 32, - "h": 32 - }, - "spriteSourceSize": { - "x": 6, - "y": 7, - "w": 20, - "h": 19 - }, - "frame": { - "x": 371, - "y": 68, - "w": 20, - "h": 19 - } - }, - { - "filename": "metal_alloy", - "rotated": false, - "trimmed": true, - "sourceSize": { - "w": 32, - "h": 32 - }, - "spriteSourceSize": { - "x": 6, - "y": 7, - "w": 21, - "h": 19 - }, - "frame": { - "x": 391, - "y": 68, - "w": 21, - "h": 19 - } - }, - { - "filename": "miracle_seed", - "rotated": false, - "trimmed": true, - "sourceSize": { - "w": 32, - "h": 32 - }, - "spriteSourceSize": { - "x": 6, - "y": 7, - "w": 19, - "h": 19 - }, - "frame": { - "x": 412, - "y": 69, - "w": 19, - "h": 19 - } - }, - { - "filename": "mystic_ticket", - "rotated": false, - "trimmed": true, - "sourceSize": { - "w": 32, - "h": 32 - }, - "spriteSourceSize": { - "x": 4, - "y": 7, - "w": 23, - "h": 19 - }, - "frame": { - "x": 0, - "y": 83, - "w": 23, - "h": 19 - } - }, - { - "filename": "pair_of_tickets", - "rotated": false, - "trimmed": true, - "sourceSize": { - "w": 32, - "h": 32 - }, - "spriteSourceSize": { - "x": 4, - "y": 7, - "w": 23, - "h": 19 - }, - "frame": { - "x": 23, - "y": 83, - "w": 23, - "h": 19 - } - }, - { - "filename": "power_herb", - "rotated": false, - "trimmed": true, - "sourceSize": { - "w": 32, - "h": 32 - }, - "spriteSourceSize": { - "x": 6, - "y": 7, - "w": 20, - "h": 19 - }, - "frame": { - "x": 46, - "y": 83, - "w": 20, - "h": 19 - } - }, - { - "filename": "razor_claw", - "rotated": false, - "trimmed": true, - "sourceSize": { - "w": 32, - "h": 32 - }, - "spriteSourceSize": { - "x": 6, - "y": 7, - "w": 20, - "h": 19 - }, - "frame": { - "x": 66, - "y": 83, - "w": 20, - "h": 19 - } - }, - { - "filename": "upgrade", - "rotated": false, - "trimmed": true, - "sourceSize": { - "w": 32, - "h": 32 - }, - "spriteSourceSize": { - "x": 5, - "y": 7, - "w": 22, - "h": 19 - }, - "frame": { - "x": 86, - "y": 84, - "w": 22, - "h": 19 - } - }, - { - "filename": "white_herb", - "rotated": false, - "trimmed": true, - "sourceSize": { - "w": 32, - "h": 32 - }, - "spriteSourceSize": { - "x": 6, - "y": 7, - "w": 20, - "h": 19 - }, - "frame": { - "x": 108, - "y": 85, - "w": 20, - "h": 19 - } - }, - { - "filename": "apicot_berry", - "rotated": false, - "trimmed": true, - "sourceSize": { - "w": 32, - "h": 32 - }, - "spriteSourceSize": { - "x": 6, - "y": 6, - "w": 19, - "h": 20 - }, - "frame": { - "x": 128, - "y": 85, - "w": 19, - "h": 20 - } - }, - { - "filename": "big_nugget", - "rotated": false, - "trimmed": true, - "sourceSize": { - "w": 32, - "h": 32 - }, - "spriteSourceSize": { - "x": 6, - "y": 6, - "w": 20, - "h": 20 - }, - "frame": { - "x": 147, - "y": 85, - "w": 20, - "h": 20 - } - }, - { - "filename": "binding_band", - "rotated": false, - "trimmed": true, - "sourceSize": { - "w": 32, - "h": 32 - }, - "spriteSourceSize": { - "x": 5, - "y": 6, - "w": 23, - "h": 20 - }, - "frame": { - "x": 167, - "y": 85, - "w": 23, - "h": 20 - } - }, - { - "filename": "blue_orb", - "rotated": false, - "trimmed": true, - "sourceSize": { - "w": 32, - "h": 32 - }, - "spriteSourceSize": { - "x": 6, - "y": 6, - "w": 20, - "h": 20 - }, - "frame": { - "x": 190, - "y": 85, - "w": 20, - "h": 20 - } - }, - { - "filename": "candy_jar", - "rotated": false, - "trimmed": true, - "sourceSize": { - "w": 32, - "h": 32 - }, - "spriteSourceSize": { - "x": 6, - "y": 6, - "w": 19, - "h": 20 - }, - "frame": { - "x": 210, - "y": 85, - "w": 19, - "h": 20 - } - }, - { - "filename": "chipped_pot", - "rotated": false, - "trimmed": true, - "sourceSize": { - "w": 32, - "h": 32 - }, - "spriteSourceSize": { - "x": 3, - "y": 6, - "w": 26, - "h": 20 - }, - "frame": { - "x": 229, - "y": 86, - "w": 26, - "h": 20 - } - }, - { - "filename": "cracked_pot", - "rotated": false, - "trimmed": true, - "sourceSize": { - "w": 32, - "h": 32 - }, - "spriteSourceSize": { - "x": 3, - "y": 6, - "w": 26, - "h": 20 - }, - "frame": { - "x": 255, - "y": 86, - "w": 26, - "h": 20 - } - }, - { - "filename": "deep_sea_scale", - "rotated": false, - "trimmed": true, - "sourceSize": { - "w": 32, - "h": 32 - }, - "spriteSourceSize": { - "x": 5, - "y": 6, - "w": 22, - "h": 20 - }, - "frame": { - "x": 281, - "y": 87, - "w": 22, - "h": 20 - } - }, - { - "filename": "fairy_feather", - "rotated": false, - "trimmed": true, - "sourceSize": { - "w": 32, - "h": 32 - }, - "spriteSourceSize": { - "x": 5, - "y": 7, - "w": 22, - "h": 20 - }, - "frame": { - "x": 303, - "y": 87, - "w": 22, - "h": 20 - } - }, - { - "filename": "gb", - "rotated": false, - "trimmed": true, - "sourceSize": { - "w": 32, - "h": 32 - }, - "spriteSourceSize": { - "x": 6, - "y": 6, - "w": 20, - "h": 20 - }, - "frame": { - "x": 325, - "y": 87, - "w": 20, - "h": 20 - } - }, - { - "filename": "golden_egg", - "rotated": false, - "trimmed": true, - "sourceSize": { - "w": 32, - "h": 32 - }, - "spriteSourceSize": { - "x": 7, - "y": 6, - "w": 17, - "h": 20 - }, - "frame": { - "x": 345, - "y": 87, - "w": 17, - "h": 20 - } - }, - { - "filename": "hard_stone", - "rotated": false, - "trimmed": true, - "sourceSize": { - "w": 32, - "h": 32 - }, - "spriteSourceSize": { - "x": 6, - "y": 6, - "w": 19, - "h": 20 - }, - "frame": { - "x": 362, - "y": 87, - "w": 19, - "h": 20 - } - }, - { - "filename": "icy_reins_of_unity", - "rotated": false, - "trimmed": true, - "sourceSize": { - "w": 32, - "h": 32 - }, - "spriteSourceSize": { - "x": 4, - "y": 7, - "w": 24, - "h": 20 - }, - "frame": { - "x": 381, - "y": 87, - "w": 24, - "h": 20 - } - }, - { - "filename": "legend_plate", - "rotated": false, - "trimmed": true, - "sourceSize": { - "w": 32, - "h": 32 - }, - "spriteSourceSize": { - "x": 3, - "y": 6, - "w": 25, - "h": 20 - }, - "frame": { - "x": 405, - "y": 88, - "w": 25, - "h": 20 - } - }, - { - "filename": "lucky_egg", - "rotated": false, - "trimmed": true, - "sourceSize": { - "w": 32, - "h": 32 - }, - "spriteSourceSize": { - "x": 7, - "y": 6, - "w": 17, - "h": 20 - }, - "frame": { - "x": 0, - "y": 102, - "w": 17, - "h": 20 - } - }, - { - "filename": "magnet", - "rotated": false, - "trimmed": true, - "sourceSize": { - "w": 32, - "h": 32 - }, - "spriteSourceSize": { - "x": 6, - "y": 6, - "w": 20, - "h": 20 - }, - "frame": { - "x": 17, - "y": 102, - "w": 20, - "h": 20 - } - }, - { - "filename": "malicious_armor", - "rotated": false, - "trimmed": true, - "sourceSize": { - "w": 32, - "h": 32 - }, - "spriteSourceSize": { - "x": 5, - "y": 6, - "w": 22, - "h": 20 - }, - "frame": { - "x": 37, - "y": 102, - "w": 22, - "h": 20 - } - }, - { - "filename": "mb", - "rotated": false, - "trimmed": true, - "sourceSize": { - "w": 32, - "h": 32 - }, - "spriteSourceSize": { - "x": 6, - "y": 6, - "w": 20, - "h": 20 - }, - "frame": { - "x": 59, - "y": 102, - "w": 20, - "h": 20 - } - }, - { - "filename": "metal_powder", - "rotated": false, - "trimmed": true, - "sourceSize": { - "w": 32, - "h": 32 - }, - "spriteSourceSize": { - "x": 4, - "y": 6, - "w": 24, - "h": 20 - }, - "frame": { - "x": 79, - "y": 103, - "w": 24, - "h": 20 - } - }, - { - "filename": "pb", - "rotated": false, - "trimmed": true, - "sourceSize": { - "w": 32, - "h": 32 - }, - "spriteSourceSize": { - "x": 6, - "y": 6, - "w": 20, - "h": 20 - }, - "frame": { - "x": 103, - "y": 104, - "w": 20, - "h": 20 - } - }, - { - "filename": "pb_gold", - "rotated": false, - "trimmed": true, - "sourceSize": { - "w": 32, - "h": 32 - }, - "spriteSourceSize": { - "x": 6, - "y": 6, - "w": 20, - "h": 20 - }, - "frame": { - "x": 123, - "y": 105, - "w": 20, - "h": 20 - } - }, - { - "filename": "pb_silver", - "rotated": false, - "trimmed": true, - "sourceSize": { - "w": 32, - "h": 32 - }, - "spriteSourceSize": { - "x": 6, - "y": 6, - "w": 20, - "h": 20 - }, - "frame": { - "x": 143, - "y": 105, - "w": 20, - "h": 20 - } - }, - { - "filename": "quick_powder", - "rotated": false, - "trimmed": true, - "sourceSize": { - "w": 32, - "h": 32 - }, - "spriteSourceSize": { - "x": 4, - "y": 6, - "w": 24, - "h": 20 - }, - "frame": { - "x": 163, - "y": 105, - "w": 24, - "h": 20 - } - }, - { - "filename": "razor_fang", - "rotated": false, - "trimmed": true, - "sourceSize": { - "w": 32, - "h": 32 - }, - "spriteSourceSize": { - "x": 7, - "y": 6, - "w": 18, - "h": 20 - }, - "frame": { - "x": 187, - "y": 105, - "w": 18, - "h": 20 - } - }, - { - "filename": "rb", - "rotated": false, - "trimmed": true, - "sourceSize": { - "w": 32, - "h": 32 - }, - "spriteSourceSize": { - "x": 6, - "y": 6, - "w": 20, - "h": 20 - }, - "frame": { - "x": 205, - "y": 105, - "w": 20, - "h": 20 - } - }, - { - "filename": "reviver_seed", - "rotated": false, - "trimmed": true, - "sourceSize": { - "w": 32, - "h": 32 - }, - "spriteSourceSize": { - "x": 5, - "y": 8, - "w": 23, - "h": 20 - }, - "frame": { - "x": 225, - "y": 106, - "w": 23, - "h": 20 - } - }, - { - "filename": "rusted_shield", - "rotated": false, - "trimmed": true, - "sourceSize": { - "w": 32, - "h": 32 - }, - "spriteSourceSize": { - "x": 4, - "y": 6, - "w": 24, - "h": 20 - }, - "frame": { - "x": 248, - "y": 106, - "w": 24, - "h": 20 - } - }, - { - "filename": "sacred_ash", - "rotated": false, - "trimmed": true, - "sourceSize": { - "w": 32, - "h": 32 - }, - "spriteSourceSize": { - "x": 4, - "y": 7, - "w": 24, - "h": 20 - }, - "frame": { - "x": 272, - "y": 107, - "w": 24, - "h": 20 - } - }, - { - "filename": "shadow_reins_of_unity", - "rotated": false, - "trimmed": true, - "sourceSize": { - "w": 32, - "h": 32 - }, - "spriteSourceSize": { - "x": 4, - "y": 7, - "w": 24, - "h": 20 - }, - "frame": { - "x": 296, - "y": 107, - "w": 24, - "h": 20 - } - }, - { - "filename": "shell_bell", - "rotated": false, - "trimmed": true, - "sourceSize": { - "w": 32, - "h": 32 - }, - "spriteSourceSize": { - "x": 5, - "y": 7, - "w": 23, - "h": 20 - }, - "frame": { - "x": 320, - "y": 107, - "w": 23, - "h": 20 - } - }, - { - "filename": "smooth_meteorite", - "rotated": false, - "trimmed": true, - "sourceSize": { - "w": 32, - "h": 32 - }, - "spriteSourceSize": { - "x": 7, - "y": 6, - "w": 20, - "h": 20 - }, - "frame": { - "x": 343, - "y": 107, - "w": 20, - "h": 20 - } - }, - { - "filename": "soft_sand", - "rotated": false, - "trimmed": true, - "sourceSize": { - "w": 32, - "h": 32 - }, - "spriteSourceSize": { - "x": 4, - "y": 7, - "w": 24, - "h": 20 - }, - "frame": { - "x": 363, - "y": 107, - "w": 24, - "h": 20 - } - }, - { - "filename": "strange_ball", - "rotated": false, - "trimmed": true, - "sourceSize": { - "w": 32, - "h": 32 - }, - "spriteSourceSize": { - "x": 6, - "y": 6, - "w": 20, - "h": 20 - }, - "frame": { - "x": 387, - "y": 108, - "w": 20, - "h": 20 - } - }, - { - "filename": "tera_orb", - "rotated": false, - "trimmed": true, - "sourceSize": { - "w": 32, - "h": 32 - }, - "spriteSourceSize": { - "x": 5, - "y": 6, - "w": 22, - "h": 20 - }, - "frame": { - "x": 407, - "y": 108, - "w": 22, - "h": 20 - } - }, - { - "filename": "ub", - "rotated": false, - "trimmed": true, - "sourceSize": { - "w": 32, - "h": 32 - }, - "spriteSourceSize": { - "x": 6, - "y": 6, - "w": 20, - "h": 20 - }, - "frame": { - "x": 0, - "y": 122, - "w": 20, - "h": 20 - } - }, - { - "filename": "adamant_crystal", - "rotated": false, - "trimmed": true, - "sourceSize": { - "w": 32, - "h": 32 - }, - "spriteSourceSize": { - "x": 4, - "y": 6, - "w": 23, - "h": 21 - }, - "frame": { - "x": 20, - "y": 122, - "w": 23, - "h": 21 - } - }, - { - "filename": "amulet_coin", - "rotated": false, - "trimmed": true, - "sourceSize": { - "w": 32, - "h": 32 - }, - "spriteSourceSize": { - "x": 6, - "y": 5, - "w": 23, - "h": 21 - }, - "frame": { - "x": 43, - "y": 122, - "w": 23, - "h": 21 - } - }, - { - "filename": "auspicious_armor", - "rotated": false, - "trimmed": true, - "sourceSize": { - "w": 32, - "h": 32 - }, - "spriteSourceSize": { - "x": 4, - "y": 5, - "w": 23, - "h": 21 - }, - "frame": { - "x": 66, - "y": 123, - "w": 23, - "h": 21 - } - }, - { - "filename": "berry_juice", - "rotated": false, - "trimmed": true, - "sourceSize": { - "w": 32, - "h": 32 - }, - "spriteSourceSize": { - "x": 5, - "y": 5, - "w": 22, - "h": 21 - }, - "frame": { - "x": 89, - "y": 124, - "w": 22, - "h": 21 - } - }, - { - "filename": "dawn_stone", - "rotated": false, - "trimmed": true, - "sourceSize": { - "w": 32, - "h": 32 - }, - "spriteSourceSize": { - "x": 6, - "y": 6, - "w": 20, - "h": 21 - }, - "frame": { - "x": 111, - "y": 125, - "w": 20, - "h": 21 - } - }, - { - "filename": "deep_sea_tooth", - "rotated": false, - "trimmed": true, - "sourceSize": { - "w": 32, - "h": 32 - }, - "spriteSourceSize": { - "x": 5, - "y": 6, - "w": 22, - "h": 21 - }, - "frame": { - "x": 131, - "y": 125, - "w": 22, - "h": 21 - } - }, - { - "filename": "dusk_stone", - "rotated": false, - "trimmed": true, - "sourceSize": { - "w": 32, - "h": 32 - }, - "spriteSourceSize": { - "x": 6, - "y": 6, - "w": 21, - "h": 21 - }, - "frame": { - "x": 153, - "y": 125, - "w": 21, - "h": 21 - } - }, - { - "filename": "flying_tera_shard", - "rotated": false, - "trimmed": true, - "sourceSize": { - "w": 32, - "h": 32 - }, - "spriteSourceSize": { - "x": 7, - "y": 5, - "w": 20, - "h": 21 - }, - "frame": { - "x": 174, - "y": 125, - "w": 20, - "h": 21 - } - }, - { - "filename": "golden_net", - "rotated": false, - "trimmed": true, - "sourceSize": { - "w": 32, - "h": 32 - }, - "spriteSourceSize": { - "x": 4, - "y": 5, - "w": 24, - "h": 21 - }, - "frame": { - "x": 194, - "y": 125, - "w": 24, - "h": 21 - } - }, - { - "filename": "liechi_berry", - "rotated": false, - "trimmed": true, - "sourceSize": { - "w": 32, - "h": 32 - }, - "spriteSourceSize": { - "x": 5, - "y": 6, - "w": 22, - "h": 21 - }, - "frame": { - "x": 218, - "y": 126, - "w": 22, - "h": 21 - } - }, - { - "filename": "mint_atk", - "rotated": false, - "trimmed": true, - "sourceSize": { - "w": 32, - "h": 32 - }, - "spriteSourceSize": { - "x": 2, - "y": 5, - "w": 28, - "h": 21 - }, - "frame": { - "x": 240, - "y": 126, - "w": 28, - "h": 21 - } - }, - { - "filename": "mint_def", - "rotated": false, - "trimmed": true, - "sourceSize": { - "w": 32, - "h": 32 - }, - "spriteSourceSize": { - "x": 2, - "y": 5, - "w": 28, - "h": 21 - }, - "frame": { - "x": 268, - "y": 127, - "w": 28, - "h": 21 - } - }, - { - "filename": "mint_neutral", - "rotated": false, - "trimmed": true, - "sourceSize": { - "w": 32, - "h": 32 - }, - "spriteSourceSize": { - "x": 2, - "y": 5, - "w": 28, - "h": 21 - }, - "frame": { - "x": 296, - "y": 127, - "w": 28, - "h": 21 - } - }, - { - "filename": "mint_spatk", - "rotated": false, - "trimmed": true, - "sourceSize": { - "w": 32, - "h": 32 - }, - "spriteSourceSize": { - "x": 2, - "y": 5, - "w": 28, - "h": 21 - }, - "frame": { - "x": 324, - "y": 127, - "w": 28, - "h": 21 - } - }, - { - "filename": "mint_spd", - "rotated": false, - "trimmed": true, - "sourceSize": { - "w": 32, - "h": 32 - }, - "spriteSourceSize": { - "x": 2, - "y": 5, - "w": 28, - "h": 21 - }, - "frame": { - "x": 352, - "y": 127, - "w": 28, - "h": 21 - } - }, - { - "filename": "mint_spdef", - "rotated": false, - "trimmed": true, - "sourceSize": { - "w": 32, - "h": 32 - }, - "spriteSourceSize": { - "x": 2, - "y": 5, - "w": 28, - "h": 21 - }, - "frame": { - "x": 380, - "y": 128, - "w": 28, - "h": 21 - } - }, - { - "filename": "moon_stone", - "rotated": false, - "trimmed": true, - "sourceSize": { - "w": 32, - "h": 32 - }, - "spriteSourceSize": { - "x": 4, - "y": 6, - "w": 23, - "h": 21 - }, - "frame": { - "x": 408, - "y": 128, - "w": 23, - "h": 21 - } - }, - { - "filename": "quick_claw", - "rotated": false, - "trimmed": true, - "sourceSize": { - "w": 32, - "h": 32 - }, - "spriteSourceSize": { - "x": 6, - "y": 6, - "w": 19, - "h": 21 - }, - "frame": { - "x": 0, - "y": 142, - "w": 19, - "h": 21 - } - }, - { - "filename": "n_lunarizer", - "rotated": false, - "trimmed": true, - "sourceSize": { - "w": 32, - "h": 32 - }, - "spriteSourceSize": { - "x": 4, - "y": 6, - "w": 23, - "h": 21 - }, - "frame": { - "x": 19, - "y": 143, - "w": 23, - "h": 21 - } - }, - { - "filename": "n_solarizer", - "rotated": false, - "trimmed": true, - "sourceSize": { - "w": 32, - "h": 32 - }, - "spriteSourceSize": { - "x": 4, - "y": 6, - "w": 23, - "h": 21 - }, - "frame": { - "x": 42, - "y": 143, - "w": 23, - "h": 21 - } - }, - { - "filename": "poison_barb", - "rotated": false, - "trimmed": true, - "sourceSize": { - "w": 32, - "h": 32 - }, - "spriteSourceSize": { - "x": 5, - "y": 6, - "w": 21, - "h": 21 - }, - "frame": { - "x": 65, - "y": 144, - "w": 21, - "h": 21 - } - }, - { - "filename": "shiny_stone", - "rotated": false, - "trimmed": true, - "sourceSize": { - "w": 32, - "h": 32 - }, - "spriteSourceSize": { - "x": 5, - "y": 6, - "w": 21, - "h": 21 - }, - "frame": { - "x": 86, - "y": 145, - "w": 21, - "h": 21 - } - }, - { - "filename": "spell_tag", - "rotated": false, - "trimmed": true, - "sourceSize": { - "w": 32, - "h": 32 - }, - "spriteSourceSize": { - "x": 7, - "y": 6, - "w": 19, - "h": 21 - }, - "frame": { - "x": 107, - "y": 146, - "w": 19, - "h": 21 - } - }, - { - "filename": "sweet_apple", - "rotated": false, - "trimmed": true, - "sourceSize": { - "w": 32, - "h": 32 - }, - "spriteSourceSize": { - "x": 5, - "y": 6, - "w": 22, - "h": 21 - }, - "frame": { - "x": 126, - "y": 146, - "w": 22, - "h": 21 - } - }, - { - "filename": "syrupy_apple", - "rotated": false, - "trimmed": true, - "sourceSize": { - "w": 32, - "h": 32 - }, - "spriteSourceSize": { - "x": 5, - "y": 6, - "w": 22, - "h": 21 - }, - "frame": { - "x": 148, - "y": 146, - "w": 22, - "h": 21 - } - }, - { - "filename": "tart_apple", - "rotated": false, - "trimmed": true, - "sourceSize": { - "w": 32, - "h": 32 - }, - "spriteSourceSize": { - "x": 5, - "y": 6, - "w": 22, - "h": 21 - }, - "frame": { - "x": 170, - "y": 146, - "w": 22, - "h": 21 - } - }, - { - "filename": "wellspring_mask", - "rotated": false, - "trimmed": true, - "sourceSize": { - "w": 32, - "h": 32 - }, - "spriteSourceSize": { - "x": 4, - "y": 5, - "w": 23, - "h": 21 - }, - "frame": { - "x": 192, - "y": 146, - "w": 23, - "h": 21 - } - }, - { - "filename": "zoom_lens", - "rotated": false, - "trimmed": true, - "sourceSize": { - "w": 32, - "h": 32 - }, - "spriteSourceSize": { - "x": 5, - "y": 6, - "w": 21, - "h": 21 - }, - "frame": { - "x": 215, - "y": 147, - "w": 21, - "h": 21 - } - }, - { - "filename": "berry_pot", - "rotated": false, - "trimmed": true, - "sourceSize": { - "w": 32, - "h": 32 - }, - "spriteSourceSize": { - "x": 7, - "y": 5, - "w": 18, - "h": 22 - }, - "frame": { - "x": 236, - "y": 147, - "w": 18, - "h": 22 - } - }, - { - "filename": "bug_memory", - "rotated": false, - "trimmed": true, - "sourceSize": { - "w": 32, - "h": 32 - }, - "spriteSourceSize": { - "x": 5, - "y": 5, - "w": 22, - "h": 22 - }, - "frame": { - "x": 254, - "y": 148, - "w": 22, - "h": 22 - } - }, - { - "filename": "charcoal", - "rotated": false, - "trimmed": true, - "sourceSize": { - "w": 32, - "h": 32 - }, - "spriteSourceSize": { - "x": 5, - "y": 5, - "w": 22, - "h": 22 - }, - "frame": { - "x": 276, - "y": 148, - "w": 22, - "h": 22 - } - }, - { - "filename": "dark_memory", - "rotated": false, - "trimmed": true, - "sourceSize": { - "w": 32, - "h": 32 - }, - "spriteSourceSize": { - "x": 5, - "y": 5, - "w": 22, - "h": 22 - }, - "frame": { - "x": 298, - "y": 148, - "w": 22, - "h": 22 - } - }, - { - "filename": "dire_hit", - "rotated": false, - "trimmed": true, - "sourceSize": { - "w": 32, - "h": 32 - }, - "spriteSourceSize": { - "x": 5, - "y": 5, - "w": 22, - "h": 22 - }, - "frame": { - "x": 320, - "y": 148, - "w": 22, - "h": 22 - } - }, - { - "filename": "dna_splicers", - "rotated": false, - "trimmed": true, - "sourceSize": { - "w": 32, - "h": 32 - }, - "spriteSourceSize": { - "x": 5, - "y": 5, - "w": 22, - "h": 22 - }, - "frame": { - "x": 342, - "y": 148, - "w": 22, - "h": 22 - } - }, - { - "filename": "leftovers", - "rotated": false, - "trimmed": true, - "sourceSize": { - "w": 32, - "h": 32 - }, - "spriteSourceSize": { - "x": 8, - "y": 5, - "w": 15, - "h": 22 - }, - "frame": { - "x": 364, - "y": 148, - "w": 15, - "h": 22 - } - }, - { - "filename": "dragon_memory", - "rotated": false, - "trimmed": true, - "sourceSize": { - "w": 32, - "h": 32 - }, - "spriteSourceSize": { - "x": 5, - "y": 5, - "w": 22, - "h": 22 - }, - "frame": { - "x": 379, - "y": 149, - "w": 22, - "h": 22 - } - }, - { - "filename": "electirizer", - "rotated": false, - "trimmed": true, - "sourceSize": { - "w": 32, - "h": 32 - }, - "spriteSourceSize": { - "x": 5, - "y": 5, - "w": 22, - "h": 22 - }, - "frame": { - "x": 401, - "y": 149, - "w": 22, - "h": 22 - } - }, - { - "filename": "lock_capsule", - "rotated": false, - "trimmed": true, - "sourceSize": { - "w": 32, - "h": 32 - }, - "spriteSourceSize": { - "x": 7, - "y": 5, - "w": 19, - "h": 22 - }, - "frame": { - "x": 0, - "y": 163, - "w": 19, - "h": 22 - } - }, - { - "filename": "electric_memory", - "rotated": false, - "trimmed": true, - "sourceSize": { - "w": 32, - "h": 32 - }, - "spriteSourceSize": { - "x": 5, - "y": 5, - "w": 22, - "h": 22 - }, - "frame": { - "x": 19, - "y": 164, - "w": 22, - "h": 22 - } - }, - { - "filename": "enigma_berry", - "rotated": false, - "trimmed": true, - "sourceSize": { - "w": 32, - "h": 32 - }, - "spriteSourceSize": { - "x": 5, - "y": 5, - "w": 22, - "h": 22 - }, - "frame": { - "x": 41, - "y": 164, - "w": 22, - "h": 22 - } - }, - { - "filename": "fairy_memory", - "rotated": false, - "trimmed": true, - "sourceSize": { - "w": 32, - "h": 32 - }, - "spriteSourceSize": { - "x": 5, - "y": 5, - "w": 22, - "h": 22 - }, - "frame": { - "x": 63, - "y": 165, - "w": 22, - "h": 22 - } - }, - { - "filename": "fighting_memory", - "rotated": false, - "trimmed": true, - "sourceSize": { - "w": 32, - "h": 32 - }, - "spriteSourceSize": { - "x": 5, - "y": 5, - "w": 22, - "h": 22 - }, - "frame": { - "x": 85, - "y": 166, - "w": 22, - "h": 22 - } - }, - { - "filename": "exp_balance", - "rotated": false, - "trimmed": true, - "sourceSize": { - "w": 32, - "h": 32 - }, - "spriteSourceSize": { - "x": 4, - "y": 5, - "w": 24, - "h": 22 - }, - "frame": { - "x": 107, - "y": 167, - "w": 24, - "h": 22 - } - }, - { - "filename": "exp_share", - "rotated": false, - "trimmed": true, - "sourceSize": { - "w": 32, - "h": 32 - }, - "spriteSourceSize": { - "x": 4, - "y": 5, - "w": 24, - "h": 22 - }, - "frame": { - "x": 131, - "y": 167, - "w": 24, - "h": 22 - } - }, - { - "filename": "fire_memory", - "rotated": false, - "trimmed": true, - "sourceSize": { - "w": 32, - "h": 32 - }, - "spriteSourceSize": { - "x": 5, - "y": 5, - "w": 22, - "h": 22 - }, - "frame": { - "x": 155, - "y": 167, - "w": 22, - "h": 22 - } - }, - { - "filename": "flying_memory", - "rotated": false, - "trimmed": true, - "sourceSize": { - "w": 32, - "h": 32 - }, - "spriteSourceSize": { - "x": 5, - "y": 5, - "w": 22, - "h": 22 - }, - "frame": { - "x": 177, - "y": 167, - "w": 22, - "h": 22 - } - }, - { - "filename": "full_heal", - "rotated": false, - "trimmed": true, - "sourceSize": { - "w": 32, - "h": 32 - }, - "spriteSourceSize": { - "x": 9, - "y": 4, - "w": 15, - "h": 23 - }, - "frame": { - "x": 199, - "y": 167, - "w": 15, - "h": 23 - } - }, - { - "filename": "ganlon_berry", - "rotated": false, - "trimmed": true, - "sourceSize": { - "w": 32, - "h": 32 - }, - "spriteSourceSize": { - "x": 5, - "y": 5, - "w": 22, - "h": 22 - }, - "frame": { - "x": 214, - "y": 168, - "w": 22, - "h": 22 - } - }, - { - "filename": "metronome", - "rotated": false, - "trimmed": true, - "sourceSize": { - "w": 32, - "h": 32 - }, - "spriteSourceSize": { - "x": 7, - "y": 5, - "w": 17, - "h": 22 - }, - "frame": { - "x": 236, - "y": 169, - "w": 17, - "h": 22 - } - }, - { - "filename": "ghost_memory", - "rotated": false, - "trimmed": true, - "sourceSize": { - "w": 32, - "h": 32 - }, - "spriteSourceSize": { - "x": 5, - "y": 5, - "w": 22, - "h": 22 - }, - "frame": { - "x": 253, - "y": 170, - "w": 22, - "h": 22 - } - }, - { - "filename": "grass_memory", - "rotated": false, - "trimmed": true, - "sourceSize": { - "w": 32, - "h": 32 - }, - "spriteSourceSize": { - "x": 5, - "y": 5, - "w": 22, - "h": 22 - }, - "frame": { - "x": 275, - "y": 170, - "w": 22, - "h": 22 - } - }, - { - "filename": "ground_memory", - "rotated": false, - "trimmed": true, - "sourceSize": { - "w": 32, - "h": 32 - }, - "spriteSourceSize": { - "x": 5, - "y": 5, - "w": 22, - "h": 22 - }, - "frame": { - "x": 297, - "y": 170, - "w": 22, - "h": 22 - } - }, - { - "filename": "guard_spec", - "rotated": false, - "trimmed": true, - "sourceSize": { - "w": 32, - "h": 32 - }, - "spriteSourceSize": { - "x": 5, - "y": 5, - "w": 22, - "h": 22 - }, - "frame": { - "x": 319, - "y": 170, - "w": 22, - "h": 22 - } - }, - { - "filename": "hard_meteorite", - "rotated": false, - "trimmed": true, - "sourceSize": { - "w": 32, - "h": 32 - }, - "spriteSourceSize": { - "x": 7, - "y": 5, - "w": 20, - "h": 22 - }, - "frame": { - "x": 341, - "y": 170, - "w": 20, - "h": 22 - } - }, - { - "filename": "soothe_bell", - "rotated": false, - "trimmed": true, - "sourceSize": { - "w": 32, - "h": 32 - }, - "spriteSourceSize": { - "x": 8, - "y": 5, - "w": 17, - "h": 22 - }, - "frame": { - "x": 361, - "y": 170, - "w": 17, - "h": 22 - } - }, - { - "filename": "healing_charm", - "rotated": false, - "trimmed": true, - "sourceSize": { - "w": 32, - "h": 32 - }, - "spriteSourceSize": { - "x": 5, - "y": 5, - "w": 23, - "h": 22 - }, - "frame": { - "x": 378, - "y": 171, - "w": 23, - "h": 22 - } - }, - { - "filename": "ice_memory", - "rotated": false, - "trimmed": true, - "sourceSize": { - "w": 32, - "h": 32 - }, - "spriteSourceSize": { - "x": 5, - "y": 5, - "w": 22, - "h": 22 - }, - "frame": { - "x": 401, - "y": 171, - "w": 22, - "h": 22 - } - }, - { - "filename": "metal_coat", - "rotated": false, - "trimmed": true, - "sourceSize": { - "w": 32, - "h": 32 - }, - "spriteSourceSize": { - "x": 6, - "y": 5, - "w": 19, - "h": 22 - }, - "frame": { - "x": 0, - "y": 185, - "w": 19, - "h": 22 - } - }, - { - "filename": "ice_stone", - "rotated": false, - "trimmed": true, - "sourceSize": { - "w": 32, - "h": 32 - }, - "spriteSourceSize": { - "x": 5, - "y": 5, - "w": 22, - "h": 22 - }, - "frame": { - "x": 19, - "y": 186, - "w": 22, - "h": 22 - } - }, - { - "filename": "magmarizer", - "rotated": false, - "trimmed": true, - "sourceSize": { - "w": 32, - "h": 32 - }, - "spriteSourceSize": { - "x": 5, - "y": 5, - "w": 22, - "h": 22 - }, - "frame": { - "x": 41, - "y": 186, - "w": 22, - "h": 22 - } - }, - { - "filename": "mini_black_hole", - "rotated": false, - "trimmed": true, - "sourceSize": { - "w": 32, - "h": 32 - }, - "spriteSourceSize": { - "x": 5, - "y": 5, - "w": 22, - "h": 22 - }, - "frame": { - "x": 63, - "y": 187, - "w": 22, - "h": 22 - } - }, - { - "filename": "moon_flute", - "rotated": false, - "trimmed": true, - "sourceSize": { - "w": 32, - "h": 32 - }, - "spriteSourceSize": { - "x": 5, - "y": 5, - "w": 22, - "h": 22 - }, - "frame": { - "x": 85, - "y": 188, - "w": 22, - "h": 22 - } - }, - { - "filename": "map", - "rotated": false, - "trimmed": true, - "sourceSize": { - "w": 32, - "h": 32 - }, - "spriteSourceSize": { - "x": 3, - "y": 5, - "w": 27, - "h": 22 - }, - "frame": { - "x": 107, - "y": 189, - "w": 27, - "h": 22 - } - }, - { - "filename": "normal_memory", - "rotated": false, - "trimmed": true, - "sourceSize": { - "w": 32, - "h": 32 - }, - "spriteSourceSize": { - "x": 5, - "y": 5, - "w": 22, - "h": 22 - }, - "frame": { - "x": 134, - "y": 189, - "w": 22, - "h": 22 - } - }, - { - "filename": "peat_block", - "rotated": false, - "trimmed": true, - "sourceSize": { - "w": 32, - "h": 32 - }, - "spriteSourceSize": { - "x": 4, - "y": 5, - "w": 24, - "h": 22 - }, - "frame": { - "x": 156, - "y": 189, - "w": 24, - "h": 22 - } - }, - { - "filename": "hyper_potion", - "rotated": false, - "trimmed": true, - "sourceSize": { - "w": 32, - "h": 32 - }, - "spriteSourceSize": { - "x": 8, - "y": 5, - "w": 17, - "h": 23 - }, - "frame": { - "x": 180, - "y": 189, - "w": 17, - "h": 23 - } - }, - { - "filename": "poison_memory", - "rotated": false, - "trimmed": true, - "sourceSize": { - "w": 32, - "h": 32 - }, - "spriteSourceSize": { - "x": 5, - "y": 5, - "w": 22, - "h": 22 - }, - "frame": { - "x": 197, - "y": 190, - "w": 22, - "h": 22 - } - }, - { - "filename": "potion", - "rotated": false, - "trimmed": true, - "sourceSize": { - "w": 32, - "h": 32 - }, - "spriteSourceSize": { - "x": 8, - "y": 5, - "w": 17, - "h": 23 - }, - "frame": { - "x": 219, - "y": 190, - "w": 17, - "h": 23 - } - }, - { - "filename": "protector", - "rotated": false, - "trimmed": true, - "sourceSize": { - "w": 32, - "h": 32 - }, - "spriteSourceSize": { - "x": 5, - "y": 5, - "w": 22, - "h": 22 - }, - "frame": { - "x": 236, - "y": 192, - "w": 22, - "h": 22 - } - }, - { - "filename": "psychic_memory", - "rotated": false, - "trimmed": true, - "sourceSize": { - "w": 32, - "h": 32 - }, - "spriteSourceSize": { - "x": 5, - "y": 5, - "w": 22, - "h": 22 - }, - "frame": { - "x": 258, - "y": 192, - "w": 22, - "h": 22 - } - }, - { - "filename": "rock_memory", - "rotated": false, - "trimmed": true, - "sourceSize": { - "w": 32, - "h": 32 - }, - "spriteSourceSize": { - "x": 5, - "y": 5, - "w": 22, - "h": 22 - }, - "frame": { - "x": 280, - "y": 192, - "w": 22, - "h": 22 - } - }, - { - "filename": "rusted_sword", - "rotated": false, - "trimmed": true, - "sourceSize": { - "w": 32, - "h": 32 - }, - "spriteSourceSize": { - "x": 4, - "y": 5, - "w": 23, - "h": 22 - }, - "frame": { - "x": 302, - "y": 192, - "w": 23, - "h": 22 - } - }, - { - "filename": "scroll_of_darkness", - "rotated": false, - "trimmed": true, - "sourceSize": { - "w": 32, - "h": 32 - }, - "spriteSourceSize": { - "x": 5, - "y": 5, - "w": 22, - "h": 22 - }, - "frame": { - "x": 325, - "y": 192, - "w": 22, - "h": 22 - } - }, - { - "filename": "scroll_of_waters", - "rotated": false, - "trimmed": true, - "sourceSize": { - "w": 32, - "h": 32 - }, - "spriteSourceSize": { - "x": 5, - "y": 5, - "w": 22, - "h": 22 - }, - "frame": { - "x": 347, - "y": 192, - "w": 22, - "h": 22 - } - }, - { - "filename": "shed_shell", - "rotated": false, - "trimmed": true, - "sourceSize": { - "w": 32, - "h": 32 - }, - "spriteSourceSize": { - "x": 5, - "y": 5, - "w": 22, - "h": 22 - }, - "frame": { - "x": 369, - "y": 193, - "w": 22, - "h": 22 - } - }, - { - "filename": "sitrus_berry", - "rotated": false, - "trimmed": true, - "sourceSize": { - "w": 32, - "h": 32 - }, - "spriteSourceSize": { - "x": 6, - "y": 5, - "w": 20, - "h": 22 - }, - "frame": { - "x": 391, - "y": 193, - "w": 20, - "h": 22 - } - }, - { - "filename": "starf_berry", - "rotated": false, - "trimmed": true, - "sourceSize": { - "w": 32, - "h": 32 - }, - "spriteSourceSize": { - "x": 5, - "y": 5, - "w": 22, - "h": 22 - }, - "frame": { - "x": 411, - "y": 193, - "w": 22, - "h": 22 - } - }, - { - "filename": "sachet", - "rotated": false, - "trimmed": true, - "sourceSize": { - "w": 32, - "h": 32 - }, - "spriteSourceSize": { - "x": 6, - "y": 4, - "w": 18, - "h": 23 - }, - "frame": { - "x": 0, - "y": 207, - "w": 18, - "h": 23 - } - }, - { - "filename": "steel_memory", - "rotated": false, - "trimmed": true, - "sourceSize": { - "w": 32, - "h": 32 - }, - "spriteSourceSize": { - "x": 5, - "y": 5, - "w": 22, - "h": 22 - }, - "frame": { - "x": 18, - "y": 208, - "w": 22, - "h": 22 - } - }, - { - "filename": "sun_flute", - "rotated": false, - "trimmed": true, - "sourceSize": { - "w": 32, - "h": 32 - }, - "spriteSourceSize": { - "x": 5, - "y": 5, - "w": 22, - "h": 22 - }, - "frame": { - "x": 40, - "y": 208, - "w": 22, - "h": 22 - } - }, - { - "filename": "thick_club", - "rotated": false, - "trimmed": true, - "sourceSize": { - "w": 32, - "h": 32 - }, - "spriteSourceSize": { - "x": 5, - "y": 5, - "w": 22, - "h": 22 - }, - "frame": { - "x": 62, - "y": 209, - "w": 22, - "h": 22 - } - }, - { - "filename": "thunder_stone", - "rotated": false, - "trimmed": true, - "sourceSize": { - "w": 32, - "h": 32 - }, - "spriteSourceSize": { - "x": 5, - "y": 5, - "w": 22, - "h": 22 - }, - "frame": { - "x": 84, - "y": 210, - "w": 22, - "h": 22 - } - }, - { - "filename": "tm_bug", - "rotated": false, - "trimmed": true, - "sourceSize": { - "w": 32, - "h": 32 - }, - "spriteSourceSize": { - "x": 5, - "y": 5, - "w": 22, - "h": 22 - }, - "frame": { - "x": 106, - "y": 211, - "w": 22, - "h": 22 - } - }, - { - "filename": "tm_dark", - "rotated": false, - "trimmed": true, - "sourceSize": { - "w": 32, - "h": 32 - }, - "spriteSourceSize": { - "x": 5, - "y": 5, - "w": 22, - "h": 22 - }, - "frame": { - "x": 128, - "y": 211, - "w": 22, - "h": 22 - } - }, - { - "filename": "tm_dragon", - "rotated": false, - "trimmed": true, - "sourceSize": { - "w": 32, - "h": 32 - }, - "spriteSourceSize": { - "x": 5, - "y": 5, - "w": 22, - "h": 22 - }, - "frame": { - "x": 150, - "y": 211, - "w": 22, - "h": 22 - } - }, - { - "filename": "tm_electric", - "rotated": false, - "trimmed": true, - "sourceSize": { - "w": 32, - "h": 32 - }, - "spriteSourceSize": { - "x": 5, - "y": 5, - "w": 22, - "h": 22 - }, - "frame": { - "x": 172, - "y": 212, - "w": 22, - "h": 22 - } - }, - { - "filename": "tm_fairy", - "rotated": false, - "trimmed": true, - "sourceSize": { - "w": 32, - "h": 32 - }, - "spriteSourceSize": { - "x": 5, - "y": 5, - "w": 22, - "h": 22 - }, - "frame": { - "x": 194, - "y": 212, - "w": 22, - "h": 22 - } - }, - { - "filename": "mystic_water", - "rotated": false, - "trimmed": true, - "sourceSize": { - "w": 32, - "h": 32 - }, - "spriteSourceSize": { - "x": 6, - "y": 5, - "w": 20, - "h": 23 - }, - "frame": { - "x": 216, - "y": 213, - "w": 20, - "h": 23 - } - }, - { - "filename": "tm_fighting", - "rotated": false, - "trimmed": true, - "sourceSize": { - "w": 32, - "h": 32 - }, - "spriteSourceSize": { - "x": 5, - "y": 5, - "w": 22, - "h": 22 - }, - "frame": { - "x": 236, - "y": 214, - "w": 22, - "h": 22 - } - }, - { - "filename": "tm_fire", - "rotated": false, - "trimmed": true, - "sourceSize": { - "w": 32, - "h": 32 - }, - "spriteSourceSize": { - "x": 5, - "y": 5, - "w": 22, - "h": 22 - }, - "frame": { - "x": 258, - "y": 214, - "w": 22, - "h": 22 - } - }, - { - "filename": "tm_flying", - "rotated": false, - "trimmed": true, - "sourceSize": { - "w": 32, - "h": 32 - }, - "spriteSourceSize": { - "x": 5, - "y": 5, - "w": 22, - "h": 22 - }, - "frame": { - "x": 280, - "y": 214, - "w": 22, - "h": 22 - } - }, - { - "filename": "tm_ghost", - "rotated": false, - "trimmed": true, - "sourceSize": { - "w": 32, - "h": 32 - }, - "spriteSourceSize": { - "x": 5, - "y": 5, - "w": 22, - "h": 22 - }, - "frame": { - "x": 302, - "y": 214, - "w": 22, - "h": 22 - } - }, - { - "filename": "tm_grass", - "rotated": false, - "trimmed": true, - "sourceSize": { - "w": 32, - "h": 32 - }, - "spriteSourceSize": { - "x": 5, - "y": 5, - "w": 22, - "h": 22 - }, - "frame": { - "x": 324, - "y": 214, - "w": 22, - "h": 22 - } - }, - { - "filename": "tm_ground", - "rotated": false, - "trimmed": true, - "sourceSize": { - "w": 32, - "h": 32 - }, - "spriteSourceSize": { - "x": 5, - "y": 5, - "w": 22, - "h": 22 - }, - "frame": { - "x": 346, - "y": 214, - "w": 22, - "h": 22 - } - }, - { - "filename": "tm_ice", - "rotated": false, - "trimmed": true, - "sourceSize": { - "w": 32, - "h": 32 - }, - "spriteSourceSize": { - "x": 5, - "y": 5, - "w": 22, - "h": 22 - }, - "frame": { - "x": 368, - "y": 215, - "w": 22, - "h": 22 - } - }, - { - "filename": "tm_normal", - "rotated": false, - "trimmed": true, - "sourceSize": { - "w": 32, - "h": 32 - }, - "spriteSourceSize": { - "x": 5, - "y": 5, - "w": 22, - "h": 22 - }, - "frame": { - "x": 390, - "y": 215, - "w": 22, - "h": 22 - } - }, - { - "filename": "tm_poison", - "rotated": false, - "trimmed": true, - "sourceSize": { - "w": 32, - "h": 32 - }, - "spriteSourceSize": { - "x": 5, - "y": 5, - "w": 22, - "h": 22 - }, - "frame": { - "x": 412, - "y": 215, - "w": 22, - "h": 22 - } - }, - { - "filename": "tm_psychic", - "rotated": false, - "trimmed": true, - "sourceSize": { - "w": 32, - "h": 32 - }, - "spriteSourceSize": { - "x": 5, - "y": 5, - "w": 22, - "h": 22 - }, - "frame": { - "x": 0, - "y": 230, - "w": 22, - "h": 22 - } - }, - { - "filename": "tm_rock", - "rotated": false, - "trimmed": true, - "sourceSize": { - "w": 32, - "h": 32 - }, - "spriteSourceSize": { - "x": 5, - "y": 5, - "w": 22, - "h": 22 - }, - "frame": { - "x": 22, - "y": 230, - "w": 22, - "h": 22 - } - }, - { - "filename": "super_potion", - "rotated": false, - "trimmed": true, - "sourceSize": { - "w": 32, - "h": 32 - }, - "spriteSourceSize": { - "x": 8, - "y": 5, - "w": 17, - "h": 23 - }, - "frame": { - "x": 44, - "y": 230, - "w": 17, - "h": 23 - } - }, - { - "filename": "tm_steel", - "rotated": false, - "trimmed": true, - "sourceSize": { - "w": 32, - "h": 32 - }, - "spriteSourceSize": { - "x": 5, - "y": 5, - "w": 22, - "h": 22 - }, - "frame": { - "x": 61, - "y": 231, - "w": 22, - "h": 22 - } - }, - { - "filename": "tm_water", - "rotated": false, - "trimmed": true, - "sourceSize": { - "w": 32, - "h": 32 - }, - "spriteSourceSize": { - "x": 5, - "y": 5, - "w": 22, - "h": 22 - }, - "frame": { - "x": 83, - "y": 232, - "w": 22, - "h": 22 - } - }, - { - "filename": "water_memory", - "rotated": false, - "trimmed": true, - "sourceSize": { - "w": 32, - "h": 32 - }, - "spriteSourceSize": { - "x": 5, - "y": 5, - "w": 22, - "h": 22 - }, - "frame": { - "x": 105, - "y": 233, - "w": 22, - "h": 22 - } - }, - { - "filename": "water_stone", - "rotated": false, - "trimmed": true, - "sourceSize": { - "w": 32, - "h": 32 - }, - "spriteSourceSize": { - "x": 5, - "y": 5, - "w": 22, - "h": 22 - }, - "frame": { - "x": 127, - "y": 233, - "w": 22, - "h": 22 - } - }, - { - "filename": "x_accuracy", - "rotated": false, - "trimmed": true, - "sourceSize": { - "w": 32, - "h": 32 - }, - "spriteSourceSize": { - "x": 5, - "y": 5, - "w": 22, - "h": 22 - }, - "frame": { - "x": 149, - "y": 233, - "w": 22, - "h": 22 - } - }, - { - "filename": "x_attack", - "rotated": false, - "trimmed": true, - "sourceSize": { - "w": 32, - "h": 32 - }, - "spriteSourceSize": { - "x": 5, - "y": 5, - "w": 22, - "h": 22 - }, - "frame": { - "x": 171, - "y": 234, - "w": 22, - "h": 22 - } - }, - { - "filename": "x_defense", - "rotated": false, - "trimmed": true, - "sourceSize": { - "w": 32, - "h": 32 - }, - "spriteSourceSize": { - "x": 5, - "y": 5, - "w": 22, - "h": 22 - }, - "frame": { - "x": 193, - "y": 234, - "w": 22, - "h": 22 - } - }, - { - "filename": "x_sp_atk", - "rotated": false, - "trimmed": true, - "sourceSize": { - "w": 32, - "h": 32 - }, - "spriteSourceSize": { - "x": 5, - "y": 5, - "w": 22, - "h": 22 - }, - "frame": { - "x": 215, - "y": 236, - "w": 22, - "h": 22 - } - }, - { - "filename": "x_sp_def", - "rotated": false, - "trimmed": true, - "sourceSize": { - "w": 32, - "h": 32 - }, - "spriteSourceSize": { - "x": 5, - "y": 5, - "w": 22, - "h": 22 - }, - "frame": { - "x": 237, - "y": 236, - "w": 22, - "h": 22 - } - }, - { - "filename": "x_speed", - "rotated": false, - "trimmed": true, - "sourceSize": { - "w": 32, - "h": 32 - }, - "spriteSourceSize": { - "x": 5, - "y": 5, - "w": 22, - "h": 22 - }, - "frame": { - "x": 259, - "y": 236, - "w": 22, - "h": 22 - } - }, - { - "filename": "berry_pouch", - "rotated": false, - "trimmed": true, - "sourceSize": { - "w": 32, - "h": 32 - }, - "spriteSourceSize": { - "x": 4, - "y": 5, - "w": 23, - "h": 23 - }, - "frame": { - "x": 281, - "y": 236, - "w": 23, - "h": 23 - } - }, - { - "filename": "black_belt", - "rotated": false, - "trimmed": true, - "sourceSize": { - "w": 32, - "h": 32 - }, - "spriteSourceSize": { - "x": 5, - "y": 4, - "w": 22, - "h": 23 - }, - "frame": { - "x": 304, - "y": 236, - "w": 22, - "h": 23 - } - }, - { - "filename": "bug_tera_shard", - "rotated": false, - "trimmed": true, - "sourceSize": { - "w": 32, - "h": 32 - }, - "spriteSourceSize": { - "x": 6, - "y": 4, - "w": 22, - "h": 23 - }, - "frame": { - "x": 326, - "y": 236, - "w": 22, - "h": 23 - } - }, - { - "filename": "calcium", - "rotated": false, - "trimmed": true, - "sourceSize": { - "w": 32, - "h": 32 - }, - "spriteSourceSize": { - "x": 8, - "y": 4, - "w": 16, - "h": 24 - }, - "frame": { - "x": 348, - "y": 236, - "w": 16, - "h": 24 - } - }, - { - "filename": "clefairy_doll", - "rotated": false, - "trimmed": true, - "sourceSize": { - "w": 32, - "h": 32 - }, - "spriteSourceSize": { - "x": 4, - "y": 5, - "w": 24, - "h": 23 - }, - "frame": { - "x": 364, - "y": 237, - "w": 24, - "h": 23 - } - }, - { - "filename": "coin_case", - "rotated": false, - "trimmed": true, - "sourceSize": { - "w": 32, - "h": 32 - }, - "spriteSourceSize": { - "x": 4, - "y": 5, - "w": 24, - "h": 23 - }, - "frame": { - "x": 388, - "y": 237, - "w": 24, - "h": 23 - } - }, - { - "filename": "dark_tera_shard", - "rotated": false, - "trimmed": true, - "sourceSize": { - "w": 32, - "h": 32 - }, - "spriteSourceSize": { - "x": 6, - "y": 4, - "w": 22, - "h": 23 - }, - "frame": { - "x": 412, - "y": 237, - "w": 22, - "h": 23 - } - }, - { - "filename": "dragon_fang", - "rotated": false, - "trimmed": true, - "sourceSize": { - "w": 32, - "h": 32 - }, - "spriteSourceSize": { - "x": 5, - "y": 5, - "w": 21, - "h": 23 - }, - "frame": { - "x": 0, - "y": 252, - "w": 21, - "h": 23 - } - }, - { - "filename": "dragon_tera_shard", - "rotated": false, - "trimmed": true, - "sourceSize": { - "w": 32, - "h": 32 - }, - "spriteSourceSize": { - "x": 6, - "y": 4, - "w": 22, - "h": 23 - }, - "frame": { - "x": 21, - "y": 252, - "w": 22, - "h": 23 - } - }, - { - "filename": "dynamax_band", - "rotated": false, - "trimmed": true, - "sourceSize": { - "w": 32, - "h": 32 - }, - "spriteSourceSize": { - "x": 4, - "y": 4, - "w": 23, - "h": 23 - }, - "frame": { - "x": 43, - "y": 253, - "w": 23, - "h": 23 - } - }, - { - "filename": "carbos", - "rotated": false, - "trimmed": true, - "sourceSize": { - "w": 32, - "h": 32 - }, - "spriteSourceSize": { - "x": 8, - "y": 4, - "w": 16, - "h": 24 - }, - "frame": { - "x": 66, - "y": 253, - "w": 16, - "h": 24 - } - }, - { - "filename": "electric_tera_shard", - "rotated": false, - "trimmed": true, - "sourceSize": { - "w": 32, - "h": 32 - }, - "spriteSourceSize": { - "x": 6, - "y": 4, - "w": 22, - "h": 23 - }, - "frame": { - "x": 82, - "y": 254, - "w": 22, - "h": 23 - } - }, - { - "filename": "expert_belt", - "rotated": false, - "trimmed": true, - "sourceSize": { - "w": 32, - "h": 32 - }, - "spriteSourceSize": { - "x": 4, - "y": 4, - "w": 24, - "h": 23 - }, - "frame": { - "x": 104, - "y": 255, - "w": 24, - "h": 23 - } - }, - { - "filename": "fairy_tera_shard", - "rotated": false, - "trimmed": true, - "sourceSize": { - "w": 32, - "h": 32 - }, - "spriteSourceSize": { - "x": 6, - "y": 4, - "w": 22, - "h": 23 - }, - "frame": { - "x": 128, - "y": 255, - "w": 22, - "h": 23 - } - }, - { - "filename": "lansat_berry", - "rotated": false, - "trimmed": true, - "sourceSize": { - "w": 32, - "h": 32 - }, - "spriteSourceSize": { - "x": 5, - "y": 4, - "w": 21, - "h": 23 - }, - "frame": { - "x": 150, - "y": 255, - "w": 21, - "h": 23 - } - }, - { - "filename": "fighting_tera_shard", - "rotated": false, - "trimmed": true, - "sourceSize": { - "w": 32, - "h": 32 - }, - "spriteSourceSize": { - "x": 6, - "y": 4, - "w": 22, - "h": 23 - }, - "frame": { - "x": 171, - "y": 256, - "w": 22, - "h": 23 - } - }, - { - "filename": "fire_stone", - "rotated": false, - "trimmed": true, - "sourceSize": { - "w": 32, - "h": 32 - }, - "spriteSourceSize": { - "x": 5, - "y": 5, - "w": 22, - "h": 23 - }, - "frame": { - "x": 193, - "y": 256, - "w": 22, - "h": 23 - } - }, - { - "filename": "fire_tera_shard", - "rotated": false, - "trimmed": true, - "sourceSize": { - "w": 32, - "h": 32 - }, - "spriteSourceSize": { - "x": 6, - "y": 4, - "w": 22, - "h": 23 - }, - "frame": { - "x": 215, - "y": 258, - "w": 22, - "h": 23 - } - }, - { - "filename": "focus_sash", - "rotated": false, - "trimmed": true, - "sourceSize": { - "w": 32, - "h": 32 - }, - "spriteSourceSize": { - "x": 5, - "y": 4, - "w": 22, - "h": 23 - }, - "frame": { - "x": 237, - "y": 258, - "w": 22, - "h": 23 - } - }, - { - "filename": "ghost_tera_shard", - "rotated": false, - "trimmed": true, - "sourceSize": { - "w": 32, - "h": 32 - }, - "spriteSourceSize": { - "x": 6, - "y": 4, - "w": 22, - "h": 23 - }, - "frame": { - "x": 259, - "y": 258, - "w": 22, - "h": 23 - } - }, - { - "filename": "grass_tera_shard", - "rotated": false, - "trimmed": true, - "sourceSize": { - "w": 32, - "h": 32 - }, - "spriteSourceSize": { - "x": 6, - "y": 4, - "w": 22, - "h": 23 - }, - "frame": { - "x": 281, - "y": 259, - "w": 22, - "h": 23 - } - }, - { - "filename": "griseous_core", - "rotated": false, - "trimmed": true, - "sourceSize": { - "w": 32, - "h": 32 - }, - "spriteSourceSize": { - "x": 5, - "y": 5, - "w": 23, - "h": 23 - }, - "frame": { - "x": 303, - "y": 259, - "w": 23, - "h": 23 - } - }, - { - "filename": "ground_tera_shard", - "rotated": false, - "trimmed": true, - "sourceSize": { - "w": 32, - "h": 32 - }, - "spriteSourceSize": { - "x": 6, - "y": 4, - "w": 22, - "h": 23 - }, - "frame": { - "x": 326, - "y": 259, - "w": 22, - "h": 23 - } - }, - { - "filename": "hearthflame_mask", - "rotated": false, - "trimmed": true, - "sourceSize": { - "w": 32, - "h": 32 - }, - "spriteSourceSize": { - "x": 4, - "y": 4, - "w": 24, - "h": 23 - }, - "frame": { - "x": 348, - "y": 260, - "w": 24, - "h": 23 - } - }, - { - "filename": "ice_tera_shard", - "rotated": false, - "trimmed": true, - "sourceSize": { - "w": 32, - "h": 32 - }, - "spriteSourceSize": { - "x": 6, - "y": 4, - "w": 22, - "h": 23 - }, - "frame": { - "x": 372, - "y": 260, - "w": 22, - "h": 23 - } - }, - { - "filename": "leaf_stone", - "rotated": false, - "trimmed": true, - "sourceSize": { - "w": 32, - "h": 32 - }, - "spriteSourceSize": { - "x": 5, - "y": 5, - "w": 21, - "h": 23 - }, - "frame": { - "x": 394, - "y": 260, - "w": 21, - "h": 23 - } - }, - { - "filename": "elixir", - "rotated": false, - "trimmed": true, - "sourceSize": { - "w": 32, - "h": 32 - }, - "spriteSourceSize": { - "x": 7, - "y": 4, - "w": 18, - "h": 24 - }, - "frame": { - "x": 415, - "y": 260, - "w": 18, - "h": 24 - } - }, - { - "filename": "leek", - "rotated": false, - "trimmed": true, - "sourceSize": { - "w": 32, - "h": 32 - }, - "spriteSourceSize": { - "x": 4, - "y": 5, - "w": 23, - "h": 23 - }, - "frame": { - "x": 0, - "y": 275, - "w": 23, - "h": 23 - } - }, - { - "filename": "ether", - "rotated": false, - "trimmed": true, - "sourceSize": { - "w": 32, - "h": 32 - }, - "spriteSourceSize": { - "x": 7, - "y": 4, - "w": 18, - "h": 24 - }, - "frame": { - "x": 23, - "y": 275, - "w": 18, - "h": 24 - } - }, - { - "filename": "leppa_berry", - "rotated": false, - "trimmed": true, - "sourceSize": { - "w": 32, - "h": 32 - }, - "spriteSourceSize": { - "x": 4, - "y": 5, - "w": 24, - "h": 23 - }, - "frame": { - "x": 41, - "y": 276, - "w": 24, - "h": 23 - } - }, - { - "filename": "macho_brace", - "rotated": false, - "trimmed": true, - "sourceSize": { - "w": 32, - "h": 32 - }, - "spriteSourceSize": { - "x": 4, - "y": 5, - "w": 23, - "h": 23 - }, - "frame": { - "x": 65, - "y": 277, - "w": 23, - "h": 23 - } - }, - { - "filename": "hp_up", - "rotated": false, - "trimmed": true, - "sourceSize": { - "w": 32, - "h": 32 - }, - "spriteSourceSize": { - "x": 8, - "y": 4, - "w": 16, - "h": 24 - }, - "frame": { - "x": 88, - "y": 277, - "w": 16, - "h": 24 - } - }, - { - "filename": "never_melt_ice", - "rotated": false, - "trimmed": true, - "sourceSize": { - "w": 32, - "h": 32 - }, - "spriteSourceSize": { - "x": 5, - "y": 5, - "w": 22, - "h": 23 - }, - "frame": { - "x": 104, - "y": 278, - "w": 22, - "h": 23 - } - }, - { - "filename": "normal_tera_shard", - "rotated": false, - "trimmed": true, - "sourceSize": { - "w": 32, - "h": 32 - }, - "spriteSourceSize": { - "x": 6, - "y": 4, - "w": 22, - "h": 23 - }, - "frame": { - "x": 126, - "y": 278, - "w": 22, - "h": 23 - } - }, - { - "filename": "petaya_berry", - "rotated": false, - "trimmed": true, - "sourceSize": { - "w": 32, - "h": 32 - }, - "spriteSourceSize": { - "x": 5, - "y": 5, - "w": 22, - "h": 23 - }, - "frame": { - "x": 148, - "y": 278, - "w": 22, - "h": 23 - } - }, - { - "filename": "poison_tera_shard", - "rotated": false, - "trimmed": true, - "sourceSize": { - "w": 32, - "h": 32 - }, - "spriteSourceSize": { - "x": 6, - "y": 4, - "w": 22, - "h": 23 - }, - "frame": { - "x": 170, - "y": 279, - "w": 22, - "h": 23 - } - }, - { - "filename": "psychic_tera_shard", - "rotated": false, - "trimmed": true, - "sourceSize": { - "w": 32, - "h": 32 - }, - "spriteSourceSize": { - "x": 6, - "y": 4, - "w": 22, - "h": 23 - }, - "frame": { - "x": 192, - "y": 279, - "w": 22, - "h": 23 - } - }, - { - "filename": "rare_candy", - "rotated": false, - "trimmed": true, - "sourceSize": { - "w": 32, - "h": 32 - }, - "spriteSourceSize": { - "x": 4, - "y": 5, - "w": 23, - "h": 23 - }, - "frame": { - "x": 214, - "y": 281, - "w": 23, - "h": 23 - } - }, - { - "filename": "rarer_candy", - "rotated": false, - "trimmed": true, - "sourceSize": { - "w": 32, - "h": 32 - }, - "spriteSourceSize": { - "x": 4, - "y": 5, - "w": 23, - "h": 23 - }, - "frame": { - "x": 237, - "y": 281, - "w": 23, - "h": 23 - } - }, - { - "filename": "sharp_beak", - "rotated": false, - "trimmed": true, - "sourceSize": { - "w": 32, - "h": 32 - }, - "spriteSourceSize": { - "x": 5, - "y": 5, - "w": 21, - "h": 23 - }, - "frame": { - "x": 260, - "y": 281, - "w": 21, - "h": 23 - } - }, - { - "filename": "reaper_cloth", - "rotated": false, - "trimmed": true, - "sourceSize": { - "w": 32, - "h": 32 - }, - "spriteSourceSize": { - "x": 5, - "y": 5, - "w": 22, - "h": 23 - }, - "frame": { - "x": 281, - "y": 282, - "w": 22, - "h": 23 - } - }, - { - "filename": "rock_tera_shard", - "rotated": false, - "trimmed": true, - "sourceSize": { - "w": 32, - "h": 32 - }, - "spriteSourceSize": { - "x": 6, - "y": 4, - "w": 22, - "h": 23 - }, - "frame": { - "x": 303, - "y": 282, - "w": 22, - "h": 23 - } - }, - { - "filename": "steel_tera_shard", - "rotated": false, - "trimmed": true, - "sourceSize": { - "w": 32, - "h": 32 - }, - "spriteSourceSize": { - "x": 6, - "y": 4, - "w": 22, - "h": 23 - }, - "frame": { - "x": 325, - "y": 282, - "w": 22, - "h": 23 - } - }, - { - "filename": "scope_lens", - "rotated": false, - "trimmed": true, - "sourceSize": { - "w": 32, - "h": 32 - }, - "spriteSourceSize": { - "x": 4, - "y": 5, - "w": 24, - "h": 23 - }, - "frame": { - "x": 347, - "y": 283, - "w": 24, - "h": 23 - } - }, - { - "filename": "stellar_tera_shard", - "rotated": false, - "trimmed": true, - "sourceSize": { - "w": 32, - "h": 32 - }, - "spriteSourceSize": { - "x": 6, - "y": 4, - "w": 22, - "h": 23 - }, - "frame": { - "x": 371, - "y": 283, - "w": 22, - "h": 23 - } - }, - { - "filename": "water_tera_shard", - "rotated": false, - "trimmed": true, - "sourceSize": { - "w": 32, - "h": 32 - }, - "spriteSourceSize": { - "x": 6, - "y": 4, - "w": 22, - "h": 23 - }, - "frame": { - "x": 393, - "y": 283, - "w": 22, - "h": 23 - } - }, - { - "filename": "full_restore", - "rotated": false, - "trimmed": true, - "sourceSize": { - "w": 32, - "h": 32 - }, - "spriteSourceSize": { - "x": 7, - "y": 4, - "w": 18, - "h": 24 - }, - "frame": { - "x": 415, - "y": 284, - "w": 18, - "h": 24 - } - }, - { - "filename": "whipped_dream", - "rotated": false, - "trimmed": true, - "sourceSize": { - "w": 32, - "h": 32 - }, - "spriteSourceSize": { - "x": 5, - "y": 4, - "w": 21, - "h": 23 - }, - "frame": { - "x": 0, - "y": 298, - "w": 21, - "h": 23 - } - }, - { - "filename": "twisted_spoon", - "rotated": false, - "trimmed": true, - "sourceSize": { - "w": 32, - "h": 32 - }, - "spriteSourceSize": { - "x": 4, - "y": 5, - "w": 24, - "h": 23 - }, - "frame": { - "x": 21, - "y": 299, - "w": 24, - "h": 23 - } - }, - { - "filename": "iron", - "rotated": false, - "trimmed": true, - "sourceSize": { - "w": 32, - "h": 32 - }, - "spriteSourceSize": { - "x": 8, - "y": 4, - "w": 16, - "h": 24 - }, - "frame": { - "x": 45, - "y": 299, - "w": 16, - "h": 24 - } - }, - { - "filename": "wide_lens", - "rotated": false, - "trimmed": true, - "sourceSize": { - "w": 32, - "h": 32 - }, - "spriteSourceSize": { - "x": 5, - "y": 4, - "w": 22, - "h": 23 - }, - "frame": { - "x": 61, - "y": 300, - "w": 22, - "h": 23 - } - }, - { - "filename": "big_root", - "rotated": false, - "trimmed": true, - "sourceSize": { - "w": 32, - "h": 32 - }, - "spriteSourceSize": { - "x": 4, - "y": 4, - "w": 23, - "h": 24 - }, - "frame": { - "x": 83, - "y": 301, - "w": 23, - "h": 24 - } - }, - { - "filename": "blank_plate", - "rotated": false, - "trimmed": true, - "sourceSize": { - "w": 32, - "h": 32 - }, - "spriteSourceSize": { - "x": 4, - "y": 4, - "w": 24, - "h": 24 - }, - "frame": { - "x": 106, - "y": 301, - "w": 24, - "h": 24 - } - }, - { - "filename": "catching_charm", - "rotated": false, - "trimmed": true, - "sourceSize": { - "w": 32, - "h": 32 - }, - "spriteSourceSize": { - "x": 5, - "y": 4, - "w": 21, - "h": 24 - }, - "frame": { - "x": 130, - "y": 301, - "w": 21, - "h": 24 - } - }, - { - "filename": "lure", - "rotated": false, - "trimmed": true, - "sourceSize": { - "w": 32, - "h": 32 - }, - "spriteSourceSize": { - "x": 8, - "y": 4, - "w": 17, - "h": 24 - }, - "frame": { - "x": 151, - "y": 301, - "w": 17, - "h": 24 - } - }, - { - "filename": "choice_scarf", - "rotated": false, - "trimmed": true, - "sourceSize": { - "w": 32, - "h": 32 - }, - "spriteSourceSize": { - "x": 4, - "y": 4, - "w": 24, - "h": 24 - }, - "frame": { - "x": 168, - "y": 302, - "w": 24, - "h": 24 - } - }, - { - "filename": "max_elixir", - "rotated": false, - "trimmed": true, - "sourceSize": { - "w": 32, - "h": 32 - }, - "spriteSourceSize": { - "x": 7, - "y": 4, - "w": 18, - "h": 24 - }, - "frame": { - "x": 192, - "y": 302, - "w": 18, - "h": 24 - } - }, - { - "filename": "draco_plate", - "rotated": false, - "trimmed": true, - "sourceSize": { - "w": 32, - "h": 32 - }, - "spriteSourceSize": { - "x": 4, - "y": 4, - "w": 24, - "h": 24 - }, - "frame": { - "x": 210, - "y": 304, - "w": 24, - "h": 24 - } - }, - { - "filename": "dread_plate", - "rotated": false, - "trimmed": true, - "sourceSize": { - "w": 32, - "h": 32 - }, - "spriteSourceSize": { - "x": 4, - "y": 4, - "w": 24, - "h": 24 - }, - "frame": { - "x": 234, - "y": 304, - "w": 24, - "h": 24 - } - }, - { - "filename": "kings_rock", - "rotated": false, - "trimmed": true, - "sourceSize": { - "w": 32, - "h": 32 - }, - "spriteSourceSize": { - "x": 5, - "y": 4, - "w": 23, - "h": 24 - }, - "frame": { - "x": 258, - "y": 304, - "w": 23, - "h": 24 - } - }, - { - "filename": "earth_plate", - "rotated": false, - "trimmed": true, - "sourceSize": { - "w": 32, - "h": 32 - }, - "spriteSourceSize": { - "x": 4, - "y": 4, - "w": 24, - "h": 24 - }, - "frame": { - "x": 281, - "y": 305, - "w": 24, - "h": 24 - } - }, - { - "filename": "fist_plate", - "rotated": false, - "trimmed": true, - "sourceSize": { - "w": 32, - "h": 32 - }, - "spriteSourceSize": { - "x": 4, - "y": 4, - "w": 24, - "h": 24 - }, - "frame": { - "x": 305, - "y": 305, - "w": 24, - "h": 24 - } - }, - { - "filename": "max_ether", - "rotated": false, - "trimmed": true, - "sourceSize": { - "w": 32, - "h": 32 - }, - "spriteSourceSize": { - "x": 7, - "y": 4, - "w": 18, - "h": 24 - }, - "frame": { - "x": 329, - "y": 305, - "w": 18, - "h": 24 - } - }, - { - "filename": "flame_plate", - "rotated": false, - "trimmed": true, - "sourceSize": { - "w": 32, - "h": 32 - }, - "spriteSourceSize": { - "x": 4, - "y": 4, - "w": 24, - "h": 24 - }, - "frame": { - "x": 347, - "y": 306, - "w": 24, - "h": 24 - } - }, - { - "filename": "focus_band", - "rotated": false, - "trimmed": true, - "sourceSize": { - "w": 32, - "h": 32 - }, - "spriteSourceSize": { - "x": 4, - "y": 4, - "w": 24, - "h": 24 - }, - "frame": { - "x": 371, - "y": 306, - "w": 24, - "h": 24 - } - }, - { - "filename": "max_lure", - "rotated": false, - "trimmed": true, - "sourceSize": { - "w": 32, - "h": 32 - }, - "spriteSourceSize": { - "x": 8, - "y": 4, - "w": 17, - "h": 24 - }, - "frame": { - "x": 395, - "y": 306, - "w": 17, - "h": 24 - } - }, - { - "filename": "max_potion", - "rotated": false, - "trimmed": true, - "sourceSize": { - "w": 32, - "h": 32 - }, - "spriteSourceSize": { - "x": 7, - "y": 4, - "w": 18, - "h": 24 - }, - "frame": { - "x": 412, - "y": 308, - "w": 18, - "h": 24 - } - }, - { - "filename": "max_repel", - "rotated": false, - "trimmed": true, - "sourceSize": { - "w": 32, - "h": 32 - }, - "spriteSourceSize": { - "x": 8, - "y": 4, - "w": 16, - "h": 24 - }, - "frame": { - "x": 0, - "y": 321, - "w": 16, - "h": 24 - } - }, - { - "filename": "golden_punch", - "rotated": false, - "trimmed": true, - "sourceSize": { - "w": 32, - "h": 32 - }, - "spriteSourceSize": { - "x": 4, - "y": 4, - "w": 24, - "h": 24 - }, - "frame": { - "x": 16, - "y": 322, - "w": 24, - "h": 24 - } - }, - { - "filename": "gracidea", - "rotated": false, - "trimmed": true, - "sourceSize": { - "w": 32, - "h": 32 - }, - "spriteSourceSize": { - "x": 4, - "y": 4, - "w": 24, - "h": 24 - }, - "frame": { - "x": 40, - "y": 323, - "w": 24, - "h": 24 - } - }, - { - "filename": "pp_max", - "rotated": false, - "trimmed": true, - "sourceSize": { - "w": 32, - "h": 32 - }, - "spriteSourceSize": { - "x": 8, - "y": 4, - "w": 16, - "h": 24 - }, - "frame": { - "x": 64, - "y": 323, - "w": 16, - "h": 24 - } - }, - { - "filename": "grip_claw", - "rotated": false, - "trimmed": true, - "sourceSize": { - "w": 32, - "h": 32 - }, - "spriteSourceSize": { - "x": 4, - "y": 4, - "w": 24, - "h": 24 - }, - "frame": { - "x": 80, - "y": 325, - "w": 24, - "h": 24 - } - }, - { - "filename": "icicle_plate", - "rotated": false, - "trimmed": true, - "sourceSize": { - "w": 32, - "h": 32 - }, - "spriteSourceSize": { - "x": 4, - "y": 4, - "w": 24, - "h": 24 - }, - "frame": { - "x": 104, - "y": 325, - "w": 24, - "h": 24 - } - }, - { - "filename": "insect_plate", - "rotated": false, - "trimmed": true, - "sourceSize": { - "w": 32, - "h": 32 - }, - "spriteSourceSize": { - "x": 4, - "y": 4, - "w": 24, - "h": 24 - }, - "frame": { - "x": 128, - "y": 325, - "w": 24, - "h": 24 - } - }, - { - "filename": "pp_up", - "rotated": false, - "trimmed": true, - "sourceSize": { - "w": 32, - "h": 32 - }, - "spriteSourceSize": { - "x": 8, - "y": 4, - "w": 16, - "h": 24 - }, - "frame": { - "x": 152, - "y": 325, - "w": 16, - "h": 24 - } - }, - { - "filename": "iron_plate", - "rotated": false, - "trimmed": true, - "sourceSize": { - "w": 32, - "h": 32 - }, - "spriteSourceSize": { - "x": 4, - "y": 4, - "w": 24, - "h": 24 - }, - "frame": { - "x": 168, - "y": 326, - "w": 24, - "h": 24 - } - }, - { - "filename": "protein", - "rotated": false, - "trimmed": true, - "sourceSize": { - "w": 32, - "h": 32 - }, - "spriteSourceSize": { - "x": 8, - "y": 4, - "w": 16, - "h": 24 - }, - "frame": { - "x": 192, - "y": 326, - "w": 16, - "h": 24 - } - }, - { - "filename": "lucky_punch", - "rotated": false, - "trimmed": true, - "sourceSize": { - "w": 32, - "h": 32 - }, - "spriteSourceSize": { - "x": 4, - "y": 4, - "w": 24, - "h": 24 - }, - "frame": { - "x": 208, - "y": 328, - "w": 24, - "h": 24 - } - }, - { - "filename": "lucky_punch_great", - "rotated": false, - "trimmed": true, - "sourceSize": { - "w": 32, - "h": 32 - }, - "spriteSourceSize": { - "x": 4, - "y": 4, - "w": 24, - "h": 24 - }, - "frame": { - "x": 232, - "y": 328, - "w": 24, - "h": 24 - } - }, - { - "filename": "lucky_punch_master", - "rotated": false, - "trimmed": true, - "sourceSize": { - "w": 32, - "h": 32 - }, - "spriteSourceSize": { - "x": 4, - "y": 4, - "w": 24, - "h": 24 - }, - "frame": { - "x": 256, - "y": 328, - "w": 24, - "h": 24 - } - }, - { - "filename": "lucky_punch_ultra", - "rotated": false, - "trimmed": true, - "sourceSize": { - "w": 32, - "h": 32 - }, - "spriteSourceSize": { - "x": 4, - "y": 4, - "w": 24, - "h": 24 - }, - "frame": { - "x": 280, - "y": 329, - "w": 24, - "h": 24 - } - }, - { - "filename": "lustrous_globe", - "rotated": false, - "trimmed": true, - "sourceSize": { - "w": 32, - "h": 32 - }, - "spriteSourceSize": { - "x": 4, - "y": 4, - "w": 24, - "h": 24 - }, - "frame": { - "x": 304, - "y": 329, - "w": 24, - "h": 24 - } - }, - { - "filename": "repel", - "rotated": false, - "trimmed": true, - "sourceSize": { - "w": 32, - "h": 32 - }, - "spriteSourceSize": { - "x": 8, - "y": 4, - "w": 16, - "h": 24 - }, - "frame": { - "x": 328, - "y": 329, - "w": 16, - "h": 24 - } - }, - { - "filename": "max_revive", - "rotated": false, - "trimmed": true, - "sourceSize": { - "w": 32, - "h": 32 - }, - "spriteSourceSize": { - "x": 5, - "y": 4, - "w": 22, - "h": 24 - }, - "frame": { - "x": 344, - "y": 330, - "w": 22, - "h": 24 - } - }, - { - "filename": "meadow_plate", - "rotated": false, - "trimmed": true, - "sourceSize": { - "w": 32, - "h": 32 - }, - "spriteSourceSize": { - "x": 4, - "y": 4, - "w": 24, - "h": 24 - }, - "frame": { - "x": 366, - "y": 330, - "w": 24, - "h": 24 - } - }, - { - "filename": "oval_charm", - "rotated": false, - "trimmed": true, - "sourceSize": { - "w": 32, - "h": 32 - }, - "spriteSourceSize": { - "x": 6, - "y": 4, - "w": 21, - "h": 24 - }, - "frame": { - "x": 390, - "y": 330, - "w": 21, - "h": 24 - } - }, - { - "filename": "mind_plate", - "rotated": false, - "trimmed": true, - "sourceSize": { - "w": 32, - "h": 32 - }, - "spriteSourceSize": { - "x": 4, - "y": 4, - "w": 24, - "h": 24 - }, - "frame": { - "x": 411, - "y": 332, - "w": 24, - "h": 24 - } - }, - { - "filename": "super_repel", - "rotated": false, - "trimmed": true, - "sourceSize": { - "w": 32, - "h": 32 - }, - "spriteSourceSize": { - "x": 8, - "y": 4, - "w": 16, - "h": 24 - }, - "frame": { - "x": 0, - "y": 345, - "w": 16, - "h": 24 - } - }, - { - "filename": "muscle_band", - "rotated": false, - "trimmed": true, - "sourceSize": { - "w": 32, - "h": 32 - }, - "spriteSourceSize": { - "x": 4, - "y": 4, - "w": 24, - "h": 24 - }, - "frame": { - "x": 16, - "y": 346, - "w": 24, - "h": 24 - } - }, - { - "filename": "pixie_plate", - "rotated": false, - "trimmed": true, - "sourceSize": { - "w": 32, - "h": 32 - }, - "spriteSourceSize": { - "x": 4, - "y": 4, - "w": 24, - "h": 24 - }, - "frame": { - "x": 40, - "y": 347, - "w": 24, - "h": 24 - } - }, - { - "filename": "unknown", - "rotated": false, - "trimmed": true, - "sourceSize": { - "w": 32, - "h": 32 - }, - "spriteSourceSize": { - "x": 8, - "y": 4, - "w": 16, - "h": 24 - }, - "frame": { - "x": 64, - "y": 347, - "w": 16, - "h": 24 - } - }, - { - "filename": "red_orb", - "rotated": false, - "trimmed": true, - "sourceSize": { - "w": 32, - "h": 32 - }, - "spriteSourceSize": { - "x": 6, - "y": 4, - "w": 20, - "h": 24 - }, - "frame": { - "x": 80, - "y": 349, - "w": 20, - "h": 24 - } - }, - { - "filename": "reveal_glass", - "rotated": false, - "trimmed": true, - "sourceSize": { - "w": 32, - "h": 32 - }, - "spriteSourceSize": { - "x": 4, - "y": 4, - "w": 23, - "h": 24 - }, - "frame": { - "x": 100, - "y": 349, - "w": 23, - "h": 24 - } - }, - { - "filename": "salac_berry", - "rotated": false, - "trimmed": true, - "sourceSize": { - "w": 32, - "h": 32 - }, - "spriteSourceSize": { - "x": 4, - "y": 4, - "w": 24, - "h": 24 - }, - "frame": { - "x": 123, - "y": 349, - "w": 24, - "h": 24 - } - }, - { - "filename": "shiny_charm", - "rotated": false, - "trimmed": true, - "sourceSize": { - "w": 32, - "h": 32 - }, - "spriteSourceSize": { - "x": 6, - "y": 4, - "w": 21, - "h": 24 - }, - "frame": { - "x": 147, - "y": 349, - "w": 21, - "h": 24 - } - }, - { - "filename": "scanner", - "rotated": false, - "trimmed": true, - "sourceSize": { - "w": 32, - "h": 32 - }, - "spriteSourceSize": { - "x": 4, - "y": 4, - "w": 24, - "h": 24 - }, - "frame": { - "x": 168, - "y": 350, - "w": 24, - "h": 24 - } - }, - { - "filename": "zinc", - "rotated": false, - "trimmed": true, - "sourceSize": { - "w": 32, - "h": 32 - }, - "spriteSourceSize": { - "x": 8, - "y": 4, - "w": 16, - "h": 24 - }, - "frame": { - "x": 192, - "y": 350, - "w": 16, - "h": 24 - } - }, - { - "filename": "silk_scarf", - "rotated": false, - "trimmed": true, - "sourceSize": { - "w": 32, - "h": 32 - }, - "spriteSourceSize": { - "x": 4, - "y": 4, - "w": 24, - "h": 24 - }, - "frame": { - "x": 208, - "y": 352, - "w": 24, - "h": 24 - } - }, - { - "filename": "sky_plate", - "rotated": false, - "trimmed": true, - "sourceSize": { - "w": 32, - "h": 32 - }, - "spriteSourceSize": { - "x": 4, - "y": 4, - "w": 24, - "h": 24 - }, - "frame": { - "x": 232, - "y": 352, - "w": 24, - "h": 24 - } - }, - { - "filename": "splash_plate", - "rotated": false, - "trimmed": true, - "sourceSize": { - "w": 32, - "h": 32 - }, - "spriteSourceSize": { - "x": 4, - "y": 4, - "w": 24, - "h": 24 - }, - "frame": { - "x": 256, - "y": 352, - "w": 24, - "h": 24 - } - }, - { - "filename": "spooky_plate", - "rotated": false, - "trimmed": true, - "sourceSize": { - "w": 32, - "h": 32 - }, - "spriteSourceSize": { - "x": 4, - "y": 4, - "w": 24, - "h": 24 - }, - "frame": { - "x": 280, - "y": 353, - "w": 24, - "h": 24 - } - }, - { - "filename": "stone_plate", - "rotated": false, - "trimmed": true, - "sourceSize": { - "w": 32, - "h": 32 - }, - "spriteSourceSize": { - "x": 4, - "y": 4, - "w": 24, - "h": 24 - }, - "frame": { - "x": 304, - "y": 353, - "w": 24, - "h": 24 - } - }, - { - "filename": "sun_stone", - "rotated": false, - "trimmed": true, - "sourceSize": { - "w": 32, - "h": 32 - }, - "spriteSourceSize": { - "x": 4, - "y": 4, - "w": 24, - "h": 24 - }, - "frame": { - "x": 328, - "y": 354, - "w": 24, - "h": 24 - } - }, - { - "filename": "super_lure", - "rotated": false, - "trimmed": true, - "sourceSize": { - "w": 32, - "h": 32 - }, - "spriteSourceSize": { - "x": 8, - "y": 4, - "w": 17, - "h": 24 - }, - "frame": { - "x": 352, - "y": 354, - "w": 17, - "h": 24 - } - }, - { - "filename": "toxic_plate", - "rotated": false, - "trimmed": true, - "sourceSize": { - "w": 32, - "h": 32 - }, - "spriteSourceSize": { - "x": 4, - "y": 4, - "w": 24, - "h": 24 - }, - "frame": { - "x": 369, - "y": 354, - "w": 24, - "h": 24 - } - }, - { - "filename": "zap_plate", - "rotated": false, - "trimmed": true, - "sourceSize": { - "w": 32, - "h": 32 - }, - "spriteSourceSize": { - "x": 4, - "y": 4, - "w": 24, - "h": 24 - }, - "frame": { - "x": 393, - "y": 356, - "w": 24, - "h": 24 - } - }, - { - "filename": "prison_bottle", - "rotated": false, - "trimmed": true, - "sourceSize": { - "w": 32, - "h": 32 - }, - "spriteSourceSize": { - "x": 7, "y": 1, - "w": 17, + "w": 29, "h": 30 }, - "frame": { - "x": 417, - "y": 356, - "w": 17, - "h": 30 - } - }, - { - "filename": "black_augurite", - "rotated": false, - "trimmed": true, - "sourceSize": { - "w": 32, - "h": 32 - }, - "spriteSourceSize": { - "x": 5, - "y": 3, - "w": 22, - "h": 25 - }, "frame": { "x": 0, - "y": 370, - "w": 22, - "h": 25 - } - }, - { - "filename": "ability_charm", - "rotated": false, - "trimmed": true, - "sourceSize": { - "w": 32, - "h": 32 - }, - "spriteSourceSize": { - "x": 3, - "y": 3, - "w": 23, - "h": 26 - }, - "frame": { - "x": 22, - "y": 371, - "w": 23, - "h": 26 - } - }, - { - "filename": "cornerstone_mask", - "rotated": false, - "trimmed": true, - "sourceSize": { - "w": 32, - "h": 32 - }, - "spriteSourceSize": { - "x": 4, - "y": 3, - "w": 24, - "h": 26 - }, - "frame": { - "x": 45, - "y": 371, - "w": 24, - "h": 26 - } - }, - { - "filename": "linking_cord", - "rotated": false, - "trimmed": true, - "sourceSize": { - "w": 32, - "h": 32 - }, - "spriteSourceSize": { - "x": 3, - "y": 3, - "w": 27, - "h": 26 - }, - "frame": { - "x": 69, - "y": 373, - "w": 27, - "h": 26 - } - }, - { - "filename": "mystical_rock", - "rotated": false, - "trimmed": true, - "sourceSize": { - "w": 32, - "h": 32 - }, - "spriteSourceSize": { - "x": 2, - "y": 3, - "w": 28, - "h": 26 - }, - "frame": { - "x": 96, - "y": 373, - "w": 28, - "h": 26 + "y": 0, + "w": 29, + "h": 30 } }, { @@ -8004,54 +45,12 @@ "h": 27 }, "frame": { - "x": 124, - "y": 373, + "x": 29, + "y": 0, "w": 32, "h": 27 } }, - { - "filename": "leaders_crest", - "rotated": false, - "trimmed": true, - "sourceSize": { - "w": 32, - "h": 32 - }, - "spriteSourceSize": { - "x": 2, - "y": 3, - "w": 29, - "h": 27 - }, - "frame": { - "x": 156, - "y": 374, - "w": 29, - "h": 27 - } - }, - { - "filename": "ribbon_gen1", - "rotated": false, - "trimmed": true, - "sourceSize": { - "w": 32, - "h": 32 - }, - "spriteSourceSize": { - "x": 5, - "y": 2, - "w": 22, - "h": 28 - }, - "frame": { - "x": 185, - "y": 374, - "w": 22, - "h": 28 - } - }, { "filename": "max_mushrooms", "rotated": false, @@ -8067,33 +66,12 @@ "h": 28 }, "frame": { - "x": 207, - "y": 376, + "x": 0, + "y": 30, "w": 29, "h": 28 } }, - { - "filename": "ribbon_gen2", - "rotated": false, - "trimmed": true, - "sourceSize": { - "w": 32, - "h": 32 - }, - "spriteSourceSize": { - "x": 2, - "y": 2, - "w": 28, - "h": 28 - }, - "frame": { - "x": 236, - "y": 376, - "w": 28, - "h": 28 - } - }, { "filename": "ribbon_gen4", "rotated": false, @@ -8109,14 +87,14 @@ "h": 28 }, "frame": { - "x": 264, - "y": 377, + "x": 29, + "y": 27, "w": 30, "h": 28 } }, { - "filename": "ribbon_gen5", + "filename": "leaders_crest", "rotated": false, "trimmed": true, "sourceSize": { @@ -8124,184 +102,37 @@ "h": 32 }, "spriteSourceSize": { - "x": 5, + "x": 2, + "y": 3, + "w": 29, + "h": 27 + }, + "frame": { + "x": 61, + "y": 0, + "w": 29, + "h": 27 + } + }, + { + "filename": "ribbon_gen2", + "rotated": false, + "trimmed": true, + "sourceSize": { + "w": 32, + "h": 32 + }, + "spriteSourceSize": { + "x": 2, "y": 2, - "w": 22, + "w": 28, "h": 28 }, - "frame": { - "x": 294, - "y": 377, - "w": 22, - "h": 28 - } - }, - { - "filename": "ribbon_gen6", - "rotated": false, - "trimmed": true, - "sourceSize": { - "w": 32, - "h": 32 - }, - "spriteSourceSize": { - "x": 5, - "y": 2, - "w": 22, - "h": 28 - }, - "frame": { - "x": 316, - "y": 378, - "w": 22, - "h": 28 - } - }, - { - "filename": "ribbon_gen8", - "rotated": false, - "trimmed": true, - "sourceSize": { - "w": 32, - "h": 32 - }, - "spriteSourceSize": { - "x": 5, - "y": 2, - "w": 22, - "h": 28 - }, - "frame": { - "x": 338, - "y": 378, - "w": 22, - "h": 28 - } - }, - { - "filename": "ribbon_gen3", - "rotated": false, - "trimmed": true, - "sourceSize": { - "w": 32, - "h": 32 - }, - "spriteSourceSize": { - "x": 5, - "y": 1, - "w": 22, - "h": 29 - }, - "frame": { - "x": 360, - "y": 378, - "w": 22, - "h": 29 - } - }, - { - "filename": "ribbon_gen7", - "rotated": false, - "trimmed": true, - "sourceSize": { - "w": 32, - "h": 32 - }, - "spriteSourceSize": { - "x": 5, - "y": 1, - "w": 22, - "h": 29 - }, - "frame": { - "x": 382, - "y": 380, - "w": 22, - "h": 29 - } - }, - { - "filename": "ribbon_gen9", - "rotated": false, - "trimmed": true, - "sourceSize": { - "w": 32, - "h": 32 - }, - "spriteSourceSize": { - "x": 5, - "y": 1, - "w": 22, - "h": 29 - }, - "frame": { - "x": 404, - "y": 386, - "w": 22, - "h": 29 - } - }, - { - "filename": "inverse", - "rotated": false, - "trimmed": true, - "sourceSize": { - "w": 32, - "h": 32 - }, - "spriteSourceSize": { - "x": 5, - "y": 1, - "w": 22, - "h": 30 - }, "frame": { "x": 0, - "y": 395, - "w": 22, - "h": 30 - } - }, - { - "filename": "galarica_cuff", - "rotated": false, - "trimmed": true, - "sourceSize": { - "w": 32, - "h": 32 - }, - "spriteSourceSize": { - "x": 1, - "y": 1, - "w": 29, - "h": 30 - }, - "frame": { - "x": 22, - "y": 397, - "w": 29, - "h": 30 - } - }, - { - "filename": "exp_charm", - "rotated": false, - "trimmed": true, - "sourceSize": { - "w": 32, - "h": 32 - }, - "spriteSourceSize": { - "x": 7, - "y": 1, - "w": 17, - "h": 31 - }, - "frame": { - "x": 51, - "y": 397, - "w": 17, - "h": 31 + "y": 58, + "w": 28, + "h": 28 } }, { @@ -8319,54 +150,12 @@ "h": 31 }, "frame": { - "x": 68, - "y": 399, + "x": 0, + "y": 86, "w": 22, "h": 31 } }, - { - "filename": "golden_exp_charm", - "rotated": false, - "trimmed": true, - "sourceSize": { - "w": 32, - "h": 32 - }, - "spriteSourceSize": { - "x": 7, - "y": 1, - "w": 17, - "h": 31 - }, - "frame": { - "x": 90, - "y": 399, - "w": 17, - "h": 31 - } - }, - { - "filename": "super_exp_charm", - "rotated": false, - "trimmed": true, - "sourceSize": { - "w": 32, - "h": 32 - }, - "spriteSourceSize": { - "x": 7, - "y": 1, - "w": 17, - "h": 31 - }, - "frame": { - "x": 107, - "y": 399, - "w": 17, - "h": 31 - } - }, { "filename": "great_ribbon", "rotated": false, @@ -8382,12 +171,33 @@ "h": 31 }, "frame": { - "x": 124, - "y": 400, + "x": 0, + "y": 117, "w": 22, "h": 31 } }, + { + "filename": "linking_cord", + "rotated": false, + "trimmed": true, + "sourceSize": { + "w": 32, + "h": 32 + }, + "spriteSourceSize": { + "x": 3, + "y": 3, + "w": 27, + "h": 26 + }, + "frame": { + "x": 59, + "y": 27, + "w": 27, + "h": 26 + } + }, { "filename": "master_ribbon", "rotated": false, @@ -8403,8 +213,8 @@ "h": 31 }, "frame": { - "x": 146, - "y": 401, + "x": 0, + "y": 148, "w": 22, "h": 31 } @@ -8424,8 +234,8 @@ "h": 31 }, "frame": { - "x": 168, - "y": 402, + "x": 0, + "y": 179, "w": 22, "h": 31 } @@ -8445,11 +255,8201 @@ "h": 31 }, "frame": { - "x": 190, - "y": 404, + "x": 0, + "y": 210, "w": 22, "h": 31 } + }, + { + "filename": "inverse", + "rotated": false, + "trimmed": true, + "sourceSize": { + "w": 32, + "h": 32 + }, + "spriteSourceSize": { + "x": 5, + "y": 1, + "w": 22, + "h": 30 + }, + "frame": { + "x": 0, + "y": 241, + "w": 22, + "h": 30 + } + }, + { + "filename": "ribbon_gen3", + "rotated": false, + "trimmed": true, + "sourceSize": { + "w": 32, + "h": 32 + }, + "spriteSourceSize": { + "x": 5, + "y": 1, + "w": 22, + "h": 29 + }, + "frame": { + "x": 0, + "y": 271, + "w": 22, + "h": 29 + } + }, + { + "filename": "ribbon_gen7", + "rotated": false, + "trimmed": true, + "sourceSize": { + "w": 32, + "h": 32 + }, + "spriteSourceSize": { + "x": 5, + "y": 1, + "w": 22, + "h": 29 + }, + "frame": { + "x": 0, + "y": 300, + "w": 22, + "h": 29 + } + }, + { + "filename": "ribbon_gen9", + "rotated": false, + "trimmed": true, + "sourceSize": { + "w": 32, + "h": 32 + }, + "spriteSourceSize": { + "x": 5, + "y": 1, + "w": 22, + "h": 29 + }, + "frame": { + "x": 0, + "y": 329, + "w": 22, + "h": 29 + } + }, + { + "filename": "cornerstone_mask", + "rotated": false, + "trimmed": true, + "sourceSize": { + "w": 32, + "h": 32 + }, + "spriteSourceSize": { + "x": 4, + "y": 3, + "w": 24, + "h": 26 + }, + "frame": { + "x": 90, + "y": 0, + "w": 24, + "h": 26 + } + }, + { + "filename": "ribbon_gen1", + "rotated": false, + "trimmed": true, + "sourceSize": { + "w": 32, + "h": 32 + }, + "spriteSourceSize": { + "x": 5, + "y": 2, + "w": 22, + "h": 28 + }, + "frame": { + "x": 0, + "y": 358, + "w": 22, + "h": 28 + } + }, + { + "filename": "ribbon_gen5", + "rotated": false, + "trimmed": true, + "sourceSize": { + "w": 32, + "h": 32 + }, + "spriteSourceSize": { + "x": 5, + "y": 2, + "w": 22, + "h": 28 + }, + "frame": { + "x": 0, + "y": 386, + "w": 22, + "h": 28 + } + }, + { + "filename": "choice_specs", + "rotated": false, + "trimmed": true, + "sourceSize": { + "w": 32, + "h": 32 + }, + "spriteSourceSize": { + "x": 4, + "y": 8, + "w": 24, + "h": 18 + }, + "frame": { + "x": 0, + "y": 414, + "w": 24, + "h": 18 + } + }, + { + "filename": "ability_charm", + "rotated": false, + "trimmed": true, + "sourceSize": { + "w": 32, + "h": 32 + }, + "spriteSourceSize": { + "x": 3, + "y": 3, + "w": 23, + "h": 26 + }, + "frame": { + "x": 114, + "y": 0, + "w": 23, + "h": 26 + } + }, + { + "filename": "map", + "rotated": false, + "trimmed": true, + "sourceSize": { + "w": 32, + "h": 32 + }, + "spriteSourceSize": { + "x": 3, + "y": 5, + "w": 27, + "h": 22 + }, + "frame": { + "x": 137, + "y": 0, + "w": 27, + "h": 22 + } + }, + { + "filename": "mint_atk", + "rotated": false, + "trimmed": true, + "sourceSize": { + "w": 32, + "h": 32 + }, + "spriteSourceSize": { + "x": 2, + "y": 5, + "w": 28, + "h": 21 + }, + "frame": { + "x": 164, + "y": 0, + "w": 28, + "h": 21 + } + }, + { + "filename": "mint_def", + "rotated": false, + "trimmed": true, + "sourceSize": { + "w": 32, + "h": 32 + }, + "spriteSourceSize": { + "x": 2, + "y": 5, + "w": 28, + "h": 21 + }, + "frame": { + "x": 192, + "y": 0, + "w": 28, + "h": 21 + } + }, + { + "filename": "mint_neutral", + "rotated": false, + "trimmed": true, + "sourceSize": { + "w": 32, + "h": 32 + }, + "spriteSourceSize": { + "x": 2, + "y": 5, + "w": 28, + "h": 21 + }, + "frame": { + "x": 220, + "y": 0, + "w": 28, + "h": 21 + } + }, + { + "filename": "mint_spatk", + "rotated": false, + "trimmed": true, + "sourceSize": { + "w": 32, + "h": 32 + }, + "spriteSourceSize": { + "x": 2, + "y": 5, + "w": 28, + "h": 21 + }, + "frame": { + "x": 248, + "y": 0, + "w": 28, + "h": 21 + } + }, + { + "filename": "mint_spd", + "rotated": false, + "trimmed": true, + "sourceSize": { + "w": 32, + "h": 32 + }, + "spriteSourceSize": { + "x": 2, + "y": 5, + "w": 28, + "h": 21 + }, + "frame": { + "x": 276, + "y": 0, + "w": 28, + "h": 21 + } + }, + { + "filename": "mint_spdef", + "rotated": false, + "trimmed": true, + "sourceSize": { + "w": 32, + "h": 32 + }, + "spriteSourceSize": { + "x": 2, + "y": 5, + "w": 28, + "h": 21 + }, + "frame": { + "x": 304, + "y": 0, + "w": 28, + "h": 21 + } + }, + { + "filename": "chipped_pot", + "rotated": false, + "trimmed": true, + "sourceSize": { + "w": 32, + "h": 32 + }, + "spriteSourceSize": { + "x": 3, + "y": 6, + "w": 26, + "h": 20 + }, + "frame": { + "x": 332, + "y": 0, + "w": 26, + "h": 20 + } + }, + { + "filename": "cracked_pot", + "rotated": false, + "trimmed": true, + "sourceSize": { + "w": 32, + "h": 32 + }, + "spriteSourceSize": { + "x": 3, + "y": 6, + "w": 26, + "h": 20 + }, + "frame": { + "x": 358, + "y": 0, + "w": 26, + "h": 20 + } + }, + { + "filename": "legend_plate", + "rotated": false, + "trimmed": true, + "sourceSize": { + "w": 32, + "h": 32 + }, + "spriteSourceSize": { + "x": 3, + "y": 6, + "w": 25, + "h": 20 + }, + "frame": { + "x": 384, + "y": 0, + "w": 25, + "h": 20 + } + }, + { + "filename": "big_root", + "rotated": false, + "trimmed": true, + "sourceSize": { + "w": 32, + "h": 32 + }, + "spriteSourceSize": { + "x": 4, + "y": 4, + "w": 23, + "h": 24 + }, + "frame": { + "x": 409, + "y": 0, + "w": 23, + "h": 24 + } + }, + { + "filename": "exp_charm", + "rotated": false, + "trimmed": true, + "sourceSize": { + "w": 32, + "h": 32 + }, + "spriteSourceSize": { + "x": 7, + "y": 1, + "w": 17, + "h": 31 + }, + "frame": { + "x": 22, + "y": 86, + "w": 17, + "h": 31 + } + }, + { + "filename": "golden_exp_charm", + "rotated": false, + "trimmed": true, + "sourceSize": { + "w": 32, + "h": 32 + }, + "spriteSourceSize": { + "x": 7, + "y": 1, + "w": 17, + "h": 31 + }, + "frame": { + "x": 22, + "y": 117, + "w": 17, + "h": 31 + } + }, + { + "filename": "super_exp_charm", + "rotated": false, + "trimmed": true, + "sourceSize": { + "w": 32, + "h": 32 + }, + "spriteSourceSize": { + "x": 7, + "y": 1, + "w": 17, + "h": 31 + }, + "frame": { + "x": 22, + "y": 148, + "w": 17, + "h": 31 + } + }, + { + "filename": "prison_bottle", + "rotated": false, + "trimmed": true, + "sourceSize": { + "w": 32, + "h": 32 + }, + "spriteSourceSize": { + "x": 7, + "y": 1, + "w": 17, + "h": 30 + }, + "frame": { + "x": 22, + "y": 179, + "w": 17, + "h": 30 + } + }, + { + "filename": "ribbon_gen6", + "rotated": false, + "trimmed": true, + "sourceSize": { + "w": 32, + "h": 32 + }, + "spriteSourceSize": { + "x": 5, + "y": 2, + "w": 22, + "h": 28 + }, + "frame": { + "x": 22, + "y": 209, + "w": 22, + "h": 28 + } + }, + { + "filename": "ribbon_gen8", + "rotated": false, + "trimmed": true, + "sourceSize": { + "w": 32, + "h": 32 + }, + "spriteSourceSize": { + "x": 5, + "y": 2, + "w": 22, + "h": 28 + }, + "frame": { + "x": 22, + "y": 237, + "w": 22, + "h": 28 + } + }, + { + "filename": "black_augurite", + "rotated": false, + "trimmed": true, + "sourceSize": { + "w": 32, + "h": 32 + }, + "spriteSourceSize": { + "x": 5, + "y": 3, + "w": 22, + "h": 25 + }, + "frame": { + "x": 22, + "y": 265, + "w": 22, + "h": 25 + } + }, + { + "filename": "blank_plate", + "rotated": false, + "trimmed": true, + "sourceSize": { + "w": 32, + "h": 32 + }, + "spriteSourceSize": { + "x": 4, + "y": 4, + "w": 24, + "h": 24 + }, + "frame": { + "x": 22, + "y": 290, + "w": 24, + "h": 24 + } + }, + { + "filename": "choice_scarf", + "rotated": false, + "trimmed": true, + "sourceSize": { + "w": 32, + "h": 32 + }, + "spriteSourceSize": { + "x": 4, + "y": 4, + "w": 24, + "h": 24 + }, + "frame": { + "x": 22, + "y": 314, + "w": 24, + "h": 24 + } + }, + { + "filename": "draco_plate", + "rotated": false, + "trimmed": true, + "sourceSize": { + "w": 32, + "h": 32 + }, + "spriteSourceSize": { + "x": 4, + "y": 4, + "w": 24, + "h": 24 + }, + "frame": { + "x": 22, + "y": 338, + "w": 24, + "h": 24 + } + }, + { + "filename": "dread_plate", + "rotated": false, + "trimmed": true, + "sourceSize": { + "w": 32, + "h": 32 + }, + "spriteSourceSize": { + "x": 4, + "y": 4, + "w": 24, + "h": 24 + }, + "frame": { + "x": 22, + "y": 362, + "w": 24, + "h": 24 + } + }, + { + "filename": "earth_plate", + "rotated": false, + "trimmed": true, + "sourceSize": { + "w": 32, + "h": 32 + }, + "spriteSourceSize": { + "x": 4, + "y": 4, + "w": 24, + "h": 24 + }, + "frame": { + "x": 22, + "y": 386, + "w": 24, + "h": 24 + } + }, + { + "filename": "exp_balance", + "rotated": false, + "trimmed": true, + "sourceSize": { + "w": 32, + "h": 32 + }, + "spriteSourceSize": { + "x": 4, + "y": 5, + "w": 24, + "h": 22 + }, + "frame": { + "x": 24, + "y": 410, + "w": 24, + "h": 22 + } + }, + { + "filename": "ultranecrozium_z", + "rotated": false, + "trimmed": true, + "sourceSize": { + "w": 32, + "h": 32 + }, + "spriteSourceSize": { + "x": 1, + "y": 9, + "w": 30, + "h": 15 + }, + "frame": { + "x": 29, + "y": 55, + "w": 30, + "h": 15 + } + }, + { + "filename": "mega_bracelet", + "rotated": false, + "trimmed": true, + "sourceSize": { + "w": 32, + "h": 32 + }, + "spriteSourceSize": { + "x": 6, + "y": 8, + "w": 20, + "h": 16 + }, + "frame": { + "x": 28, + "y": 70, + "w": 20, + "h": 16 + } + }, + { + "filename": "mystical_rock", + "rotated": false, + "trimmed": true, + "sourceSize": { + "w": 32, + "h": 32 + }, + "spriteSourceSize": { + "x": 4, + "y": 5, + "w": 25, + "h": 23 + }, + "frame": { + "x": 59, + "y": 53, + "w": 25, + "h": 23 + } + }, + { + "filename": "calcium", + "rotated": false, + "trimmed": true, + "sourceSize": { + "w": 32, + "h": 32 + }, + "spriteSourceSize": { + "x": 8, + "y": 4, + "w": 16, + "h": 24 + }, + "frame": { + "x": 39, + "y": 86, + "w": 16, + "h": 24 + } + }, + { + "filename": "carbos", + "rotated": false, + "trimmed": true, + "sourceSize": { + "w": 32, + "h": 32 + }, + "spriteSourceSize": { + "x": 8, + "y": 4, + "w": 16, + "h": 24 + }, + "frame": { + "x": 39, + "y": 110, + "w": 16, + "h": 24 + } + }, + { + "filename": "catching_charm", + "rotated": false, + "trimmed": true, + "sourceSize": { + "w": 32, + "h": 32 + }, + "spriteSourceSize": { + "x": 5, + "y": 4, + "w": 21, + "h": 24 + }, + "frame": { + "x": 39, + "y": 134, + "w": 21, + "h": 24 + } + }, + { + "filename": "fist_plate", + "rotated": false, + "trimmed": true, + "sourceSize": { + "w": 32, + "h": 32 + }, + "spriteSourceSize": { + "x": 4, + "y": 4, + "w": 24, + "h": 24 + }, + "frame": { + "x": 39, + "y": 158, + "w": 24, + "h": 24 + } + }, + { + "filename": "flame_plate", + "rotated": false, + "trimmed": true, + "sourceSize": { + "w": 32, + "h": 32 + }, + "spriteSourceSize": { + "x": 4, + "y": 4, + "w": 24, + "h": 24 + }, + "frame": { + "x": 39, + "y": 182, + "w": 24, + "h": 24 + } + }, + { + "filename": "focus_band", + "rotated": false, + "trimmed": true, + "sourceSize": { + "w": 32, + "h": 32 + }, + "spriteSourceSize": { + "x": 4, + "y": 4, + "w": 24, + "h": 24 + }, + "frame": { + "x": 44, + "y": 206, + "w": 24, + "h": 24 + } + }, + { + "filename": "golden_punch", + "rotated": false, + "trimmed": true, + "sourceSize": { + "w": 32, + "h": 32 + }, + "spriteSourceSize": { + "x": 4, + "y": 4, + "w": 24, + "h": 24 + }, + "frame": { + "x": 44, + "y": 230, + "w": 24, + "h": 24 + } + }, + { + "filename": "gracidea", + "rotated": false, + "trimmed": true, + "sourceSize": { + "w": 32, + "h": 32 + }, + "spriteSourceSize": { + "x": 4, + "y": 4, + "w": 24, + "h": 24 + }, + "frame": { + "x": 44, + "y": 254, + "w": 24, + "h": 24 + } + }, + { + "filename": "grip_claw", + "rotated": false, + "trimmed": true, + "sourceSize": { + "w": 32, + "h": 32 + }, + "spriteSourceSize": { + "x": 4, + "y": 4, + "w": 24, + "h": 24 + }, + "frame": { + "x": 55, + "y": 76, + "w": 24, + "h": 24 + } + }, + { + "filename": "icicle_plate", + "rotated": false, + "trimmed": true, + "sourceSize": { + "w": 32, + "h": 32 + }, + "spriteSourceSize": { + "x": 4, + "y": 4, + "w": 24, + "h": 24 + }, + "frame": { + "x": 55, + "y": 100, + "w": 24, + "h": 24 + } + }, + { + "filename": "insect_plate", + "rotated": false, + "trimmed": true, + "sourceSize": { + "w": 32, + "h": 32 + }, + "spriteSourceSize": { + "x": 4, + "y": 4, + "w": 24, + "h": 24 + }, + "frame": { + "x": 46, + "y": 278, + "w": 24, + "h": 24 + } + }, + { + "filename": "iron_plate", + "rotated": false, + "trimmed": true, + "sourceSize": { + "w": 32, + "h": 32 + }, + "spriteSourceSize": { + "x": 4, + "y": 4, + "w": 24, + "h": 24 + }, + "frame": { + "x": 46, + "y": 302, + "w": 24, + "h": 24 + } + }, + { + "filename": "lucky_punch", + "rotated": false, + "trimmed": true, + "sourceSize": { + "w": 32, + "h": 32 + }, + "spriteSourceSize": { + "x": 4, + "y": 4, + "w": 24, + "h": 24 + }, + "frame": { + "x": 46, + "y": 326, + "w": 24, + "h": 24 + } + }, + { + "filename": "lucky_punch_great", + "rotated": false, + "trimmed": true, + "sourceSize": { + "w": 32, + "h": 32 + }, + "spriteSourceSize": { + "x": 4, + "y": 4, + "w": 24, + "h": 24 + }, + "frame": { + "x": 46, + "y": 350, + "w": 24, + "h": 24 + } + }, + { + "filename": "lucky_punch_master", + "rotated": false, + "trimmed": true, + "sourceSize": { + "w": 32, + "h": 32 + }, + "spriteSourceSize": { + "x": 4, + "y": 4, + "w": 24, + "h": 24 + }, + "frame": { + "x": 46, + "y": 374, + "w": 24, + "h": 24 + } + }, + { + "filename": "kings_rock", + "rotated": false, + "trimmed": true, + "sourceSize": { + "w": 32, + "h": 32 + }, + "spriteSourceSize": { + "x": 5, + "y": 4, + "w": 23, + "h": 24 + }, + "frame": { + "x": 48, + "y": 398, + "w": 23, + "h": 24 + } + }, + { + "filename": "lucky_punch_ultra", + "rotated": false, + "trimmed": true, + "sourceSize": { + "w": 32, + "h": 32 + }, + "spriteSourceSize": { + "x": 4, + "y": 4, + "w": 24, + "h": 24 + }, + "frame": { + "x": 60, + "y": 124, + "w": 24, + "h": 24 + } + }, + { + "filename": "lustrous_globe", + "rotated": false, + "trimmed": true, + "sourceSize": { + "w": 32, + "h": 32 + }, + "spriteSourceSize": { + "x": 4, + "y": 4, + "w": 24, + "h": 24 + }, + "frame": { + "x": 63, + "y": 148, + "w": 24, + "h": 24 + } + }, + { + "filename": "meadow_plate", + "rotated": false, + "trimmed": true, + "sourceSize": { + "w": 32, + "h": 32 + }, + "spriteSourceSize": { + "x": 4, + "y": 4, + "w": 24, + "h": 24 + }, + "frame": { + "x": 63, + "y": 172, + "w": 24, + "h": 24 + } + }, + { + "filename": "max_revive", + "rotated": false, + "trimmed": true, + "sourceSize": { + "w": 32, + "h": 32 + }, + "spriteSourceSize": { + "x": 5, + "y": 4, + "w": 22, + "h": 24 + }, + "frame": { + "x": 68, + "y": 196, + "w": 22, + "h": 24 + } + }, + { + "filename": "mind_plate", + "rotated": false, + "trimmed": true, + "sourceSize": { + "w": 32, + "h": 32 + }, + "spriteSourceSize": { + "x": 4, + "y": 4, + "w": 24, + "h": 24 + }, + "frame": { + "x": 68, + "y": 220, + "w": 24, + "h": 24 + } + }, + { + "filename": "muscle_band", + "rotated": false, + "trimmed": true, + "sourceSize": { + "w": 32, + "h": 32 + }, + "spriteSourceSize": { + "x": 4, + "y": 4, + "w": 24, + "h": 24 + }, + "frame": { + "x": 68, + "y": 244, + "w": 24, + "h": 24 + } + }, + { + "filename": "pixie_plate", + "rotated": false, + "trimmed": true, + "sourceSize": { + "w": 32, + "h": 32 + }, + "spriteSourceSize": { + "x": 4, + "y": 4, + "w": 24, + "h": 24 + }, + "frame": { + "x": 70, + "y": 268, + "w": 24, + "h": 24 + } + }, + { + "filename": "salac_berry", + "rotated": false, + "trimmed": true, + "sourceSize": { + "w": 32, + "h": 32 + }, + "spriteSourceSize": { + "x": 4, + "y": 4, + "w": 24, + "h": 24 + }, + "frame": { + "x": 70, + "y": 292, + "w": 24, + "h": 24 + } + }, + { + "filename": "scanner", + "rotated": false, + "trimmed": true, + "sourceSize": { + "w": 32, + "h": 32 + }, + "spriteSourceSize": { + "x": 4, + "y": 4, + "w": 24, + "h": 24 + }, + "frame": { + "x": 70, + "y": 316, + "w": 24, + "h": 24 + } + }, + { + "filename": "silk_scarf", + "rotated": false, + "trimmed": true, + "sourceSize": { + "w": 32, + "h": 32 + }, + "spriteSourceSize": { + "x": 4, + "y": 4, + "w": 24, + "h": 24 + }, + "frame": { + "x": 70, + "y": 340, + "w": 24, + "h": 24 + } + }, + { + "filename": "sky_plate", + "rotated": false, + "trimmed": true, + "sourceSize": { + "w": 32, + "h": 32 + }, + "spriteSourceSize": { + "x": 4, + "y": 4, + "w": 24, + "h": 24 + }, + "frame": { + "x": 70, + "y": 364, + "w": 24, + "h": 24 + } + }, + { + "filename": "reveal_glass", + "rotated": false, + "trimmed": true, + "sourceSize": { + "w": 32, + "h": 32 + }, + "spriteSourceSize": { + "x": 4, + "y": 4, + "w": 23, + "h": 24 + }, + "frame": { + "x": 71, + "y": 388, + "w": 23, + "h": 24 + } + }, + { + "filename": "icy_reins_of_unity", + "rotated": false, + "trimmed": true, + "sourceSize": { + "w": 32, + "h": 32 + }, + "spriteSourceSize": { + "x": 4, + "y": 7, + "w": 24, + "h": 20 + }, + "frame": { + "x": 71, + "y": 412, + "w": 24, + "h": 20 + } + }, + { + "filename": "elixir", + "rotated": false, + "trimmed": true, + "sourceSize": { + "w": 32, + "h": 32 + }, + "spriteSourceSize": { + "x": 7, + "y": 4, + "w": 18, + "h": 24 + }, + "frame": { + "x": 79, + "y": 76, + "w": 18, + "h": 24 + } + }, + { + "filename": "ether", + "rotated": false, + "trimmed": true, + "sourceSize": { + "w": 32, + "h": 32 + }, + "spriteSourceSize": { + "x": 7, + "y": 4, + "w": 18, + "h": 24 + }, + "frame": { + "x": 79, + "y": 100, + "w": 18, + "h": 24 + } + }, + { + "filename": "full_restore", + "rotated": false, + "trimmed": true, + "sourceSize": { + "w": 32, + "h": 32 + }, + "spriteSourceSize": { + "x": 7, + "y": 4, + "w": 18, + "h": 24 + }, + "frame": { + "x": 84, + "y": 124, + "w": 18, + "h": 24 + } + }, + { + "filename": "hp_up", + "rotated": false, + "trimmed": true, + "sourceSize": { + "w": 32, + "h": 32 + }, + "spriteSourceSize": { + "x": 8, + "y": 4, + "w": 16, + "h": 24 + }, + "frame": { + "x": 87, + "y": 148, + "w": 16, + "h": 24 + } + }, + { + "filename": "iron", + "rotated": false, + "trimmed": true, + "sourceSize": { + "w": 32, + "h": 32 + }, + "spriteSourceSize": { + "x": 8, + "y": 4, + "w": 16, + "h": 24 + }, + "frame": { + "x": 87, + "y": 172, + "w": 16, + "h": 24 + } + }, + { + "filename": "lure", + "rotated": false, + "trimmed": true, + "sourceSize": { + "w": 32, + "h": 32 + }, + "spriteSourceSize": { + "x": 8, + "y": 4, + "w": 17, + "h": 24 + }, + "frame": { + "x": 90, + "y": 196, + "w": 17, + "h": 24 + } + }, + { + "filename": "max_elixir", + "rotated": false, + "trimmed": true, + "sourceSize": { + "w": 32, + "h": 32 + }, + "spriteSourceSize": { + "x": 7, + "y": 4, + "w": 18, + "h": 24 + }, + "frame": { + "x": 92, + "y": 220, + "w": 18, + "h": 24 + } + }, + { + "filename": "max_ether", + "rotated": false, + "trimmed": true, + "sourceSize": { + "w": 32, + "h": 32 + }, + "spriteSourceSize": { + "x": 7, + "y": 4, + "w": 18, + "h": 24 + }, + "frame": { + "x": 92, + "y": 244, + "w": 18, + "h": 24 + } + }, + { + "filename": "max_lure", + "rotated": false, + "trimmed": true, + "sourceSize": { + "w": 32, + "h": 32 + }, + "spriteSourceSize": { + "x": 8, + "y": 4, + "w": 17, + "h": 24 + }, + "frame": { + "x": 94, + "y": 268, + "w": 17, + "h": 24 + } + }, + { + "filename": "max_potion", + "rotated": false, + "trimmed": true, + "sourceSize": { + "w": 32, + "h": 32 + }, + "spriteSourceSize": { + "x": 7, + "y": 4, + "w": 18, + "h": 24 + }, + "frame": { + "x": 94, + "y": 292, + "w": 18, + "h": 24 + } + }, + { + "filename": "oval_charm", + "rotated": false, + "trimmed": true, + "sourceSize": { + "w": 32, + "h": 32 + }, + "spriteSourceSize": { + "x": 6, + "y": 4, + "w": 21, + "h": 24 + }, + "frame": { + "x": 94, + "y": 316, + "w": 21, + "h": 24 + } + }, + { + "filename": "shiny_charm", + "rotated": false, + "trimmed": true, + "sourceSize": { + "w": 32, + "h": 32 + }, + "spriteSourceSize": { + "x": 6, + "y": 4, + "w": 21, + "h": 24 + }, + "frame": { + "x": 94, + "y": 340, + "w": 21, + "h": 24 + } + }, + { + "filename": "splash_plate", + "rotated": false, + "trimmed": true, + "sourceSize": { + "w": 32, + "h": 32 + }, + "spriteSourceSize": { + "x": 4, + "y": 4, + "w": 24, + "h": 24 + }, + "frame": { + "x": 94, + "y": 364, + "w": 24, + "h": 24 + } + }, + { + "filename": "spooky_plate", + "rotated": false, + "trimmed": true, + "sourceSize": { + "w": 32, + "h": 32 + }, + "spriteSourceSize": { + "x": 4, + "y": 4, + "w": 24, + "h": 24 + }, + "frame": { + "x": 94, + "y": 388, + "w": 24, + "h": 24 + } + }, + { + "filename": "metal_powder", + "rotated": false, + "trimmed": true, + "sourceSize": { + "w": 32, + "h": 32 + }, + "spriteSourceSize": { + "x": 4, + "y": 6, + "w": 24, + "h": 20 + }, + "frame": { + "x": 95, + "y": 412, + "w": 24, + "h": 20 + } + }, + { + "filename": "berry_pouch", + "rotated": false, + "trimmed": true, + "sourceSize": { + "w": 32, + "h": 32 + }, + "spriteSourceSize": { + "x": 4, + "y": 5, + "w": 23, + "h": 23 + }, + "frame": { + "x": 84, + "y": 53, + "w": 23, + "h": 23 + } + }, + { + "filename": "max_repel", + "rotated": false, + "trimmed": true, + "sourceSize": { + "w": 32, + "h": 32 + }, + "spriteSourceSize": { + "x": 8, + "y": 4, + "w": 16, + "h": 24 + }, + "frame": { + "x": 97, + "y": 76, + "w": 16, + "h": 24 + } + }, + { + "filename": "pp_max", + "rotated": false, + "trimmed": true, + "sourceSize": { + "w": 32, + "h": 32 + }, + "spriteSourceSize": { + "x": 8, + "y": 4, + "w": 16, + "h": 24 + }, + "frame": { + "x": 97, + "y": 100, + "w": 16, + "h": 24 + } + }, + { + "filename": "pp_up", + "rotated": false, + "trimmed": true, + "sourceSize": { + "w": 32, + "h": 32 + }, + "spriteSourceSize": { + "x": 8, + "y": 4, + "w": 16, + "h": 24 + }, + "frame": { + "x": 102, + "y": 124, + "w": 16, + "h": 24 + } + }, + { + "filename": "protein", + "rotated": false, + "trimmed": true, + "sourceSize": { + "w": 32, + "h": 32 + }, + "spriteSourceSize": { + "x": 8, + "y": 4, + "w": 16, + "h": 24 + }, + "frame": { + "x": 103, + "y": 148, + "w": 16, + "h": 24 + } + }, + { + "filename": "red_orb", + "rotated": false, + "trimmed": true, + "sourceSize": { + "w": 32, + "h": 32 + }, + "spriteSourceSize": { + "x": 6, + "y": 4, + "w": 20, + "h": 24 + }, + "frame": { + "x": 103, + "y": 172, + "w": 20, + "h": 24 + } + }, + { + "filename": "repel", + "rotated": false, + "trimmed": true, + "sourceSize": { + "w": 32, + "h": 32 + }, + "spriteSourceSize": { + "x": 8, + "y": 4, + "w": 16, + "h": 24 + }, + "frame": { + "x": 107, + "y": 196, + "w": 16, + "h": 24 + } + }, + { + "filename": "stone_plate", + "rotated": false, + "trimmed": true, + "sourceSize": { + "w": 32, + "h": 32 + }, + "spriteSourceSize": { + "x": 4, + "y": 4, + "w": 24, + "h": 24 + }, + "frame": { + "x": 110, + "y": 220, + "w": 24, + "h": 24 + } + }, + { + "filename": "sun_stone", + "rotated": false, + "trimmed": true, + "sourceSize": { + "w": 32, + "h": 32 + }, + "spriteSourceSize": { + "x": 4, + "y": 4, + "w": 24, + "h": 24 + }, + "frame": { + "x": 110, + "y": 244, + "w": 24, + "h": 24 + } + }, + { + "filename": "toxic_plate", + "rotated": false, + "trimmed": true, + "sourceSize": { + "w": 32, + "h": 32 + }, + "spriteSourceSize": { + "x": 4, + "y": 4, + "w": 24, + "h": 24 + }, + "frame": { + "x": 111, + "y": 268, + "w": 24, + "h": 24 + } + }, + { + "filename": "zap_plate", + "rotated": false, + "trimmed": true, + "sourceSize": { + "w": 32, + "h": 32 + }, + "spriteSourceSize": { + "x": 4, + "y": 4, + "w": 24, + "h": 24 + }, + "frame": { + "x": 112, + "y": 292, + "w": 24, + "h": 24 + } + }, + { + "filename": "black_belt", + "rotated": false, + "trimmed": true, + "sourceSize": { + "w": 32, + "h": 32 + }, + "spriteSourceSize": { + "x": 5, + "y": 4, + "w": 22, + "h": 23 + }, + "frame": { + "x": 115, + "y": 316, + "w": 22, + "h": 23 + } + }, + { + "filename": "bug_tera_shard", + "rotated": false, + "trimmed": true, + "sourceSize": { + "w": 32, + "h": 32 + }, + "spriteSourceSize": { + "x": 6, + "y": 4, + "w": 22, + "h": 23 + }, + "frame": { + "x": 115, + "y": 339, + "w": 22, + "h": 23 + } + }, + { + "filename": "clefairy_doll", + "rotated": false, + "trimmed": true, + "sourceSize": { + "w": 32, + "h": 32 + }, + "spriteSourceSize": { + "x": 4, + "y": 5, + "w": 24, + "h": 23 + }, + "frame": { + "x": 118, + "y": 362, + "w": 24, + "h": 23 + } + }, + { + "filename": "coin_case", + "rotated": false, + "trimmed": true, + "sourceSize": { + "w": 32, + "h": 32 + }, + "spriteSourceSize": { + "x": 4, + "y": 5, + "w": 24, + "h": 23 + }, + "frame": { + "x": 118, + "y": 385, + "w": 24, + "h": 23 + } + }, + { + "filename": "super_lure", + "rotated": false, + "trimmed": true, + "sourceSize": { + "w": 32, + "h": 32 + }, + "spriteSourceSize": { + "x": 8, + "y": 4, + "w": 17, + "h": 24 + }, + "frame": { + "x": 119, + "y": 408, + "w": 17, + "h": 24 + } + }, + { + "filename": "super_repel", + "rotated": false, + "trimmed": true, + "sourceSize": { + "w": 32, + "h": 32 + }, + "spriteSourceSize": { + "x": 8, + "y": 4, + "w": 16, + "h": 24 + }, + "frame": { + "x": 136, + "y": 408, + "w": 16, + "h": 24 + } + }, + { + "filename": "ability_capsule", + "rotated": false, + "trimmed": true, + "sourceSize": { + "w": 32, + "h": 32 + }, + "spriteSourceSize": { + "x": 4, + "y": 9, + "w": 24, + "h": 14 + }, + "frame": { + "x": 137, + "y": 22, + "w": 24, + "h": 14 + } + }, + { + "filename": "black_glasses", + "rotated": false, + "trimmed": true, + "sourceSize": { + "w": 32, + "h": 32 + }, + "spriteSourceSize": { + "x": 4, + "y": 8, + "w": 23, + "h": 17 + }, + "frame": { + "x": 86, + "y": 36, + "w": 23, + "h": 17 + } + }, + { + "filename": "expert_belt", + "rotated": false, + "trimmed": true, + "sourceSize": { + "w": 32, + "h": 32 + }, + "spriteSourceSize": { + "x": 4, + "y": 4, + "w": 24, + "h": 23 + }, + "frame": { + "x": 109, + "y": 26, + "w": 24, + "h": 23 + } + }, + { + "filename": "dragon_scale", + "rotated": false, + "trimmed": true, + "sourceSize": { + "w": 32, + "h": 32 + }, + "spriteSourceSize": { + "x": 4, + "y": 8, + "w": 24, + "h": 18 + }, + "frame": { + "x": 133, + "y": 36, + "w": 24, + "h": 18 + } + }, + { + "filename": "exp_share", + "rotated": false, + "trimmed": true, + "sourceSize": { + "w": 32, + "h": 32 + }, + "spriteSourceSize": { + "x": 4, + "y": 5, + "w": 24, + "h": 22 + }, + "frame": { + "x": 109, + "y": 49, + "w": 24, + "h": 22 + } + }, + { + "filename": "golden_net", + "rotated": false, + "trimmed": true, + "sourceSize": { + "w": 32, + "h": 32 + }, + "spriteSourceSize": { + "x": 4, + "y": 5, + "w": 24, + "h": 21 + }, + "frame": { + "x": 133, + "y": 54, + "w": 24, + "h": 21 + } + }, + { + "filename": "mystic_water", + "rotated": false, + "trimmed": true, + "sourceSize": { + "w": 32, + "h": 32 + }, + "spriteSourceSize": { + "x": 6, + "y": 5, + "w": 20, + "h": 23 + }, + "frame": { + "x": 113, + "y": 71, + "w": 20, + "h": 23 + } + }, + { + "filename": "dark_tera_shard", + "rotated": false, + "trimmed": true, + "sourceSize": { + "w": 32, + "h": 32 + }, + "spriteSourceSize": { + "x": 6, + "y": 4, + "w": 22, + "h": 23 + }, + "frame": { + "x": 113, + "y": 94, + "w": 22, + "h": 23 + } + }, + { + "filename": "coupon", + "rotated": false, + "trimmed": true, + "sourceSize": { + "w": 32, + "h": 32 + }, + "spriteSourceSize": { + "x": 4, + "y": 7, + "w": 23, + "h": 19 + }, + "frame": { + "x": 133, + "y": 75, + "w": 23, + "h": 19 + } + }, + { + "filename": "dragon_fang", + "rotated": false, + "trimmed": true, + "sourceSize": { + "w": 32, + "h": 32 + }, + "spriteSourceSize": { + "x": 5, + "y": 5, + "w": 21, + "h": 23 + }, + "frame": { + "x": 135, + "y": 94, + "w": 21, + "h": 23 + } + }, + { + "filename": "hearthflame_mask", + "rotated": false, + "trimmed": true, + "sourceSize": { + "w": 32, + "h": 32 + }, + "spriteSourceSize": { + "x": 4, + "y": 4, + "w": 24, + "h": 23 + }, + "frame": { + "x": 118, + "y": 117, + "w": 24, + "h": 23 + } + }, + { + "filename": "dynamax_band", + "rotated": false, + "trimmed": true, + "sourceSize": { + "w": 32, + "h": 32 + }, + "spriteSourceSize": { + "x": 4, + "y": 4, + "w": 23, + "h": 23 + }, + "frame": { + "x": 119, + "y": 140, + "w": 23, + "h": 23 + } + }, + { + "filename": "unknown", + "rotated": false, + "trimmed": true, + "sourceSize": { + "w": 32, + "h": 32 + }, + "spriteSourceSize": { + "x": 8, + "y": 4, + "w": 16, + "h": 24 + }, + "frame": { + "x": 142, + "y": 117, + "w": 16, + "h": 24 + } + }, + { + "filename": "berry_pot", + "rotated": false, + "trimmed": true, + "sourceSize": { + "w": 32, + "h": 32 + }, + "spriteSourceSize": { + "x": 7, + "y": 5, + "w": 18, + "h": 22 + }, + "frame": { + "x": 142, + "y": 141, + "w": 18, + "h": 22 + } + }, + { + "filename": "leppa_berry", + "rotated": false, + "trimmed": true, + "sourceSize": { + "w": 32, + "h": 32 + }, + "spriteSourceSize": { + "x": 4, + "y": 5, + "w": 24, + "h": 23 + }, + "frame": { + "x": 123, + "y": 163, + "w": 24, + "h": 23 + } + }, + { + "filename": "scope_lens", + "rotated": false, + "trimmed": true, + "sourceSize": { + "w": 32, + "h": 32 + }, + "spriteSourceSize": { + "x": 4, + "y": 5, + "w": 24, + "h": 23 + }, + "frame": { + "x": 123, + "y": 186, + "w": 24, + "h": 23 + } + }, + { + "filename": "relic_gold", + "rotated": false, + "trimmed": true, + "sourceSize": { + "w": 32, + "h": 32 + }, + "spriteSourceSize": { + "x": 9, + "y": 11, + "w": 15, + "h": 11 + }, + "frame": { + "x": 123, + "y": 209, + "w": 15, + "h": 11 + } + }, + { + "filename": "zinc", + "rotated": false, + "trimmed": true, + "sourceSize": { + "w": 32, + "h": 32 + }, + "spriteSourceSize": { + "x": 8, + "y": 4, + "w": 16, + "h": 24 + }, + "frame": { + "x": 147, + "y": 163, + "w": 16, + "h": 24 + } + }, + { + "filename": "bug_memory", + "rotated": false, + "trimmed": true, + "sourceSize": { + "w": 32, + "h": 32 + }, + "spriteSourceSize": { + "x": 5, + "y": 5, + "w": 22, + "h": 22 + }, + "frame": { + "x": 147, + "y": 187, + "w": 22, + "h": 22 + } + }, + { + "filename": "peat_block", + "rotated": false, + "trimmed": true, + "sourceSize": { + "w": 32, + "h": 32 + }, + "spriteSourceSize": { + "x": 4, + "y": 5, + "w": 24, + "h": 22 + }, + "frame": { + "x": 138, + "y": 209, + "w": 24, + "h": 22 + } + }, + { + "filename": "twisted_spoon", + "rotated": false, + "trimmed": true, + "sourceSize": { + "w": 32, + "h": 32 + }, + "spriteSourceSize": { + "x": 4, + "y": 5, + "w": 24, + "h": 23 + }, + "frame": { + "x": 134, + "y": 231, + "w": 24, + "h": 23 + } + }, + { + "filename": "griseous_core", + "rotated": false, + "trimmed": true, + "sourceSize": { + "w": 32, + "h": 32 + }, + "spriteSourceSize": { + "x": 5, + "y": 5, + "w": 23, + "h": 23 + }, + "frame": { + "x": 135, + "y": 254, + "w": 23, + "h": 23 + } + }, + { + "filename": "silver_powder", + "rotated": false, + "trimmed": true, + "sourceSize": { + "w": 32, + "h": 32 + }, + "spriteSourceSize": { + "x": 4, + "y": 11, + "w": 24, + "h": 15 + }, + "frame": { + "x": 135, + "y": 277, + "w": 24, + "h": 15 + } + }, + { + "filename": "leek", + "rotated": false, + "trimmed": true, + "sourceSize": { + "w": 32, + "h": 32 + }, + "spriteSourceSize": { + "x": 4, + "y": 5, + "w": 23, + "h": 23 + }, + "frame": { + "x": 136, + "y": 292, + "w": 23, + "h": 23 + } + }, + { + "filename": "dragon_tera_shard", + "rotated": false, + "trimmed": true, + "sourceSize": { + "w": 32, + "h": 32 + }, + "spriteSourceSize": { + "x": 6, + "y": 4, + "w": 22, + "h": 23 + }, + "frame": { + "x": 137, + "y": 315, + "w": 22, + "h": 23 + } + }, + { + "filename": "electric_tera_shard", + "rotated": false, + "trimmed": true, + "sourceSize": { + "w": 32, + "h": 32 + }, + "spriteSourceSize": { + "x": 6, + "y": 4, + "w": 22, + "h": 23 + }, + "frame": { + "x": 137, + "y": 338, + "w": 22, + "h": 23 + } + }, + { + "filename": "fairy_tera_shard", + "rotated": false, + "trimmed": true, + "sourceSize": { + "w": 32, + "h": 32 + }, + "spriteSourceSize": { + "x": 6, + "y": 4, + "w": 22, + "h": 23 + }, + "frame": { + "x": 142, + "y": 361, + "w": 22, + "h": 23 + } + }, + { + "filename": "fighting_tera_shard", + "rotated": false, + "trimmed": true, + "sourceSize": { + "w": 32, + "h": 32 + }, + "spriteSourceSize": { + "x": 6, + "y": 4, + "w": 22, + "h": 23 + }, + "frame": { + "x": 142, + "y": 384, + "w": 22, + "h": 23 + } + }, + { + "filename": "fire_stone", + "rotated": false, + "trimmed": true, + "sourceSize": { + "w": 32, + "h": 32 + }, + "spriteSourceSize": { + "x": 5, + "y": 5, + "w": 22, + "h": 23 + }, + "frame": { + "x": 152, + "y": 407, + "w": 22, + "h": 23 + } + }, + { + "filename": "charcoal", + "rotated": false, + "trimmed": true, + "sourceSize": { + "w": 32, + "h": 32 + }, + "spriteSourceSize": { + "x": 5, + "y": 5, + "w": 22, + "h": 22 + }, + "frame": { + "x": 162, + "y": 209, + "w": 22, + "h": 22 + } + }, + { + "filename": "macho_brace", + "rotated": false, + "trimmed": true, + "sourceSize": { + "w": 32, + "h": 32 + }, + "spriteSourceSize": { + "x": 4, + "y": 5, + "w": 23, + "h": 23 + }, + "frame": { + "x": 158, + "y": 231, + "w": 23, + "h": 23 + } + }, + { + "filename": "rare_candy", + "rotated": false, + "trimmed": true, + "sourceSize": { + "w": 32, + "h": 32 + }, + "spriteSourceSize": { + "x": 4, + "y": 5, + "w": 23, + "h": 23 + }, + "frame": { + "x": 158, + "y": 254, + "w": 23, + "h": 23 + } + }, + { + "filename": "fire_tera_shard", + "rotated": false, + "trimmed": true, + "sourceSize": { + "w": 32, + "h": 32 + }, + "spriteSourceSize": { + "x": 6, + "y": 4, + "w": 22, + "h": 23 + }, + "frame": { + "x": 159, + "y": 277, + "w": 22, + "h": 23 + } + }, + { + "filename": "focus_sash", + "rotated": false, + "trimmed": true, + "sourceSize": { + "w": 32, + "h": 32 + }, + "spriteSourceSize": { + "x": 5, + "y": 4, + "w": 22, + "h": 23 + }, + "frame": { + "x": 159, + "y": 300, + "w": 22, + "h": 23 + } + }, + { + "filename": "ghost_tera_shard", + "rotated": false, + "trimmed": true, + "sourceSize": { + "w": 32, + "h": 32 + }, + "spriteSourceSize": { + "x": 6, + "y": 4, + "w": 22, + "h": 23 + }, + "frame": { + "x": 159, + "y": 323, + "w": 22, + "h": 23 + } + }, + { + "filename": "candy_overlay", + "rotated": false, + "trimmed": true, + "sourceSize": { + "w": 32, + "h": 32 + }, + "spriteSourceSize": { + "x": 8, + "y": 12, + "w": 16, + "h": 15 + }, + "frame": { + "x": 159, + "y": 346, + "w": 16, + "h": 15 + } + }, + { + "filename": "full_heal", + "rotated": false, + "trimmed": true, + "sourceSize": { + "w": 32, + "h": 32 + }, + "spriteSourceSize": { + "x": 9, + "y": 4, + "w": 15, + "h": 23 + }, + "frame": { + "x": 164, + "y": 361, + "w": 15, + "h": 23 + } + }, + { + "filename": "grass_tera_shard", + "rotated": false, + "trimmed": true, + "sourceSize": { + "w": 32, + "h": 32 + }, + "spriteSourceSize": { + "x": 6, + "y": 4, + "w": 22, + "h": 23 + }, + "frame": { + "x": 164, + "y": 384, + "w": 22, + "h": 23 + } + }, + { + "filename": "ground_tera_shard", + "rotated": false, + "trimmed": true, + "sourceSize": { + "w": 32, + "h": 32 + }, + "spriteSourceSize": { + "x": 6, + "y": 4, + "w": 22, + "h": 23 + }, + "frame": { + "x": 174, + "y": 407, + "w": 22, + "h": 23 + } + }, + { + "filename": "hyper_potion", + "rotated": false, + "trimmed": true, + "sourceSize": { + "w": 32, + "h": 32 + }, + "spriteSourceSize": { + "x": 8, + "y": 5, + "w": 17, + "h": 23 + }, + "frame": { + "x": 157, + "y": 36, + "w": 17, + "h": 23 + } + }, + { + "filename": "adamant_crystal", + "rotated": false, + "trimmed": true, + "sourceSize": { + "w": 32, + "h": 32 + }, + "spriteSourceSize": { + "x": 4, + "y": 6, + "w": 23, + "h": 21 + }, + "frame": { + "x": 157, + "y": 59, + "w": 23, + "h": 21 + } + }, + { + "filename": "rarer_candy", + "rotated": false, + "trimmed": true, + "sourceSize": { + "w": 32, + "h": 32 + }, + "spriteSourceSize": { + "x": 4, + "y": 5, + "w": 23, + "h": 23 + }, + "frame": { + "x": 156, + "y": 80, + "w": 23, + "h": 23 + } + }, + { + "filename": "healing_charm", + "rotated": false, + "trimmed": true, + "sourceSize": { + "w": 32, + "h": 32 + }, + "spriteSourceSize": { + "x": 5, + "y": 5, + "w": 23, + "h": 22 + }, + "frame": { + "x": 174, + "y": 21, + "w": 23, + "h": 22 + } + }, + { + "filename": "rusted_sword", + "rotated": false, + "trimmed": true, + "sourceSize": { + "w": 32, + "h": 32 + }, + "spriteSourceSize": { + "x": 4, + "y": 5, + "w": 23, + "h": 22 + }, + "frame": { + "x": 197, + "y": 21, + "w": 23, + "h": 22 + } + }, + { + "filename": "amulet_coin", + "rotated": false, + "trimmed": true, + "sourceSize": { + "w": 32, + "h": 32 + }, + "spriteSourceSize": { + "x": 6, + "y": 5, + "w": 23, + "h": 21 + }, + "frame": { + "x": 220, + "y": 21, + "w": 23, + "h": 21 + } + }, + { + "filename": "auspicious_armor", + "rotated": false, + "trimmed": true, + "sourceSize": { + "w": 32, + "h": 32 + }, + "spriteSourceSize": { + "x": 4, + "y": 5, + "w": 23, + "h": 21 + }, + "frame": { + "x": 243, + "y": 21, + "w": 23, + "h": 21 + } + }, + { + "filename": "moon_stone", + "rotated": false, + "trimmed": true, + "sourceSize": { + "w": 32, + "h": 32 + }, + "spriteSourceSize": { + "x": 4, + "y": 6, + "w": 23, + "h": 21 + }, + "frame": { + "x": 266, + "y": 21, + "w": 23, + "h": 21 + } + }, + { + "filename": "n_lunarizer", + "rotated": false, + "trimmed": true, + "sourceSize": { + "w": 32, + "h": 32 + }, + "spriteSourceSize": { + "x": 4, + "y": 6, + "w": 23, + "h": 21 + }, + "frame": { + "x": 289, + "y": 21, + "w": 23, + "h": 21 + } + }, + { + "filename": "berry_juice", + "rotated": false, + "trimmed": true, + "sourceSize": { + "w": 32, + "h": 32 + }, + "spriteSourceSize": { + "x": 5, + "y": 5, + "w": 22, + "h": 21 + }, + "frame": { + "x": 312, + "y": 21, + "w": 22, + "h": 21 + } + }, + { + "filename": "dark_memory", + "rotated": false, + "trimmed": true, + "sourceSize": { + "w": 32, + "h": 32 + }, + "spriteSourceSize": { + "x": 5, + "y": 5, + "w": 22, + "h": 22 + }, + "frame": { + "x": 334, + "y": 20, + "w": 22, + "h": 22 + } + }, + { + "filename": "dire_hit", + "rotated": false, + "trimmed": true, + "sourceSize": { + "w": 32, + "h": 32 + }, + "spriteSourceSize": { + "x": 5, + "y": 5, + "w": 22, + "h": 22 + }, + "frame": { + "x": 356, + "y": 20, + "w": 22, + "h": 22 + } + }, + { + "filename": "dna_splicers", + "rotated": false, + "trimmed": true, + "sourceSize": { + "w": 32, + "h": 32 + }, + "spriteSourceSize": { + "x": 5, + "y": 5, + "w": 22, + "h": 22 + }, + "frame": { + "x": 378, + "y": 20, + "w": 22, + "h": 22 + } + }, + { + "filename": "relic_band", + "rotated": false, + "trimmed": true, + "sourceSize": { + "w": 32, + "h": 32 + }, + "spriteSourceSize": { + "x": 7, + "y": 9, + "w": 17, + "h": 16 + }, + "frame": { + "x": 174, + "y": 43, + "w": 17, + "h": 16 + } + }, + { + "filename": "quick_powder", + "rotated": false, + "trimmed": true, + "sourceSize": { + "w": 32, + "h": 32 + }, + "spriteSourceSize": { + "x": 4, + "y": 6, + "w": 24, + "h": 20 + }, + "frame": { + "x": 191, + "y": 43, + "w": 24, + "h": 20 + } + }, + { + "filename": "rusted_shield", + "rotated": false, + "trimmed": true, + "sourceSize": { + "w": 32, + "h": 32 + }, + "spriteSourceSize": { + "x": 4, + "y": 6, + "w": 24, + "h": 20 + }, + "frame": { + "x": 400, + "y": 24, + "w": 24, + "h": 20 + } + }, + { + "filename": "ice_tera_shard", + "rotated": false, + "trimmed": true, + "sourceSize": { + "w": 32, + "h": 32 + }, + "spriteSourceSize": { + "x": 6, + "y": 4, + "w": 22, + "h": 23 + }, + "frame": { + "x": 158, + "y": 103, + "w": 22, + "h": 23 + } + }, + { + "filename": "eviolite", + "rotated": false, + "trimmed": true, + "sourceSize": { + "w": 32, + "h": 32 + }, + "spriteSourceSize": { + "x": 8, + "y": 8, + "w": 15, + "h": 15 + }, + "frame": { + "x": 158, + "y": 126, + "w": 15, + "h": 15 + } + }, + { + "filename": "dragon_memory", + "rotated": false, + "trimmed": true, + "sourceSize": { + "w": 32, + "h": 32 + }, + "spriteSourceSize": { + "x": 5, + "y": 5, + "w": 22, + "h": 22 + }, + "frame": { + "x": 160, + "y": 141, + "w": 22, + "h": 22 + } + }, + { + "filename": "lansat_berry", + "rotated": false, + "trimmed": true, + "sourceSize": { + "w": 32, + "h": 32 + }, + "spriteSourceSize": { + "x": 5, + "y": 4, + "w": 21, + "h": 23 + }, + "frame": { + "x": 163, + "y": 163, + "w": 21, + "h": 23 + } + }, + { + "filename": "leaf_stone", + "rotated": false, + "trimmed": true, + "sourceSize": { + "w": 32, + "h": 32 + }, + "spriteSourceSize": { + "x": 5, + "y": 5, + "w": 21, + "h": 23 + }, + "frame": { + "x": 169, + "y": 186, + "w": 21, + "h": 23 + } + }, + { + "filename": "prism_scale", + "rotated": false, + "trimmed": true, + "sourceSize": { + "w": 32, + "h": 32 + }, + "spriteSourceSize": { + "x": 9, + "y": 8, + "w": 15, + "h": 15 + }, + "frame": { + "x": 173, + "y": 126, + "w": 15, + "h": 15 + } + }, + { + "filename": "electirizer", + "rotated": false, + "trimmed": true, + "sourceSize": { + "w": 32, + "h": 32 + }, + "spriteSourceSize": { + "x": 5, + "y": 5, + "w": 22, + "h": 22 + }, + "frame": { + "x": 182, + "y": 141, + "w": 22, + "h": 22 + } + }, + { + "filename": "never_melt_ice", + "rotated": false, + "trimmed": true, + "sourceSize": { + "w": 32, + "h": 32 + }, + "spriteSourceSize": { + "x": 5, + "y": 5, + "w": 22, + "h": 23 + }, + "frame": { + "x": 184, + "y": 163, + "w": 22, + "h": 23 + } + }, + { + "filename": "normal_tera_shard", + "rotated": false, + "trimmed": true, + "sourceSize": { + "w": 32, + "h": 32 + }, + "spriteSourceSize": { + "x": 6, + "y": 4, + "w": 22, + "h": 23 + }, + "frame": { + "x": 190, + "y": 186, + "w": 22, + "h": 23 + } + }, + { + "filename": "electric_memory", + "rotated": false, + "trimmed": true, + "sourceSize": { + "w": 32, + "h": 32 + }, + "spriteSourceSize": { + "x": 5, + "y": 5, + "w": 22, + "h": 22 + }, + "frame": { + "x": 184, + "y": 209, + "w": 22, + "h": 22 + } + }, + { + "filename": "petaya_berry", + "rotated": false, + "trimmed": true, + "sourceSize": { + "w": 32, + "h": 32 + }, + "spriteSourceSize": { + "x": 5, + "y": 5, + "w": 22, + "h": 23 + }, + "frame": { + "x": 181, + "y": 231, + "w": 22, + "h": 23 + } + }, + { + "filename": "poison_tera_shard", + "rotated": false, + "trimmed": true, + "sourceSize": { + "w": 32, + "h": 32 + }, + "spriteSourceSize": { + "x": 6, + "y": 4, + "w": 22, + "h": 23 + }, + "frame": { + "x": 181, + "y": 254, + "w": 22, + "h": 23 + } + }, + { + "filename": "psychic_tera_shard", + "rotated": false, + "trimmed": true, + "sourceSize": { + "w": 32, + "h": 32 + }, + "spriteSourceSize": { + "x": 6, + "y": 4, + "w": 22, + "h": 23 + }, + "frame": { + "x": 181, + "y": 277, + "w": 22, + "h": 23 + } + }, + { + "filename": "reaper_cloth", + "rotated": false, + "trimmed": true, + "sourceSize": { + "w": 32, + "h": 32 + }, + "spriteSourceSize": { + "x": 5, + "y": 5, + "w": 22, + "h": 23 + }, + "frame": { + "x": 181, + "y": 300, + "w": 22, + "h": 23 + } + }, + { + "filename": "rock_tera_shard", + "rotated": false, + "trimmed": true, + "sourceSize": { + "w": 32, + "h": 32 + }, + "spriteSourceSize": { + "x": 6, + "y": 4, + "w": 22, + "h": 23 + }, + "frame": { + "x": 181, + "y": 323, + "w": 22, + "h": 23 + } + }, + { + "filename": "sacred_ash", + "rotated": false, + "trimmed": true, + "sourceSize": { + "w": 32, + "h": 32 + }, + "spriteSourceSize": { + "x": 4, + "y": 7, + "w": 24, + "h": 20 + }, + "frame": { + "x": 180, + "y": 63, + "w": 24, + "h": 20 + } + }, + { + "filename": "shadow_reins_of_unity", + "rotated": false, + "trimmed": true, + "sourceSize": { + "w": 32, + "h": 32 + }, + "spriteSourceSize": { + "x": 4, + "y": 7, + "w": 24, + "h": 20 + }, + "frame": { + "x": 179, + "y": 83, + "w": 24, + "h": 20 + } + }, + { + "filename": "steel_tera_shard", + "rotated": false, + "trimmed": true, + "sourceSize": { + "w": 32, + "h": 32 + }, + "spriteSourceSize": { + "x": 6, + "y": 4, + "w": 22, + "h": 23 + }, + "frame": { + "x": 180, + "y": 103, + "w": 22, + "h": 23 + } + }, + { + "filename": "apicot_berry", + "rotated": false, + "trimmed": true, + "sourceSize": { + "w": 32, + "h": 32 + }, + "spriteSourceSize": { + "x": 6, + "y": 6, + "w": 19, + "h": 20 + }, + "frame": { + "x": 204, + "y": 63, + "w": 19, + "h": 20 + } + }, + { + "filename": "big_nugget", + "rotated": false, + "trimmed": true, + "sourceSize": { + "w": 32, + "h": 32 + }, + "spriteSourceSize": { + "x": 6, + "y": 6, + "w": 20, + "h": 20 + }, + "frame": { + "x": 203, + "y": 83, + "w": 20, + "h": 20 + } + }, + { + "filename": "sharp_beak", + "rotated": false, + "trimmed": true, + "sourceSize": { + "w": 32, + "h": 32 + }, + "spriteSourceSize": { + "x": 5, + "y": 5, + "w": 21, + "h": 23 + }, + "frame": { + "x": 202, + "y": 103, + "w": 21, + "h": 23 + } + }, + { + "filename": "binding_band", + "rotated": false, + "trimmed": true, + "sourceSize": { + "w": 32, + "h": 32 + }, + "spriteSourceSize": { + "x": 5, + "y": 6, + "w": 23, + "h": 20 + }, + "frame": { + "x": 215, + "y": 43, + "w": 23, + "h": 20 + } + }, + { + "filename": "n_solarizer", + "rotated": false, + "trimmed": true, + "sourceSize": { + "w": 32, + "h": 32 + }, + "spriteSourceSize": { + "x": 4, + "y": 6, + "w": 23, + "h": 21 + }, + "frame": { + "x": 238, + "y": 42, + "w": 23, + "h": 21 + } + }, + { + "filename": "stellar_tera_shard", + "rotated": false, + "trimmed": true, + "sourceSize": { + "w": 32, + "h": 32 + }, + "spriteSourceSize": { + "x": 6, + "y": 4, + "w": 22, + "h": 23 + }, + "frame": { + "x": 223, + "y": 63, + "w": 22, + "h": 23 + } + }, + { + "filename": "water_tera_shard", + "rotated": false, + "trimmed": true, + "sourceSize": { + "w": 32, + "h": 32 + }, + "spriteSourceSize": { + "x": 6, + "y": 4, + "w": 22, + "h": 23 + }, + "frame": { + "x": 223, + "y": 86, + "w": 22, + "h": 23 + } + }, + { + "filename": "soft_sand", + "rotated": false, + "trimmed": true, + "sourceSize": { + "w": 32, + "h": 32 + }, + "spriteSourceSize": { + "x": 4, + "y": 7, + "w": 24, + "h": 20 + }, + "frame": { + "x": 261, + "y": 42, + "w": 24, + "h": 20 + } + }, + { + "filename": "reviver_seed", + "rotated": false, + "trimmed": true, + "sourceSize": { + "w": 32, + "h": 32 + }, + "spriteSourceSize": { + "x": 5, + "y": 8, + "w": 23, + "h": 20 + }, + "frame": { + "x": 285, + "y": 42, + "w": 23, + "h": 20 + } + }, + { + "filename": "shell_bell", + "rotated": false, + "trimmed": true, + "sourceSize": { + "w": 32, + "h": 32 + }, + "spriteSourceSize": { + "x": 5, + "y": 7, + "w": 23, + "h": 20 + }, + "frame": { + "x": 308, + "y": 42, + "w": 23, + "h": 20 + } + }, + { + "filename": "wellspring_mask", + "rotated": false, + "trimmed": true, + "sourceSize": { + "w": 32, + "h": 32 + }, + "spriteSourceSize": { + "x": 4, + "y": 5, + "w": 23, + "h": 21 + }, + "frame": { + "x": 331, + "y": 42, + "w": 23, + "h": 21 + } + }, + { + "filename": "deep_sea_tooth", + "rotated": false, + "trimmed": true, + "sourceSize": { + "w": 32, + "h": 32 + }, + "spriteSourceSize": { + "x": 5, + "y": 6, + "w": 22, + "h": 21 + }, + "frame": { + "x": 354, + "y": 42, + "w": 22, + "h": 21 + } + }, + { + "filename": "enigma_berry", + "rotated": false, + "trimmed": true, + "sourceSize": { + "w": 32, + "h": 32 + }, + "spriteSourceSize": { + "x": 5, + "y": 5, + "w": 22, + "h": 22 + }, + "frame": { + "x": 376, + "y": 42, + "w": 22, + "h": 22 + } + }, + { + "filename": "deep_sea_scale", + "rotated": false, + "trimmed": true, + "sourceSize": { + "w": 32, + "h": 32 + }, + "spriteSourceSize": { + "x": 5, + "y": 6, + "w": 22, + "h": 20 + }, + "frame": { + "x": 398, + "y": 44, + "w": 22, + "h": 20 + } + }, + { + "filename": "black_sludge", + "rotated": false, + "trimmed": true, + "sourceSize": { + "w": 32, + "h": 32 + }, + "spriteSourceSize": { + "x": 5, + "y": 7, + "w": 22, + "h": 19 + }, + "frame": { + "x": 223, + "y": 109, + "w": 22, + "h": 19 + } + }, + { + "filename": "potion", + "rotated": false, + "trimmed": true, + "sourceSize": { + "w": 32, + "h": 32 + }, + "spriteSourceSize": { + "x": 8, + "y": 5, + "w": 17, + "h": 23 + }, + "frame": { + "x": 245, + "y": 63, + "w": 17, + "h": 23 + } + }, + { + "filename": "wide_lens", + "rotated": false, + "trimmed": true, + "sourceSize": { + "w": 32, + "h": 32 + }, + "spriteSourceSize": { + "x": 5, + "y": 4, + "w": 22, + "h": 23 + }, + "frame": { + "x": 262, + "y": 62, + "w": 22, + "h": 23 + } + }, + { + "filename": "fairy_memory", + "rotated": false, + "trimmed": true, + "sourceSize": { + "w": 32, + "h": 32 + }, + "spriteSourceSize": { + "x": 5, + "y": 5, + "w": 22, + "h": 22 + }, + "frame": { + "x": 284, + "y": 62, + "w": 22, + "h": 22 + } + }, + { + "filename": "fighting_memory", + "rotated": false, + "trimmed": true, + "sourceSize": { + "w": 32, + "h": 32 + }, + "spriteSourceSize": { + "x": 5, + "y": 5, + "w": 22, + "h": 22 + }, + "frame": { + "x": 306, + "y": 62, + "w": 22, + "h": 22 + } + }, + { + "filename": "fire_memory", + "rotated": false, + "trimmed": true, + "sourceSize": { + "w": 32, + "h": 32 + }, + "spriteSourceSize": { + "x": 5, + "y": 5, + "w": 22, + "h": 22 + }, + "frame": { + "x": 328, + "y": 63, + "w": 22, + "h": 22 + } + }, + { + "filename": "flying_memory", + "rotated": false, + "trimmed": true, + "sourceSize": { + "w": 32, + "h": 32 + }, + "spriteSourceSize": { + "x": 5, + "y": 5, + "w": 22, + "h": 22 + }, + "frame": { + "x": 350, + "y": 63, + "w": 22, + "h": 22 + } + }, + { + "filename": "sachet", + "rotated": false, + "trimmed": true, + "sourceSize": { + "w": 32, + "h": 32 + }, + "spriteSourceSize": { + "x": 6, + "y": 4, + "w": 18, + "h": 23 + }, + "frame": { + "x": 245, + "y": 86, + "w": 18, + "h": 23 + } + }, + { + "filename": "whipped_dream", + "rotated": false, + "trimmed": true, + "sourceSize": { + "w": 32, + "h": 32 + }, + "spriteSourceSize": { + "x": 5, + "y": 4, + "w": 21, + "h": 23 + }, + "frame": { + "x": 263, + "y": 85, + "w": 21, + "h": 23 + } + }, + { + "filename": "ganlon_berry", + "rotated": false, + "trimmed": true, + "sourceSize": { + "w": 32, + "h": 32 + }, + "spriteSourceSize": { + "x": 5, + "y": 5, + "w": 22, + "h": 22 + }, + "frame": { + "x": 284, + "y": 84, + "w": 22, + "h": 22 + } + }, + { + "filename": "ghost_memory", + "rotated": false, + "trimmed": true, + "sourceSize": { + "w": 32, + "h": 32 + }, + "spriteSourceSize": { + "x": 5, + "y": 5, + "w": 22, + "h": 22 + }, + "frame": { + "x": 306, + "y": 84, + "w": 22, + "h": 22 + } + }, + { + "filename": "grass_memory", + "rotated": false, + "trimmed": true, + "sourceSize": { + "w": 32, + "h": 32 + }, + "spriteSourceSize": { + "x": 5, + "y": 5, + "w": 22, + "h": 22 + }, + "frame": { + "x": 328, + "y": 85, + "w": 22, + "h": 22 + } + }, + { + "filename": "ground_memory", + "rotated": false, + "trimmed": true, + "sourceSize": { + "w": 32, + "h": 32 + }, + "spriteSourceSize": { + "x": 5, + "y": 5, + "w": 22, + "h": 22 + }, + "frame": { + "x": 350, + "y": 85, + "w": 22, + "h": 22 + } + }, + { + "filename": "guard_spec", + "rotated": false, + "trimmed": true, + "sourceSize": { + "w": 32, + "h": 32 + }, + "spriteSourceSize": { + "x": 5, + "y": 5, + "w": 22, + "h": 22 + }, + "frame": { + "x": 372, + "y": 64, + "w": 22, + "h": 22 + } + }, + { + "filename": "ice_memory", + "rotated": false, + "trimmed": true, + "sourceSize": { + "w": 32, + "h": 32 + }, + "spriteSourceSize": { + "x": 5, + "y": 5, + "w": 22, + "h": 22 + }, + "frame": { + "x": 394, + "y": 64, + "w": 22, + "h": 22 + } + }, + { + "filename": "ice_stone", + "rotated": false, + "trimmed": true, + "sourceSize": { + "w": 32, + "h": 32 + }, + "spriteSourceSize": { + "x": 5, + "y": 5, + "w": 22, + "h": 22 + }, + "frame": { + "x": 372, + "y": 86, + "w": 22, + "h": 22 + } + }, + { + "filename": "magmarizer", + "rotated": false, + "trimmed": true, + "sourceSize": { + "w": 32, + "h": 32 + }, + "spriteSourceSize": { + "x": 5, + "y": 5, + "w": 22, + "h": 22 + }, + "frame": { + "x": 394, + "y": 86, + "w": 22, + "h": 22 + } + }, + { + "filename": "mystery_egg", + "rotated": false, + "trimmed": true, + "sourceSize": { + "w": 32, + "h": 32 + }, + "spriteSourceSize": { + "x": 8, + "y": 8, + "w": 16, + "h": 18 + }, + "frame": { + "x": 416, + "y": 64, + "w": 16, + "h": 18 + } + }, + { + "filename": "abomasite", + "rotated": false, + "trimmed": true, + "sourceSize": { + "w": 32, + "h": 32 + }, + "spriteSourceSize": { + "x": 8, + "y": 8, + "w": 16, + "h": 16 + }, + "frame": { + "x": 416, + "y": 82, + "w": 16, + "h": 16 + } + }, + { + "filename": "absolite", + "rotated": false, + "trimmed": true, + "sourceSize": { + "w": 32, + "h": 32 + }, + "spriteSourceSize": { + "x": 8, + "y": 8, + "w": 16, + "h": 16 + }, + "frame": { + "x": 416, + "y": 98, + "w": 16, + "h": 16 + } + }, + { + "filename": "revive", + "rotated": false, + "trimmed": true, + "sourceSize": { + "w": 32, + "h": 32 + }, + "spriteSourceSize": { + "x": 10, + "y": 8, + "w": 12, + "h": 17 + }, + "frame": { + "x": 420, + "y": 44, + "w": 12, + "h": 17 + } + }, + { + "filename": "big_mushroom", + "rotated": false, + "trimmed": true, + "sourceSize": { + "w": 32, + "h": 32 + }, + "spriteSourceSize": { + "x": 6, + "y": 6, + "w": 19, + "h": 19 + }, + "frame": { + "x": 245, + "y": 109, + "w": 19, + "h": 19 + } + }, + { + "filename": "blue_orb", + "rotated": false, + "trimmed": true, + "sourceSize": { + "w": 32, + "h": 32 + }, + "spriteSourceSize": { + "x": 6, + "y": 6, + "w": 20, + "h": 20 + }, + "frame": { + "x": 264, + "y": 108, + "w": 20, + "h": 20 + } + }, + { + "filename": "mini_black_hole", + "rotated": false, + "trimmed": true, + "sourceSize": { + "w": 32, + "h": 32 + }, + "spriteSourceSize": { + "x": 5, + "y": 5, + "w": 22, + "h": 22 + }, + "frame": { + "x": 284, + "y": 106, + "w": 22, + "h": 22 + } + }, + { + "filename": "moon_flute", + "rotated": false, + "trimmed": true, + "sourceSize": { + "w": 32, + "h": 32 + }, + "spriteSourceSize": { + "x": 5, + "y": 5, + "w": 22, + "h": 22 + }, + "frame": { + "x": 306, + "y": 106, + "w": 22, + "h": 22 + } + }, + { + "filename": "liechi_berry", + "rotated": false, + "trimmed": true, + "sourceSize": { + "w": 32, + "h": 32 + }, + "spriteSourceSize": { + "x": 5, + "y": 6, + "w": 22, + "h": 21 + }, + "frame": { + "x": 328, + "y": 107, + "w": 22, + "h": 21 + } + }, + { + "filename": "normal_memory", + "rotated": false, + "trimmed": true, + "sourceSize": { + "w": 32, + "h": 32 + }, + "spriteSourceSize": { + "x": 5, + "y": 5, + "w": 22, + "h": 22 + }, + "frame": { + "x": 350, + "y": 107, + "w": 22, + "h": 22 + } + }, + { + "filename": "poison_memory", + "rotated": false, + "trimmed": true, + "sourceSize": { + "w": 32, + "h": 32 + }, + "spriteSourceSize": { + "x": 5, + "y": 5, + "w": 22, + "h": 22 + }, + "frame": { + "x": 372, + "y": 108, + "w": 22, + "h": 22 + } + }, + { + "filename": "protector", + "rotated": false, + "trimmed": true, + "sourceSize": { + "w": 32, + "h": 32 + }, + "spriteSourceSize": { + "x": 5, + "y": 5, + "w": 22, + "h": 22 + }, + "frame": { + "x": 394, + "y": 108, + "w": 22, + "h": 22 + } + }, + { + "filename": "aerodactylite", + "rotated": false, + "trimmed": true, + "sourceSize": { + "w": 32, + "h": 32 + }, + "spriteSourceSize": { + "x": 8, + "y": 8, + "w": 16, + "h": 16 + }, + "frame": { + "x": 416, + "y": 114, + "w": 16, + "h": 16 + } + }, + { + "filename": "psychic_memory", + "rotated": false, + "trimmed": true, + "sourceSize": { + "w": 32, + "h": 32 + }, + "spriteSourceSize": { + "x": 5, + "y": 5, + "w": 22, + "h": 22 + }, + "frame": { + "x": 179, + "y": 346, + "w": 22, + "h": 22 + } + }, + { + "filename": "aggronite", + "rotated": false, + "trimmed": true, + "sourceSize": { + "w": 32, + "h": 32 + }, + "spriteSourceSize": { + "x": 8, + "y": 8, + "w": 16, + "h": 16 + }, + "frame": { + "x": 179, + "y": 368, + "w": 16, + "h": 16 + } + }, + { + "filename": "super_potion", + "rotated": false, + "trimmed": true, + "sourceSize": { + "w": 32, + "h": 32 + }, + "spriteSourceSize": { + "x": 8, + "y": 5, + "w": 17, + "h": 23 + }, + "frame": { + "x": 186, + "y": 384, + "w": 17, + "h": 23 + } + }, + { + "filename": "alakazite", + "rotated": false, + "trimmed": true, + "sourceSize": { + "w": 32, + "h": 32 + }, + "spriteSourceSize": { + "x": 8, + "y": 8, + "w": 16, + "h": 16 + }, + "frame": { + "x": 195, + "y": 368, + "w": 16, + "h": 16 + } + }, + { + "filename": "hard_meteorite", + "rotated": false, + "trimmed": true, + "sourceSize": { + "w": 32, + "h": 32 + }, + "spriteSourceSize": { + "x": 7, + "y": 5, + "w": 20, + "h": 22 + }, + "frame": { + "x": 201, + "y": 346, + "w": 20, + "h": 22 + } + }, + { + "filename": "leftovers", + "rotated": false, + "trimmed": true, + "sourceSize": { + "w": 32, + "h": 32 + }, + "spriteSourceSize": { + "x": 8, + "y": 5, + "w": 15, + "h": 22 + }, + "frame": { + "x": 203, + "y": 384, + "w": 15, + "h": 22 + } + }, + { + "filename": "altarianite", + "rotated": false, + "trimmed": true, + "sourceSize": { + "w": 32, + "h": 32 + }, + "spriteSourceSize": { + "x": 8, + "y": 8, + "w": 16, + "h": 16 + }, + "frame": { + "x": 211, + "y": 368, + "w": 16, + "h": 16 + } + }, + { + "filename": "lock_capsule", + "rotated": false, + "trimmed": true, + "sourceSize": { + "w": 32, + "h": 32 + }, + "spriteSourceSize": { + "x": 7, + "y": 5, + "w": 19, + "h": 22 + }, + "frame": { + "x": 218, + "y": 384, + "w": 19, + "h": 22 + } + }, + { + "filename": "metal_coat", + "rotated": false, + "trimmed": true, + "sourceSize": { + "w": 32, + "h": 32 + }, + "spriteSourceSize": { + "x": 6, + "y": 5, + "w": 19, + "h": 22 + }, + "frame": { + "x": 196, + "y": 407, + "w": 19, + "h": 22 + } + }, + { + "filename": "rock_memory", + "rotated": false, + "trimmed": true, + "sourceSize": { + "w": 32, + "h": 32 + }, + "spriteSourceSize": { + "x": 5, + "y": 5, + "w": 22, + "h": 22 + }, + "frame": { + "x": 215, + "y": 406, + "w": 22, + "h": 22 + } + }, + { + "filename": "metronome", + "rotated": false, + "trimmed": true, + "sourceSize": { + "w": 32, + "h": 32 + }, + "spriteSourceSize": { + "x": 7, + "y": 5, + "w": 17, + "h": 22 + }, + "frame": { + "x": 206, + "y": 209, + "w": 17, + "h": 22 + } + }, + { + "filename": "scroll_of_darkness", + "rotated": false, + "trimmed": true, + "sourceSize": { + "w": 32, + "h": 32 + }, + "spriteSourceSize": { + "x": 5, + "y": 5, + "w": 22, + "h": 22 + }, + "frame": { + "x": 203, + "y": 231, + "w": 22, + "h": 22 + } + }, + { + "filename": "scroll_of_waters", + "rotated": false, + "trimmed": true, + "sourceSize": { + "w": 32, + "h": 32 + }, + "spriteSourceSize": { + "x": 5, + "y": 5, + "w": 22, + "h": 22 + }, + "frame": { + "x": 203, + "y": 253, + "w": 22, + "h": 22 + } + }, + { + "filename": "shed_shell", + "rotated": false, + "trimmed": true, + "sourceSize": { + "w": 32, + "h": 32 + }, + "spriteSourceSize": { + "x": 5, + "y": 5, + "w": 22, + "h": 22 + }, + "frame": { + "x": 203, + "y": 275, + "w": 22, + "h": 22 + } + }, + { + "filename": "starf_berry", + "rotated": false, + "trimmed": true, + "sourceSize": { + "w": 32, + "h": 32 + }, + "spriteSourceSize": { + "x": 5, + "y": 5, + "w": 22, + "h": 22 + }, + "frame": { + "x": 203, + "y": 297, + "w": 22, + "h": 22 + } + }, + { + "filename": "steel_memory", + "rotated": false, + "trimmed": true, + "sourceSize": { + "w": 32, + "h": 32 + }, + "spriteSourceSize": { + "x": 5, + "y": 5, + "w": 22, + "h": 22 + }, + "frame": { + "x": 203, + "y": 319, + "w": 22, + "h": 22 + } + }, + { + "filename": "quick_claw", + "rotated": false, + "trimmed": true, + "sourceSize": { + "w": 32, + "h": 32 + }, + "spriteSourceSize": { + "x": 6, + "y": 6, + "w": 19, + "h": 21 + }, + "frame": { + "x": 204, + "y": 126, + "w": 19, + "h": 21 + } + }, + { + "filename": "golden_mystic_ticket", + "rotated": false, + "trimmed": true, + "sourceSize": { + "w": 32, + "h": 32 + }, + "spriteSourceSize": { + "x": 4, + "y": 7, + "w": 23, + "h": 19 + }, + "frame": { + "x": 223, + "y": 128, + "w": 23, + "h": 19 + } + }, + { + "filename": "mystic_ticket", + "rotated": false, + "trimmed": true, + "sourceSize": { + "w": 32, + "h": 32 + }, + "spriteSourceSize": { + "x": 4, + "y": 7, + "w": 23, + "h": 19 + }, + "frame": { + "x": 246, + "y": 128, + "w": 23, + "h": 19 + } + }, + { + "filename": "pair_of_tickets", + "rotated": false, + "trimmed": true, + "sourceSize": { + "w": 32, + "h": 32 + }, + "spriteSourceSize": { + "x": 4, + "y": 7, + "w": 23, + "h": 19 + }, + "frame": { + "x": 269, + "y": 128, + "w": 23, + "h": 19 + } + }, + { + "filename": "blunder_policy", + "rotated": false, + "trimmed": true, + "sourceSize": { + "w": 32, + "h": 32 + }, + "spriteSourceSize": { + "x": 5, + "y": 6, + "w": 22, + "h": 19 + }, + "frame": { + "x": 292, + "y": 128, + "w": 22, + "h": 19 + } + }, + { + "filename": "dubious_disc", + "rotated": false, + "trimmed": true, + "sourceSize": { + "w": 32, + "h": 32 + }, + "spriteSourceSize": { + "x": 5, + "y": 7, + "w": 22, + "h": 19 + }, + "frame": { + "x": 314, + "y": 128, + "w": 22, + "h": 19 + } + }, + { + "filename": "ampharosite", + "rotated": false, + "trimmed": true, + "sourceSize": { + "w": 32, + "h": 32 + }, + "spriteSourceSize": { + "x": 8, + "y": 8, + "w": 16, + "h": 16 + }, + "frame": { + "x": 204, + "y": 147, + "w": 16, + "h": 16 + } + }, + { + "filename": "burn_drive", + "rotated": false, + "trimmed": true, + "sourceSize": { + "w": 32, + "h": 32 + }, + "spriteSourceSize": { + "x": 4, + "y": 8, + "w": 23, + "h": 17 + }, + "frame": { + "x": 220, + "y": 147, + "w": 23, + "h": 17 + } + }, + { + "filename": "chill_drive", + "rotated": false, + "trimmed": true, + "sourceSize": { + "w": 32, + "h": 32 + }, + "spriteSourceSize": { + "x": 4, + "y": 8, + "w": 23, + "h": 17 + }, + "frame": { + "x": 243, + "y": 147, + "w": 23, + "h": 17 + } + }, + { + "filename": "douse_drive", + "rotated": false, + "trimmed": true, + "sourceSize": { + "w": 32, + "h": 32 + }, + "spriteSourceSize": { + "x": 4, + "y": 8, + "w": 23, + "h": 17 + }, + "frame": { + "x": 266, + "y": 147, + "w": 23, + "h": 17 + } + }, + { + "filename": "relic_crown", + "rotated": false, + "trimmed": true, + "sourceSize": { + "w": 32, + "h": 32 + }, + "spriteSourceSize": { + "x": 4, + "y": 7, + "w": 23, + "h": 18 + }, + "frame": { + "x": 289, + "y": 147, + "w": 23, + "h": 18 + } + }, + { + "filename": "fairy_feather", + "rotated": false, + "trimmed": true, + "sourceSize": { + "w": 32, + "h": 32 + }, + "spriteSourceSize": { + "x": 5, + "y": 7, + "w": 22, + "h": 20 + }, + "frame": { + "x": 312, + "y": 147, + "w": 22, + "h": 20 + } + }, + { + "filename": "sun_flute", + "rotated": false, + "trimmed": true, + "sourceSize": { + "w": 32, + "h": 32 + }, + "spriteSourceSize": { + "x": 5, + "y": 5, + "w": 22, + "h": 22 + }, + "frame": { + "x": 206, + "y": 164, + "w": 22, + "h": 22 + } + }, + { + "filename": "thick_club", + "rotated": false, + "trimmed": true, + "sourceSize": { + "w": 32, + "h": 32 + }, + "spriteSourceSize": { + "x": 5, + "y": 5, + "w": 22, + "h": 22 + }, + "frame": { + "x": 228, + "y": 164, + "w": 22, + "h": 22 + } + }, + { + "filename": "thunder_stone", + "rotated": false, + "trimmed": true, + "sourceSize": { + "w": 32, + "h": 32 + }, + "spriteSourceSize": { + "x": 5, + "y": 5, + "w": 22, + "h": 22 + }, + "frame": { + "x": 212, + "y": 186, + "w": 22, + "h": 22 + } + }, + { + "filename": "tm_bug", + "rotated": false, + "trimmed": true, + "sourceSize": { + "w": 32, + "h": 32 + }, + "spriteSourceSize": { + "x": 5, + "y": 5, + "w": 22, + "h": 22 + }, + "frame": { + "x": 250, + "y": 164, + "w": 22, + "h": 22 + } + }, + { + "filename": "tm_dark", + "rotated": false, + "trimmed": true, + "sourceSize": { + "w": 32, + "h": 32 + }, + "spriteSourceSize": { + "x": 5, + "y": 5, + "w": 22, + "h": 22 + }, + "frame": { + "x": 234, + "y": 186, + "w": 22, + "h": 22 + } + }, + { + "filename": "tm_dragon", + "rotated": false, + "trimmed": true, + "sourceSize": { + "w": 32, + "h": 32 + }, + "spriteSourceSize": { + "x": 5, + "y": 5, + "w": 22, + "h": 22 + }, + "frame": { + "x": 223, + "y": 208, + "w": 22, + "h": 22 + } + }, + { + "filename": "sitrus_berry", + "rotated": false, + "trimmed": true, + "sourceSize": { + "w": 32, + "h": 32 + }, + "spriteSourceSize": { + "x": 6, + "y": 5, + "w": 20, + "h": 22 + }, + "frame": { + "x": 225, + "y": 230, + "w": 20, + "h": 22 + } + }, + { + "filename": "tm_electric", + "rotated": false, + "trimmed": true, + "sourceSize": { + "w": 32, + "h": 32 + }, + "spriteSourceSize": { + "x": 5, + "y": 5, + "w": 22, + "h": 22 + }, + "frame": { + "x": 225, + "y": 252, + "w": 22, + "h": 22 + } + }, + { + "filename": "tm_fairy", + "rotated": false, + "trimmed": true, + "sourceSize": { + "w": 32, + "h": 32 + }, + "spriteSourceSize": { + "x": 5, + "y": 5, + "w": 22, + "h": 22 + }, + "frame": { + "x": 225, + "y": 274, + "w": 22, + "h": 22 + } + }, + { + "filename": "tm_fighting", + "rotated": false, + "trimmed": true, + "sourceSize": { + "w": 32, + "h": 32 + }, + "spriteSourceSize": { + "x": 5, + "y": 5, + "w": 22, + "h": 22 + }, + "frame": { + "x": 225, + "y": 296, + "w": 22, + "h": 22 + } + }, + { + "filename": "tm_fire", + "rotated": false, + "trimmed": true, + "sourceSize": { + "w": 32, + "h": 32 + }, + "spriteSourceSize": { + "x": 5, + "y": 5, + "w": 22, + "h": 22 + }, + "frame": { + "x": 225, + "y": 318, + "w": 22, + "h": 22 + } + }, + { + "filename": "soothe_bell", + "rotated": false, + "trimmed": true, + "sourceSize": { + "w": 32, + "h": 32 + }, + "spriteSourceSize": { + "x": 8, + "y": 5, + "w": 17, + "h": 22 + }, + "frame": { + "x": 272, + "y": 164, + "w": 17, + "h": 22 + } + }, + { + "filename": "tm_flying", + "rotated": false, + "trimmed": true, + "sourceSize": { + "w": 32, + "h": 32 + }, + "spriteSourceSize": { + "x": 5, + "y": 5, + "w": 22, + "h": 22 + }, + "frame": { + "x": 256, + "y": 186, + "w": 22, + "h": 22 + } + }, + { + "filename": "tm_ghost", + "rotated": false, + "trimmed": true, + "sourceSize": { + "w": 32, + "h": 32 + }, + "spriteSourceSize": { + "x": 5, + "y": 5, + "w": 22, + "h": 22 + }, + "frame": { + "x": 245, + "y": 208, + "w": 22, + "h": 22 + } + }, + { + "filename": "tm_grass", + "rotated": false, + "trimmed": true, + "sourceSize": { + "w": 32, + "h": 32 + }, + "spriteSourceSize": { + "x": 5, + "y": 5, + "w": 22, + "h": 22 + }, + "frame": { + "x": 245, + "y": 230, + "w": 22, + "h": 22 + } + }, + { + "filename": "sweet_apple", + "rotated": false, + "trimmed": true, + "sourceSize": { + "w": 32, + "h": 32 + }, + "spriteSourceSize": { + "x": 5, + "y": 6, + "w": 22, + "h": 21 + }, + "frame": { + "x": 289, + "y": 165, + "w": 22, + "h": 21 + } + }, + { + "filename": "tm_ground", + "rotated": false, + "trimmed": true, + "sourceSize": { + "w": 32, + "h": 32 + }, + "spriteSourceSize": { + "x": 5, + "y": 5, + "w": 22, + "h": 22 + }, + "frame": { + "x": 278, + "y": 186, + "w": 22, + "h": 22 + } + }, + { + "filename": "tm_ice", + "rotated": false, + "trimmed": true, + "sourceSize": { + "w": 32, + "h": 32 + }, + "spriteSourceSize": { + "x": 5, + "y": 5, + "w": 22, + "h": 22 + }, + "frame": { + "x": 267, + "y": 208, + "w": 22, + "h": 22 + } + }, + { + "filename": "tm_normal", + "rotated": false, + "trimmed": true, + "sourceSize": { + "w": 32, + "h": 32 + }, + "spriteSourceSize": { + "x": 5, + "y": 5, + "w": 22, + "h": 22 + }, + "frame": { + "x": 267, + "y": 230, + "w": 22, + "h": 22 + } + }, + { + "filename": "tm_poison", + "rotated": false, + "trimmed": true, + "sourceSize": { + "w": 32, + "h": 32 + }, + "spriteSourceSize": { + "x": 5, + "y": 5, + "w": 22, + "h": 22 + }, + "frame": { + "x": 247, + "y": 252, + "w": 22, + "h": 22 + } + }, + { + "filename": "tm_psychic", + "rotated": false, + "trimmed": true, + "sourceSize": { + "w": 32, + "h": 32 + }, + "spriteSourceSize": { + "x": 5, + "y": 5, + "w": 22, + "h": 22 + }, + "frame": { + "x": 247, + "y": 274, + "w": 22, + "h": 22 + } + }, + { + "filename": "tm_rock", + "rotated": false, + "trimmed": true, + "sourceSize": { + "w": 32, + "h": 32 + }, + "spriteSourceSize": { + "x": 5, + "y": 5, + "w": 22, + "h": 22 + }, + "frame": { + "x": 247, + "y": 296, + "w": 22, + "h": 22 + } + }, + { + "filename": "tm_steel", + "rotated": false, + "trimmed": true, + "sourceSize": { + "w": 32, + "h": 32 + }, + "spriteSourceSize": { + "x": 5, + "y": 5, + "w": 22, + "h": 22 + }, + "frame": { + "x": 247, + "y": 318, + "w": 22, + "h": 22 + } + }, + { + "filename": "tm_water", + "rotated": false, + "trimmed": true, + "sourceSize": { + "w": 32, + "h": 32 + }, + "spriteSourceSize": { + "x": 5, + "y": 5, + "w": 22, + "h": 22 + }, + "frame": { + "x": 269, + "y": 252, + "w": 22, + "h": 22 + } + }, + { + "filename": "water_memory", + "rotated": false, + "trimmed": true, + "sourceSize": { + "w": 32, + "h": 32 + }, + "spriteSourceSize": { + "x": 5, + "y": 5, + "w": 22, + "h": 22 + }, + "frame": { + "x": 269, + "y": 274, + "w": 22, + "h": 22 + } + }, + { + "filename": "water_stone", + "rotated": false, + "trimmed": true, + "sourceSize": { + "w": 32, + "h": 32 + }, + "spriteSourceSize": { + "x": 5, + "y": 5, + "w": 22, + "h": 22 + }, + "frame": { + "x": 269, + "y": 296, + "w": 22, + "h": 22 + } + }, + { + "filename": "x_accuracy", + "rotated": false, + "trimmed": true, + "sourceSize": { + "w": 32, + "h": 32 + }, + "spriteSourceSize": { + "x": 5, + "y": 5, + "w": 22, + "h": 22 + }, + "frame": { + "x": 269, + "y": 318, + "w": 22, + "h": 22 + } + }, + { + "filename": "malicious_armor", + "rotated": false, + "trimmed": true, + "sourceSize": { + "w": 32, + "h": 32 + }, + "spriteSourceSize": { + "x": 5, + "y": 6, + "w": 22, + "h": 20 + }, + "frame": { + "x": 311, + "y": 167, + "w": 22, + "h": 20 + } + }, + { + "filename": "x_attack", + "rotated": false, + "trimmed": true, + "sourceSize": { + "w": 32, + "h": 32 + }, + "spriteSourceSize": { + "x": 5, + "y": 5, + "w": 22, + "h": 22 + }, + "frame": { + "x": 289, + "y": 208, + "w": 22, + "h": 22 + } + }, + { + "filename": "x_defense", + "rotated": false, + "trimmed": true, + "sourceSize": { + "w": 32, + "h": 32 + }, + "spriteSourceSize": { + "x": 5, + "y": 5, + "w": 22, + "h": 22 + }, + "frame": { + "x": 289, + "y": 230, + "w": 22, + "h": 22 + } + }, + { + "filename": "syrupy_apple", + "rotated": false, + "trimmed": true, + "sourceSize": { + "w": 32, + "h": 32 + }, + "spriteSourceSize": { + "x": 5, + "y": 6, + "w": 22, + "h": 21 + }, + "frame": { + "x": 300, + "y": 187, + "w": 22, + "h": 21 + } + }, + { + "filename": "x_sp_atk", + "rotated": false, + "trimmed": true, + "sourceSize": { + "w": 32, + "h": 32 + }, + "spriteSourceSize": { + "x": 5, + "y": 5, + "w": 22, + "h": 22 + }, + "frame": { + "x": 291, + "y": 252, + "w": 22, + "h": 22 + } + }, + { + "filename": "x_sp_def", + "rotated": false, + "trimmed": true, + "sourceSize": { + "w": 32, + "h": 32 + }, + "spriteSourceSize": { + "x": 5, + "y": 5, + "w": 22, + "h": 22 + }, + "frame": { + "x": 291, + "y": 274, + "w": 22, + "h": 22 + } + }, + { + "filename": "x_speed", + "rotated": false, + "trimmed": true, + "sourceSize": { + "w": 32, + "h": 32 + }, + "spriteSourceSize": { + "x": 5, + "y": 5, + "w": 22, + "h": 22 + }, + "frame": { + "x": 291, + "y": 296, + "w": 22, + "h": 22 + } + }, + { + "filename": "tart_apple", + "rotated": false, + "trimmed": true, + "sourceSize": { + "w": 32, + "h": 32 + }, + "spriteSourceSize": { + "x": 5, + "y": 6, + "w": 22, + "h": 21 + }, + "frame": { + "x": 291, + "y": 318, + "w": 22, + "h": 21 + } + }, + { + "filename": "dawn_stone", + "rotated": false, + "trimmed": true, + "sourceSize": { + "w": 32, + "h": 32 + }, + "spriteSourceSize": { + "x": 6, + "y": 6, + "w": 20, + "h": 21 + }, + "frame": { + "x": 322, + "y": 187, + "w": 20, + "h": 21 + } + }, + { + "filename": "dusk_stone", + "rotated": false, + "trimmed": true, + "sourceSize": { + "w": 32, + "h": 32 + }, + "spriteSourceSize": { + "x": 6, + "y": 6, + "w": 21, + "h": 21 + }, + "frame": { + "x": 311, + "y": 208, + "w": 21, + "h": 21 + } + }, + { + "filename": "poison_barb", + "rotated": false, + "trimmed": true, + "sourceSize": { + "w": 32, + "h": 32 + }, + "spriteSourceSize": { + "x": 5, + "y": 6, + "w": 21, + "h": 21 + }, + "frame": { + "x": 311, + "y": 229, + "w": 21, + "h": 21 + } + }, + { + "filename": "flying_tera_shard", + "rotated": false, + "trimmed": true, + "sourceSize": { + "w": 32, + "h": 32 + }, + "spriteSourceSize": { + "x": 7, + "y": 5, + "w": 20, + "h": 21 + }, + "frame": { + "x": 313, + "y": 250, + "w": 20, + "h": 21 + } + }, + { + "filename": "shiny_stone", + "rotated": false, + "trimmed": true, + "sourceSize": { + "w": 32, + "h": 32 + }, + "spriteSourceSize": { + "x": 5, + "y": 6, + "w": 21, + "h": 21 + }, + "frame": { + "x": 313, + "y": 271, + "w": 21, + "h": 21 + } + }, + { + "filename": "zoom_lens", + "rotated": false, + "trimmed": true, + "sourceSize": { + "w": 32, + "h": 32 + }, + "spriteSourceSize": { + "x": 5, + "y": 6, + "w": 21, + "h": 21 + }, + "frame": { + "x": 313, + "y": 292, + "w": 21, + "h": 21 + } + }, + { + "filename": "tera_orb", + "rotated": false, + "trimmed": true, + "sourceSize": { + "w": 32, + "h": 32 + }, + "spriteSourceSize": { + "x": 5, + "y": 6, + "w": 22, + "h": 20 + }, + "frame": { + "x": 313, + "y": 313, + "w": 22, + "h": 20 + } + }, + { + "filename": "spell_tag", + "rotated": false, + "trimmed": true, + "sourceSize": { + "w": 32, + "h": 32 + }, + "spriteSourceSize": { + "x": 7, + "y": 6, + "w": 19, + "h": 21 + }, + "frame": { + "x": 332, + "y": 208, + "w": 19, + "h": 21 + } + }, + { + "filename": "candy_jar", + "rotated": false, + "trimmed": true, + "sourceSize": { + "w": 32, + "h": 32 + }, + "spriteSourceSize": { + "x": 6, + "y": 6, + "w": 19, + "h": 20 + }, + "frame": { + "x": 332, + "y": 229, + "w": 19, + "h": 20 + } + }, + { + "filename": "gb", + "rotated": false, + "trimmed": true, + "sourceSize": { + "w": 32, + "h": 32 + }, + "spriteSourceSize": { + "x": 6, + "y": 6, + "w": 20, + "h": 20 + }, + "frame": { + "x": 333, + "y": 249, + "w": 20, + "h": 20 + } + }, + { + "filename": "hard_stone", + "rotated": false, + "trimmed": true, + "sourceSize": { + "w": 32, + "h": 32 + }, + "spriteSourceSize": { + "x": 6, + "y": 6, + "w": 19, + "h": 20 + }, + "frame": { + "x": 334, + "y": 269, + "w": 19, + "h": 20 + } + }, + { + "filename": "magnet", + "rotated": false, + "trimmed": true, + "sourceSize": { + "w": 32, + "h": 32 + }, + "spriteSourceSize": { + "x": 6, + "y": 6, + "w": 20, + "h": 20 + }, + "frame": { + "x": 334, + "y": 289, + "w": 20, + "h": 20 + } + }, + { + "filename": "mb", + "rotated": false, + "trimmed": true, + "sourceSize": { + "w": 32, + "h": 32 + }, + "spriteSourceSize": { + "x": 6, + "y": 6, + "w": 20, + "h": 20 + }, + "frame": { + "x": 335, + "y": 309, + "w": 20, + "h": 20 + } + }, + { + "filename": "golden_egg", + "rotated": false, + "trimmed": true, + "sourceSize": { + "w": 32, + "h": 32 + }, + "spriteSourceSize": { + "x": 7, + "y": 6, + "w": 17, + "h": 20 + }, + "frame": { + "x": 333, + "y": 167, + "w": 17, + "h": 20 + } + }, + { + "filename": "lucky_egg", + "rotated": false, + "trimmed": true, + "sourceSize": { + "w": 32, + "h": 32 + }, + "spriteSourceSize": { + "x": 7, + "y": 6, + "w": 17, + "h": 20 + }, + "frame": { + "x": 334, + "y": 147, + "w": 17, + "h": 20 + } + }, + { + "filename": "masterpiece_teacup", + "rotated": false, + "trimmed": true, + "sourceSize": { + "w": 32, + "h": 32 + }, + "spriteSourceSize": { + "x": 5, + "y": 7, + "w": 21, + "h": 18 + }, + "frame": { + "x": 336, + "y": 129, + "w": 21, + "h": 18 + } + }, + { + "filename": "pb", + "rotated": false, + "trimmed": true, + "sourceSize": { + "w": 32, + "h": 32 + }, + "spriteSourceSize": { + "x": 6, + "y": 6, + "w": 20, + "h": 20 + }, + "frame": { + "x": 342, + "y": 187, + "w": 20, + "h": 20 + } + }, + { + "filename": "pb_gold", + "rotated": false, + "trimmed": true, + "sourceSize": { + "w": 32, + "h": 32 + }, + "spriteSourceSize": { + "x": 6, + "y": 6, + "w": 20, + "h": 20 + }, + "frame": { + "x": 350, + "y": 167, + "w": 20, + "h": 20 + } + }, + { + "filename": "pb_silver", + "rotated": false, + "trimmed": true, + "sourceSize": { + "w": 32, + "h": 32 + }, + "spriteSourceSize": { + "x": 6, + "y": 6, + "w": 20, + "h": 20 + }, + "frame": { + "x": 351, + "y": 147, + "w": 20, + "h": 20 + } + }, + { + "filename": "shock_drive", + "rotated": false, + "trimmed": true, + "sourceSize": { + "w": 32, + "h": 32 + }, + "spriteSourceSize": { + "x": 4, + "y": 8, + "w": 23, + "h": 17 + }, + "frame": { + "x": 357, + "y": 130, + "w": 23, + "h": 17 + } + }, + { + "filename": "wise_glasses", + "rotated": false, + "trimmed": true, + "sourceSize": { + "w": 32, + "h": 32 + }, + "spriteSourceSize": { + "x": 4, + "y": 8, + "w": 23, + "h": 17 + }, + "frame": { + "x": 380, + "y": 130, + "w": 23, + "h": 17 + } + }, + { + "filename": "upgrade", + "rotated": false, + "trimmed": true, + "sourceSize": { + "w": 32, + "h": 32 + }, + "spriteSourceSize": { + "x": 5, + "y": 7, + "w": 22, + "h": 19 + }, + "frame": { + "x": 371, + "y": 147, + "w": 22, + "h": 19 + } + }, + { + "filename": "metal_alloy", + "rotated": false, + "trimmed": true, + "sourceSize": { + "w": 32, + "h": 32 + }, + "spriteSourceSize": { + "x": 6, + "y": 7, + "w": 21, + "h": 19 + }, + "frame": { + "x": 403, + "y": 130, + "w": 21, + "h": 19 + } + }, + { + "filename": "razor_fang", + "rotated": false, + "trimmed": true, + "sourceSize": { + "w": 32, + "h": 32 + }, + "spriteSourceSize": { + "x": 7, + "y": 6, + "w": 18, + "h": 20 + }, + "frame": { + "x": 351, + "y": 207, + "w": 18, + "h": 20 + } + }, + { + "filename": "rb", + "rotated": false, + "trimmed": true, + "sourceSize": { + "w": 32, + "h": 32 + }, + "spriteSourceSize": { + "x": 6, + "y": 6, + "w": 20, + "h": 20 + }, + "frame": { + "x": 351, + "y": 227, + "w": 20, + "h": 20 + } + }, + { + "filename": "smooth_meteorite", + "rotated": false, + "trimmed": true, + "sourceSize": { + "w": 32, + "h": 32 + }, + "spriteSourceSize": { + "x": 7, + "y": 6, + "w": 20, + "h": 20 + }, + "frame": { + "x": 353, + "y": 247, + "w": 20, + "h": 20 + } + }, + { + "filename": "strange_ball", + "rotated": false, + "trimmed": true, + "sourceSize": { + "w": 32, + "h": 32 + }, + "spriteSourceSize": { + "x": 6, + "y": 6, + "w": 20, + "h": 20 + }, + "frame": { + "x": 353, + "y": 267, + "w": 20, + "h": 20 + } + }, + { + "filename": "ub", + "rotated": false, + "trimmed": true, + "sourceSize": { + "w": 32, + "h": 32 + }, + "spriteSourceSize": { + "x": 6, + "y": 6, + "w": 20, + "h": 20 + }, + "frame": { + "x": 354, + "y": 287, + "w": 20, + "h": 20 + } + }, + { + "filename": "lum_berry", + "rotated": false, + "trimmed": true, + "sourceSize": { + "w": 32, + "h": 32 + }, + "spriteSourceSize": { + "x": 6, + "y": 7, + "w": 20, + "h": 19 + }, + "frame": { + "x": 355, + "y": 307, + "w": 20, + "h": 19 + } + }, + { + "filename": "old_gateau", + "rotated": false, + "trimmed": true, + "sourceSize": { + "w": 32, + "h": 32 + }, + "spriteSourceSize": { + "x": 6, + "y": 8, + "w": 21, + "h": 18 + }, + "frame": { + "x": 393, + "y": 149, + "w": 21, + "h": 18 + } + }, + { + "filename": "oval_stone", + "rotated": false, + "trimmed": true, + "sourceSize": { + "w": 32, + "h": 32 + }, + "spriteSourceSize": { + "x": 7, + "y": 7, + "w": 18, + "h": 19 + }, + "frame": { + "x": 414, + "y": 149, + "w": 18, + "h": 19 + } + }, + { + "filename": "miracle_seed", + "rotated": false, + "trimmed": true, + "sourceSize": { + "w": 32, + "h": 32 + }, + "spriteSourceSize": { + "x": 6, + "y": 7, + "w": 19, + "h": 19 + }, + "frame": { + "x": 362, + "y": 187, + "w": 19, + "h": 19 + } + }, + { + "filename": "power_herb", + "rotated": false, + "trimmed": true, + "sourceSize": { + "w": 32, + "h": 32 + }, + "spriteSourceSize": { + "x": 6, + "y": 7, + "w": 20, + "h": 19 + }, + "frame": { + "x": 369, + "y": 206, + "w": 20, + "h": 19 + } + }, + { + "filename": "razor_claw", + "rotated": false, + "trimmed": true, + "sourceSize": { + "w": 32, + "h": 32 + }, + "spriteSourceSize": { + "x": 6, + "y": 7, + "w": 20, + "h": 19 + }, + "frame": { + "x": 371, + "y": 225, + "w": 20, + "h": 19 + } + }, + { + "filename": "white_herb", + "rotated": false, + "trimmed": true, + "sourceSize": { + "w": 32, + "h": 32 + }, + "spriteSourceSize": { + "x": 6, + "y": 7, + "w": 20, + "h": 19 + }, + "frame": { + "x": 373, + "y": 244, + "w": 20, + "h": 19 + } + }, + { + "filename": "sharp_meteorite", + "rotated": false, + "trimmed": true, + "sourceSize": { + "w": 32, + "h": 32 + }, + "spriteSourceSize": { + "x": 6, + "y": 8, + "w": 21, + "h": 18 + }, + "frame": { + "x": 373, + "y": 263, + "w": 21, + "h": 18 + } + }, + { + "filename": "unremarkable_teacup", + "rotated": false, + "trimmed": true, + "sourceSize": { + "w": 32, + "h": 32 + }, + "spriteSourceSize": { + "x": 5, + "y": 7, + "w": 21, + "h": 18 + }, + "frame": { + "x": 374, + "y": 281, + "w": 21, + "h": 18 + } + }, + { + "filename": "wl_ability_urge", + "rotated": false, + "trimmed": true, + "sourceSize": { + "w": 32, + "h": 32 + }, + "spriteSourceSize": { + "x": 6, + "y": 8, + "w": 20, + "h": 18 + }, + "frame": { + "x": 375, + "y": 299, + "w": 20, + "h": 18 + } + }, + { + "filename": "everstone", + "rotated": false, + "trimmed": true, + "sourceSize": { + "w": 32, + "h": 32 + }, + "spriteSourceSize": { + "x": 6, + "y": 8, + "w": 20, + "h": 17 + }, + "frame": { + "x": 375, + "y": 317, + "w": 20, + "h": 17 + } + }, + { + "filename": "wl_antidote", + "rotated": false, + "trimmed": true, + "sourceSize": { + "w": 32, + "h": 32 + }, + "spriteSourceSize": { + "x": 6, + "y": 8, + "w": 20, + "h": 18 + }, + "frame": { + "x": 355, + "y": 326, + "w": 20, + "h": 18 + } + }, + { + "filename": "wl_awakening", + "rotated": false, + "trimmed": true, + "sourceSize": { + "w": 32, + "h": 32 + }, + "spriteSourceSize": { + "x": 6, + "y": 8, + "w": 20, + "h": 18 + }, + "frame": { + "x": 335, + "y": 329, + "w": 20, + "h": 18 + } + }, + { + "filename": "wl_burn_heal", + "rotated": false, + "trimmed": true, + "sourceSize": { + "w": 32, + "h": 32 + }, + "spriteSourceSize": { + "x": 6, + "y": 8, + "w": 20, + "h": 18 + }, + "frame": { + "x": 375, + "y": 334, + "w": 20, + "h": 18 + } + }, + { + "filename": "wl_custom_spliced", + "rotated": false, + "trimmed": true, + "sourceSize": { + "w": 32, + "h": 32 + }, + "spriteSourceSize": { + "x": 6, + "y": 8, + "w": 20, + "h": 18 + }, + "frame": { + "x": 355, + "y": 344, + "w": 20, + "h": 18 + } + }, + { + "filename": "wl_custom_thief", + "rotated": false, + "trimmed": true, + "sourceSize": { + "w": 32, + "h": 32 + }, + "spriteSourceSize": { + "x": 6, + "y": 8, + "w": 20, + "h": 18 + }, + "frame": { + "x": 375, + "y": 352, + "w": 20, + "h": 18 + } + }, + { + "filename": "wl_elixir", + "rotated": false, + "trimmed": true, + "sourceSize": { + "w": 32, + "h": 32 + }, + "spriteSourceSize": { + "x": 6, + "y": 8, + "w": 20, + "h": 18 + }, + "frame": { + "x": 313, + "y": 333, + "w": 20, + "h": 18 + } + }, + { + "filename": "wl_ether", + "rotated": false, + "trimmed": true, + "sourceSize": { + "w": 32, + "h": 32 + }, + "spriteSourceSize": { + "x": 6, + "y": 8, + "w": 20, + "h": 18 + }, + "frame": { + "x": 333, + "y": 347, + "w": 20, + "h": 18 + } + }, + { + "filename": "wl_full_heal", + "rotated": false, + "trimmed": true, + "sourceSize": { + "w": 32, + "h": 32 + }, + "spriteSourceSize": { + "x": 6, + "y": 8, + "w": 20, + "h": 18 + }, + "frame": { + "x": 371, + "y": 166, + "w": 20, + "h": 18 + } + }, + { + "filename": "wl_full_restore", + "rotated": false, + "trimmed": true, + "sourceSize": { + "w": 32, + "h": 32 + }, + "spriteSourceSize": { + "x": 6, + "y": 8, + "w": 20, + "h": 18 + }, + "frame": { + "x": 391, + "y": 167, + "w": 20, + "h": 18 + } + }, + { + "filename": "wl_guard_spec", + "rotated": false, + "trimmed": true, + "sourceSize": { + "w": 32, + "h": 32 + }, + "spriteSourceSize": { + "x": 6, + "y": 8, + "w": 20, + "h": 18 + }, + "frame": { + "x": 411, + "y": 168, + "w": 20, + "h": 18 + } + }, + { + "filename": "wl_hyper_potion", + "rotated": false, + "trimmed": true, + "sourceSize": { + "w": 32, + "h": 32 + }, + "spriteSourceSize": { + "x": 6, + "y": 8, + "w": 20, + "h": 18 + }, + "frame": { + "x": 381, + "y": 185, + "w": 20, + "h": 18 + } + }, + { + "filename": "baton", + "rotated": false, + "trimmed": true, + "sourceSize": { + "w": 32, + "h": 32 + }, + "spriteSourceSize": { + "x": 7, + "y": 7, + "w": 18, + "h": 18 + }, + "frame": { + "x": 389, + "y": 203, + "w": 18, + "h": 18 + } + }, + { + "filename": "candy", + "rotated": false, + "trimmed": true, + "sourceSize": { + "w": 32, + "h": 32 + }, + "spriteSourceSize": { + "x": 7, + "y": 11, + "w": 18, + "h": 18 + }, + "frame": { + "x": 391, + "y": 221, + "w": 18, + "h": 18 + } + }, + { + "filename": "dark_stone", + "rotated": false, + "trimmed": true, + "sourceSize": { + "w": 32, + "h": 32 + }, + "spriteSourceSize": { + "x": 7, + "y": 7, + "w": 18, + "h": 18 + }, + "frame": { + "x": 393, + "y": 239, + "w": 18, + "h": 18 + } + }, + { + "filename": "flame_orb", + "rotated": false, + "trimmed": true, + "sourceSize": { + "w": 32, + "h": 32 + }, + "spriteSourceSize": { + "x": 7, + "y": 7, + "w": 18, + "h": 18 + }, + "frame": { + "x": 394, + "y": 257, + "w": 18, + "h": 18 + } + }, + { + "filename": "wl_ice_heal", + "rotated": false, + "trimmed": true, + "sourceSize": { + "w": 32, + "h": 32 + }, + "spriteSourceSize": { + "x": 6, + "y": 8, + "w": 20, + "h": 18 + }, + "frame": { + "x": 412, + "y": 186, + "w": 20, + "h": 18 + } + }, + { + "filename": "wl_item_drop", + "rotated": false, + "trimmed": true, + "sourceSize": { + "w": 32, + "h": 32 + }, + "spriteSourceSize": { + "x": 6, + "y": 8, + "w": 20, + "h": 18 + }, + "frame": { + "x": 412, + "y": 204, + "w": 20, + "h": 18 + } + }, + { + "filename": "wl_item_urge", + "rotated": false, + "trimmed": true, + "sourceSize": { + "w": 32, + "h": 32 + }, + "spriteSourceSize": { + "x": 6, + "y": 8, + "w": 20, + "h": 18 + }, + "frame": { + "x": 412, + "y": 222, + "w": 20, + "h": 18 + } + }, + { + "filename": "wl_max_elixir", + "rotated": false, + "trimmed": true, + "sourceSize": { + "w": 32, + "h": 32 + }, + "spriteSourceSize": { + "x": 6, + "y": 8, + "w": 20, + "h": 18 + }, + "frame": { + "x": 412, + "y": 240, + "w": 20, + "h": 18 + } + }, + { + "filename": "wl_max_ether", + "rotated": false, + "trimmed": true, + "sourceSize": { + "w": 32, + "h": 32 + }, + "spriteSourceSize": { + "x": 6, + "y": 8, + "w": 20, + "h": 18 + }, + "frame": { + "x": 412, + "y": 258, + "w": 20, + "h": 18 + } + }, + { + "filename": "audinite", + "rotated": false, + "trimmed": true, + "sourceSize": { + "w": 32, + "h": 32 + }, + "spriteSourceSize": { + "x": 8, + "y": 8, + "w": 16, + "h": 16 + }, + "frame": { + "x": 395, + "y": 275, + "w": 16, + "h": 16 + } + }, + { + "filename": "light_ball", + "rotated": false, + "trimmed": true, + "sourceSize": { + "w": 32, + "h": 32 + }, + "spriteSourceSize": { + "x": 7, + "y": 7, + "w": 18, + "h": 18 + }, + "frame": { + "x": 395, + "y": 291, + "w": 18, + "h": 18 + } + }, + { + "filename": "light_stone", + "rotated": false, + "trimmed": true, + "sourceSize": { + "w": 32, + "h": 32 + }, + "spriteSourceSize": { + "x": 7, + "y": 7, + "w": 18, + "h": 18 + }, + "frame": { + "x": 395, + "y": 309, + "w": 18, + "h": 18 + } + }, + { + "filename": "toxic_orb", + "rotated": false, + "trimmed": true, + "sourceSize": { + "w": 32, + "h": 32 + }, + "spriteSourceSize": { + "x": 7, + "y": 7, + "w": 18, + "h": 18 + }, + "frame": { + "x": 395, + "y": 327, + "w": 18, + "h": 18 + } + }, + { + "filename": "wl_max_potion", + "rotated": false, + "trimmed": true, + "sourceSize": { + "w": 32, + "h": 32 + }, + "spriteSourceSize": { + "x": 6, + "y": 8, + "w": 20, + "h": 18 + }, + "frame": { + "x": 395, + "y": 345, + "w": 20, + "h": 18 + } + }, + { + "filename": "wl_max_revive", + "rotated": false, + "trimmed": true, + "sourceSize": { + "w": 32, + "h": 32 + }, + "spriteSourceSize": { + "x": 6, + "y": 8, + "w": 20, + "h": 18 + }, + "frame": { + "x": 395, + "y": 363, + "w": 20, + "h": 18 + } + }, + { + "filename": "wl_paralyze_heal", + "rotated": false, + "trimmed": true, + "sourceSize": { + "w": 32, + "h": 32 + }, + "spriteSourceSize": { + "x": 6, + "y": 8, + "w": 20, + "h": 18 + }, + "frame": { + "x": 225, + "y": 340, + "w": 20, + "h": 18 + } + }, + { + "filename": "wl_potion", + "rotated": false, + "trimmed": true, + "sourceSize": { + "w": 32, + "h": 32 + }, + "spriteSourceSize": { + "x": 6, + "y": 8, + "w": 20, + "h": 18 + }, + "frame": { + "x": 245, + "y": 340, + "w": 20, + "h": 18 + } + }, + { + "filename": "wl_reset_urge", + "rotated": false, + "trimmed": true, + "sourceSize": { + "w": 32, + "h": 32 + }, + "spriteSourceSize": { + "x": 6, + "y": 8, + "w": 20, + "h": 18 + }, + "frame": { + "x": 265, + "y": 340, + "w": 20, + "h": 18 + } + }, + { + "filename": "wl_revive", + "rotated": false, + "trimmed": true, + "sourceSize": { + "w": 32, + "h": 32 + }, + "spriteSourceSize": { + "x": 6, + "y": 8, + "w": 20, + "h": 18 + }, + "frame": { + "x": 227, + "y": 358, + "w": 20, + "h": 18 + } + }, + { + "filename": "wl_super_potion", + "rotated": false, + "trimmed": true, + "sourceSize": { + "w": 32, + "h": 32 + }, + "spriteSourceSize": { + "x": 6, + "y": 8, + "w": 20, + "h": 18 + }, + "frame": { + "x": 247, + "y": 358, + "w": 20, + "h": 18 + } + }, + { + "filename": "banettite", + "rotated": false, + "trimmed": true, + "sourceSize": { + "w": 32, + "h": 32 + }, + "spriteSourceSize": { + "x": 8, + "y": 8, + "w": 16, + "h": 16 + }, + "frame": { + "x": 267, + "y": 358, + "w": 16, + "h": 16 + } + }, + { + "filename": "beedrillite", + "rotated": false, + "trimmed": true, + "sourceSize": { + "w": 32, + "h": 32 + }, + "spriteSourceSize": { + "x": 8, + "y": 8, + "w": 16, + "h": 16 + }, + "frame": { + "x": 237, + "y": 376, + "w": 16, + "h": 16 + } + }, + { + "filename": "blastoisinite", + "rotated": false, + "trimmed": true, + "sourceSize": { + "w": 32, + "h": 32 + }, + "spriteSourceSize": { + "x": 8, + "y": 8, + "w": 16, + "h": 16 + }, + "frame": { + "x": 237, + "y": 392, + "w": 16, + "h": 16 + } + }, + { + "filename": "blazikenite", + "rotated": false, + "trimmed": true, + "sourceSize": { + "w": 32, + "h": 32 + }, + "spriteSourceSize": { + "x": 8, + "y": 8, + "w": 16, + "h": 16 + }, + "frame": { + "x": 237, + "y": 408, + "w": 16, + "h": 16 + } + }, + { + "filename": "cameruptite", + "rotated": false, + "trimmed": true, + "sourceSize": { + "w": 32, + "h": 32 + }, + "spriteSourceSize": { + "x": 8, + "y": 8, + "w": 16, + "h": 16 + }, + "frame": { + "x": 253, + "y": 376, + "w": 16, + "h": 16 + } + }, + { + "filename": "charizardite_x", + "rotated": false, + "trimmed": true, + "sourceSize": { + "w": 32, + "h": 32 + }, + "spriteSourceSize": { + "x": 8, + "y": 8, + "w": 16, + "h": 16 + }, + "frame": { + "x": 253, + "y": 392, + "w": 16, + "h": 16 + } + }, + { + "filename": "charizardite_y", + "rotated": false, + "trimmed": true, + "sourceSize": { + "w": 32, + "h": 32 + }, + "spriteSourceSize": { + "x": 8, + "y": 8, + "w": 16, + "h": 16 + }, + "frame": { + "x": 253, + "y": 408, + "w": 16, + "h": 16 + } + }, + { + "filename": "diancite", + "rotated": false, + "trimmed": true, + "sourceSize": { + "w": 32, + "h": 32 + }, + "spriteSourceSize": { + "x": 8, + "y": 8, + "w": 16, + "h": 16 + }, + "frame": { + "x": 269, + "y": 374, + "w": 16, + "h": 16 + } + }, + { + "filename": "galladite", + "rotated": false, + "trimmed": true, + "sourceSize": { + "w": 32, + "h": 32 + }, + "spriteSourceSize": { + "x": 8, + "y": 8, + "w": 16, + "h": 16 + }, + "frame": { + "x": 269, + "y": 390, + "w": 16, + "h": 16 + } + }, + { + "filename": "garchompite", + "rotated": false, + "trimmed": true, + "sourceSize": { + "w": 32, + "h": 32 + }, + "spriteSourceSize": { + "x": 8, + "y": 8, + "w": 16, + "h": 16 + }, + "frame": { + "x": 269, + "y": 406, + "w": 16, + "h": 16 + } + }, + { + "filename": "gardevoirite", + "rotated": false, + "trimmed": true, + "sourceSize": { + "w": 32, + "h": 32 + }, + "spriteSourceSize": { + "x": 8, + "y": 8, + "w": 16, + "h": 16 + }, + "frame": { + "x": 285, + "y": 340, + "w": 16, + "h": 16 + } + }, + { + "filename": "gengarite", + "rotated": false, + "trimmed": true, + "sourceSize": { + "w": 32, + "h": 32 + }, + "spriteSourceSize": { + "x": 8, + "y": 8, + "w": 16, + "h": 16 + }, + "frame": { + "x": 283, + "y": 358, + "w": 16, + "h": 16 + } + }, + { + "filename": "glalitite", + "rotated": false, + "trimmed": true, + "sourceSize": { + "w": 32, + "h": 32 + }, + "spriteSourceSize": { + "x": 8, + "y": 8, + "w": 16, + "h": 16 + }, + "frame": { + "x": 285, + "y": 374, + "w": 16, + "h": 16 + } + }, + { + "filename": "gyaradosite", + "rotated": false, + "trimmed": true, + "sourceSize": { + "w": 32, + "h": 32 + }, + "spriteSourceSize": { + "x": 8, + "y": 8, + "w": 16, + "h": 16 + }, + "frame": { + "x": 285, + "y": 390, + "w": 16, + "h": 16 + } + }, + { + "filename": "heracronite", + "rotated": false, + "trimmed": true, + "sourceSize": { + "w": 32, + "h": 32 + }, + "spriteSourceSize": { + "x": 8, + "y": 8, + "w": 16, + "h": 16 + }, + "frame": { + "x": 285, + "y": 406, + "w": 16, + "h": 16 + } + }, + { + "filename": "houndoominite", + "rotated": false, + "trimmed": true, + "sourceSize": { + "w": 32, + "h": 32 + }, + "spriteSourceSize": { + "x": 8, + "y": 8, + "w": 16, + "h": 16 + }, + "frame": { + "x": 353, + "y": 362, + "w": 16, + "h": 16 + } + }, + { + "filename": "kangaskhanite", + "rotated": false, + "trimmed": true, + "sourceSize": { + "w": 32, + "h": 32 + }, + "spriteSourceSize": { + "x": 8, + "y": 8, + "w": 16, + "h": 16 + }, + "frame": { + "x": 369, + "y": 370, + "w": 16, + "h": 16 + } + }, + { + "filename": "latiasite", + "rotated": false, + "trimmed": true, + "sourceSize": { + "w": 32, + "h": 32 + }, + "spriteSourceSize": { + "x": 8, + "y": 8, + "w": 16, + "h": 16 + }, + "frame": { + "x": 413, + "y": 276, + "w": 16, + "h": 16 + } + }, + { + "filename": "latiosite", + "rotated": false, + "trimmed": true, + "sourceSize": { + "w": 32, + "h": 32 + }, + "spriteSourceSize": { + "x": 8, + "y": 8, + "w": 16, + "h": 16 + }, + "frame": { + "x": 413, + "y": 292, + "w": 16, + "h": 16 + } + }, + { + "filename": "lopunnite", + "rotated": false, + "trimmed": true, + "sourceSize": { + "w": 32, + "h": 32 + }, + "spriteSourceSize": { + "x": 8, + "y": 8, + "w": 16, + "h": 16 + }, + "frame": { + "x": 413, + "y": 308, + "w": 16, + "h": 16 + } + }, + { + "filename": "lucarionite", + "rotated": false, + "trimmed": true, + "sourceSize": { + "w": 32, + "h": 32 + }, + "spriteSourceSize": { + "x": 8, + "y": 8, + "w": 16, + "h": 16 + }, + "frame": { + "x": 413, + "y": 324, + "w": 16, + "h": 16 + } + }, + { + "filename": "manectite", + "rotated": false, + "trimmed": true, + "sourceSize": { + "w": 32, + "h": 32 + }, + "spriteSourceSize": { + "x": 8, + "y": 8, + "w": 16, + "h": 16 + }, + "frame": { + "x": 415, + "y": 340, + "w": 16, + "h": 16 + } + }, + { + "filename": "mawilite", + "rotated": false, + "trimmed": true, + "sourceSize": { + "w": 32, + "h": 32 + }, + "spriteSourceSize": { + "x": 8, + "y": 8, + "w": 16, + "h": 16 + }, + "frame": { + "x": 415, + "y": 356, + "w": 16, + "h": 16 + } + }, + { + "filename": "medichamite", + "rotated": false, + "trimmed": true, + "sourceSize": { + "w": 32, + "h": 32 + }, + "spriteSourceSize": { + "x": 8, + "y": 8, + "w": 16, + "h": 16 + }, + "frame": { + "x": 415, + "y": 372, + "w": 16, + "h": 16 + } + }, + { + "filename": "metagrossite", + "rotated": false, + "trimmed": true, + "sourceSize": { + "w": 32, + "h": 32 + }, + "spriteSourceSize": { + "x": 8, + "y": 8, + "w": 16, + "h": 16 + }, + "frame": { + "x": 299, + "y": 356, + "w": 16, + "h": 16 + } + }, + { + "filename": "mewtwonite_x", + "rotated": false, + "trimmed": true, + "sourceSize": { + "w": 32, + "h": 32 + }, + "spriteSourceSize": { + "x": 8, + "y": 8, + "w": 16, + "h": 16 + }, + "frame": { + "x": 301, + "y": 372, + "w": 16, + "h": 16 + } + }, + { + "filename": "mewtwonite_y", + "rotated": false, + "trimmed": true, + "sourceSize": { + "w": 32, + "h": 32 + }, + "spriteSourceSize": { + "x": 8, + "y": 8, + "w": 16, + "h": 16 + }, + "frame": { + "x": 301, + "y": 388, + "w": 16, + "h": 16 + } + }, + { + "filename": "nugget", + "rotated": false, + "trimmed": true, + "sourceSize": { + "w": 32, + "h": 32 + }, + "spriteSourceSize": { + "x": 8, + "y": 8, + "w": 16, + "h": 16 + }, + "frame": { + "x": 301, + "y": 404, + "w": 16, + "h": 16 + } + }, + { + "filename": "pidgeotite", + "rotated": false, + "trimmed": true, + "sourceSize": { + "w": 32, + "h": 32 + }, + "spriteSourceSize": { + "x": 8, + "y": 8, + "w": 16, + "h": 16 + }, + "frame": { + "x": 317, + "y": 351, + "w": 16, + "h": 16 + } + }, + { + "filename": "pinsirite", + "rotated": false, + "trimmed": true, + "sourceSize": { + "w": 32, + "h": 32 + }, + "spriteSourceSize": { + "x": 8, + "y": 8, + "w": 16, + "h": 16 + }, + "frame": { + "x": 317, + "y": 367, + "w": 16, + "h": 16 + } + }, + { + "filename": "rayquazite", + "rotated": false, + "trimmed": true, + "sourceSize": { + "w": 32, + "h": 32 + }, + "spriteSourceSize": { + "x": 8, + "y": 8, + "w": 16, + "h": 16 + }, + "frame": { + "x": 333, + "y": 365, + "w": 16, + "h": 16 + } + }, + { + "filename": "sablenite", + "rotated": false, + "trimmed": true, + "sourceSize": { + "w": 32, + "h": 32 + }, + "spriteSourceSize": { + "x": 8, + "y": 8, + "w": 16, + "h": 16 + }, + "frame": { + "x": 317, + "y": 383, + "w": 16, + "h": 16 + } + }, + { + "filename": "salamencite", + "rotated": false, + "trimmed": true, + "sourceSize": { + "w": 32, + "h": 32 + }, + "spriteSourceSize": { + "x": 8, + "y": 8, + "w": 16, + "h": 16 + }, + "frame": { + "x": 333, + "y": 381, + "w": 16, + "h": 16 + } + }, + { + "filename": "sceptilite", + "rotated": false, + "trimmed": true, + "sourceSize": { + "w": 32, + "h": 32 + }, + "spriteSourceSize": { + "x": 8, + "y": 8, + "w": 16, + "h": 16 + }, + "frame": { + "x": 317, + "y": 399, + "w": 16, + "h": 16 + } + }, + { + "filename": "scizorite", + "rotated": false, + "trimmed": true, + "sourceSize": { + "w": 32, + "h": 32 + }, + "spriteSourceSize": { + "x": 8, + "y": 8, + "w": 16, + "h": 16 + }, + "frame": { + "x": 333, + "y": 397, + "w": 16, + "h": 16 + } + }, + { + "filename": "sharpedonite", + "rotated": false, + "trimmed": true, + "sourceSize": { + "w": 32, + "h": 32 + }, + "spriteSourceSize": { + "x": 8, + "y": 8, + "w": 16, + "h": 16 + }, + "frame": { + "x": 349, + "y": 378, + "w": 16, + "h": 16 + } + }, + { + "filename": "slowbronite", + "rotated": false, + "trimmed": true, + "sourceSize": { + "w": 32, + "h": 32 + }, + "spriteSourceSize": { + "x": 8, + "y": 8, + "w": 16, + "h": 16 + }, + "frame": { + "x": 349, + "y": 394, + "w": 16, + "h": 16 + } + }, + { + "filename": "soul_dew", + "rotated": false, + "trimmed": true, + "sourceSize": { + "w": 32, + "h": 32 + }, + "spriteSourceSize": { + "x": 8, + "y": 8, + "w": 16, + "h": 16 + }, + "frame": { + "x": 365, + "y": 386, + "w": 16, + "h": 16 + } + }, + { + "filename": "steelixite", + "rotated": false, + "trimmed": true, + "sourceSize": { + "w": 32, + "h": 32 + }, + "spriteSourceSize": { + "x": 8, + "y": 8, + "w": 16, + "h": 16 + }, + "frame": { + "x": 365, + "y": 402, + "w": 16, + "h": 16 + } + }, + { + "filename": "strawberry_sweet", + "rotated": false, + "trimmed": true, + "sourceSize": { + "w": 32, + "h": 32 + }, + "spriteSourceSize": { + "x": 9, + "y": 7, + "w": 16, + "h": 16 + }, + "frame": { + "x": 349, + "y": 410, + "w": 16, + "h": 16 + } + }, + { + "filename": "swampertite", + "rotated": false, + "trimmed": true, + "sourceSize": { + "w": 32, + "h": 32 + }, + "spriteSourceSize": { + "x": 8, + "y": 8, + "w": 16, + "h": 16 + }, + "frame": { + "x": 333, + "y": 413, + "w": 16, + "h": 16 + } + }, + { + "filename": "tyranitarite", + "rotated": false, + "trimmed": true, + "sourceSize": { + "w": 32, + "h": 32 + }, + "spriteSourceSize": { + "x": 8, + "y": 8, + "w": 16, + "h": 16 + }, + "frame": { + "x": 317, + "y": 415, + "w": 16, + "h": 16 + } + }, + { + "filename": "venusaurite", + "rotated": false, + "trimmed": true, + "sourceSize": { + "w": 32, + "h": 32 + }, + "spriteSourceSize": { + "x": 8, + "y": 8, + "w": 16, + "h": 16 + }, + "frame": { + "x": 381, + "y": 386, + "w": 16, + "h": 16 + } } ] } @@ -8457,6 +8457,6 @@ "meta": { "app": "https://www.codeandweb.com/texturepacker", "version": "3.0", - "smartupdate": "$TexturePacker:SmartUpdate:7b927dc715c6335dfca9e369b61374b2:fb24603dd37bbe0cbdf1d74fcbcbd223:110e074689c9edd2c54833ce2e4d9270$" + "smartupdate": "$TexturePacker:SmartUpdate:c228145ca625236e53edc95aac265d56:86524cdf0e3043482141d77259bc4d47:110e074689c9edd2c54833ce2e4d9270$" } } diff --git a/public/images/items.png b/public/images/items.png index 4433ce43a40..eb9878a5bfc 100644 Binary files a/public/images/items.png and b/public/images/items.png differ diff --git a/public/images/items/mystical_rock.png b/public/images/items/mystical_rock.png index f87fe2a9dcb..81a397e4c2d 100644 Binary files a/public/images/items/mystical_rock.png and b/public/images/items/mystical_rock.png differ diff --git a/public/images/pokemon/1011.png b/public/images/pokemon/1011.png index 39ed4c0d519..035ea0aca44 100644 Binary files a/public/images/pokemon/1011.png and b/public/images/pokemon/1011.png differ diff --git a/public/images/pokemon/1019.png b/public/images/pokemon/1019.png index 9c11ccecb89..f29e2df2fcf 100644 Binary files a/public/images/pokemon/1019.png and b/public/images/pokemon/1019.png differ diff --git a/public/images/pokemon/143-gigantamax.png b/public/images/pokemon/143-gigantamax.png index aa775df6164..3adc2c148cd 100644 Binary files a/public/images/pokemon/143-gigantamax.png and b/public/images/pokemon/143-gigantamax.png differ diff --git a/public/images/pokemon/143.png b/public/images/pokemon/143.png index 8050627a9a1..a09d0533fce 100644 Binary files a/public/images/pokemon/143.png and b/public/images/pokemon/143.png differ diff --git a/public/images/pokemon/189.png b/public/images/pokemon/189.png index fb7f53ced67..632366956bb 100644 Binary files a/public/images/pokemon/189.png and b/public/images/pokemon/189.png differ diff --git a/public/images/pokemon/2038.png b/public/images/pokemon/2038.png index 71cedc8af13..7e8fd0ea1b2 100644 Binary files a/public/images/pokemon/2038.png and b/public/images/pokemon/2038.png differ diff --git a/public/images/pokemon/207.png b/public/images/pokemon/207.png index ec2f862a139..115c41b0673 100644 Binary files a/public/images/pokemon/207.png and b/public/images/pokemon/207.png differ diff --git a/public/images/pokemon/313.png b/public/images/pokemon/313.png index 0a6336ec37b..fb0dd07c924 100644 Binary files a/public/images/pokemon/313.png and b/public/images/pokemon/313.png differ diff --git a/public/images/pokemon/314.png b/public/images/pokemon/314.png index 575b962093a..7252a7fb840 100644 Binary files a/public/images/pokemon/314.png and b/public/images/pokemon/314.png differ diff --git a/public/images/pokemon/332.png b/public/images/pokemon/332.png index f320ab4c331..a9979480673 100644 Binary files a/public/images/pokemon/332.png and b/public/images/pokemon/332.png differ diff --git a/public/images/pokemon/34.png b/public/images/pokemon/34.png index 3eec3a66805..e697a987354 100644 Binary files a/public/images/pokemon/34.png and b/public/images/pokemon/34.png differ diff --git a/public/images/pokemon/396.png b/public/images/pokemon/396.png index 5f42fc90461..34033368ac6 100644 Binary files a/public/images/pokemon/396.png and b/public/images/pokemon/396.png differ diff --git a/public/images/pokemon/397.png b/public/images/pokemon/397.png index 0197ee7182e..e9d14db7eab 100644 Binary files a/public/images/pokemon/397.png and b/public/images/pokemon/397.png differ diff --git a/public/images/pokemon/398.png b/public/images/pokemon/398.png index 55f8c7c09a3..d1adb74b7ca 100644 Binary files a/public/images/pokemon/398.png and b/public/images/pokemon/398.png differ diff --git a/public/images/pokemon/404.png b/public/images/pokemon/404.png index 50038f7a17c..c3c77be70db 100644 Binary files a/public/images/pokemon/404.png and b/public/images/pokemon/404.png differ diff --git a/public/images/pokemon/417.png b/public/images/pokemon/417.png index 6d7100f66fe..02cffd1c73f 100644 Binary files a/public/images/pokemon/417.png and b/public/images/pokemon/417.png differ diff --git a/public/images/pokemon/420.png b/public/images/pokemon/420.png index 4b76cdfcd21..8cf4dfd0bfc 100644 Binary files a/public/images/pokemon/420.png and b/public/images/pokemon/420.png differ diff --git a/public/images/pokemon/421-overcast.png b/public/images/pokemon/421-overcast.png index fb91ea937f1..82b66fd07f9 100644 Binary files a/public/images/pokemon/421-overcast.png and b/public/images/pokemon/421-overcast.png differ diff --git a/public/images/pokemon/421-sunshine.png b/public/images/pokemon/421-sunshine.png index 3ab91a47ca6..9da091ae12a 100644 Binary files a/public/images/pokemon/421-sunshine.png and b/public/images/pokemon/421-sunshine.png differ diff --git a/public/images/pokemon/446.png b/public/images/pokemon/446.png index 40795f6cd17..523d790a89c 100644 Binary files a/public/images/pokemon/446.png and b/public/images/pokemon/446.png differ diff --git a/public/images/pokemon/472.png b/public/images/pokemon/472.png index cc13377bd53..eefd055ffc3 100644 Binary files a/public/images/pokemon/472.png and b/public/images/pokemon/472.png differ diff --git a/public/images/pokemon/498.png b/public/images/pokemon/498.png index d45f8988cc0..f019a1f38b3 100644 Binary files a/public/images/pokemon/498.png and b/public/images/pokemon/498.png differ diff --git a/public/images/pokemon/499.png b/public/images/pokemon/499.png index c8232f9bb34..8f2f76ca6bb 100644 Binary files a/public/images/pokemon/499.png and b/public/images/pokemon/499.png differ diff --git a/public/images/pokemon/500.png b/public/images/pokemon/500.png index 9d388d33640..ae842c38bcd 100644 Binary files a/public/images/pokemon/500.png and b/public/images/pokemon/500.png differ diff --git a/public/images/pokemon/511.png b/public/images/pokemon/511.png index ebf4b069b23..77ba327fd12 100644 Binary files a/public/images/pokemon/511.png and b/public/images/pokemon/511.png differ diff --git a/public/images/pokemon/512.png b/public/images/pokemon/512.png index 94ae881fdb2..58870d253cb 100644 Binary files a/public/images/pokemon/512.png and b/public/images/pokemon/512.png differ diff --git a/public/images/pokemon/513.png b/public/images/pokemon/513.png index f8d6e6017de..99f2fccc23e 100644 Binary files a/public/images/pokemon/513.png and b/public/images/pokemon/513.png differ diff --git a/public/images/pokemon/514.png b/public/images/pokemon/514.png index 87a2ece7f6d..57216c76e08 100644 Binary files a/public/images/pokemon/514.png and b/public/images/pokemon/514.png differ diff --git a/public/images/pokemon/515.png b/public/images/pokemon/515.png index 3dc40ff122d..e6187568544 100644 Binary files a/public/images/pokemon/515.png and b/public/images/pokemon/515.png differ diff --git a/public/images/pokemon/516.png b/public/images/pokemon/516.png index c13615fa119..cd4d5d64392 100644 Binary files a/public/images/pokemon/516.png and b/public/images/pokemon/516.png differ diff --git a/public/images/pokemon/522.png b/public/images/pokemon/522.png index 3e545afc925..64ca1253304 100644 Binary files a/public/images/pokemon/522.png and b/public/images/pokemon/522.png differ diff --git a/public/images/pokemon/523.png b/public/images/pokemon/523.png index 49674e2ee8b..3c491927a02 100644 Binary files a/public/images/pokemon/523.png and b/public/images/pokemon/523.png differ diff --git a/public/images/pokemon/535.png b/public/images/pokemon/535.png index afa9cfb10ee..b8a82d204c5 100644 Binary files a/public/images/pokemon/535.png and b/public/images/pokemon/535.png differ diff --git a/public/images/pokemon/536.png b/public/images/pokemon/536.png index bbc6d6b548c..90202df0339 100644 Binary files a/public/images/pokemon/536.png and b/public/images/pokemon/536.png differ diff --git a/public/images/pokemon/537.png b/public/images/pokemon/537.png index 9b70ea2eafe..906b546cf42 100644 Binary files a/public/images/pokemon/537.png and b/public/images/pokemon/537.png differ diff --git a/public/images/pokemon/554.png b/public/images/pokemon/554.png index d2483d4cec7..b0c4bb10335 100644 Binary files a/public/images/pokemon/554.png and b/public/images/pokemon/554.png differ diff --git a/public/images/pokemon/555-zen.png b/public/images/pokemon/555-zen.png index e94c779abce..48cbf58a17a 100644 Binary files a/public/images/pokemon/555-zen.png and b/public/images/pokemon/555-zen.png differ diff --git a/public/images/pokemon/555.png b/public/images/pokemon/555.png index 0843ef0026b..0ec02846a6a 100644 Binary files a/public/images/pokemon/555.png and b/public/images/pokemon/555.png differ diff --git a/public/images/pokemon/566.png b/public/images/pokemon/566.png index 67b5f09c056..e54a8680298 100644 Binary files a/public/images/pokemon/566.png and b/public/images/pokemon/566.png differ diff --git a/public/images/pokemon/572.png b/public/images/pokemon/572.png index ba9446aa9d2..32f01341e2f 100644 Binary files a/public/images/pokemon/572.png and b/public/images/pokemon/572.png differ diff --git a/public/images/pokemon/573.png b/public/images/pokemon/573.png index b827c23d78e..a33172fe8d3 100644 Binary files a/public/images/pokemon/573.png and b/public/images/pokemon/573.png differ diff --git a/public/images/pokemon/626.png b/public/images/pokemon/626.png index 281119efdc2..542cefe41bb 100644 Binary files a/public/images/pokemon/626.png and b/public/images/pokemon/626.png differ diff --git a/public/images/pokemon/643.png b/public/images/pokemon/643.png index b7c21248166..30d993791ab 100644 Binary files a/public/images/pokemon/643.png and b/public/images/pokemon/643.png differ diff --git a/public/images/pokemon/644.png b/public/images/pokemon/644.png index 4ccbb7700d5..14fce7e0bab 100644 Binary files a/public/images/pokemon/644.png and b/public/images/pokemon/644.png differ diff --git a/public/images/pokemon/646-black.png b/public/images/pokemon/646-black.png index 4c45fcf2a03..f5ad11ddcac 100644 Binary files a/public/images/pokemon/646-black.png and b/public/images/pokemon/646-black.png differ diff --git a/public/images/pokemon/646-white.png b/public/images/pokemon/646-white.png index 0de658c5a39..9907f8e278c 100644 Binary files a/public/images/pokemon/646-white.png and b/public/images/pokemon/646-white.png differ diff --git a/public/images/pokemon/692.json b/public/images/pokemon/692.json index a06bb0c77b7..125642a01f1 100644 --- a/public/images/pokemon/692.json +++ b/public/images/pokemon/692.json @@ -1,41 +1,20 @@ -{ - "textures": [ - { - "image": "692.png", - "format": "RGBA8888", - "size": { - "w": 56, - "h": 56 - }, - "scale": 1, - "frames": [ - { - "filename": "0001.png", - "rotated": false, - "trimmed": false, - "sourceSize": { - "w": 56, - "h": 35 - }, - "spriteSourceSize": { - "x": 0, - "y": 0, - "w": 56, - "h": 35 - }, - "frame": { - "x": 0, - "y": 0, - "w": 56, - "h": 35 - } - } - ] - } - ], - "meta": { - "app": "https://www.codeandweb.com/texturepacker", - "version": "3.0", - "smartupdate": "$TexturePacker:SmartUpdate:031fb8fbcf9162adb44c0a90fd2cc110:44a2bd195c730b2d35c3ad898e1b3672:2880def858c84cd859bedf13b0b49a33$" - } +{ "frames": [ + { + "filename": "0001.png", + "frame": { "x": 121, "y": 36, "w": 56, "h": 35 }, + "rotated": false, + "trimmed": true, + "spriteSourceSize": { "x": 4, "y": 0, "w": 56, "h": 35 }, + "sourceSize": { "w": 63, "h": 35 }, + "duration": 50 + } + ], + "meta": { + "app": "https://www.aseprite.org/", + "version": "1.3.12-x64", + "image": "692.png", + "format": "I8", + "size": { "w": 239, "h": 106 }, + "scale": "1" + } } diff --git a/public/images/pokemon/692.png b/public/images/pokemon/692.png index ce0cb4d3243..a22655931a8 100644 Binary files a/public/images/pokemon/692.png and b/public/images/pokemon/692.png differ diff --git a/public/images/pokemon/746-school.png b/public/images/pokemon/746-school.png index e9d8bdbd944..c592b71a66a 100644 Binary files a/public/images/pokemon/746-school.png and b/public/images/pokemon/746-school.png differ diff --git a/public/images/pokemon/746.png b/public/images/pokemon/746.png index 22f4ec2fd6f..3de01770ee6 100644 Binary files a/public/images/pokemon/746.png and b/public/images/pokemon/746.png differ diff --git a/public/images/pokemon/782.json b/public/images/pokemon/782.json index 9b8f8e93d39..938568ed74a 100644 --- a/public/images/pokemon/782.json +++ b/public/images/pokemon/782.json @@ -1,41 +1,1010 @@ -{ - "textures": [ - { - "image": "782.png", - "format": "RGBA8888", - "size": { - "w": 50, - "h": 50 - }, - "scale": 1, - "frames": [ - { - "filename": "0001.png", - "rotated": false, - "trimmed": false, - "sourceSize": { - "w": 46, - "h": 50 - }, - "spriteSourceSize": { - "x": 0, - "y": 0, - "w": 46, - "h": 50 - }, - "frame": { - "x": 0, - "y": 0, - "w": 46, - "h": 50 - } - } - ] - } - ], - "meta": { - "app": "https://www.codeandweb.com/texturepacker", - "version": "3.0", - "smartupdate": "$TexturePacker:SmartUpdate:350889f3e7d7ba0c8471435ab283acd5:fde1ef9d118b98abfede0d4980b8ef8d:d07862436676aa228a148ee1f1d82a8f$" - } +{ "frames": [ + { + "filename": "0001.png", + "frame": { "x": 50, "y": 109, "w": 46, "h": 50 }, + "rotated": false, + "trimmed": true, + "spriteSourceSize": { "x": 28, "y": 24, "w": 46, "h": 50 }, + "sourceSize": { "w": 96, "h": 76 }, + "duration": 50 + }, + { + "filename": "0002.png", + "frame": { "x": 50, "y": 109, "w": 46, "h": 50 }, + "rotated": false, + "trimmed": true, + "spriteSourceSize": { "x": 28, "y": 24, "w": 46, "h": 50 }, + "sourceSize": { "w": 96, "h": 76 }, + "duration": 50 + }, + { + "filename": "0003.png", + "frame": { "x": 98, "y": 109, "w": 45, "h": 50 }, + "rotated": false, + "trimmed": true, + "spriteSourceSize": { "x": 28, "y": 24, "w": 45, "h": 50 }, + "sourceSize": { "w": 96, "h": 76 }, + "duration": 50 + }, + { + "filename": "0004.png", + "frame": { "x": 98, "y": 109, "w": 45, "h": 50 }, + "rotated": false, + "trimmed": true, + "spriteSourceSize": { "x": 28, "y": 24, "w": 45, "h": 50 }, + "sourceSize": { "w": 96, "h": 76 }, + "duration": 50 + }, + { + "filename": "0005.png", + "frame": { "x": 49, "y": 161, "w": 46, "h": 49 }, + "rotated": false, + "trimmed": true, + "spriteSourceSize": { "x": 27, "y": 25, "w": 46, "h": 49 }, + "sourceSize": { "w": 96, "h": 76 }, + "duration": 50 + }, + { + "filename": "0006.png", + "frame": { "x": 49, "y": 161, "w": 46, "h": 49 }, + "rotated": false, + "trimmed": true, + "spriteSourceSize": { "x": 27, "y": 25, "w": 46, "h": 49 }, + "sourceSize": { "w": 96, "h": 76 }, + "duration": 50 + }, + { + "filename": "0007.png", + "frame": { "x": 146, "y": 162, "w": 46, "h": 47 }, + "rotated": false, + "trimmed": true, + "spriteSourceSize": { "x": 27, "y": 27, "w": 46, "h": 47 }, + "sourceSize": { "w": 96, "h": 76 }, + "duration": 50 + }, + { + "filename": "0008.png", + "frame": { "x": 146, "y": 162, "w": 46, "h": 47 }, + "rotated": false, + "trimmed": true, + "spriteSourceSize": { "x": 27, "y": 27, "w": 46, "h": 47 }, + "sourceSize": { "w": 96, "h": 76 }, + "duration": 50 + }, + { + "filename": "0009.png", + "frame": { "x": 97, "y": 162, "w": 47, "h": 47 }, + "rotated": false, + "trimmed": true, + "spriteSourceSize": { "x": 26, "y": 27, "w": 47, "h": 47 }, + "sourceSize": { "w": 96, "h": 76 }, + "duration": 50 + }, + { + "filename": "0010.png", + "frame": { "x": 97, "y": 162, "w": 47, "h": 47 }, + "rotated": false, + "trimmed": true, + "spriteSourceSize": { "x": 26, "y": 27, "w": 47, "h": 47 }, + "sourceSize": { "w": 96, "h": 76 }, + "duration": 50 + }, + { + "filename": "0011.png", + "frame": { "x": 194, "y": 162, "w": 46, "h": 47 }, + "rotated": false, + "trimmed": true, + "spriteSourceSize": { "x": 27, "y": 27, "w": 46, "h": 47 }, + "sourceSize": { "w": 96, "h": 76 }, + "duration": 50 + }, + { + "filename": "0012.png", + "frame": { "x": 194, "y": 162, "w": 46, "h": 47 }, + "rotated": false, + "trimmed": true, + "spriteSourceSize": { "x": 27, "y": 27, "w": 46, "h": 47 }, + "sourceSize": { "w": 96, "h": 76 }, + "duration": 50 + }, + { + "filename": "0013.png", + "frame": { "x": 1, "y": 109, "w": 47, "h": 49 }, + "rotated": false, + "trimmed": true, + "spriteSourceSize": { "x": 27, "y": 25, "w": 47, "h": 49 }, + "sourceSize": { "w": 96, "h": 76 }, + "duration": 50 + }, + { + "filename": "0014.png", + "frame": { "x": 1, "y": 109, "w": 47, "h": 49 }, + "rotated": false, + "trimmed": true, + "spriteSourceSize": { "x": 27, "y": 25, "w": 47, "h": 49 }, + "sourceSize": { "w": 96, "h": 76 }, + "duration": 50 + }, + { + "filename": "0015.png", + "frame": { "x": 1, "y": 160, "w": 46, "h": 50 }, + "rotated": false, + "trimmed": true, + "spriteSourceSize": { "x": 28, "y": 24, "w": 46, "h": 50 }, + "sourceSize": { "w": 96, "h": 76 }, + "duration": 50 + }, + { + "filename": "0016.png", + "frame": { "x": 1, "y": 160, "w": 46, "h": 50 }, + "rotated": false, + "trimmed": true, + "spriteSourceSize": { "x": 28, "y": 24, "w": 46, "h": 50 }, + "sourceSize": { "w": 96, "h": 76 }, + "duration": 50 + }, + { + "filename": "0017.png", + "frame": { "x": 50, "y": 109, "w": 46, "h": 50 }, + "rotated": false, + "trimmed": true, + "spriteSourceSize": { "x": 28, "y": 24, "w": 46, "h": 50 }, + "sourceSize": { "w": 96, "h": 76 }, + "duration": 50 + }, + { + "filename": "0018.png", + "frame": { "x": 50, "y": 109, "w": 46, "h": 50 }, + "rotated": false, + "trimmed": true, + "spriteSourceSize": { "x": 28, "y": 24, "w": 46, "h": 50 }, + "sourceSize": { "w": 96, "h": 76 }, + "duration": 50 + }, + { + "filename": "0019.png", + "frame": { "x": 98, "y": 109, "w": 45, "h": 50 }, + "rotated": false, + "trimmed": true, + "spriteSourceSize": { "x": 28, "y": 24, "w": 45, "h": 50 }, + "sourceSize": { "w": 96, "h": 76 }, + "duration": 50 + }, + { + "filename": "0020.png", + "frame": { "x": 98, "y": 109, "w": 45, "h": 50 }, + "rotated": false, + "trimmed": true, + "spriteSourceSize": { "x": 28, "y": 24, "w": 45, "h": 50 }, + "sourceSize": { "w": 96, "h": 76 }, + "duration": 50 + }, + { + "filename": "0021.png", + "frame": { "x": 49, "y": 161, "w": 46, "h": 49 }, + "rotated": false, + "trimmed": true, + "spriteSourceSize": { "x": 27, "y": 25, "w": 46, "h": 49 }, + "sourceSize": { "w": 96, "h": 76 }, + "duration": 50 + }, + { + "filename": "0022.png", + "frame": { "x": 49, "y": 161, "w": 46, "h": 49 }, + "rotated": false, + "trimmed": true, + "spriteSourceSize": { "x": 27, "y": 25, "w": 46, "h": 49 }, + "sourceSize": { "w": 96, "h": 76 }, + "duration": 50 + }, + { + "filename": "0023.png", + "frame": { "x": 146, "y": 162, "w": 46, "h": 47 }, + "rotated": false, + "trimmed": true, + "spriteSourceSize": { "x": 27, "y": 27, "w": 46, "h": 47 }, + "sourceSize": { "w": 96, "h": 76 }, + "duration": 50 + }, + { + "filename": "0024.png", + "frame": { "x": 146, "y": 162, "w": 46, "h": 47 }, + "rotated": false, + "trimmed": true, + "spriteSourceSize": { "x": 27, "y": 27, "w": 46, "h": 47 }, + "sourceSize": { "w": 96, "h": 76 }, + "duration": 50 + }, + { + "filename": "0025.png", + "frame": { "x": 97, "y": 162, "w": 47, "h": 47 }, + "rotated": false, + "trimmed": true, + "spriteSourceSize": { "x": 26, "y": 27, "w": 47, "h": 47 }, + "sourceSize": { "w": 96, "h": 76 }, + "duration": 50 + }, + { + "filename": "0026.png", + "frame": { "x": 97, "y": 162, "w": 47, "h": 47 }, + "rotated": false, + "trimmed": true, + "spriteSourceSize": { "x": 26, "y": 27, "w": 47, "h": 47 }, + "sourceSize": { "w": 96, "h": 76 }, + "duration": 50 + }, + { + "filename": "0027.png", + "frame": { "x": 194, "y": 162, "w": 46, "h": 47 }, + "rotated": false, + "trimmed": true, + "spriteSourceSize": { "x": 27, "y": 27, "w": 46, "h": 47 }, + "sourceSize": { "w": 96, "h": 76 }, + "duration": 50 + }, + { + "filename": "0028.png", + "frame": { "x": 194, "y": 162, "w": 46, "h": 47 }, + "rotated": false, + "trimmed": true, + "spriteSourceSize": { "x": 27, "y": 27, "w": 46, "h": 47 }, + "sourceSize": { "w": 96, "h": 76 }, + "duration": 50 + }, + { + "filename": "0029.png", + "frame": { "x": 1, "y": 109, "w": 47, "h": 49 }, + "rotated": false, + "trimmed": true, + "spriteSourceSize": { "x": 27, "y": 25, "w": 47, "h": 49 }, + "sourceSize": { "w": 96, "h": 76 }, + "duration": 50 + }, + { + "filename": "0030.png", + "frame": { "x": 1, "y": 109, "w": 47, "h": 49 }, + "rotated": false, + "trimmed": true, + "spriteSourceSize": { "x": 27, "y": 25, "w": 47, "h": 49 }, + "sourceSize": { "w": 96, "h": 76 }, + "duration": 50 + }, + { + "filename": "0031.png", + "frame": { "x": 1, "y": 160, "w": 46, "h": 50 }, + "rotated": false, + "trimmed": true, + "spriteSourceSize": { "x": 28, "y": 24, "w": 46, "h": 50 }, + "sourceSize": { "w": 96, "h": 76 }, + "duration": 50 + }, + { + "filename": "0032.png", + "frame": { "x": 1, "y": 160, "w": 46, "h": 50 }, + "rotated": false, + "trimmed": true, + "spriteSourceSize": { "x": 28, "y": 24, "w": 46, "h": 50 }, + "sourceSize": { "w": 96, "h": 76 }, + "duration": 50 + }, + { + "filename": "0033.png", + "frame": { "x": 50, "y": 109, "w": 46, "h": 50 }, + "rotated": false, + "trimmed": true, + "spriteSourceSize": { "x": 28, "y": 24, "w": 46, "h": 50 }, + "sourceSize": { "w": 96, "h": 76 }, + "duration": 50 + }, + { + "filename": "0034.png", + "frame": { "x": 50, "y": 109, "w": 46, "h": 50 }, + "rotated": false, + "trimmed": true, + "spriteSourceSize": { "x": 28, "y": 24, "w": 46, "h": 50 }, + "sourceSize": { "w": 96, "h": 76 }, + "duration": 50 + }, + { + "filename": "0035.png", + "frame": { "x": 98, "y": 109, "w": 45, "h": 50 }, + "rotated": false, + "trimmed": true, + "spriteSourceSize": { "x": 28, "y": 24, "w": 45, "h": 50 }, + "sourceSize": { "w": 96, "h": 76 }, + "duration": 50 + }, + { + "filename": "0036.png", + "frame": { "x": 98, "y": 109, "w": 45, "h": 50 }, + "rotated": false, + "trimmed": true, + "spriteSourceSize": { "x": 28, "y": 24, "w": 45, "h": 50 }, + "sourceSize": { "w": 96, "h": 76 }, + "duration": 50 + }, + { + "filename": "0037.png", + "frame": { "x": 49, "y": 161, "w": 46, "h": 49 }, + "rotated": false, + "trimmed": true, + "spriteSourceSize": { "x": 27, "y": 25, "w": 46, "h": 49 }, + "sourceSize": { "w": 96, "h": 76 }, + "duration": 50 + }, + { + "filename": "0038.png", + "frame": { "x": 49, "y": 161, "w": 46, "h": 49 }, + "rotated": false, + "trimmed": true, + "spriteSourceSize": { "x": 27, "y": 25, "w": 46, "h": 49 }, + "sourceSize": { "w": 96, "h": 76 }, + "duration": 50 + }, + { + "filename": "0039.png", + "frame": { "x": 146, "y": 162, "w": 46, "h": 47 }, + "rotated": false, + "trimmed": true, + "spriteSourceSize": { "x": 27, "y": 27, "w": 46, "h": 47 }, + "sourceSize": { "w": 96, "h": 76 }, + "duration": 50 + }, + { + "filename": "0040.png", + "frame": { "x": 146, "y": 162, "w": 46, "h": 47 }, + "rotated": false, + "trimmed": true, + "spriteSourceSize": { "x": 27, "y": 27, "w": 46, "h": 47 }, + "sourceSize": { "w": 96, "h": 76 }, + "duration": 50 + }, + { + "filename": "0041.png", + "frame": { "x": 97, "y": 162, "w": 47, "h": 47 }, + "rotated": false, + "trimmed": true, + "spriteSourceSize": { "x": 26, "y": 27, "w": 47, "h": 47 }, + "sourceSize": { "w": 96, "h": 76 }, + "duration": 50 + }, + { + "filename": "0042.png", + "frame": { "x": 97, "y": 162, "w": 47, "h": 47 }, + "rotated": false, + "trimmed": true, + "spriteSourceSize": { "x": 26, "y": 27, "w": 47, "h": 47 }, + "sourceSize": { "w": 96, "h": 76 }, + "duration": 50 + }, + { + "filename": "0043.png", + "frame": { "x": 194, "y": 162, "w": 46, "h": 47 }, + "rotated": false, + "trimmed": true, + "spriteSourceSize": { "x": 27, "y": 27, "w": 46, "h": 47 }, + "sourceSize": { "w": 96, "h": 76 }, + "duration": 50 + }, + { + "filename": "0044.png", + "frame": { "x": 194, "y": 162, "w": 46, "h": 47 }, + "rotated": false, + "trimmed": true, + "spriteSourceSize": { "x": 27, "y": 27, "w": 46, "h": 47 }, + "sourceSize": { "w": 96, "h": 76 }, + "duration": 50 + }, + { + "filename": "0045.png", + "frame": { "x": 1, "y": 109, "w": 47, "h": 49 }, + "rotated": false, + "trimmed": true, + "spriteSourceSize": { "x": 27, "y": 25, "w": 47, "h": 49 }, + "sourceSize": { "w": 96, "h": 76 }, + "duration": 50 + }, + { + "filename": "0046.png", + "frame": { "x": 1, "y": 109, "w": 47, "h": 49 }, + "rotated": false, + "trimmed": true, + "spriteSourceSize": { "x": 27, "y": 25, "w": 47, "h": 49 }, + "sourceSize": { "w": 96, "h": 76 }, + "duration": 50 + }, + { + "filename": "0047.png", + "frame": { "x": 1, "y": 160, "w": 46, "h": 50 }, + "rotated": false, + "trimmed": true, + "spriteSourceSize": { "x": 28, "y": 24, "w": 46, "h": 50 }, + "sourceSize": { "w": 96, "h": 76 }, + "duration": 50 + }, + { + "filename": "0048.png", + "frame": { "x": 1, "y": 160, "w": 46, "h": 50 }, + "rotated": false, + "trimmed": true, + "spriteSourceSize": { "x": 28, "y": 24, "w": 46, "h": 50 }, + "sourceSize": { "w": 96, "h": 76 }, + "duration": 50 + }, + { + "filename": "0049.png", + "frame": { "x": 50, "y": 109, "w": 46, "h": 50 }, + "rotated": false, + "trimmed": true, + "spriteSourceSize": { "x": 28, "y": 24, "w": 46, "h": 50 }, + "sourceSize": { "w": 96, "h": 76 }, + "duration": 50 + }, + { + "filename": "0050.png", + "frame": { "x": 50, "y": 109, "w": 46, "h": 50 }, + "rotated": false, + "trimmed": true, + "spriteSourceSize": { "x": 28, "y": 24, "w": 46, "h": 50 }, + "sourceSize": { "w": 96, "h": 76 }, + "duration": 50 + }, + { + "filename": "0051.png", + "frame": { "x": 98, "y": 109, "w": 45, "h": 50 }, + "rotated": false, + "trimmed": true, + "spriteSourceSize": { "x": 28, "y": 24, "w": 45, "h": 50 }, + "sourceSize": { "w": 96, "h": 76 }, + "duration": 50 + }, + { + "filename": "0052.png", + "frame": { "x": 98, "y": 109, "w": 45, "h": 50 }, + "rotated": false, + "trimmed": true, + "spriteSourceSize": { "x": 28, "y": 24, "w": 45, "h": 50 }, + "sourceSize": { "w": 96, "h": 76 }, + "duration": 50 + }, + { + "filename": "0053.png", + "frame": { "x": 49, "y": 161, "w": 46, "h": 49 }, + "rotated": false, + "trimmed": true, + "spriteSourceSize": { "x": 27, "y": 25, "w": 46, "h": 49 }, + "sourceSize": { "w": 96, "h": 76 }, + "duration": 50 + }, + { + "filename": "0054.png", + "frame": { "x": 49, "y": 161, "w": 46, "h": 49 }, + "rotated": false, + "trimmed": true, + "spriteSourceSize": { "x": 27, "y": 25, "w": 46, "h": 49 }, + "sourceSize": { "w": 96, "h": 76 }, + "duration": 50 + }, + { + "filename": "0055.png", + "frame": { "x": 146, "y": 162, "w": 46, "h": 47 }, + "rotated": false, + "trimmed": true, + "spriteSourceSize": { "x": 27, "y": 27, "w": 46, "h": 47 }, + "sourceSize": { "w": 96, "h": 76 }, + "duration": 50 + }, + { + "filename": "0056.png", + "frame": { "x": 146, "y": 162, "w": 46, "h": 47 }, + "rotated": false, + "trimmed": true, + "spriteSourceSize": { "x": 27, "y": 27, "w": 46, "h": 47 }, + "sourceSize": { "w": 96, "h": 76 }, + "duration": 50 + }, + { + "filename": "0057.png", + "frame": { "x": 97, "y": 162, "w": 47, "h": 47 }, + "rotated": false, + "trimmed": true, + "spriteSourceSize": { "x": 26, "y": 27, "w": 47, "h": 47 }, + "sourceSize": { "w": 96, "h": 76 }, + "duration": 50 + }, + { + "filename": "0058.png", + "frame": { "x": 97, "y": 162, "w": 47, "h": 47 }, + "rotated": false, + "trimmed": true, + "spriteSourceSize": { "x": 26, "y": 27, "w": 47, "h": 47 }, + "sourceSize": { "w": 96, "h": 76 }, + "duration": 50 + }, + { + "filename": "0059.png", + "frame": { "x": 194, "y": 162, "w": 46, "h": 47 }, + "rotated": false, + "trimmed": true, + "spriteSourceSize": { "x": 27, "y": 27, "w": 46, "h": 47 }, + "sourceSize": { "w": 96, "h": 76 }, + "duration": 50 + }, + { + "filename": "0060.png", + "frame": { "x": 194, "y": 162, "w": 46, "h": 47 }, + "rotated": false, + "trimmed": true, + "spriteSourceSize": { "x": 27, "y": 27, "w": 46, "h": 47 }, + "sourceSize": { "w": 96, "h": 76 }, + "duration": 50 + }, + { + "filename": "0061.png", + "frame": { "x": 1, "y": 109, "w": 47, "h": 49 }, + "rotated": false, + "trimmed": true, + "spriteSourceSize": { "x": 27, "y": 25, "w": 47, "h": 49 }, + "sourceSize": { "w": 96, "h": 76 }, + "duration": 50 + }, + { + "filename": "0062.png", + "frame": { "x": 1, "y": 109, "w": 47, "h": 49 }, + "rotated": false, + "trimmed": true, + "spriteSourceSize": { "x": 27, "y": 25, "w": 47, "h": 49 }, + "sourceSize": { "w": 96, "h": 76 }, + "duration": 50 + }, + { + "filename": "0063.png", + "frame": { "x": 1, "y": 160, "w": 46, "h": 50 }, + "rotated": false, + "trimmed": true, + "spriteSourceSize": { "x": 28, "y": 24, "w": 46, "h": 50 }, + "sourceSize": { "w": 96, "h": 76 }, + "duration": 50 + }, + { + "filename": "0064.png", + "frame": { "x": 1, "y": 160, "w": 46, "h": 50 }, + "rotated": false, + "trimmed": true, + "spriteSourceSize": { "x": 28, "y": 24, "w": 46, "h": 50 }, + "sourceSize": { "w": 96, "h": 76 }, + "duration": 50 + }, + { + "filename": "0065.png", + "frame": { "x": 50, "y": 109, "w": 46, "h": 50 }, + "rotated": false, + "trimmed": true, + "spriteSourceSize": { "x": 28, "y": 24, "w": 46, "h": 50 }, + "sourceSize": { "w": 96, "h": 76 }, + "duration": 50 + }, + { + "filename": "0066.png", + "frame": { "x": 50, "y": 109, "w": 46, "h": 50 }, + "rotated": false, + "trimmed": true, + "spriteSourceSize": { "x": 28, "y": 24, "w": 46, "h": 50 }, + "sourceSize": { "w": 96, "h": 76 }, + "duration": 50 + }, + { + "filename": "0067.png", + "frame": { "x": 98, "y": 109, "w": 45, "h": 50 }, + "rotated": false, + "trimmed": true, + "spriteSourceSize": { "x": 28, "y": 24, "w": 45, "h": 50 }, + "sourceSize": { "w": 96, "h": 76 }, + "duration": 50 + }, + { + "filename": "0068.png", + "frame": { "x": 98, "y": 109, "w": 45, "h": 50 }, + "rotated": false, + "trimmed": true, + "spriteSourceSize": { "x": 28, "y": 24, "w": 45, "h": 50 }, + "sourceSize": { "w": 96, "h": 76 }, + "duration": 50 + }, + { + "filename": "0069.png", + "frame": { "x": 49, "y": 161, "w": 46, "h": 49 }, + "rotated": false, + "trimmed": true, + "spriteSourceSize": { "x": 27, "y": 25, "w": 46, "h": 49 }, + "sourceSize": { "w": 96, "h": 76 }, + "duration": 50 + }, + { + "filename": "0070.png", + "frame": { "x": 49, "y": 161, "w": 46, "h": 49 }, + "rotated": false, + "trimmed": true, + "spriteSourceSize": { "x": 27, "y": 25, "w": 46, "h": 49 }, + "sourceSize": { "w": 96, "h": 76 }, + "duration": 50 + }, + { + "filename": "0071.png", + "frame": { "x": 146, "y": 162, "w": 46, "h": 47 }, + "rotated": false, + "trimmed": true, + "spriteSourceSize": { "x": 27, "y": 27, "w": 46, "h": 47 }, + "sourceSize": { "w": 96, "h": 76 }, + "duration": 50 + }, + { + "filename": "0072.png", + "frame": { "x": 146, "y": 162, "w": 46, "h": 47 }, + "rotated": false, + "trimmed": true, + "spriteSourceSize": { "x": 27, "y": 27, "w": 46, "h": 47 }, + "sourceSize": { "w": 96, "h": 76 }, + "duration": 50 + }, + { + "filename": "0073.png", + "frame": { "x": 97, "y": 162, "w": 47, "h": 47 }, + "rotated": false, + "trimmed": true, + "spriteSourceSize": { "x": 26, "y": 27, "w": 47, "h": 47 }, + "sourceSize": { "w": 96, "h": 76 }, + "duration": 50 + }, + { + "filename": "0074.png", + "frame": { "x": 97, "y": 162, "w": 47, "h": 47 }, + "rotated": false, + "trimmed": true, + "spriteSourceSize": { "x": 26, "y": 27, "w": 47, "h": 47 }, + "sourceSize": { "w": 96, "h": 76 }, + "duration": 50 + }, + { + "filename": "0075.png", + "frame": { "x": 194, "y": 162, "w": 46, "h": 47 }, + "rotated": false, + "trimmed": true, + "spriteSourceSize": { "x": 27, "y": 27, "w": 46, "h": 47 }, + "sourceSize": { "w": 96, "h": 76 }, + "duration": 50 + }, + { + "filename": "0076.png", + "frame": { "x": 194, "y": 162, "w": 46, "h": 47 }, + "rotated": false, + "trimmed": true, + "spriteSourceSize": { "x": 27, "y": 27, "w": 46, "h": 47 }, + "sourceSize": { "w": 96, "h": 76 }, + "duration": 50 + }, + { + "filename": "0077.png", + "frame": { "x": 1, "y": 109, "w": 47, "h": 49 }, + "rotated": false, + "trimmed": true, + "spriteSourceSize": { "x": 27, "y": 25, "w": 47, "h": 49 }, + "sourceSize": { "w": 96, "h": 76 }, + "duration": 50 + }, + { + "filename": "0078.png", + "frame": { "x": 1, "y": 109, "w": 47, "h": 49 }, + "rotated": false, + "trimmed": true, + "spriteSourceSize": { "x": 27, "y": 25, "w": 47, "h": 49 }, + "sourceSize": { "w": 96, "h": 76 }, + "duration": 50 + }, + { + "filename": "0079.png", + "frame": { "x": 1, "y": 160, "w": 46, "h": 50 }, + "rotated": false, + "trimmed": true, + "spriteSourceSize": { "x": 28, "y": 24, "w": 46, "h": 50 }, + "sourceSize": { "w": 96, "h": 76 }, + "duration": 50 + }, + { + "filename": "0080.png", + "frame": { "x": 1, "y": 160, "w": 46, "h": 50 }, + "rotated": false, + "trimmed": true, + "spriteSourceSize": { "x": 28, "y": 24, "w": 46, "h": 50 }, + "sourceSize": { "w": 96, "h": 76 }, + "duration": 50 + }, + { + "filename": "0081.png", + "frame": { "x": 50, "y": 109, "w": 46, "h": 50 }, + "rotated": false, + "trimmed": true, + "spriteSourceSize": { "x": 28, "y": 24, "w": 46, "h": 50 }, + "sourceSize": { "w": 96, "h": 76 }, + "duration": 50 + }, + { + "filename": "0082.png", + "frame": { "x": 50, "y": 109, "w": 46, "h": 50 }, + "rotated": false, + "trimmed": true, + "spriteSourceSize": { "x": 28, "y": 24, "w": 46, "h": 50 }, + "sourceSize": { "w": 96, "h": 76 }, + "duration": 50 + }, + { + "filename": "0083.png", + "frame": { "x": 148, "y": 1, "w": 47, "h": 51 }, + "rotated": false, + "trimmed": true, + "spriteSourceSize": { "x": 28, "y": 23, "w": 47, "h": 51 }, + "sourceSize": { "w": 96, "h": 76 }, + "duration": 50 + }, + { + "filename": "0084.png", + "frame": { "x": 197, "y": 1, "w": 47, "h": 51 }, + "rotated": false, + "trimmed": true, + "spriteSourceSize": { "x": 28, "y": 23, "w": 47, "h": 51 }, + "sourceSize": { "w": 96, "h": 76 }, + "duration": 50 + }, + { + "filename": "0085.png", + "frame": { "x": 1, "y": 1, "w": 47, "h": 52 }, + "rotated": false, + "trimmed": true, + "spriteSourceSize": { "x": 28, "y": 22, "w": 47, "h": 52 }, + "sourceSize": { "w": 96, "h": 76 }, + "duration": 50 + }, + { + "filename": "0086.png", + "frame": { "x": 50, "y": 1, "w": 47, "h": 52 }, + "rotated": false, + "trimmed": true, + "spriteSourceSize": { "x": 28, "y": 22, "w": 47, "h": 52 }, + "sourceSize": { "w": 96, "h": 76 }, + "duration": 50 + }, + { + "filename": "0087.png", + "frame": { "x": 193, "y": 108, "w": 45, "h": 52 }, + "rotated": false, + "trimmed": true, + "spriteSourceSize": { "x": 28, "y": 22, "w": 45, "h": 52 }, + "sourceSize": { "w": 96, "h": 76 }, + "duration": 50 + }, + { + "filename": "0088.png", + "frame": { "x": 193, "y": 108, "w": 45, "h": 52 }, + "rotated": false, + "trimmed": true, + "spriteSourceSize": { "x": 28, "y": 22, "w": 45, "h": 52 }, + "sourceSize": { "w": 96, "h": 76 }, + "duration": 50 + }, + { + "filename": "0089.png", + "frame": { "x": 148, "y": 54, "w": 46, "h": 52 }, + "rotated": false, + "trimmed": true, + "spriteSourceSize": { "x": 28, "y": 22, "w": 46, "h": 52 }, + "sourceSize": { "w": 96, "h": 76 }, + "duration": 50 + }, + { + "filename": "0090.png", + "frame": { "x": 196, "y": 54, "w": 46, "h": 52 }, + "rotated": false, + "trimmed": true, + "spriteSourceSize": { "x": 28, "y": 22, "w": 46, "h": 52 }, + "sourceSize": { "w": 96, "h": 76 }, + "duration": 50 + }, + { + "filename": "0091.png", + "frame": { "x": 1, "y": 55, "w": 46, "h": 52 }, + "rotated": false, + "trimmed": true, + "spriteSourceSize": { "x": 28, "y": 22, "w": 46, "h": 52 }, + "sourceSize": { "w": 96, "h": 76 }, + "duration": 50 + }, + { + "filename": "0092.png", + "frame": { "x": 49, "y": 55, "w": 46, "h": 52 }, + "rotated": false, + "trimmed": true, + "spriteSourceSize": { "x": 28, "y": 22, "w": 46, "h": 52 }, + "sourceSize": { "w": 96, "h": 76 }, + "duration": 50 + }, + { + "filename": "0093.png", + "frame": { "x": 99, "y": 1, "w": 47, "h": 52 }, + "rotated": false, + "trimmed": true, + "spriteSourceSize": { "x": 28, "y": 22, "w": 47, "h": 52 }, + "sourceSize": { "w": 96, "h": 76 }, + "duration": 50 + }, + { + "filename": "0094.png", + "frame": { "x": 99, "y": 1, "w": 47, "h": 52 }, + "rotated": false, + "trimmed": true, + "spriteSourceSize": { "x": 28, "y": 22, "w": 47, "h": 52 }, + "sourceSize": { "w": 96, "h": 76 }, + "duration": 50 + }, + { + "filename": "0095.png", + "frame": { "x": 193, "y": 108, "w": 45, "h": 52 }, + "rotated": false, + "trimmed": true, + "spriteSourceSize": { "x": 28, "y": 22, "w": 45, "h": 52 }, + "sourceSize": { "w": 96, "h": 76 }, + "duration": 50 + }, + { + "filename": "0096.png", + "frame": { "x": 193, "y": 108, "w": 45, "h": 52 }, + "rotated": false, + "trimmed": true, + "spriteSourceSize": { "x": 28, "y": 22, "w": 45, "h": 52 }, + "sourceSize": { "w": 96, "h": 76 }, + "duration": 50 + }, + { + "filename": "0097.png", + "frame": { "x": 97, "y": 55, "w": 46, "h": 52 }, + "rotated": false, + "trimmed": true, + "spriteSourceSize": { "x": 28, "y": 22, "w": 46, "h": 52 }, + "sourceSize": { "w": 96, "h": 76 }, + "duration": 50 + }, + { + "filename": "0098.png", + "frame": { "x": 97, "y": 55, "w": 46, "h": 52 }, + "rotated": false, + "trimmed": true, + "spriteSourceSize": { "x": 28, "y": 22, "w": 46, "h": 52 }, + "sourceSize": { "w": 96, "h": 76 }, + "duration": 50 + }, + { + "filename": "0099.png", + "frame": { "x": 49, "y": 55, "w": 46, "h": 52 }, + "rotated": false, + "trimmed": true, + "spriteSourceSize": { "x": 28, "y": 22, "w": 46, "h": 52 }, + "sourceSize": { "w": 96, "h": 76 }, + "duration": 50 + }, + { + "filename": "0100.png", + "frame": { "x": 49, "y": 55, "w": 46, "h": 52 }, + "rotated": false, + "trimmed": true, + "spriteSourceSize": { "x": 28, "y": 22, "w": 46, "h": 52 }, + "sourceSize": { "w": 96, "h": 76 }, + "duration": 50 + }, + { + "filename": "0101.png", + "frame": { "x": 99, "y": 1, "w": 47, "h": 52 }, + "rotated": false, + "trimmed": true, + "spriteSourceSize": { "x": 28, "y": 22, "w": 47, "h": 52 }, + "sourceSize": { "w": 96, "h": 76 }, + "duration": 50 + }, + { + "filename": "0102.png", + "frame": { "x": 99, "y": 1, "w": 47, "h": 52 }, + "rotated": false, + "trimmed": true, + "spriteSourceSize": { "x": 28, "y": 22, "w": 47, "h": 52 }, + "sourceSize": { "w": 96, "h": 76 }, + "duration": 50 + }, + { + "filename": "0103.png", + "frame": { "x": 99, "y": 1, "w": 47, "h": 52 }, + "rotated": false, + "trimmed": true, + "spriteSourceSize": { "x": 28, "y": 22, "w": 47, "h": 52 }, + "sourceSize": { "w": 96, "h": 76 }, + "duration": 50 + }, + { + "filename": "0104.png", + "frame": { "x": 193, "y": 108, "w": 45, "h": 52 }, + "rotated": false, + "trimmed": true, + "spriteSourceSize": { "x": 28, "y": 22, "w": 45, "h": 52 }, + "sourceSize": { "w": 96, "h": 76 }, + "duration": 50 + }, + { + "filename": "0105.png", + "frame": { "x": 193, "y": 108, "w": 45, "h": 52 }, + "rotated": false, + "trimmed": true, + "spriteSourceSize": { "x": 28, "y": 22, "w": 45, "h": 52 }, + "sourceSize": { "w": 96, "h": 76 }, + "duration": 50 + }, + { + "filename": "0106.png", + "frame": { "x": 97, "y": 55, "w": 46, "h": 52 }, + "rotated": false, + "trimmed": true, + "spriteSourceSize": { "x": 28, "y": 22, "w": 46, "h": 52 }, + "sourceSize": { "w": 96, "h": 76 }, + "duration": 50 + }, + { + "filename": "0107.png", + "frame": { "x": 97, "y": 55, "w": 46, "h": 52 }, + "rotated": false, + "trimmed": true, + "spriteSourceSize": { "x": 28, "y": 22, "w": 46, "h": 52 }, + "sourceSize": { "w": 96, "h": 76 }, + "duration": 50 + }, + { + "filename": "0108.png", + "frame": { "x": 1, "y": 55, "w": 46, "h": 52 }, + "rotated": false, + "trimmed": true, + "spriteSourceSize": { "x": 28, "y": 22, "w": 46, "h": 52 }, + "sourceSize": { "w": 96, "h": 76 }, + "duration": 50 + }, + { + "filename": "0109.png", + "frame": { "x": 145, "y": 108, "w": 46, "h": 52 }, + "rotated": false, + "trimmed": true, + "spriteSourceSize": { "x": 28, "y": 22, "w": 46, "h": 52 }, + "sourceSize": { "w": 96, "h": 76 }, + "duration": 50 + }, + { + "filename": "0110.png", + "frame": { "x": 197, "y": 1, "w": 47, "h": 51 }, + "rotated": false, + "trimmed": true, + "spriteSourceSize": { "x": 28, "y": 23, "w": 47, "h": 51 }, + "sourceSize": { "w": 96, "h": 76 }, + "duration": 50 + }, + { + "filename": "0111.png", + "frame": { "x": 148, "y": 1, "w": 47, "h": 51 }, + "rotated": false, + "trimmed": true, + "spriteSourceSize": { "x": 28, "y": 23, "w": 47, "h": 51 }, + "sourceSize": { "w": 96, "h": 76 }, + "duration": 50 + } + ], + "meta": { + "app": "https://www.aseprite.org/", + "version": "1.3.13-x64", + "image": "782.png", + "format": "I8", + "size": { "w": 245, "h": 211 }, + "scale": "1" + } } diff --git a/public/images/pokemon/782.png b/public/images/pokemon/782.png index ad461fe00ae..093d0189535 100644 Binary files a/public/images/pokemon/782.png and b/public/images/pokemon/782.png differ diff --git a/public/images/pokemon/783.json b/public/images/pokemon/783.json index ff018d3f04a..df0c084fa38 100644 --- a/public/images/pokemon/783.json +++ b/public/images/pokemon/783.json @@ -1,41 +1,965 @@ -{ - "textures": [ - { - "image": "783.png", - "format": "RGBA8888", - "size": { - "w": 69, - "h": 69 - }, - "scale": 1, - "frames": [ - { - "filename": "0001.png", - "rotated": false, - "trimmed": false, - "sourceSize": { - "w": 61, - "h": 69 - }, - "spriteSourceSize": { - "x": 0, - "y": 0, - "w": 61, - "h": 69 - }, - "frame": { - "x": 0, - "y": 0, - "w": 61, - "h": 69 - } - } - ] - } - ], - "meta": { - "app": "https://www.codeandweb.com/texturepacker", - "version": "3.0", - "smartupdate": "$TexturePacker:SmartUpdate:a352518568888797dbb97bf40e2075df:76c85cf57217dd8c084dd2b2591b9bef:aab166e28c744865a0296041224dd01b$" - } +{ "frames": [ + { + "filename": "0001.png", + "frame": { "x": 66, "y": 214, "w": 61, "h": 69 }, + "rotated": false, + "trimmed": true, + "spriteSourceSize": { "x": 5, "y": 2, "w": 61, "h": 69 }, + "sourceSize": { "w": 76, "h": 71 }, + "duration": 100 + }, + { + "filename": "0002.png", + "frame": { "x": 336, "y": 146, "w": 62, "h": 69 }, + "rotated": false, + "trimmed": true, + "spriteSourceSize": { "x": 6, "y": 2, "w": 62, "h": 69 }, + "sourceSize": { "w": 76, "h": 71 }, + "duration": 100 + }, + { + "filename": "0003.png", + "frame": { "x": 1, "y": 73, "w": 64, "h": 70 }, + "rotated": false, + "trimmed": true, + "spriteSourceSize": { "x": 7, "y": 1, "w": 64, "h": 70 }, + "sourceSize": { "w": 76, "h": 71 }, + "duration": 100 + }, + { + "filename": "0004.png", + "frame": { "x": 424, "y": 73, "w": 64, "h": 70 }, + "rotated": false, + "trimmed": true, + "spriteSourceSize": { "x": 9, "y": 1, "w": 64, "h": 70 }, + "sourceSize": { "w": 76, "h": 71 }, + "duration": 100 + }, + { + "filename": "0005.png", + "frame": { "x": 284, "y": 70, "w": 64, "h": 71 }, + "rotated": false, + "trimmed": true, + "spriteSourceSize": { "x": 10, "y": 0, "w": 64, "h": 71 }, + "sourceSize": { "w": 76, "h": 71 }, + "duration": 100 + }, + { + "filename": "0006.png", + "frame": { "x": 350, "y": 74, "w": 63, "h": 70 }, + "rotated": false, + "trimmed": true, + "spriteSourceSize": { "x": 9, "y": 1, "w": 63, "h": 70 }, + "sourceSize": { "w": 76, "h": 71 }, + "duration": 100 + }, + { + "filename": "0007.png", + "frame": { "x": 490, "y": 141, "w": 63, "h": 70 }, + "rotated": false, + "trimmed": true, + "spriteSourceSize": { "x": 7, "y": 1, "w": 63, "h": 70 }, + "sourceSize": { "w": 76, "h": 71 }, + "duration": 100 + }, + { + "filename": "0008.png", + "frame": { "x": 415, "y": 145, "w": 62, "h": 69 }, + "rotated": false, + "trimmed": true, + "spriteSourceSize": { "x": 6, "y": 2, "w": 62, "h": 69 }, + "sourceSize": { "w": 76, "h": 71 }, + "duration": 100 + }, + { + "filename": "0009.png", + "frame": { "x": 318, "y": 217, "w": 60, "h": 69 }, + "rotated": false, + "trimmed": true, + "spriteSourceSize": { "x": 5, "y": 2, "w": 60, "h": 69 }, + "sourceSize": { "w": 76, "h": 71 }, + "duration": 100 + }, + { + "filename": "0010.png", + "frame": { "x": 442, "y": 353, "w": 59, "h": 68 }, + "rotated": false, + "trimmed": true, + "spriteSourceSize": { "x": 4, "y": 3, "w": 59, "h": 68 }, + "sourceSize": { "w": 76, "h": 71 }, + "duration": 100 + }, + { + "filename": "0011.png", + "frame": { "x": 59, "y": 425, "w": 56, "h": 67 }, + "rotated": false, + "trimmed": true, + "spriteSourceSize": { "x": 4, "y": 4, "w": 56, "h": 67 }, + "sourceSize": { "w": 76, "h": 71 }, + "duration": 100 + }, + { + "filename": "0012.png", + "frame": { "x": 1, "y": 425, "w": 56, "h": 67 }, + "rotated": false, + "trimmed": true, + "spriteSourceSize": { "x": 3, "y": 4, "w": 56, "h": 67 }, + "sourceSize": { "w": 76, "h": 71 }, + "duration": 100 + }, + { + "filename": "0013.png", + "frame": { "x": 117, "y": 426, "w": 56, "h": 66 }, + "rotated": false, + "trimmed": true, + "spriteSourceSize": { "x": 2, "y": 5, "w": 56, "h": 66 }, + "sourceSize": { "w": 76, "h": 71 }, + "duration": 100 + }, + { + "filename": "0014.png", + "frame": { "x": 486, "y": 424, "w": 56, "h": 67 }, + "rotated": false, + "trimmed": true, + "spriteSourceSize": { "x": 3, "y": 4, "w": 56, "h": 67 }, + "sourceSize": { "w": 76, "h": 71 }, + "duration": 100 + }, + { + "filename": "0015.png", + "frame": { "x": 298, "y": 358, "w": 57, "h": 67 }, + "rotated": false, + "trimmed": true, + "spriteSourceSize": { "x": 4, "y": 4, "w": 57, "h": 67 }, + "sourceSize": { "w": 76, "h": 71 }, + "duration": 100 + }, + { + "filename": "0016.png", + "frame": { "x": 63, "y": 285, "w": 60, "h": 68 }, + "rotated": false, + "trimmed": true, + "spriteSourceSize": { "x": 4, "y": 3, "w": 60, "h": 68 }, + "sourceSize": { "w": 76, "h": 71 }, + "duration": 100 + }, + { + "filename": "0017.png", + "frame": { "x": 66, "y": 214, "w": 61, "h": 69 }, + "rotated": false, + "trimmed": true, + "spriteSourceSize": { "x": 5, "y": 2, "w": 61, "h": 69 }, + "sourceSize": { "w": 76, "h": 71 }, + "duration": 100 + }, + { + "filename": "0018.png", + "frame": { "x": 336, "y": 146, "w": 62, "h": 69 }, + "rotated": false, + "trimmed": true, + "spriteSourceSize": { "x": 6, "y": 2, "w": 62, "h": 69 }, + "sourceSize": { "w": 76, "h": 71 }, + "duration": 100 + }, + { + "filename": "0019.png", + "frame": { "x": 1, "y": 73, "w": 64, "h": 70 }, + "rotated": false, + "trimmed": true, + "spriteSourceSize": { "x": 7, "y": 1, "w": 64, "h": 70 }, + "sourceSize": { "w": 76, "h": 71 }, + "duration": 100 + }, + { + "filename": "0020.png", + "frame": { "x": 424, "y": 73, "w": 64, "h": 70 }, + "rotated": false, + "trimmed": true, + "spriteSourceSize": { "x": 9, "y": 1, "w": 64, "h": 70 }, + "sourceSize": { "w": 76, "h": 71 }, + "duration": 100 + }, + { + "filename": "0021.png", + "frame": { "x": 284, "y": 70, "w": 64, "h": 71 }, + "rotated": false, + "trimmed": true, + "spriteSourceSize": { "x": 10, "y": 0, "w": 64, "h": 71 }, + "sourceSize": { "w": 76, "h": 71 }, + "duration": 100 + }, + { + "filename": "0022.png", + "frame": { "x": 350, "y": 74, "w": 63, "h": 70 }, + "rotated": false, + "trimmed": true, + "spriteSourceSize": { "x": 9, "y": 1, "w": 63, "h": 70 }, + "sourceSize": { "w": 76, "h": 71 }, + "duration": 100 + }, + { + "filename": "0023.png", + "frame": { "x": 490, "y": 141, "w": 63, "h": 70 }, + "rotated": false, + "trimmed": true, + "spriteSourceSize": { "x": 7, "y": 1, "w": 63, "h": 70 }, + "sourceSize": { "w": 76, "h": 71 }, + "duration": 100 + }, + { + "filename": "0024.png", + "frame": { "x": 415, "y": 145, "w": 62, "h": 69 }, + "rotated": false, + "trimmed": true, + "spriteSourceSize": { "x": 6, "y": 2, "w": 62, "h": 69 }, + "sourceSize": { "w": 76, "h": 71 }, + "duration": 100 + }, + { + "filename": "0025.png", + "frame": { "x": 318, "y": 217, "w": 60, "h": 69 }, + "rotated": false, + "trimmed": true, + "spriteSourceSize": { "x": 5, "y": 2, "w": 60, "h": 69 }, + "sourceSize": { "w": 76, "h": 71 }, + "duration": 100 + }, + { + "filename": "0026.png", + "frame": { "x": 442, "y": 353, "w": 59, "h": 68 }, + "rotated": false, + "trimmed": true, + "spriteSourceSize": { "x": 4, "y": 3, "w": 59, "h": 68 }, + "sourceSize": { "w": 76, "h": 71 }, + "duration": 100 + }, + { + "filename": "0027.png", + "frame": { "x": 59, "y": 425, "w": 56, "h": 67 }, + "rotated": false, + "trimmed": true, + "spriteSourceSize": { "x": 4, "y": 4, "w": 56, "h": 67 }, + "sourceSize": { "w": 76, "h": 71 }, + "duration": 100 + }, + { + "filename": "0028.png", + "frame": { "x": 1, "y": 425, "w": 56, "h": 67 }, + "rotated": false, + "trimmed": true, + "spriteSourceSize": { "x": 3, "y": 4, "w": 56, "h": 67 }, + "sourceSize": { "w": 76, "h": 71 }, + "duration": 100 + }, + { + "filename": "0029.png", + "frame": { "x": 117, "y": 426, "w": 56, "h": 66 }, + "rotated": false, + "trimmed": true, + "spriteSourceSize": { "x": 2, "y": 5, "w": 56, "h": 66 }, + "sourceSize": { "w": 76, "h": 71 }, + "duration": 100 + }, + { + "filename": "0030.png", + "frame": { "x": 486, "y": 424, "w": 56, "h": 67 }, + "rotated": false, + "trimmed": true, + "spriteSourceSize": { "x": 3, "y": 4, "w": 56, "h": 67 }, + "sourceSize": { "w": 76, "h": 71 }, + "duration": 100 + }, + { + "filename": "0031.png", + "frame": { "x": 298, "y": 358, "w": 57, "h": 67 }, + "rotated": false, + "trimmed": true, + "spriteSourceSize": { "x": 4, "y": 4, "w": 57, "h": 67 }, + "sourceSize": { "w": 76, "h": 71 }, + "duration": 100 + }, + { + "filename": "0032.png", + "frame": { "x": 63, "y": 285, "w": 60, "h": 68 }, + "rotated": false, + "trimmed": true, + "spriteSourceSize": { "x": 4, "y": 3, "w": 60, "h": 68 }, + "sourceSize": { "w": 76, "h": 71 }, + "duration": 100 + }, + { + "filename": "0033.png", + "frame": { "x": 66, "y": 214, "w": 61, "h": 69 }, + "rotated": false, + "trimmed": true, + "spriteSourceSize": { "x": 5, "y": 2, "w": 61, "h": 69 }, + "sourceSize": { "w": 76, "h": 71 }, + "duration": 100 + }, + { + "filename": "0034.png", + "frame": { "x": 336, "y": 146, "w": 62, "h": 69 }, + "rotated": false, + "trimmed": true, + "spriteSourceSize": { "x": 6, "y": 2, "w": 62, "h": 69 }, + "sourceSize": { "w": 76, "h": 71 }, + "duration": 100 + }, + { + "filename": "0035.png", + "frame": { "x": 1, "y": 73, "w": 64, "h": 70 }, + "rotated": false, + "trimmed": true, + "spriteSourceSize": { "x": 7, "y": 1, "w": 64, "h": 70 }, + "sourceSize": { "w": 76, "h": 71 }, + "duration": 100 + }, + { + "filename": "0036.png", + "frame": { "x": 424, "y": 73, "w": 64, "h": 70 }, + "rotated": false, + "trimmed": true, + "spriteSourceSize": { "x": 9, "y": 1, "w": 64, "h": 70 }, + "sourceSize": { "w": 76, "h": 71 }, + "duration": 100 + }, + { + "filename": "0037.png", + "frame": { "x": 284, "y": 70, "w": 64, "h": 71 }, + "rotated": false, + "trimmed": true, + "spriteSourceSize": { "x": 10, "y": 0, "w": 64, "h": 71 }, + "sourceSize": { "w": 76, "h": 71 }, + "duration": 100 + }, + { + "filename": "0038.png", + "frame": { "x": 350, "y": 74, "w": 63, "h": 70 }, + "rotated": false, + "trimmed": true, + "spriteSourceSize": { "x": 9, "y": 1, "w": 63, "h": 70 }, + "sourceSize": { "w": 76, "h": 71 }, + "duration": 100 + }, + { + "filename": "0039.png", + "frame": { "x": 490, "y": 141, "w": 63, "h": 70 }, + "rotated": false, + "trimmed": true, + "spriteSourceSize": { "x": 7, "y": 1, "w": 63, "h": 70 }, + "sourceSize": { "w": 76, "h": 71 }, + "duration": 100 + }, + { + "filename": "0040.png", + "frame": { "x": 415, "y": 145, "w": 62, "h": 69 }, + "rotated": false, + "trimmed": true, + "spriteSourceSize": { "x": 6, "y": 2, "w": 62, "h": 69 }, + "sourceSize": { "w": 76, "h": 71 }, + "duration": 100 + }, + { + "filename": "0041.png", + "frame": { "x": 318, "y": 217, "w": 60, "h": 69 }, + "rotated": false, + "trimmed": true, + "spriteSourceSize": { "x": 5, "y": 2, "w": 60, "h": 69 }, + "sourceSize": { "w": 76, "h": 71 }, + "duration": 100 + }, + { + "filename": "0042.png", + "frame": { "x": 442, "y": 353, "w": 59, "h": 68 }, + "rotated": false, + "trimmed": true, + "spriteSourceSize": { "x": 4, "y": 3, "w": 59, "h": 68 }, + "sourceSize": { "w": 76, "h": 71 }, + "duration": 100 + }, + { + "filename": "0043.png", + "frame": { "x": 59, "y": 425, "w": 56, "h": 67 }, + "rotated": false, + "trimmed": true, + "spriteSourceSize": { "x": 4, "y": 4, "w": 56, "h": 67 }, + "sourceSize": { "w": 76, "h": 71 }, + "duration": 100 + }, + { + "filename": "0044.png", + "frame": { "x": 1, "y": 425, "w": 56, "h": 67 }, + "rotated": false, + "trimmed": true, + "spriteSourceSize": { "x": 3, "y": 4, "w": 56, "h": 67 }, + "sourceSize": { "w": 76, "h": 71 }, + "duration": 100 + }, + { + "filename": "0045.png", + "frame": { "x": 117, "y": 426, "w": 56, "h": 66 }, + "rotated": false, + "trimmed": true, + "spriteSourceSize": { "x": 2, "y": 5, "w": 56, "h": 66 }, + "sourceSize": { "w": 76, "h": 71 }, + "duration": 100 + }, + { + "filename": "0046.png", + "frame": { "x": 486, "y": 424, "w": 56, "h": 67 }, + "rotated": false, + "trimmed": true, + "spriteSourceSize": { "x": 3, "y": 4, "w": 56, "h": 67 }, + "sourceSize": { "w": 76, "h": 71 }, + "duration": 100 + }, + { + "filename": "0047.png", + "frame": { "x": 298, "y": 358, "w": 57, "h": 67 }, + "rotated": false, + "trimmed": true, + "spriteSourceSize": { "x": 4, "y": 4, "w": 57, "h": 67 }, + "sourceSize": { "w": 76, "h": 71 }, + "duration": 100 + }, + { + "filename": "0048.png", + "frame": { "x": 63, "y": 285, "w": 60, "h": 68 }, + "rotated": false, + "trimmed": true, + "spriteSourceSize": { "x": 4, "y": 3, "w": 60, "h": 68 }, + "sourceSize": { "w": 76, "h": 71 }, + "duration": 100 + }, + { + "filename": "0049.png", + "frame": { "x": 66, "y": 214, "w": 61, "h": 69 }, + "rotated": false, + "trimmed": true, + "spriteSourceSize": { "x": 5, "y": 2, "w": 61, "h": 69 }, + "sourceSize": { "w": 76, "h": 71 }, + "duration": 100 + }, + { + "filename": "0050.png", + "frame": { "x": 336, "y": 146, "w": 62, "h": 69 }, + "rotated": false, + "trimmed": true, + "spriteSourceSize": { "x": 6, "y": 2, "w": 62, "h": 69 }, + "sourceSize": { "w": 76, "h": 71 }, + "duration": 100 + }, + { + "filename": "0051.png", + "frame": { "x": 1, "y": 73, "w": 64, "h": 70 }, + "rotated": false, + "trimmed": true, + "spriteSourceSize": { "x": 7, "y": 1, "w": 64, "h": 70 }, + "sourceSize": { "w": 76, "h": 71 }, + "duration": 100 + }, + { + "filename": "0052.png", + "frame": { "x": 424, "y": 73, "w": 64, "h": 70 }, + "rotated": false, + "trimmed": true, + "spriteSourceSize": { "x": 9, "y": 1, "w": 64, "h": 70 }, + "sourceSize": { "w": 76, "h": 71 }, + "duration": 100 + }, + { + "filename": "0053.png", + "frame": { "x": 284, "y": 70, "w": 64, "h": 71 }, + "rotated": false, + "trimmed": true, + "spriteSourceSize": { "x": 10, "y": 0, "w": 64, "h": 71 }, + "sourceSize": { "w": 76, "h": 71 }, + "duration": 100 + }, + { + "filename": "0054.png", + "frame": { "x": 350, "y": 74, "w": 63, "h": 70 }, + "rotated": false, + "trimmed": true, + "spriteSourceSize": { "x": 9, "y": 1, "w": 63, "h": 70 }, + "sourceSize": { "w": 76, "h": 71 }, + "duration": 100 + }, + { + "filename": "0055.png", + "frame": { "x": 490, "y": 141, "w": 63, "h": 70 }, + "rotated": false, + "trimmed": true, + "spriteSourceSize": { "x": 7, "y": 1, "w": 63, "h": 70 }, + "sourceSize": { "w": 76, "h": 71 }, + "duration": 100 + }, + { + "filename": "0056.png", + "frame": { "x": 415, "y": 145, "w": 62, "h": 69 }, + "rotated": false, + "trimmed": true, + "spriteSourceSize": { "x": 6, "y": 2, "w": 62, "h": 69 }, + "sourceSize": { "w": 76, "h": 71 }, + "duration": 100 + }, + { + "filename": "0057.png", + "frame": { "x": 318, "y": 217, "w": 60, "h": 69 }, + "rotated": false, + "trimmed": true, + "spriteSourceSize": { "x": 5, "y": 2, "w": 60, "h": 69 }, + "sourceSize": { "w": 76, "h": 71 }, + "duration": 100 + }, + { + "filename": "0058.png", + "frame": { "x": 442, "y": 353, "w": 59, "h": 68 }, + "rotated": false, + "trimmed": true, + "spriteSourceSize": { "x": 4, "y": 3, "w": 59, "h": 68 }, + "sourceSize": { "w": 76, "h": 71 }, + "duration": 100 + }, + { + "filename": "0059.png", + "frame": { "x": 59, "y": 425, "w": 56, "h": 67 }, + "rotated": false, + "trimmed": true, + "spriteSourceSize": { "x": 4, "y": 4, "w": 56, "h": 67 }, + "sourceSize": { "w": 76, "h": 71 }, + "duration": 100 + }, + { + "filename": "0060.png", + "frame": { "x": 1, "y": 425, "w": 56, "h": 67 }, + "rotated": false, + "trimmed": true, + "spriteSourceSize": { "x": 3, "y": 4, "w": 56, "h": 67 }, + "sourceSize": { "w": 76, "h": 71 }, + "duration": 100 + }, + { + "filename": "0061.png", + "frame": { "x": 117, "y": 426, "w": 56, "h": 66 }, + "rotated": false, + "trimmed": true, + "spriteSourceSize": { "x": 2, "y": 5, "w": 56, "h": 66 }, + "sourceSize": { "w": 76, "h": 71 }, + "duration": 100 + }, + { + "filename": "0062.png", + "frame": { "x": 486, "y": 424, "w": 56, "h": 67 }, + "rotated": false, + "trimmed": true, + "spriteSourceSize": { "x": 3, "y": 4, "w": 56, "h": 67 }, + "sourceSize": { "w": 76, "h": 71 }, + "duration": 100 + }, + { + "filename": "0063.png", + "frame": { "x": 298, "y": 358, "w": 57, "h": 67 }, + "rotated": false, + "trimmed": true, + "spriteSourceSize": { "x": 4, "y": 4, "w": 57, "h": 67 }, + "sourceSize": { "w": 76, "h": 71 }, + "duration": 100 + }, + { + "filename": "0064.png", + "frame": { "x": 63, "y": 285, "w": 60, "h": 68 }, + "rotated": false, + "trimmed": true, + "spriteSourceSize": { "x": 4, "y": 3, "w": 60, "h": 68 }, + "sourceSize": { "w": 76, "h": 71 }, + "duration": 100 + }, + { + "filename": "0065.png", + "frame": { "x": 255, "y": 214, "w": 61, "h": 69 }, + "rotated": false, + "trimmed": true, + "spriteSourceSize": { "x": 5, "y": 2, "w": 61, "h": 69 }, + "sourceSize": { "w": 76, "h": 71 }, + "duration": 100 + }, + { + "filename": "0066.png", + "frame": { "x": 462, "y": 283, "w": 60, "h": 68 }, + "rotated": false, + "trimmed": true, + "spriteSourceSize": { "x": 4, "y": 2, "w": 60, "h": 68 }, + "sourceSize": { "w": 76, "h": 71 }, + "duration": 100 + }, + { + "filename": "0067.png", + "frame": { "x": 309, "y": 288, "w": 59, "h": 68 }, + "rotated": false, + "trimmed": true, + "spriteSourceSize": { "x": 3, "y": 2, "w": 59, "h": 68 }, + "sourceSize": { "w": 76, "h": 71 }, + "duration": 100 + }, + { + "filename": "0068.png", + "frame": { "x": 370, "y": 356, "w": 57, "h": 67 }, + "rotated": false, + "trimmed": true, + "spriteSourceSize": { "x": 2, "y": 2, "w": 57, "h": 67 }, + "sourceSize": { "w": 76, "h": 71 }, + "duration": 100 + }, + { + "filename": "0069.png", + "frame": { "x": 380, "y": 287, "w": 60, "h": 67 }, + "rotated": false, + "trimmed": true, + "spriteSourceSize": { "x": 1, "y": 2, "w": 60, "h": 67 }, + "sourceSize": { "w": 76, "h": 71 }, + "duration": 100 + }, + { + "filename": "0070.png", + "frame": { "x": 1, "y": 215, "w": 63, "h": 66 }, + "rotated": false, + "trimmed": true, + "spriteSourceSize": { "x": 0, "y": 3, "w": 63, "h": 66 }, + "sourceSize": { "w": 76, "h": 71 }, + "duration": 100 + }, + { + "filename": "0071.png", + "frame": { "x": 492, "y": 1, "w": 68, "h": 67 }, + "rotated": false, + "trimmed": true, + "spriteSourceSize": { "x": 3, "y": 3, "w": 68, "h": 67 }, + "sourceSize": { "w": 76, "h": 71 }, + "duration": 100 + }, + { + "filename": "0072.png", + "frame": { "x": 284, "y": 1, "w": 70, "h": 67 }, + "rotated": false, + "trimmed": true, + "spriteSourceSize": { "x": 5, "y": 4, "w": 70, "h": 67 }, + "sourceSize": { "w": 76, "h": 71 }, + "duration": 100 + }, + { + "filename": "0073.png", + "frame": { "x": 72, "y": 1, "w": 71, "h": 68 }, + "rotated": false, + "trimmed": true, + "spriteSourceSize": { "x": 5, "y": 3, "w": 71, "h": 68 }, + "sourceSize": { "w": 76, "h": 71 }, + "duration": 100 + }, + { + "filename": "0074.png", + "frame": { "x": 214, "y": 1, "w": 68, "h": 69 }, + "rotated": false, + "trimmed": true, + "spriteSourceSize": { "x": 5, "y": 2, "w": 68, "h": 69 }, + "sourceSize": { "w": 76, "h": 71 }, + "duration": 100 + }, + { + "filename": "0075.png", + "frame": { "x": 214, "y": 72, "w": 65, "h": 69 }, + "rotated": false, + "trimmed": true, + "spriteSourceSize": { "x": 5, "y": 2, "w": 65, "h": 69 }, + "sourceSize": { "w": 76, "h": 71 }, + "duration": 100 + }, + { + "filename": "0076.png", + "frame": { "x": 66, "y": 214, "w": 61, "h": 69 }, + "rotated": false, + "trimmed": true, + "spriteSourceSize": { "x": 5, "y": 2, "w": 61, "h": 69 }, + "sourceSize": { "w": 76, "h": 71 }, + "duration": 100 + }, + { + "filename": "0077.png", + "frame": { "x": 67, "y": 142, "w": 63, "h": 70 }, + "rotated": false, + "trimmed": true, + "spriteSourceSize": { "x": 5, "y": 1, "w": 63, "h": 70 }, + "sourceSize": { "w": 76, "h": 71 }, + "duration": 100 + }, + { + "filename": "0078.png", + "frame": { "x": 424, "y": 1, "w": 66, "h": 70 }, + "rotated": false, + "trimmed": true, + "spriteSourceSize": { "x": 4, "y": 1, "w": 66, "h": 70 }, + "sourceSize": { "w": 76, "h": 71 }, + "duration": 100 + }, + { + "filename": "0079.png", + "frame": { "x": 1, "y": 1, "w": 69, "h": 70 }, + "rotated": false, + "trimmed": true, + "spriteSourceSize": { "x": 4, "y": 1, "w": 69, "h": 70 }, + "sourceSize": { "w": 76, "h": 71 }, + "duration": 100 + }, + { + "filename": "0080.png", + "frame": { "x": 145, "y": 1, "w": 67, "h": 71 }, + "rotated": false, + "trimmed": true, + "spriteSourceSize": { "x": 4, "y": 0, "w": 67, "h": 71 }, + "sourceSize": { "w": 76, "h": 71 }, + "duration": 100 + }, + { + "filename": "0081.png", + "frame": { "x": 356, "y": 1, "w": 66, "h": 71 }, + "rotated": false, + "trimmed": true, + "spriteSourceSize": { "x": 3, "y": 0, "w": 66, "h": 71 }, + "sourceSize": { "w": 76, "h": 71 }, + "duration": 100 + }, + { + "filename": "0082.png", + "frame": { "x": 121, "y": 355, "w": 57, "h": 69 }, + "rotated": false, + "trimmed": true, + "spriteSourceSize": { "x": 4, "y": 2, "w": 57, "h": 69 }, + "sourceSize": { "w": 76, "h": 71 }, + "duration": 100 + }, + { + "filename": "0083.png", + "frame": { "x": 239, "y": 426, "w": 54, "h": 67 }, + "rotated": false, + "trimmed": true, + "spriteSourceSize": { "x": 5, "y": 4, "w": 54, "h": 67 }, + "sourceSize": { "w": 76, "h": 71 }, + "duration": 100 + }, + { + "filename": "0084.png", + "frame": { "x": 357, "y": 425, "w": 55, "h": 68 }, + "rotated": false, + "trimmed": true, + "spriteSourceSize": { "x": 5, "y": 3, "w": 55, "h": 68 }, + "sourceSize": { "w": 76, "h": 71 }, + "duration": 100 + }, + { + "filename": "0085.png", + "frame": { "x": 429, "y": 423, "w": 55, "h": 69 }, + "rotated": false, + "trimmed": true, + "spriteSourceSize": { "x": 5, "y": 2, "w": 55, "h": 69 }, + "sourceSize": { "w": 76, "h": 71 }, + "duration": 100 + }, + { + "filename": "0086.png", + "frame": { "x": 180, "y": 356, "w": 57, "h": 69 }, + "rotated": false, + "trimmed": true, + "spriteSourceSize": { "x": 5, "y": 2, "w": 57, "h": 69 }, + "sourceSize": { "w": 76, "h": 71 }, + "duration": 100 + }, + { + "filename": "0087.png", + "frame": { "x": 66, "y": 214, "w": 61, "h": 69 }, + "rotated": false, + "trimmed": true, + "spriteSourceSize": { "x": 5, "y": 2, "w": 61, "h": 69 }, + "sourceSize": { "w": 76, "h": 71 }, + "duration": 100 + }, + { + "filename": "0088.png", + "frame": { "x": 271, "y": 143, "w": 63, "h": 69 }, + "rotated": false, + "trimmed": true, + "spriteSourceSize": { "x": 3, "y": 2, "w": 63, "h": 69 }, + "sourceSize": { "w": 76, "h": 71 }, + "duration": 100 + }, + { + "filename": "0089.png", + "frame": { "x": 72, "y": 71, "w": 65, "h": 69 }, + "rotated": false, + "trimmed": true, + "spriteSourceSize": { "x": 2, "y": 2, "w": 65, "h": 69 }, + "sourceSize": { "w": 76, "h": 71 }, + "duration": 100 + }, + { + "filename": "0090.png", + "frame": { "x": 187, "y": 285, "w": 59, "h": 69 }, + "rotated": false, + "trimmed": true, + "spriteSourceSize": { "x": 1, "y": 2, "w": 59, "h": 69 }, + "sourceSize": { "w": 76, "h": 71 }, + "duration": 100 + }, + { + "filename": "0091.png", + "frame": { "x": 192, "y": 214, "w": 61, "h": 69 }, + "rotated": false, + "trimmed": true, + "spriteSourceSize": { "x": 1, "y": 2, "w": 61, "h": 69 }, + "sourceSize": { "w": 76, "h": 71 }, + "duration": 100 + }, + { + "filename": "0092.png", + "frame": { "x": 206, "y": 143, "w": 63, "h": 69 }, + "rotated": false, + "trimmed": true, + "spriteSourceSize": { "x": 1, "y": 2, "w": 63, "h": 69 }, + "sourceSize": { "w": 76, "h": 71 }, + "duration": 100 + }, + { + "filename": "0093.png", + "frame": { "x": 492, "y": 70, "w": 65, "h": 69 }, + "rotated": false, + "trimmed": true, + "spriteSourceSize": { "x": 1, "y": 2, "w": 65, "h": 69 }, + "sourceSize": { "w": 76, "h": 71 }, + "duration": 100 + }, + { + "filename": "0094.png", + "frame": { "x": 503, "y": 353, "w": 58, "h": 69 }, + "rotated": false, + "trimmed": true, + "spriteSourceSize": { "x": 1, "y": 2, "w": 58, "h": 69 }, + "sourceSize": { "w": 76, "h": 71 }, + "duration": 100 + }, + { + "filename": "0095.png", + "frame": { "x": 129, "y": 214, "w": 61, "h": 69 }, + "rotated": false, + "trimmed": true, + "spriteSourceSize": { "x": 1, "y": 2, "w": 61, "h": 69 }, + "sourceSize": { "w": 76, "h": 71 }, + "duration": 100 + }, + { + "filename": "0096.png", + "frame": { "x": 132, "y": 144, "w": 63, "h": 68 }, + "rotated": false, + "trimmed": true, + "spriteSourceSize": { "x": 1, "y": 3, "w": 63, "h": 68 }, + "sourceSize": { "w": 76, "h": 71 }, + "duration": 100 + }, + { + "filename": "0097.png", + "frame": { "x": 139, "y": 74, "w": 65, "h": 68 }, + "rotated": false, + "trimmed": true, + "spriteSourceSize": { "x": 1, "y": 3, "w": 65, "h": 68 }, + "sourceSize": { "w": 76, "h": 71 }, + "duration": 100 + }, + { + "filename": "0098.png", + "frame": { "x": 61, "y": 355, "w": 58, "h": 68 }, + "rotated": false, + "trimmed": true, + "spriteSourceSize": { "x": 1, "y": 3, "w": 58, "h": 68 }, + "sourceSize": { "w": 76, "h": 71 }, + "duration": 100 + }, + { + "filename": "0099.png", + "frame": { "x": 125, "y": 285, "w": 60, "h": 68 }, + "rotated": false, + "trimmed": true, + "spriteSourceSize": { "x": 1, "y": 3, "w": 60, "h": 68 }, + "sourceSize": { "w": 76, "h": 71 }, + "duration": 100 + }, + { + "filename": "0100.png", + "frame": { "x": 479, "y": 213, "w": 62, "h": 68 }, + "rotated": false, + "trimmed": true, + "spriteSourceSize": { "x": 2, "y": 3, "w": 62, "h": 68 }, + "sourceSize": { "w": 76, "h": 71 }, + "duration": 100 + }, + { + "filename": "0101.png", + "frame": { "x": 1, "y": 145, "w": 63, "h": 68 }, + "rotated": false, + "trimmed": true, + "spriteSourceSize": { "x": 2, "y": 3, "w": 63, "h": 68 }, + "sourceSize": { "w": 76, "h": 71 }, + "duration": 100 + }, + { + "filename": "0102.png", + "frame": { "x": 239, "y": 356, "w": 57, "h": 68 }, + "rotated": false, + "trimmed": true, + "spriteSourceSize": { "x": 3, "y": 3, "w": 57, "h": 68 }, + "sourceSize": { "w": 76, "h": 71 }, + "duration": 100 + }, + { + "filename": "0103.png", + "frame": { "x": 1, "y": 354, "w": 58, "h": 69 }, + "rotated": false, + "trimmed": true, + "spriteSourceSize": { "x": 3, "y": 2, "w": 58, "h": 69 }, + "sourceSize": { "w": 76, "h": 71 }, + "duration": 100 + }, + { + "filename": "0104.png", + "frame": { "x": 248, "y": 285, "w": 59, "h": 69 }, + "rotated": false, + "trimmed": true, + "spriteSourceSize": { "x": 4, "y": 2, "w": 59, "h": 69 }, + "sourceSize": { "w": 76, "h": 71 }, + "duration": 100 + }, + { + "filename": "0105.png", + "frame": { "x": 1, "y": 283, "w": 60, "h": 69 }, + "rotated": false, + "trimmed": true, + "spriteSourceSize": { "x": 4, "y": 2, "w": 60, "h": 69 }, + "sourceSize": { "w": 76, "h": 71 }, + "duration": 100 + }, + { + "filename": "0106.png", + "frame": { "x": 400, "y": 216, "w": 60, "h": 69 }, + "rotated": false, + "trimmed": true, + "spriteSourceSize": { "x": 5, "y": 2, "w": 60, "h": 69 }, + "sourceSize": { "w": 76, "h": 71 }, + "duration": 100 + } + ], + "meta": { + "app": "https://www.aseprite.org/", + "version": "1.3.13-x64", + "image": "783.png", + "format": "I8", + "size": { "w": 562, "h": 494 }, + "scale": "1" + } } diff --git a/public/images/pokemon/783.png b/public/images/pokemon/783.png index 3ec37265afe..9396392b588 100644 Binary files a/public/images/pokemon/783.png and b/public/images/pokemon/783.png differ diff --git a/public/images/pokemon/784.json b/public/images/pokemon/784.json index 93433997311..7899177cfc7 100644 --- a/public/images/pokemon/784.json +++ b/public/images/pokemon/784.json @@ -1,41 +1,812 @@ -{ - "textures": [ - { - "image": "784.png", - "format": "RGBA8888", - "size": { - "w": 81, - "h": 81 - }, - "scale": 1, - "frames": [ - { - "filename": "0001.png", - "rotated": false, - "trimmed": false, - "sourceSize": { - "w": 79, - "h": 81 - }, - "spriteSourceSize": { - "x": 0, - "y": 0, - "w": 79, - "h": 81 - }, - "frame": { - "x": 0, - "y": 0, - "w": 79, - "h": 81 - } - } - ] - } - ], - "meta": { - "app": "https://www.codeandweb.com/texturepacker", - "version": "3.0", - "smartupdate": "$TexturePacker:SmartUpdate:dcfcb88e42dad35e57b259d31fbc6143:26fe93636d2b2e8c3da41c05f0648a08:c2f7ca3ab1075b8c824730653d891244$" - } +{ "frames": [ + { + "filename": "0001.png", + "frame": { "x": 260, "y": 244, "w": 80, "h": 81 }, + "rotated": false, + "trimmed": true, + "spriteSourceSize": { "x": 11, "y": 4, "w": 80, "h": 81 }, + "sourceSize": { "w": 108, "h": 88 }, + "duration": 100 + }, + { + "filename": "0002.png", + "frame": { "x": 381, "y": 166, "w": 84, "h": 81 }, + "rotated": false, + "trimmed": true, + "spriteSourceSize": { "x": 9, "y": 4, "w": 84, "h": 81 }, + "sourceSize": { "w": 108, "h": 88 }, + "duration": 100 + }, + { + "filename": "0003.png", + "frame": { "x": 291, "y": 161, "w": 88, "h": 81 }, + "rotated": false, + "trimmed": true, + "spriteSourceSize": { "x": 8, "y": 4, "w": 88, "h": 81 }, + "sourceSize": { "w": 108, "h": 88 }, + "duration": 100 + }, + { + "filename": "0004.png", + "frame": { "x": 106, "y": 80, "w": 94, "h": 80 }, + "rotated": false, + "trimmed": true, + "spriteSourceSize": { "x": 6, "y": 5, "w": 94, "h": 80 }, + "sourceSize": { "w": 108, "h": 88 }, + "duration": 100 + }, + { + "filename": "0005.png", + "frame": { "x": 422, "y": 1, "w": 99, "h": 79 }, + "rotated": false, + "trimmed": true, + "spriteSourceSize": { "x": 5, "y": 6, "w": 99, "h": 79 }, + "sourceSize": { "w": 108, "h": 88 }, + "duration": 100 + }, + { + "filename": "0006.png", + "frame": { "x": 1, "y": 1, "w": 103, "h": 78 }, + "rotated": false, + "trimmed": true, + "spriteSourceSize": { "x": 3, "y": 7, "w": 103, "h": 78 }, + "sourceSize": { "w": 108, "h": 88 }, + "duration": 100 + }, + { + "filename": "0007.png", + "frame": { "x": 106, "y": 1, "w": 104, "h": 77 }, + "rotated": false, + "trimmed": true, + "spriteSourceSize": { "x": 1, "y": 8, "w": 104, "h": 77 }, + "sourceSize": { "w": 108, "h": 88 }, + "duration": 100 + }, + { + "filename": "0008.png", + "frame": { "x": 212, "y": 1, "w": 102, "h": 78 }, + "rotated": false, + "trimmed": true, + "spriteSourceSize": { "x": 0, "y": 7, "w": 102, "h": 78 }, + "sourceSize": { "w": 108, "h": 88 }, + "duration": 100 + }, + { + "filename": "0009.png", + "frame": { "x": 316, "y": 79, "w": 96, "h": 80 }, + "rotated": false, + "trimmed": true, + "spriteSourceSize": { "x": 1, "y": 5, "w": 96, "h": 80 }, + "sourceSize": { "w": 108, "h": 88 }, + "duration": 100 + }, + { + "filename": "0010.png", + "frame": { "x": 414, "y": 82, "w": 89, "h": 82 }, + "rotated": false, + "trimmed": true, + "spriteSourceSize": { "x": 2, "y": 3, "w": 89, "h": 82 }, + "sourceSize": { "w": 108, "h": 88 }, + "duration": 100 + }, + { + "filename": "0011.png", + "frame": { "x": 505, "y": 165, "w": 82, "h": 83 }, + "rotated": false, + "trimmed": true, + "spriteSourceSize": { "x": 3, "y": 2, "w": 82, "h": 83 }, + "sourceSize": { "w": 108, "h": 88 }, + "duration": 100 + }, + { + "filename": "0012.png", + "frame": { "x": 325, "y": 333, "w": 77, "h": 81 }, + "rotated": false, + "trimmed": true, + "spriteSourceSize": { "x": 5, "y": 4, "w": 77, "h": 81 }, + "sourceSize": { "w": 108, "h": 88 }, + "duration": 100 + }, + { + "filename": "0013.png", + "frame": { "x": 237, "y": 410, "w": 76, "h": 79 }, + "rotated": false, + "trimmed": true, + "spriteSourceSize": { "x": 6, "y": 6, "w": 76, "h": 79 }, + "sourceSize": { "w": 108, "h": 88 }, + "duration": 100 + }, + { + "filename": "0014.png", + "frame": { "x": 483, "y": 333, "w": 77, "h": 80 }, + "rotated": false, + "trimmed": true, + "spriteSourceSize": { "x": 7, "y": 5, "w": 77, "h": 80 }, + "sourceSize": { "w": 108, "h": 88 }, + "duration": 100 + }, + { + "filename": "0015.png", + "frame": { "x": 585, "y": 332, "w": 78, "h": 80 }, + "rotated": false, + "trimmed": true, + "spriteSourceSize": { "x": 8, "y": 5, "w": 78, "h": 80 }, + "sourceSize": { "w": 108, "h": 88 }, + "duration": 100 + }, + { + "filename": "0016.png", + "frame": { "x": 165, "y": 252, "w": 78, "h": 81 }, + "rotated": false, + "trimmed": true, + "spriteSourceSize": { "x": 10, "y": 4, "w": 78, "h": 81 }, + "sourceSize": { "w": 108, "h": 88 }, + "duration": 100 + }, + { + "filename": "0017.png", + "frame": { "x": 260, "y": 244, "w": 80, "h": 81 }, + "rotated": false, + "trimmed": true, + "spriteSourceSize": { "x": 11, "y": 4, "w": 80, "h": 81 }, + "sourceSize": { "w": 108, "h": 88 }, + "duration": 100 + }, + { + "filename": "0018.png", + "frame": { "x": 381, "y": 166, "w": 84, "h": 81 }, + "rotated": false, + "trimmed": true, + "spriteSourceSize": { "x": 9, "y": 4, "w": 84, "h": 81 }, + "sourceSize": { "w": 108, "h": 88 }, + "duration": 100 + }, + { + "filename": "0019.png", + "frame": { "x": 291, "y": 161, "w": 88, "h": 81 }, + "rotated": false, + "trimmed": true, + "spriteSourceSize": { "x": 8, "y": 4, "w": 88, "h": 81 }, + "sourceSize": { "w": 108, "h": 88 }, + "duration": 100 + }, + { + "filename": "0020.png", + "frame": { "x": 106, "y": 80, "w": 94, "h": 80 }, + "rotated": false, + "trimmed": true, + "spriteSourceSize": { "x": 6, "y": 5, "w": 94, "h": 80 }, + "sourceSize": { "w": 108, "h": 88 }, + "duration": 100 + }, + { + "filename": "0021.png", + "frame": { "x": 422, "y": 1, "w": 99, "h": 79 }, + "rotated": false, + "trimmed": true, + "spriteSourceSize": { "x": 5, "y": 6, "w": 99, "h": 79 }, + "sourceSize": { "w": 108, "h": 88 }, + "duration": 100 + }, + { + "filename": "0022.png", + "frame": { "x": 1, "y": 1, "w": 103, "h": 78 }, + "rotated": false, + "trimmed": true, + "spriteSourceSize": { "x": 3, "y": 7, "w": 103, "h": 78 }, + "sourceSize": { "w": 108, "h": 88 }, + "duration": 100 + }, + { + "filename": "0023.png", + "frame": { "x": 106, "y": 1, "w": 104, "h": 77 }, + "rotated": false, + "trimmed": true, + "spriteSourceSize": { "x": 1, "y": 8, "w": 104, "h": 77 }, + "sourceSize": { "w": 108, "h": 88 }, + "duration": 100 + }, + { + "filename": "0024.png", + "frame": { "x": 212, "y": 1, "w": 102, "h": 78 }, + "rotated": false, + "trimmed": true, + "spriteSourceSize": { "x": 0, "y": 7, "w": 102, "h": 78 }, + "sourceSize": { "w": 108, "h": 88 }, + "duration": 100 + }, + { + "filename": "0025.png", + "frame": { "x": 316, "y": 79, "w": 96, "h": 80 }, + "rotated": false, + "trimmed": true, + "spriteSourceSize": { "x": 1, "y": 5, "w": 96, "h": 80 }, + "sourceSize": { "w": 108, "h": 88 }, + "duration": 100 + }, + { + "filename": "0026.png", + "frame": { "x": 414, "y": 82, "w": 89, "h": 82 }, + "rotated": false, + "trimmed": true, + "spriteSourceSize": { "x": 2, "y": 3, "w": 89, "h": 82 }, + "sourceSize": { "w": 108, "h": 88 }, + "duration": 100 + }, + { + "filename": "0027.png", + "frame": { "x": 505, "y": 165, "w": 82, "h": 83 }, + "rotated": false, + "trimmed": true, + "spriteSourceSize": { "x": 3, "y": 2, "w": 82, "h": 83 }, + "sourceSize": { "w": 108, "h": 88 }, + "duration": 100 + }, + { + "filename": "0028.png", + "frame": { "x": 325, "y": 333, "w": 77, "h": 81 }, + "rotated": false, + "trimmed": true, + "spriteSourceSize": { "x": 5, "y": 4, "w": 77, "h": 81 }, + "sourceSize": { "w": 108, "h": 88 }, + "duration": 100 + }, + { + "filename": "0029.png", + "frame": { "x": 237, "y": 410, "w": 76, "h": 79 }, + "rotated": false, + "trimmed": true, + "spriteSourceSize": { "x": 6, "y": 6, "w": 76, "h": 79 }, + "sourceSize": { "w": 108, "h": 88 }, + "duration": 100 + }, + { + "filename": "0030.png", + "frame": { "x": 483, "y": 333, "w": 77, "h": 80 }, + "rotated": false, + "trimmed": true, + "spriteSourceSize": { "x": 7, "y": 5, "w": 77, "h": 80 }, + "sourceSize": { "w": 108, "h": 88 }, + "duration": 100 + }, + { + "filename": "0031.png", + "frame": { "x": 585, "y": 332, "w": 78, "h": 80 }, + "rotated": false, + "trimmed": true, + "spriteSourceSize": { "x": 8, "y": 5, "w": 78, "h": 80 }, + "sourceSize": { "w": 108, "h": 88 }, + "duration": 100 + }, + { + "filename": "0032.png", + "frame": { "x": 165, "y": 252, "w": 78, "h": 81 }, + "rotated": false, + "trimmed": true, + "spriteSourceSize": { "x": 10, "y": 4, "w": 78, "h": 81 }, + "sourceSize": { "w": 108, "h": 88 }, + "duration": 100 + }, + { + "filename": "0033.png", + "frame": { "x": 260, "y": 244, "w": 80, "h": 81 }, + "rotated": false, + "trimmed": true, + "spriteSourceSize": { "x": 11, "y": 4, "w": 80, "h": 81 }, + "sourceSize": { "w": 108, "h": 88 }, + "duration": 100 + }, + { + "filename": "0034.png", + "frame": { "x": 381, "y": 166, "w": 84, "h": 81 }, + "rotated": false, + "trimmed": true, + "spriteSourceSize": { "x": 9, "y": 4, "w": 84, "h": 81 }, + "sourceSize": { "w": 108, "h": 88 }, + "duration": 100 + }, + { + "filename": "0035.png", + "frame": { "x": 291, "y": 161, "w": 88, "h": 81 }, + "rotated": false, + "trimmed": true, + "spriteSourceSize": { "x": 8, "y": 4, "w": 88, "h": 81 }, + "sourceSize": { "w": 108, "h": 88 }, + "duration": 100 + }, + { + "filename": "0036.png", + "frame": { "x": 106, "y": 80, "w": 94, "h": 80 }, + "rotated": false, + "trimmed": true, + "spriteSourceSize": { "x": 6, "y": 5, "w": 94, "h": 80 }, + "sourceSize": { "w": 108, "h": 88 }, + "duration": 100 + }, + { + "filename": "0037.png", + "frame": { "x": 422, "y": 1, "w": 99, "h": 79 }, + "rotated": false, + "trimmed": true, + "spriteSourceSize": { "x": 5, "y": 6, "w": 99, "h": 79 }, + "sourceSize": { "w": 108, "h": 88 }, + "duration": 100 + }, + { + "filename": "0038.png", + "frame": { "x": 1, "y": 1, "w": 103, "h": 78 }, + "rotated": false, + "trimmed": true, + "spriteSourceSize": { "x": 3, "y": 7, "w": 103, "h": 78 }, + "sourceSize": { "w": 108, "h": 88 }, + "duration": 100 + }, + { + "filename": "0039.png", + "frame": { "x": 106, "y": 1, "w": 104, "h": 77 }, + "rotated": false, + "trimmed": true, + "spriteSourceSize": { "x": 1, "y": 8, "w": 104, "h": 77 }, + "sourceSize": { "w": 108, "h": 88 }, + "duration": 100 + }, + { + "filename": "0040.png", + "frame": { "x": 212, "y": 1, "w": 102, "h": 78 }, + "rotated": false, + "trimmed": true, + "spriteSourceSize": { "x": 0, "y": 7, "w": 102, "h": 78 }, + "sourceSize": { "w": 108, "h": 88 }, + "duration": 100 + }, + { + "filename": "0041.png", + "frame": { "x": 316, "y": 79, "w": 96, "h": 80 }, + "rotated": false, + "trimmed": true, + "spriteSourceSize": { "x": 1, "y": 5, "w": 96, "h": 80 }, + "sourceSize": { "w": 108, "h": 88 }, + "duration": 100 + }, + { + "filename": "0042.png", + "frame": { "x": 414, "y": 82, "w": 89, "h": 82 }, + "rotated": false, + "trimmed": true, + "spriteSourceSize": { "x": 2, "y": 3, "w": 89, "h": 82 }, + "sourceSize": { "w": 108, "h": 88 }, + "duration": 100 + }, + { + "filename": "0043.png", + "frame": { "x": 505, "y": 165, "w": 82, "h": 83 }, + "rotated": false, + "trimmed": true, + "spriteSourceSize": { "x": 3, "y": 2, "w": 82, "h": 83 }, + "sourceSize": { "w": 108, "h": 88 }, + "duration": 100 + }, + { + "filename": "0044.png", + "frame": { "x": 325, "y": 333, "w": 77, "h": 81 }, + "rotated": false, + "trimmed": true, + "spriteSourceSize": { "x": 5, "y": 4, "w": 77, "h": 81 }, + "sourceSize": { "w": 108, "h": 88 }, + "duration": 100 + }, + { + "filename": "0045.png", + "frame": { "x": 237, "y": 410, "w": 76, "h": 79 }, + "rotated": false, + "trimmed": true, + "spriteSourceSize": { "x": 6, "y": 6, "w": 76, "h": 79 }, + "sourceSize": { "w": 108, "h": 88 }, + "duration": 100 + }, + { + "filename": "0046.png", + "frame": { "x": 483, "y": 333, "w": 77, "h": 80 }, + "rotated": false, + "trimmed": true, + "spriteSourceSize": { "x": 7, "y": 5, "w": 77, "h": 80 }, + "sourceSize": { "w": 108, "h": 88 }, + "duration": 100 + }, + { + "filename": "0047.png", + "frame": { "x": 585, "y": 332, "w": 78, "h": 80 }, + "rotated": false, + "trimmed": true, + "spriteSourceSize": { "x": 8, "y": 5, "w": 78, "h": 80 }, + "sourceSize": { "w": 108, "h": 88 }, + "duration": 100 + }, + { + "filename": "0048.png", + "frame": { "x": 165, "y": 252, "w": 78, "h": 81 }, + "rotated": false, + "trimmed": true, + "spriteSourceSize": { "x": 10, "y": 4, "w": 78, "h": 81 }, + "sourceSize": { "w": 108, "h": 88 }, + "duration": 100 + }, + { + "filename": "0049.png", + "frame": { "x": 260, "y": 244, "w": 80, "h": 81 }, + "rotated": false, + "trimmed": true, + "spriteSourceSize": { "x": 11, "y": 4, "w": 80, "h": 81 }, + "sourceSize": { "w": 108, "h": 88 }, + "duration": 100 + }, + { + "filename": "0050.png", + "frame": { "x": 381, "y": 166, "w": 84, "h": 81 }, + "rotated": false, + "trimmed": true, + "spriteSourceSize": { "x": 9, "y": 4, "w": 84, "h": 81 }, + "sourceSize": { "w": 108, "h": 88 }, + "duration": 100 + }, + { + "filename": "0051.png", + "frame": { "x": 291, "y": 161, "w": 88, "h": 81 }, + "rotated": false, + "trimmed": true, + "spriteSourceSize": { "x": 8, "y": 4, "w": 88, "h": 81 }, + "sourceSize": { "w": 108, "h": 88 }, + "duration": 100 + }, + { + "filename": "0052.png", + "frame": { "x": 106, "y": 80, "w": 94, "h": 80 }, + "rotated": false, + "trimmed": true, + "spriteSourceSize": { "x": 6, "y": 5, "w": 94, "h": 80 }, + "sourceSize": { "w": 108, "h": 88 }, + "duration": 100 + }, + { + "filename": "0053.png", + "frame": { "x": 422, "y": 1, "w": 99, "h": 79 }, + "rotated": false, + "trimmed": true, + "spriteSourceSize": { "x": 5, "y": 6, "w": 99, "h": 79 }, + "sourceSize": { "w": 108, "h": 88 }, + "duration": 100 + }, + { + "filename": "0054.png", + "frame": { "x": 1, "y": 1, "w": 103, "h": 78 }, + "rotated": false, + "trimmed": true, + "spriteSourceSize": { "x": 3, "y": 7, "w": 103, "h": 78 }, + "sourceSize": { "w": 108, "h": 88 }, + "duration": 100 + }, + { + "filename": "0055.png", + "frame": { "x": 106, "y": 1, "w": 104, "h": 77 }, + "rotated": false, + "trimmed": true, + "spriteSourceSize": { "x": 1, "y": 8, "w": 104, "h": 77 }, + "sourceSize": { "w": 108, "h": 88 }, + "duration": 100 + }, + { + "filename": "0056.png", + "frame": { "x": 212, "y": 1, "w": 102, "h": 78 }, + "rotated": false, + "trimmed": true, + "spriteSourceSize": { "x": 0, "y": 7, "w": 102, "h": 78 }, + "sourceSize": { "w": 108, "h": 88 }, + "duration": 100 + }, + { + "filename": "0057.png", + "frame": { "x": 316, "y": 79, "w": 96, "h": 80 }, + "rotated": false, + "trimmed": true, + "spriteSourceSize": { "x": 1, "y": 5, "w": 96, "h": 80 }, + "sourceSize": { "w": 108, "h": 88 }, + "duration": 100 + }, + { + "filename": "0058.png", + "frame": { "x": 414, "y": 82, "w": 89, "h": 82 }, + "rotated": false, + "trimmed": true, + "spriteSourceSize": { "x": 2, "y": 3, "w": 89, "h": 82 }, + "sourceSize": { "w": 108, "h": 88 }, + "duration": 100 + }, + { + "filename": "0059.png", + "frame": { "x": 505, "y": 165, "w": 82, "h": 83 }, + "rotated": false, + "trimmed": true, + "spriteSourceSize": { "x": 3, "y": 2, "w": 82, "h": 83 }, + "sourceSize": { "w": 108, "h": 88 }, + "duration": 100 + }, + { + "filename": "0060.png", + "frame": { "x": 325, "y": 333, "w": 77, "h": 81 }, + "rotated": false, + "trimmed": true, + "spriteSourceSize": { "x": 5, "y": 4, "w": 77, "h": 81 }, + "sourceSize": { "w": 108, "h": 88 }, + "duration": 100 + }, + { + "filename": "0061.png", + "frame": { "x": 237, "y": 410, "w": 76, "h": 79 }, + "rotated": false, + "trimmed": true, + "spriteSourceSize": { "x": 6, "y": 6, "w": 76, "h": 79 }, + "sourceSize": { "w": 108, "h": 88 }, + "duration": 100 + }, + { + "filename": "0062.png", + "frame": { "x": 483, "y": 333, "w": 77, "h": 80 }, + "rotated": false, + "trimmed": true, + "spriteSourceSize": { "x": 7, "y": 5, "w": 77, "h": 80 }, + "sourceSize": { "w": 108, "h": 88 }, + "duration": 100 + }, + { + "filename": "0063.png", + "frame": { "x": 585, "y": 332, "w": 78, "h": 80 }, + "rotated": false, + "trimmed": true, + "spriteSourceSize": { "x": 8, "y": 5, "w": 78, "h": 80 }, + "sourceSize": { "w": 108, "h": 88 }, + "duration": 100 + }, + { + "filename": "0064.png", + "frame": { "x": 165, "y": 252, "w": 78, "h": 81 }, + "rotated": false, + "trimmed": true, + "spriteSourceSize": { "x": 10, "y": 4, "w": 78, "h": 81 }, + "sourceSize": { "w": 108, "h": 88 }, + "duration": 100 + }, + { + "filename": "0065.png", + "frame": { "x": 83, "y": 246, "w": 80, "h": 81 }, + "rotated": false, + "trimmed": true, + "spriteSourceSize": { "x": 11, "y": 4, "w": 80, "h": 81 }, + "sourceSize": { "w": 108, "h": 88 }, + "duration": 100 + }, + { + "filename": "0066.png", + "frame": { "x": 589, "y": 166, "w": 83, "h": 81 }, + "rotated": false, + "trimmed": true, + "spriteSourceSize": { "x": 10, "y": 4, "w": 83, "h": 81 }, + "sourceSize": { "w": 108, "h": 88 }, + "duration": 100 + }, + { + "filename": "0067.png", + "frame": { "x": 1, "y": 162, "w": 89, "h": 80 }, + "rotated": false, + "trimmed": true, + "spriteSourceSize": { "x": 8, "y": 5, "w": 89, "h": 80 }, + "sourceSize": { "w": 108, "h": 88 }, + "duration": 100 + }, + { + "filename": "0068.png", + "frame": { "x": 1, "y": 81, "w": 95, "h": 79 }, + "rotated": false, + "trimmed": true, + "spriteSourceSize": { "x": 7, "y": 6, "w": 95, "h": 79 }, + "sourceSize": { "w": 108, "h": 88 }, + "duration": 100 + }, + { + "filename": "0069.png", + "frame": { "x": 624, "y": 1, "w": 100, "h": 78 }, + "rotated": false, + "trimmed": true, + "spriteSourceSize": { "x": 5, "y": 7, "w": 100, "h": 78 }, + "sourceSize": { "w": 108, "h": 88 }, + "duration": 100 + }, + { + "filename": "0070.png", + "frame": { "x": 316, "y": 1, "w": 104, "h": 76 }, + "rotated": false, + "trimmed": true, + "spriteSourceSize": { "x": 4, "y": 9, "w": 104, "h": 76 }, + "sourceSize": { "w": 108, "h": 88 }, + "duration": 100 + }, + { + "filename": "0071.png", + "frame": { "x": 523, "y": 1, "w": 99, "h": 79 }, + "rotated": false, + "trimmed": true, + "spriteSourceSize": { "x": 9, "y": 6, "w": 99, "h": 79 }, + "sourceSize": { "w": 108, "h": 88 }, + "duration": 100 + }, + { + "filename": "0072.png", + "frame": { "x": 505, "y": 82, "w": 90, "h": 81 }, + "rotated": false, + "trimmed": true, + "spriteSourceSize": { "x": 14, "y": 4, "w": 90, "h": 81 }, + "sourceSize": { "w": 108, "h": 88 }, + "duration": 100 + }, + { + "filename": "0073.png", + "frame": { "x": 624, "y": 81, "w": 88, "h": 83 }, + "rotated": false, + "trimmed": true, + "spriteSourceSize": { "x": 11, "y": 2, "w": 88, "h": 83 }, + "sourceSize": { "w": 108, "h": 88 }, + "duration": 100 + }, + { + "filename": "0074.png", + "frame": { "x": 202, "y": 81, "w": 87, "h": 85 }, + "rotated": false, + "trimmed": true, + "spriteSourceSize": { "x": 9, "y": 0, "w": 87, "h": 85 }, + "sourceSize": { "w": 108, "h": 88 }, + "duration": 100 + }, + { + "filename": "0075.png", + "frame": { "x": 92, "y": 162, "w": 84, "h": 82 }, + "rotated": false, + "trimmed": true, + "spriteSourceSize": { "x": 8, "y": 3, "w": 84, "h": 82 }, + "sourceSize": { "w": 108, "h": 88 }, + "duration": 100 + }, + { + "filename": "0076.png", + "frame": { "x": 159, "y": 335, "w": 76, "h": 80 }, + "rotated": false, + "trimmed": true, + "spriteSourceSize": { "x": 5, "y": 5, "w": 76, "h": 80 }, + "sourceSize": { "w": 108, "h": 88 }, + "duration": 100 + }, + { + "filename": "0077.png", + "frame": { "x": 562, "y": 414, "w": 75, "h": 74 }, + "rotated": false, + "trimmed": true, + "spriteSourceSize": { "x": 5, "y": 14, "w": 75, "h": 74 }, + "sourceSize": { "w": 108, "h": 88 }, + "duration": 100 + }, + { + "filename": "0078.png", + "frame": { "x": 1, "y": 412, "w": 75, "h": 80 }, + "rotated": false, + "trimmed": true, + "spriteSourceSize": { "x": 5, "y": 7, "w": 75, "h": 80 }, + "sourceSize": { "w": 108, "h": 88 }, + "duration": 100 + }, + { + "filename": "0079.png", + "frame": { "x": 78, "y": 413, "w": 76, "h": 77 }, + "rotated": false, + "trimmed": true, + "spriteSourceSize": { "x": 5, "y": 9, "w": 76, "h": 77 }, + "sourceSize": { "w": 108, "h": 88 }, + "duration": 100 + }, + { + "filename": "0080.png", + "frame": { "x": 404, "y": 333, "w": 77, "h": 80 }, + "rotated": false, + "trimmed": true, + "spriteSourceSize": { "x": 5, "y": 6, "w": 77, "h": 80 }, + "sourceSize": { "w": 108, "h": 88 }, + "duration": 100 + }, + { + "filename": "0081.png", + "frame": { "x": 245, "y": 327, "w": 78, "h": 81 }, + "rotated": false, + "trimmed": true, + "spriteSourceSize": { "x": 5, "y": 5, "w": 78, "h": 81 }, + "sourceSize": { "w": 108, "h": 88 }, + "duration": 100 + }, + { + "filename": "0082.png", + "frame": { "x": 178, "y": 168, "w": 80, "h": 82 }, + "rotated": false, + "trimmed": true, + "spriteSourceSize": { "x": 5, "y": 4, "w": 80, "h": 82 }, + "sourceSize": { "w": 108, "h": 88 }, + "duration": 100 + }, + { + "filename": "0083.png", + "frame": { "x": 1, "y": 244, "w": 80, "h": 82 }, + "rotated": false, + "trimmed": true, + "spriteSourceSize": { "x": 6, "y": 3, "w": 80, "h": 82 }, + "sourceSize": { "w": 108, "h": 88 }, + "duration": 100 + }, + { + "filename": "0084.png", + "frame": { "x": 342, "y": 249, "w": 79, "h": 82 }, + "rotated": false, + "trimmed": true, + "spriteSourceSize": { "x": 7, "y": 3, "w": 79, "h": 82 }, + "sourceSize": { "w": 108, "h": 88 }, + "duration": 100 + }, + { + "filename": "0085.png", + "frame": { "x": 1, "y": 328, "w": 77, "h": 82 }, + "rotated": false, + "trimmed": true, + "spriteSourceSize": { "x": 9, "y": 3, "w": 77, "h": 82 }, + "sourceSize": { "w": 108, "h": 88 }, + "duration": 100 + }, + { + "filename": "0086.png", + "frame": { "x": 80, "y": 329, "w": 77, "h": 82 }, + "rotated": false, + "trimmed": true, + "spriteSourceSize": { "x": 10, "y": 3, "w": 77, "h": 82 }, + "sourceSize": { "w": 108, "h": 88 }, + "duration": 100 + }, + { + "filename": "0087.png", + "frame": { "x": 423, "y": 249, "w": 79, "h": 82 }, + "rotated": false, + "trimmed": true, + "spriteSourceSize": { "x": 10, "y": 3, "w": 79, "h": 82 }, + "sourceSize": { "w": 108, "h": 88 }, + "duration": 100 + }, + { + "filename": "0088.png", + "frame": { "x": 589, "y": 249, "w": 79, "h": 81 }, + "rotated": false, + "trimmed": true, + "spriteSourceSize": { "x": 10, "y": 4, "w": 79, "h": 81 }, + "sourceSize": { "w": 108, "h": 88 }, + "duration": 100 + }, + { + "filename": "0089.png", + "frame": { "x": 504, "y": 250, "w": 79, "h": 81 }, + "rotated": false, + "trimmed": true, + "spriteSourceSize": { "x": 11, "y": 4, "w": 79, "h": 81 }, + "sourceSize": { "w": 108, "h": 88 }, + "duration": 100 + } + ], + "meta": { + "app": "https://www.aseprite.org/", + "version": "1.3.13-x64", + "image": "784.png", + "format": "I8", + "size": { "w": 725, "h": 493 }, + "scale": "1" + } } diff --git a/public/images/pokemon/784.png b/public/images/pokemon/784.png index 7bca9f0794a..6d37807b8a0 100644 Binary files a/public/images/pokemon/784.png and b/public/images/pokemon/784.png differ diff --git a/public/images/pokemon/840.png b/public/images/pokemon/840.png index f0d1f83bd93..1a263e3ee19 100644 Binary files a/public/images/pokemon/840.png and b/public/images/pokemon/840.png differ diff --git a/public/images/pokemon/841-gigantamax.png b/public/images/pokemon/841-gigantamax.png index 69c53677722..07121b9c12f 100644 Binary files a/public/images/pokemon/841-gigantamax.png and b/public/images/pokemon/841-gigantamax.png differ diff --git a/public/images/pokemon/841.png b/public/images/pokemon/841.png index 5e665960df4..e7329f2eb97 100644 Binary files a/public/images/pokemon/841.png and b/public/images/pokemon/841.png differ diff --git a/public/images/pokemon/842-gigantamax.png b/public/images/pokemon/842-gigantamax.png index 69c53677722..aee95b7b881 100644 Binary files a/public/images/pokemon/842-gigantamax.png and b/public/images/pokemon/842-gigantamax.png differ diff --git a/public/images/pokemon/842.png b/public/images/pokemon/842.png index 468ca88562e..4e3fec8ef1b 100644 Binary files a/public/images/pokemon/842.png and b/public/images/pokemon/842.png differ diff --git a/public/images/pokemon/871.png b/public/images/pokemon/871.png index bdcedb9d90a..af53b0275e6 100644 Binary files a/public/images/pokemon/871.png and b/public/images/pokemon/871.png differ diff --git a/public/images/pokemon/back/1011.png b/public/images/pokemon/back/1011.png index 3e23fc1ebe3..ab3cc75482d 100644 Binary files a/public/images/pokemon/back/1011.png and b/public/images/pokemon/back/1011.png differ diff --git a/public/images/pokemon/back/1019.png b/public/images/pokemon/back/1019.png index ece50558c8c..d80a0930192 100644 Binary files a/public/images/pokemon/back/1019.png and b/public/images/pokemon/back/1019.png differ diff --git a/public/images/pokemon/back/143-gigantamax.png b/public/images/pokemon/back/143-gigantamax.png index 3ebb6f16483..cd251a515e6 100644 Binary files a/public/images/pokemon/back/143-gigantamax.png and b/public/images/pokemon/back/143-gigantamax.png differ diff --git a/public/images/pokemon/back/2038.png b/public/images/pokemon/back/2038.png index 68a9cfb2d6e..957b2d31714 100644 Binary files a/public/images/pokemon/back/2038.png and b/public/images/pokemon/back/2038.png differ diff --git a/public/images/pokemon/back/332.png b/public/images/pokemon/back/332.png index a6940fbaba6..a432b1af4b2 100644 Binary files a/public/images/pokemon/back/332.png and b/public/images/pokemon/back/332.png differ diff --git a/public/images/pokemon/back/34.png b/public/images/pokemon/back/34.png index 40827a68879..bb0ad630d1a 100644 Binary files a/public/images/pokemon/back/34.png and b/public/images/pokemon/back/34.png differ diff --git a/public/images/pokemon/back/396.png b/public/images/pokemon/back/396.png index 141103a25ad..843c9dca1e4 100644 Binary files a/public/images/pokemon/back/396.png and b/public/images/pokemon/back/396.png differ diff --git a/public/images/pokemon/back/397.png b/public/images/pokemon/back/397.png index 96a5d4f161a..236fc18ea44 100644 Binary files a/public/images/pokemon/back/397.png and b/public/images/pokemon/back/397.png differ diff --git a/public/images/pokemon/back/398.png b/public/images/pokemon/back/398.png index 57fbb92e12f..63ed37bfd15 100644 Binary files a/public/images/pokemon/back/398.png and b/public/images/pokemon/back/398.png differ diff --git a/public/images/pokemon/back/403.png b/public/images/pokemon/back/403.png index c8f49d37d96..303c4b57cbd 100644 Binary files a/public/images/pokemon/back/403.png and b/public/images/pokemon/back/403.png differ diff --git a/public/images/pokemon/back/404.png b/public/images/pokemon/back/404.png index eb1a04e4d1b..6592f80c58d 100644 Binary files a/public/images/pokemon/back/404.png and b/public/images/pokemon/back/404.png differ diff --git a/public/images/pokemon/back/405.png b/public/images/pokemon/back/405.png index b6c6f12a0fb..0afe5b3036d 100644 Binary files a/public/images/pokemon/back/405.png and b/public/images/pokemon/back/405.png differ diff --git a/public/images/pokemon/back/498.png b/public/images/pokemon/back/498.png index 8ea4900e8f3..c14fb4561e7 100644 Binary files a/public/images/pokemon/back/498.png and b/public/images/pokemon/back/498.png differ diff --git a/public/images/pokemon/back/500.png b/public/images/pokemon/back/500.png index de1b556bede..082f0460ff2 100644 Binary files a/public/images/pokemon/back/500.png and b/public/images/pokemon/back/500.png differ diff --git a/public/images/pokemon/back/522.png b/public/images/pokemon/back/522.png index 54c706d1455..ff5bbafb915 100644 Binary files a/public/images/pokemon/back/522.png and b/public/images/pokemon/back/522.png differ diff --git a/public/images/pokemon/back/523.png b/public/images/pokemon/back/523.png index 6f25fd9cc74..023afbd1008 100644 Binary files a/public/images/pokemon/back/523.png and b/public/images/pokemon/back/523.png differ diff --git a/public/images/pokemon/back/535.png b/public/images/pokemon/back/535.png index ac477600b72..2556d646aa6 100644 Binary files a/public/images/pokemon/back/535.png and b/public/images/pokemon/back/535.png differ diff --git a/public/images/pokemon/back/536.png b/public/images/pokemon/back/536.png index 32e48b10c85..393006e83b9 100644 Binary files a/public/images/pokemon/back/536.png and b/public/images/pokemon/back/536.png differ diff --git a/public/images/pokemon/back/554.png b/public/images/pokemon/back/554.png index 4ed9c06f0ee..f6423a5e66e 100644 Binary files a/public/images/pokemon/back/554.png and b/public/images/pokemon/back/554.png differ diff --git a/public/images/pokemon/back/555-zen.png b/public/images/pokemon/back/555-zen.png index 48ef6beb7c4..8fe0e672a3a 100644 Binary files a/public/images/pokemon/back/555-zen.png and b/public/images/pokemon/back/555-zen.png differ diff --git a/public/images/pokemon/back/555.png b/public/images/pokemon/back/555.png index 8f1a709c5f4..77c04139079 100644 Binary files a/public/images/pokemon/back/555.png and b/public/images/pokemon/back/555.png differ diff --git a/public/images/pokemon/back/567.png b/public/images/pokemon/back/567.png index ca9432a3e71..ec4197fbb92 100644 Binary files a/public/images/pokemon/back/567.png and b/public/images/pokemon/back/567.png differ diff --git a/public/images/pokemon/back/572.png b/public/images/pokemon/back/572.png index d7ddaf62136..4d081564b50 100644 Binary files a/public/images/pokemon/back/572.png and b/public/images/pokemon/back/572.png differ diff --git a/public/images/pokemon/back/573.png b/public/images/pokemon/back/573.png index 03a0093d70d..ef4a8bc14ab 100644 Binary files a/public/images/pokemon/back/573.png and b/public/images/pokemon/back/573.png differ diff --git a/public/images/pokemon/back/626.png b/public/images/pokemon/back/626.png index 05b6514878d..a3098a1c1d3 100644 Binary files a/public/images/pokemon/back/626.png and b/public/images/pokemon/back/626.png differ diff --git a/public/images/pokemon/back/643.png b/public/images/pokemon/back/643.png index 30b32e7902d..597b4bcb189 100644 Binary files a/public/images/pokemon/back/643.png and b/public/images/pokemon/back/643.png differ diff --git a/public/images/pokemon/back/644.png b/public/images/pokemon/back/644.png index ab17e62c2e6..39a4d3499bd 100644 Binary files a/public/images/pokemon/back/644.png and b/public/images/pokemon/back/644.png differ diff --git a/public/images/pokemon/back/645-incarnate.png b/public/images/pokemon/back/645-incarnate.png index 8be36f692f9..d47e03c718b 100644 Binary files a/public/images/pokemon/back/645-incarnate.png and b/public/images/pokemon/back/645-incarnate.png differ diff --git a/public/images/pokemon/back/645-therian.png b/public/images/pokemon/back/645-therian.png index 2e5e6e03e05..127a759f89a 100644 Binary files a/public/images/pokemon/back/645-therian.png and b/public/images/pokemon/back/645-therian.png differ diff --git a/public/images/pokemon/back/646-black.png b/public/images/pokemon/back/646-black.png index aeeb90f147e..7783e4c8cd5 100644 Binary files a/public/images/pokemon/back/646-black.png and b/public/images/pokemon/back/646-black.png differ diff --git a/public/images/pokemon/back/646-white.png b/public/images/pokemon/back/646-white.png index f5db6867e94..1dc659ed6ac 100644 Binary files a/public/images/pokemon/back/646-white.png and b/public/images/pokemon/back/646-white.png differ diff --git a/public/images/pokemon/back/646.png b/public/images/pokemon/back/646.png index 3a36013adec..6ca7f51f01d 100644 Binary files a/public/images/pokemon/back/646.png and b/public/images/pokemon/back/646.png differ diff --git a/public/images/pokemon/back/692.json b/public/images/pokemon/back/692.json index bce3c7e1b49..e83252f8486 100644 --- a/public/images/pokemon/back/692.json +++ b/public/images/pokemon/back/692.json @@ -1,41 +1,20 @@ -{ - "textures": [ - { - "image": "692.png", - "format": "RGBA8888", - "size": { - "w": 56, - "h": 56 - }, - "scale": 1, - "frames": [ - { - "filename": "0001.png", - "rotated": false, - "trimmed": false, - "sourceSize": { - "w": 56, - "h": 35 - }, - "spriteSourceSize": { - "x": 0, - "y": 0, - "w": 56, - "h": 35 - }, - "frame": { - "x": 0, - "y": 0, - "w": 56, - "h": 35 - } - } - ] - } - ], - "meta": { - "app": "https://www.codeandweb.com/texturepacker", - "version": "3.0", - "smartupdate": "$TexturePacker:SmartUpdate:0a35aa3345ff8a4432ecda2feb4d64c0:d3698e869432ff55b6d6cefbe02ef068:2880def858c84cd859bedf13b0b49a33$" - } +{ "frames": [ + { + "filename": "0001.png", + "frame": { "x": 121, "y": 36, "w": 56, "h": 35 }, + "rotated": false, + "trimmed": true, + "spriteSourceSize": { "x": 4, "y": 0, "w": 56, "h": 35 }, + "sourceSize": { "w": 63, "h": 35 }, + "duration": 50 + } + ], + "meta": { + "app": "https://www.aseprite.org/", + "version": "1.3.12-x64", + "image": "692.png", + "format": "I8", + "size": { "w": 181, "h": 106 }, + "scale": "1" + } } diff --git a/public/images/pokemon/back/692.png b/public/images/pokemon/back/692.png index c61c905353f..33059d53c05 100644 Binary files a/public/images/pokemon/back/692.png and b/public/images/pokemon/back/692.png differ diff --git a/public/images/pokemon/back/746-school.png b/public/images/pokemon/back/746-school.png index 55b8f33929b..1884123d82e 100644 Binary files a/public/images/pokemon/back/746-school.png and b/public/images/pokemon/back/746-school.png differ diff --git a/public/images/pokemon/back/746.png b/public/images/pokemon/back/746.png index 3b1b4438f15..cb424c9fbe1 100644 Binary files a/public/images/pokemon/back/746.png and b/public/images/pokemon/back/746.png differ diff --git a/public/images/pokemon/back/782.json b/public/images/pokemon/back/782.json index 64036da7750..6cefb281b7b 100644 --- a/public/images/pokemon/back/782.json +++ b/public/images/pokemon/back/782.json @@ -1,41 +1,1010 @@ -{ - "textures": [ - { - "image": "782.png", - "format": "RGBA8888", - "size": { - "w": 50, - "h": 50 - }, - "scale": 1, - "frames": [ - { - "filename": "0001.png", - "rotated": false, - "trimmed": false, - "sourceSize": { - "w": 46, - "h": 50 - }, - "spriteSourceSize": { - "x": 0, - "y": 0, - "w": 46, - "h": 50 - }, - "frame": { - "x": 0, - "y": 0, - "w": 46, - "h": 50 - } - } - ] - } - ], - "meta": { - "app": "https://www.codeandweb.com/texturepacker", - "version": "3.0", - "smartupdate": "$TexturePacker:SmartUpdate:03129fcf647a44654eebf65e3131032f:56b06453c435e6f8d3648a6836f20d5d:d07862436676aa228a148ee1f1d82a8f$" - } +{ "frames": [ + { + "filename": "0001.png", + "frame": { "x": 50, "y": 111, "w": 46, "h": 50 }, + "rotated": false, + "trimmed": true, + "spriteSourceSize": { "x": 23, "y": 24, "w": 46, "h": 50 }, + "sourceSize": { "w": 96, "h": 76 }, + "duration": 50 + }, + { + "filename": "0002.png", + "frame": { "x": 50, "y": 111, "w": 46, "h": 50 }, + "rotated": false, + "trimmed": true, + "spriteSourceSize": { "x": 23, "y": 24, "w": 46, "h": 50 }, + "sourceSize": { "w": 96, "h": 76 }, + "duration": 50 + }, + { + "filename": "0003.png", + "frame": { "x": 99, "y": 111, "w": 46, "h": 50 }, + "rotated": false, + "trimmed": true, + "spriteSourceSize": { "x": 23, "y": 24, "w": 46, "h": 50 }, + "sourceSize": { "w": 96, "h": 76 }, + "duration": 50 + }, + { + "filename": "0004.png", + "frame": { "x": 99, "y": 111, "w": 46, "h": 50 }, + "rotated": false, + "trimmed": true, + "spriteSourceSize": { "x": 23, "y": 24, "w": 46, "h": 50 }, + "sourceSize": { "w": 96, "h": 76 }, + "duration": 50 + }, + { + "filename": "0005.png", + "frame": { "x": 148, "y": 111, "w": 46, "h": 50 }, + "rotated": false, + "trimmed": true, + "spriteSourceSize": { "x": 24, "y": 24, "w": 46, "h": 50 }, + "sourceSize": { "w": 96, "h": 76 }, + "duration": 50 + }, + { + "filename": "0006.png", + "frame": { "x": 148, "y": 111, "w": 46, "h": 50 }, + "rotated": false, + "trimmed": true, + "spriteSourceSize": { "x": 24, "y": 24, "w": 46, "h": 50 }, + "sourceSize": { "w": 96, "h": 76 }, + "duration": 50 + }, + { + "filename": "0007.png", + "frame": { "x": 195, "y": 164, "w": 45, "h": 49 }, + "rotated": false, + "trimmed": true, + "spriteSourceSize": { "x": 25, "y": 25, "w": 45, "h": 49 }, + "sourceSize": { "w": 96, "h": 76 }, + "duration": 50 + }, + { + "filename": "0008.png", + "frame": { "x": 195, "y": 164, "w": 45, "h": 49 }, + "rotated": false, + "trimmed": true, + "spriteSourceSize": { "x": 25, "y": 25, "w": 45, "h": 49 }, + "sourceSize": { "w": 96, "h": 76 }, + "duration": 50 + }, + { + "filename": "0009.png", + "frame": { "x": 146, "y": 164, "w": 46, "h": 48 }, + "rotated": false, + "trimmed": true, + "spriteSourceSize": { "x": 25, "y": 26, "w": 46, "h": 48 }, + "sourceSize": { "w": 96, "h": 76 }, + "duration": 50 + }, + { + "filename": "0010.png", + "frame": { "x": 146, "y": 164, "w": 46, "h": 48 }, + "rotated": false, + "trimmed": true, + "spriteSourceSize": { "x": 25, "y": 26, "w": 46, "h": 48 }, + "sourceSize": { "w": 96, "h": 76 }, + "duration": 50 + }, + { + "filename": "0011.png", + "frame": { "x": 1, "y": 166, "w": 45, "h": 49 }, + "rotated": false, + "trimmed": true, + "spriteSourceSize": { "x": 25, "y": 25, "w": 45, "h": 49 }, + "sourceSize": { "w": 96, "h": 76 }, + "duration": 50 + }, + { + "filename": "0012.png", + "frame": { "x": 1, "y": 166, "w": 45, "h": 49 }, + "rotated": false, + "trimmed": true, + "spriteSourceSize": { "x": 25, "y": 25, "w": 45, "h": 49 }, + "sourceSize": { "w": 96, "h": 76 }, + "duration": 50 + }, + { + "filename": "0013.png", + "frame": { "x": 50, "y": 164, "w": 45, "h": 50 }, + "rotated": false, + "trimmed": true, + "spriteSourceSize": { "x": 25, "y": 24, "w": 45, "h": 50 }, + "sourceSize": { "w": 96, "h": 76 }, + "duration": 50 + }, + { + "filename": "0014.png", + "frame": { "x": 50, "y": 164, "w": 45, "h": 50 }, + "rotated": false, + "trimmed": true, + "spriteSourceSize": { "x": 25, "y": 24, "w": 45, "h": 50 }, + "sourceSize": { "w": 96, "h": 76 }, + "duration": 50 + }, + { + "filename": "0015.png", + "frame": { "x": 98, "y": 164, "w": 45, "h": 50 }, + "rotated": false, + "trimmed": true, + "spriteSourceSize": { "x": 24, "y": 24, "w": 45, "h": 50 }, + "sourceSize": { "w": 96, "h": 76 }, + "duration": 50 + }, + { + "filename": "0016.png", + "frame": { "x": 98, "y": 164, "w": 45, "h": 50 }, + "rotated": false, + "trimmed": true, + "spriteSourceSize": { "x": 24, "y": 24, "w": 45, "h": 50 }, + "sourceSize": { "w": 96, "h": 76 }, + "duration": 50 + }, + { + "filename": "0017.png", + "frame": { "x": 50, "y": 111, "w": 46, "h": 50 }, + "rotated": false, + "trimmed": true, + "spriteSourceSize": { "x": 23, "y": 24, "w": 46, "h": 50 }, + "sourceSize": { "w": 96, "h": 76 }, + "duration": 50 + }, + { + "filename": "0018.png", + "frame": { "x": 50, "y": 111, "w": 46, "h": 50 }, + "rotated": false, + "trimmed": true, + "spriteSourceSize": { "x": 23, "y": 24, "w": 46, "h": 50 }, + "sourceSize": { "w": 96, "h": 76 }, + "duration": 50 + }, + { + "filename": "0019.png", + "frame": { "x": 99, "y": 111, "w": 46, "h": 50 }, + "rotated": false, + "trimmed": true, + "spriteSourceSize": { "x": 23, "y": 24, "w": 46, "h": 50 }, + "sourceSize": { "w": 96, "h": 76 }, + "duration": 50 + }, + { + "filename": "0020.png", + "frame": { "x": 99, "y": 111, "w": 46, "h": 50 }, + "rotated": false, + "trimmed": true, + "spriteSourceSize": { "x": 23, "y": 24, "w": 46, "h": 50 }, + "sourceSize": { "w": 96, "h": 76 }, + "duration": 50 + }, + { + "filename": "0021.png", + "frame": { "x": 148, "y": 111, "w": 46, "h": 50 }, + "rotated": false, + "trimmed": true, + "spriteSourceSize": { "x": 24, "y": 24, "w": 46, "h": 50 }, + "sourceSize": { "w": 96, "h": 76 }, + "duration": 50 + }, + { + "filename": "0022.png", + "frame": { "x": 148, "y": 111, "w": 46, "h": 50 }, + "rotated": false, + "trimmed": true, + "spriteSourceSize": { "x": 24, "y": 24, "w": 46, "h": 50 }, + "sourceSize": { "w": 96, "h": 76 }, + "duration": 50 + }, + { + "filename": "0023.png", + "frame": { "x": 195, "y": 164, "w": 45, "h": 49 }, + "rotated": false, + "trimmed": true, + "spriteSourceSize": { "x": 25, "y": 25, "w": 45, "h": 49 }, + "sourceSize": { "w": 96, "h": 76 }, + "duration": 50 + }, + { + "filename": "0024.png", + "frame": { "x": 195, "y": 164, "w": 45, "h": 49 }, + "rotated": false, + "trimmed": true, + "spriteSourceSize": { "x": 25, "y": 25, "w": 45, "h": 49 }, + "sourceSize": { "w": 96, "h": 76 }, + "duration": 50 + }, + { + "filename": "0025.png", + "frame": { "x": 146, "y": 164, "w": 46, "h": 48 }, + "rotated": false, + "trimmed": true, + "spriteSourceSize": { "x": 25, "y": 26, "w": 46, "h": 48 }, + "sourceSize": { "w": 96, "h": 76 }, + "duration": 50 + }, + { + "filename": "0026.png", + "frame": { "x": 146, "y": 164, "w": 46, "h": 48 }, + "rotated": false, + "trimmed": true, + "spriteSourceSize": { "x": 25, "y": 26, "w": 46, "h": 48 }, + "sourceSize": { "w": 96, "h": 76 }, + "duration": 50 + }, + { + "filename": "0027.png", + "frame": { "x": 1, "y": 166, "w": 45, "h": 49 }, + "rotated": false, + "trimmed": true, + "spriteSourceSize": { "x": 25, "y": 25, "w": 45, "h": 49 }, + "sourceSize": { "w": 96, "h": 76 }, + "duration": 50 + }, + { + "filename": "0028.png", + "frame": { "x": 1, "y": 166, "w": 45, "h": 49 }, + "rotated": false, + "trimmed": true, + "spriteSourceSize": { "x": 25, "y": 25, "w": 45, "h": 49 }, + "sourceSize": { "w": 96, "h": 76 }, + "duration": 50 + }, + { + "filename": "0029.png", + "frame": { "x": 50, "y": 164, "w": 45, "h": 50 }, + "rotated": false, + "trimmed": true, + "spriteSourceSize": { "x": 25, "y": 24, "w": 45, "h": 50 }, + "sourceSize": { "w": 96, "h": 76 }, + "duration": 50 + }, + { + "filename": "0030.png", + "frame": { "x": 50, "y": 164, "w": 45, "h": 50 }, + "rotated": false, + "trimmed": true, + "spriteSourceSize": { "x": 25, "y": 24, "w": 45, "h": 50 }, + "sourceSize": { "w": 96, "h": 76 }, + "duration": 50 + }, + { + "filename": "0031.png", + "frame": { "x": 98, "y": 164, "w": 45, "h": 50 }, + "rotated": false, + "trimmed": true, + "spriteSourceSize": { "x": 24, "y": 24, "w": 45, "h": 50 }, + "sourceSize": { "w": 96, "h": 76 }, + "duration": 50 + }, + { + "filename": "0032.png", + "frame": { "x": 98, "y": 164, "w": 45, "h": 50 }, + "rotated": false, + "trimmed": true, + "spriteSourceSize": { "x": 24, "y": 24, "w": 45, "h": 50 }, + "sourceSize": { "w": 96, "h": 76 }, + "duration": 50 + }, + { + "filename": "0033.png", + "frame": { "x": 50, "y": 111, "w": 46, "h": 50 }, + "rotated": false, + "trimmed": true, + "spriteSourceSize": { "x": 23, "y": 24, "w": 46, "h": 50 }, + "sourceSize": { "w": 96, "h": 76 }, + "duration": 50 + }, + { + "filename": "0034.png", + "frame": { "x": 50, "y": 111, "w": 46, "h": 50 }, + "rotated": false, + "trimmed": true, + "spriteSourceSize": { "x": 23, "y": 24, "w": 46, "h": 50 }, + "sourceSize": { "w": 96, "h": 76 }, + "duration": 50 + }, + { + "filename": "0035.png", + "frame": { "x": 99, "y": 111, "w": 46, "h": 50 }, + "rotated": false, + "trimmed": true, + "spriteSourceSize": { "x": 23, "y": 24, "w": 46, "h": 50 }, + "sourceSize": { "w": 96, "h": 76 }, + "duration": 50 + }, + { + "filename": "0036.png", + "frame": { "x": 99, "y": 111, "w": 46, "h": 50 }, + "rotated": false, + "trimmed": true, + "spriteSourceSize": { "x": 23, "y": 24, "w": 46, "h": 50 }, + "sourceSize": { "w": 96, "h": 76 }, + "duration": 50 + }, + { + "filename": "0037.png", + "frame": { "x": 148, "y": 111, "w": 46, "h": 50 }, + "rotated": false, + "trimmed": true, + "spriteSourceSize": { "x": 24, "y": 24, "w": 46, "h": 50 }, + "sourceSize": { "w": 96, "h": 76 }, + "duration": 50 + }, + { + "filename": "0038.png", + "frame": { "x": 148, "y": 111, "w": 46, "h": 50 }, + "rotated": false, + "trimmed": true, + "spriteSourceSize": { "x": 24, "y": 24, "w": 46, "h": 50 }, + "sourceSize": { "w": 96, "h": 76 }, + "duration": 50 + }, + { + "filename": "0039.png", + "frame": { "x": 195, "y": 164, "w": 45, "h": 49 }, + "rotated": false, + "trimmed": true, + "spriteSourceSize": { "x": 25, "y": 25, "w": 45, "h": 49 }, + "sourceSize": { "w": 96, "h": 76 }, + "duration": 50 + }, + { + "filename": "0040.png", + "frame": { "x": 195, "y": 164, "w": 45, "h": 49 }, + "rotated": false, + "trimmed": true, + "spriteSourceSize": { "x": 25, "y": 25, "w": 45, "h": 49 }, + "sourceSize": { "w": 96, "h": 76 }, + "duration": 50 + }, + { + "filename": "0041.png", + "frame": { "x": 146, "y": 164, "w": 46, "h": 48 }, + "rotated": false, + "trimmed": true, + "spriteSourceSize": { "x": 25, "y": 26, "w": 46, "h": 48 }, + "sourceSize": { "w": 96, "h": 76 }, + "duration": 50 + }, + { + "filename": "0042.png", + "frame": { "x": 146, "y": 164, "w": 46, "h": 48 }, + "rotated": false, + "trimmed": true, + "spriteSourceSize": { "x": 25, "y": 26, "w": 46, "h": 48 }, + "sourceSize": { "w": 96, "h": 76 }, + "duration": 50 + }, + { + "filename": "0043.png", + "frame": { "x": 1, "y": 166, "w": 45, "h": 49 }, + "rotated": false, + "trimmed": true, + "spriteSourceSize": { "x": 25, "y": 25, "w": 45, "h": 49 }, + "sourceSize": { "w": 96, "h": 76 }, + "duration": 50 + }, + { + "filename": "0044.png", + "frame": { "x": 1, "y": 166, "w": 45, "h": 49 }, + "rotated": false, + "trimmed": true, + "spriteSourceSize": { "x": 25, "y": 25, "w": 45, "h": 49 }, + "sourceSize": { "w": 96, "h": 76 }, + "duration": 50 + }, + { + "filename": "0045.png", + "frame": { "x": 50, "y": 164, "w": 45, "h": 50 }, + "rotated": false, + "trimmed": true, + "spriteSourceSize": { "x": 25, "y": 24, "w": 45, "h": 50 }, + "sourceSize": { "w": 96, "h": 76 }, + "duration": 50 + }, + { + "filename": "0046.png", + "frame": { "x": 50, "y": 164, "w": 45, "h": 50 }, + "rotated": false, + "trimmed": true, + "spriteSourceSize": { "x": 25, "y": 24, "w": 45, "h": 50 }, + "sourceSize": { "w": 96, "h": 76 }, + "duration": 50 + }, + { + "filename": "0047.png", + "frame": { "x": 98, "y": 164, "w": 45, "h": 50 }, + "rotated": false, + "trimmed": true, + "spriteSourceSize": { "x": 24, "y": 24, "w": 45, "h": 50 }, + "sourceSize": { "w": 96, "h": 76 }, + "duration": 50 + }, + { + "filename": "0048.png", + "frame": { "x": 98, "y": 164, "w": 45, "h": 50 }, + "rotated": false, + "trimmed": true, + "spriteSourceSize": { "x": 24, "y": 24, "w": 45, "h": 50 }, + "sourceSize": { "w": 96, "h": 76 }, + "duration": 50 + }, + { + "filename": "0049.png", + "frame": { "x": 50, "y": 111, "w": 46, "h": 50 }, + "rotated": false, + "trimmed": true, + "spriteSourceSize": { "x": 23, "y": 24, "w": 46, "h": 50 }, + "sourceSize": { "w": 96, "h": 76 }, + "duration": 50 + }, + { + "filename": "0050.png", + "frame": { "x": 50, "y": 111, "w": 46, "h": 50 }, + "rotated": false, + "trimmed": true, + "spriteSourceSize": { "x": 23, "y": 24, "w": 46, "h": 50 }, + "sourceSize": { "w": 96, "h": 76 }, + "duration": 50 + }, + { + "filename": "0051.png", + "frame": { "x": 99, "y": 111, "w": 46, "h": 50 }, + "rotated": false, + "trimmed": true, + "spriteSourceSize": { "x": 23, "y": 24, "w": 46, "h": 50 }, + "sourceSize": { "w": 96, "h": 76 }, + "duration": 50 + }, + { + "filename": "0052.png", + "frame": { "x": 99, "y": 111, "w": 46, "h": 50 }, + "rotated": false, + "trimmed": true, + "spriteSourceSize": { "x": 23, "y": 24, "w": 46, "h": 50 }, + "sourceSize": { "w": 96, "h": 76 }, + "duration": 50 + }, + { + "filename": "0053.png", + "frame": { "x": 148, "y": 111, "w": 46, "h": 50 }, + "rotated": false, + "trimmed": true, + "spriteSourceSize": { "x": 24, "y": 24, "w": 46, "h": 50 }, + "sourceSize": { "w": 96, "h": 76 }, + "duration": 50 + }, + { + "filename": "0054.png", + "frame": { "x": 148, "y": 111, "w": 46, "h": 50 }, + "rotated": false, + "trimmed": true, + "spriteSourceSize": { "x": 24, "y": 24, "w": 46, "h": 50 }, + "sourceSize": { "w": 96, "h": 76 }, + "duration": 50 + }, + { + "filename": "0055.png", + "frame": { "x": 195, "y": 164, "w": 45, "h": 49 }, + "rotated": false, + "trimmed": true, + "spriteSourceSize": { "x": 25, "y": 25, "w": 45, "h": 49 }, + "sourceSize": { "w": 96, "h": 76 }, + "duration": 50 + }, + { + "filename": "0056.png", + "frame": { "x": 195, "y": 164, "w": 45, "h": 49 }, + "rotated": false, + "trimmed": true, + "spriteSourceSize": { "x": 25, "y": 25, "w": 45, "h": 49 }, + "sourceSize": { "w": 96, "h": 76 }, + "duration": 50 + }, + { + "filename": "0057.png", + "frame": { "x": 146, "y": 164, "w": 46, "h": 48 }, + "rotated": false, + "trimmed": true, + "spriteSourceSize": { "x": 25, "y": 26, "w": 46, "h": 48 }, + "sourceSize": { "w": 96, "h": 76 }, + "duration": 50 + }, + { + "filename": "0058.png", + "frame": { "x": 146, "y": 164, "w": 46, "h": 48 }, + "rotated": false, + "trimmed": true, + "spriteSourceSize": { "x": 25, "y": 26, "w": 46, "h": 48 }, + "sourceSize": { "w": 96, "h": 76 }, + "duration": 50 + }, + { + "filename": "0059.png", + "frame": { "x": 1, "y": 166, "w": 45, "h": 49 }, + "rotated": false, + "trimmed": true, + "spriteSourceSize": { "x": 25, "y": 25, "w": 45, "h": 49 }, + "sourceSize": { "w": 96, "h": 76 }, + "duration": 50 + }, + { + "filename": "0060.png", + "frame": { "x": 1, "y": 166, "w": 45, "h": 49 }, + "rotated": false, + "trimmed": true, + "spriteSourceSize": { "x": 25, "y": 25, "w": 45, "h": 49 }, + "sourceSize": { "w": 96, "h": 76 }, + "duration": 50 + }, + { + "filename": "0061.png", + "frame": { "x": 50, "y": 164, "w": 45, "h": 50 }, + "rotated": false, + "trimmed": true, + "spriteSourceSize": { "x": 25, "y": 24, "w": 45, "h": 50 }, + "sourceSize": { "w": 96, "h": 76 }, + "duration": 50 + }, + { + "filename": "0062.png", + "frame": { "x": 50, "y": 164, "w": 45, "h": 50 }, + "rotated": false, + "trimmed": true, + "spriteSourceSize": { "x": 25, "y": 24, "w": 45, "h": 50 }, + "sourceSize": { "w": 96, "h": 76 }, + "duration": 50 + }, + { + "filename": "0063.png", + "frame": { "x": 98, "y": 164, "w": 45, "h": 50 }, + "rotated": false, + "trimmed": true, + "spriteSourceSize": { "x": 24, "y": 24, "w": 45, "h": 50 }, + "sourceSize": { "w": 96, "h": 76 }, + "duration": 50 + }, + { + "filename": "0064.png", + "frame": { "x": 98, "y": 164, "w": 45, "h": 50 }, + "rotated": false, + "trimmed": true, + "spriteSourceSize": { "x": 24, "y": 24, "w": 45, "h": 50 }, + "sourceSize": { "w": 96, "h": 76 }, + "duration": 50 + }, + { + "filename": "0065.png", + "frame": { "x": 50, "y": 111, "w": 46, "h": 50 }, + "rotated": false, + "trimmed": true, + "spriteSourceSize": { "x": 23, "y": 24, "w": 46, "h": 50 }, + "sourceSize": { "w": 96, "h": 76 }, + "duration": 50 + }, + { + "filename": "0066.png", + "frame": { "x": 50, "y": 111, "w": 46, "h": 50 }, + "rotated": false, + "trimmed": true, + "spriteSourceSize": { "x": 23, "y": 24, "w": 46, "h": 50 }, + "sourceSize": { "w": 96, "h": 76 }, + "duration": 50 + }, + { + "filename": "0067.png", + "frame": { "x": 99, "y": 111, "w": 46, "h": 50 }, + "rotated": false, + "trimmed": true, + "spriteSourceSize": { "x": 23, "y": 24, "w": 46, "h": 50 }, + "sourceSize": { "w": 96, "h": 76 }, + "duration": 50 + }, + { + "filename": "0068.png", + "frame": { "x": 99, "y": 111, "w": 46, "h": 50 }, + "rotated": false, + "trimmed": true, + "spriteSourceSize": { "x": 23, "y": 24, "w": 46, "h": 50 }, + "sourceSize": { "w": 96, "h": 76 }, + "duration": 50 + }, + { + "filename": "0069.png", + "frame": { "x": 148, "y": 111, "w": 46, "h": 50 }, + "rotated": false, + "trimmed": true, + "spriteSourceSize": { "x": 24, "y": 24, "w": 46, "h": 50 }, + "sourceSize": { "w": 96, "h": 76 }, + "duration": 50 + }, + { + "filename": "0070.png", + "frame": { "x": 148, "y": 111, "w": 46, "h": 50 }, + "rotated": false, + "trimmed": true, + "spriteSourceSize": { "x": 24, "y": 24, "w": 46, "h": 50 }, + "sourceSize": { "w": 96, "h": 76 }, + "duration": 50 + }, + { + "filename": "0071.png", + "frame": { "x": 195, "y": 164, "w": 45, "h": 49 }, + "rotated": false, + "trimmed": true, + "spriteSourceSize": { "x": 25, "y": 25, "w": 45, "h": 49 }, + "sourceSize": { "w": 96, "h": 76 }, + "duration": 50 + }, + { + "filename": "0072.png", + "frame": { "x": 195, "y": 164, "w": 45, "h": 49 }, + "rotated": false, + "trimmed": true, + "spriteSourceSize": { "x": 25, "y": 25, "w": 45, "h": 49 }, + "sourceSize": { "w": 96, "h": 76 }, + "duration": 50 + }, + { + "filename": "0073.png", + "frame": { "x": 146, "y": 164, "w": 46, "h": 48 }, + "rotated": false, + "trimmed": true, + "spriteSourceSize": { "x": 25, "y": 26, "w": 46, "h": 48 }, + "sourceSize": { "w": 96, "h": 76 }, + "duration": 50 + }, + { + "filename": "0074.png", + "frame": { "x": 146, "y": 164, "w": 46, "h": 48 }, + "rotated": false, + "trimmed": true, + "spriteSourceSize": { "x": 25, "y": 26, "w": 46, "h": 48 }, + "sourceSize": { "w": 96, "h": 76 }, + "duration": 50 + }, + { + "filename": "0075.png", + "frame": { "x": 1, "y": 166, "w": 45, "h": 49 }, + "rotated": false, + "trimmed": true, + "spriteSourceSize": { "x": 25, "y": 25, "w": 45, "h": 49 }, + "sourceSize": { "w": 96, "h": 76 }, + "duration": 50 + }, + { + "filename": "0076.png", + "frame": { "x": 1, "y": 166, "w": 45, "h": 49 }, + "rotated": false, + "trimmed": true, + "spriteSourceSize": { "x": 25, "y": 25, "w": 45, "h": 49 }, + "sourceSize": { "w": 96, "h": 76 }, + "duration": 50 + }, + { + "filename": "0077.png", + "frame": { "x": 50, "y": 164, "w": 45, "h": 50 }, + "rotated": false, + "trimmed": true, + "spriteSourceSize": { "x": 25, "y": 24, "w": 45, "h": 50 }, + "sourceSize": { "w": 96, "h": 76 }, + "duration": 50 + }, + { + "filename": "0078.png", + "frame": { "x": 50, "y": 164, "w": 45, "h": 50 }, + "rotated": false, + "trimmed": true, + "spriteSourceSize": { "x": 25, "y": 24, "w": 45, "h": 50 }, + "sourceSize": { "w": 96, "h": 76 }, + "duration": 50 + }, + { + "filename": "0079.png", + "frame": { "x": 98, "y": 164, "w": 45, "h": 50 }, + "rotated": false, + "trimmed": true, + "spriteSourceSize": { "x": 24, "y": 24, "w": 45, "h": 50 }, + "sourceSize": { "w": 96, "h": 76 }, + "duration": 50 + }, + { + "filename": "0080.png", + "frame": { "x": 98, "y": 164, "w": 45, "h": 50 }, + "rotated": false, + "trimmed": true, + "spriteSourceSize": { "x": 24, "y": 24, "w": 45, "h": 50 }, + "sourceSize": { "w": 96, "h": 76 }, + "duration": 50 + }, + { + "filename": "0081.png", + "frame": { "x": 50, "y": 111, "w": 46, "h": 50 }, + "rotated": false, + "trimmed": true, + "spriteSourceSize": { "x": 23, "y": 24, "w": 46, "h": 50 }, + "sourceSize": { "w": 96, "h": 76 }, + "duration": 50 + }, + { + "filename": "0082.png", + "frame": { "x": 50, "y": 111, "w": 46, "h": 50 }, + "rotated": false, + "trimmed": true, + "spriteSourceSize": { "x": 23, "y": 24, "w": 46, "h": 50 }, + "sourceSize": { "w": 96, "h": 76 }, + "duration": 50 + }, + { + "filename": "0083.png", + "frame": { "x": 201, "y": 1, "w": 47, "h": 51 }, + "rotated": false, + "trimmed": true, + "spriteSourceSize": { "x": 22, "y": 23, "w": 47, "h": 51 }, + "sourceSize": { "w": 96, "h": 76 }, + "duration": 50 + }, + { + "filename": "0084.png", + "frame": { "x": 201, "y": 55, "w": 47, "h": 51 }, + "rotated": false, + "trimmed": true, + "spriteSourceSize": { "x": 22, "y": 23, "w": 47, "h": 51 }, + "sourceSize": { "w": 96, "h": 76 }, + "duration": 50 + }, + { + "filename": "0085.png", + "frame": { "x": 1, "y": 1, "w": 47, "h": 52 }, + "rotated": false, + "trimmed": true, + "spriteSourceSize": { "x": 22, "y": 22, "w": 47, "h": 52 }, + "sourceSize": { "w": 96, "h": 76 }, + "duration": 50 + }, + { + "filename": "0086.png", + "frame": { "x": 51, "y": 1, "w": 47, "h": 52 }, + "rotated": false, + "trimmed": true, + "spriteSourceSize": { "x": 22, "y": 22, "w": 47, "h": 52 }, + "sourceSize": { "w": 96, "h": 76 }, + "duration": 50 + }, + { + "filename": "0087.png", + "frame": { "x": 101, "y": 1, "w": 47, "h": 52 }, + "rotated": false, + "trimmed": true, + "spriteSourceSize": { "x": 22, "y": 22, "w": 47, "h": 52 }, + "sourceSize": { "w": 96, "h": 76 }, + "duration": 50 + }, + { + "filename": "0088.png", + "frame": { "x": 101, "y": 1, "w": 47, "h": 52 }, + "rotated": false, + "trimmed": true, + "spriteSourceSize": { "x": 22, "y": 22, "w": 47, "h": 52 }, + "sourceSize": { "w": 96, "h": 76 }, + "duration": 50 + }, + { + "filename": "0089.png", + "frame": { "x": 1, "y": 56, "w": 46, "h": 52 }, + "rotated": false, + "trimmed": true, + "spriteSourceSize": { "x": 23, "y": 22, "w": 46, "h": 52 }, + "sourceSize": { "w": 96, "h": 76 }, + "duration": 50 + }, + { + "filename": "0090.png", + "frame": { "x": 50, "y": 56, "w": 46, "h": 52 }, + "rotated": false, + "trimmed": true, + "spriteSourceSize": { "x": 23, "y": 22, "w": 46, "h": 52 }, + "sourceSize": { "w": 96, "h": 76 }, + "duration": 50 + }, + { + "filename": "0091.png", + "frame": { "x": 99, "y": 56, "w": 46, "h": 52 }, + "rotated": false, + "trimmed": true, + "spriteSourceSize": { "x": 23, "y": 22, "w": 46, "h": 52 }, + "sourceSize": { "w": 96, "h": 76 }, + "duration": 50 + }, + { + "filename": "0092.png", + "frame": { "x": 148, "y": 56, "w": 46, "h": 52 }, + "rotated": false, + "trimmed": true, + "spriteSourceSize": { "x": 23, "y": 22, "w": 46, "h": 52 }, + "sourceSize": { "w": 96, "h": 76 }, + "duration": 50 + }, + { + "filename": "0093.png", + "frame": { "x": 151, "y": 1, "w": 47, "h": 52 }, + "rotated": false, + "trimmed": true, + "spriteSourceSize": { "x": 22, "y": 22, "w": 47, "h": 52 }, + "sourceSize": { "w": 96, "h": 76 }, + "duration": 50 + }, + { + "filename": "0094.png", + "frame": { "x": 151, "y": 1, "w": 47, "h": 52 }, + "rotated": false, + "trimmed": true, + "spriteSourceSize": { "x": 22, "y": 22, "w": 47, "h": 52 }, + "sourceSize": { "w": 96, "h": 76 }, + "duration": 50 + }, + { + "filename": "0095.png", + "frame": { "x": 101, "y": 1, "w": 47, "h": 52 }, + "rotated": false, + "trimmed": true, + "spriteSourceSize": { "x": 22, "y": 22, "w": 47, "h": 52 }, + "sourceSize": { "w": 96, "h": 76 }, + "duration": 50 + }, + { + "filename": "0096.png", + "frame": { "x": 101, "y": 1, "w": 47, "h": 52 }, + "rotated": false, + "trimmed": true, + "spriteSourceSize": { "x": 22, "y": 22, "w": 47, "h": 52 }, + "sourceSize": { "w": 96, "h": 76 }, + "duration": 50 + }, + { + "filename": "0097.png", + "frame": { "x": 197, "y": 109, "w": 46, "h": 52 }, + "rotated": false, + "trimmed": true, + "spriteSourceSize": { "x": 23, "y": 22, "w": 46, "h": 52 }, + "sourceSize": { "w": 96, "h": 76 }, + "duration": 50 + }, + { + "filename": "0098.png", + "frame": { "x": 197, "y": 109, "w": 46, "h": 52 }, + "rotated": false, + "trimmed": true, + "spriteSourceSize": { "x": 23, "y": 22, "w": 46, "h": 52 }, + "sourceSize": { "w": 96, "h": 76 }, + "duration": 50 + }, + { + "filename": "0099.png", + "frame": { "x": 148, "y": 56, "w": 46, "h": 52 }, + "rotated": false, + "trimmed": true, + "spriteSourceSize": { "x": 23, "y": 22, "w": 46, "h": 52 }, + "sourceSize": { "w": 96, "h": 76 }, + "duration": 50 + }, + { + "filename": "0100.png", + "frame": { "x": 148, "y": 56, "w": 46, "h": 52 }, + "rotated": false, + "trimmed": true, + "spriteSourceSize": { "x": 23, "y": 22, "w": 46, "h": 52 }, + "sourceSize": { "w": 96, "h": 76 }, + "duration": 50 + }, + { + "filename": "0101.png", + "frame": { "x": 151, "y": 1, "w": 47, "h": 52 }, + "rotated": false, + "trimmed": true, + "spriteSourceSize": { "x": 22, "y": 22, "w": 47, "h": 52 }, + "sourceSize": { "w": 96, "h": 76 }, + "duration": 50 + }, + { + "filename": "0102.png", + "frame": { "x": 151, "y": 1, "w": 47, "h": 52 }, + "rotated": false, + "trimmed": true, + "spriteSourceSize": { "x": 22, "y": 22, "w": 47, "h": 52 }, + "sourceSize": { "w": 96, "h": 76 }, + "duration": 50 + }, + { + "filename": "0103.png", + "frame": { "x": 151, "y": 1, "w": 47, "h": 52 }, + "rotated": false, + "trimmed": true, + "spriteSourceSize": { "x": 22, "y": 22, "w": 47, "h": 52 }, + "sourceSize": { "w": 96, "h": 76 }, + "duration": 50 + }, + { + "filename": "0104.png", + "frame": { "x": 101, "y": 1, "w": 47, "h": 52 }, + "rotated": false, + "trimmed": true, + "spriteSourceSize": { "x": 22, "y": 22, "w": 47, "h": 52 }, + "sourceSize": { "w": 96, "h": 76 }, + "duration": 50 + }, + { + "filename": "0105.png", + "frame": { "x": 101, "y": 1, "w": 47, "h": 52 }, + "rotated": false, + "trimmed": true, + "spriteSourceSize": { "x": 22, "y": 22, "w": 47, "h": 52 }, + "sourceSize": { "w": 96, "h": 76 }, + "duration": 50 + }, + { + "filename": "0106.png", + "frame": { "x": 197, "y": 109, "w": 46, "h": 52 }, + "rotated": false, + "trimmed": true, + "spriteSourceSize": { "x": 23, "y": 22, "w": 46, "h": 52 }, + "sourceSize": { "w": 96, "h": 76 }, + "duration": 50 + }, + { + "filename": "0107.png", + "frame": { "x": 197, "y": 109, "w": 46, "h": 52 }, + "rotated": false, + "trimmed": true, + "spriteSourceSize": { "x": 23, "y": 22, "w": 46, "h": 52 }, + "sourceSize": { "w": 96, "h": 76 }, + "duration": 50 + }, + { + "filename": "0108.png", + "frame": { "x": 99, "y": 56, "w": 46, "h": 52 }, + "rotated": false, + "trimmed": true, + "spriteSourceSize": { "x": 23, "y": 22, "w": 46, "h": 52 }, + "sourceSize": { "w": 96, "h": 76 }, + "duration": 50 + }, + { + "filename": "0109.png", + "frame": { "x": 1, "y": 111, "w": 46, "h": 52 }, + "rotated": false, + "trimmed": true, + "spriteSourceSize": { "x": 23, "y": 22, "w": 46, "h": 52 }, + "sourceSize": { "w": 96, "h": 76 }, + "duration": 50 + }, + { + "filename": "0110.png", + "frame": { "x": 201, "y": 55, "w": 47, "h": 51 }, + "rotated": false, + "trimmed": true, + "spriteSourceSize": { "x": 22, "y": 23, "w": 47, "h": 51 }, + "sourceSize": { "w": 96, "h": 76 }, + "duration": 50 + }, + { + "filename": "0111.png", + "frame": { "x": 201, "y": 1, "w": 47, "h": 51 }, + "rotated": false, + "trimmed": true, + "spriteSourceSize": { "x": 22, "y": 23, "w": 47, "h": 51 }, + "sourceSize": { "w": 96, "h": 76 }, + "duration": 50 + } + ], + "meta": { + "app": "https://www.aseprite.org/", + "version": "1.3.13-x64", + "image": "782.png", + "format": "I8", + "size": { "w": 249, "h": 216 }, + "scale": "1" + } } diff --git a/public/images/pokemon/back/782.png b/public/images/pokemon/back/782.png index aa3e05416a2..eb222077d81 100644 Binary files a/public/images/pokemon/back/782.png and b/public/images/pokemon/back/782.png differ diff --git a/public/images/pokemon/back/783.json b/public/images/pokemon/back/783.json index dbdf0832c04..d8f4119f161 100644 --- a/public/images/pokemon/back/783.json +++ b/public/images/pokemon/back/783.json @@ -1,41 +1,965 @@ -{ - "textures": [ - { - "image": "783.png", - "format": "RGBA8888", - "size": { - "w": 69, - "h": 69 - }, - "scale": 1, - "frames": [ - { - "filename": "0001.png", - "rotated": false, - "trimmed": false, - "sourceSize": { - "w": 66, - "h": 69 - }, - "spriteSourceSize": { - "x": 0, - "y": 0, - "w": 66, - "h": 69 - }, - "frame": { - "x": 0, - "y": 0, - "w": 66, - "h": 69 - } - } - ] - } - ], - "meta": { - "app": "https://www.codeandweb.com/texturepacker", - "version": "3.0", - "smartupdate": "$TexturePacker:SmartUpdate:7d62b0df753b06fca02f434512c11d99:8e8a5ac9c7d2fc25a02a4d24d5c5b640:aab166e28c744865a0296041224dd01b$" - } +{ "frames": [ + { + "filename": "0001.png", + "frame": { "x": 420, "y": 277, "w": 66, "h": 69 }, + "rotated": false, + "trimmed": true, + "spriteSourceSize": { "x": 4, "y": 2, "w": 66, "h": 69 }, + "sourceSize": { "w": 75, "h": 71 }, + "duration": 100 + }, + { + "filename": "0002.png", + "frame": { "x": 272, "y": 280, "w": 65, "h": 69 }, + "rotated": false, + "trimmed": true, + "spriteSourceSize": { "x": 3, "y": 2, "w": 65, "h": 69 }, + "sourceSize": { "w": 75, "h": 71 }, + "duration": 100 + }, + { + "filename": "0003.png", + "frame": { "x": 487, "y": 277, "w": 65, "h": 70 }, + "rotated": false, + "trimmed": true, + "spriteSourceSize": { "x": 2, "y": 1, "w": 65, "h": 70 }, + "sourceSize": { "w": 75, "h": 71 }, + "duration": 100 + }, + { + "filename": "0004.png", + "frame": { "x": 1, "y": 347, "w": 64, "h": 70 }, + "rotated": false, + "trimmed": true, + "spriteSourceSize": { "x": 1, "y": 1, "w": 64, "h": 70 }, + "sourceSize": { "w": 75, "h": 71 }, + "duration": 100 + }, + { + "filename": "0005.png", + "frame": { "x": 266, "y": 350, "w": 62, "h": 71 }, + "rotated": false, + "trimmed": true, + "spriteSourceSize": { "x": 1, "y": 0, "w": 62, "h": 71 }, + "sourceSize": { "w": 75, "h": 71 }, + "duration": 100 + }, + { + "filename": "0006.png", + "frame": { "x": 66, "y": 349, "w": 63, "h": 70 }, + "rotated": false, + "trimmed": true, + "spriteSourceSize": { "x": 2, "y": 1, "w": 63, "h": 70 }, + "sourceSize": { "w": 75, "h": 71 }, + "duration": 100 + }, + { + "filename": "0007.png", + "frame": { "x": 347, "y": 279, "w": 65, "h": 70 }, + "rotated": false, + "trimmed": true, + "spriteSourceSize": { "x": 2, "y": 1, "w": 65, "h": 70 }, + "sourceSize": { "w": 75, "h": 71 }, + "duration": 100 + }, + { + "filename": "0008.png", + "frame": { "x": 134, "y": 282, "w": 65, "h": 69 }, + "rotated": false, + "trimmed": true, + "spriteSourceSize": { "x": 3, "y": 2, "w": 65, "h": 69 }, + "sourceSize": { "w": 75, "h": 71 }, + "duration": 100 + }, + { + "filename": "0009.png", + "frame": { "x": 1, "y": 277, "w": 66, "h": 69 }, + "rotated": false, + "trimmed": true, + "spriteSourceSize": { "x": 4, "y": 2, "w": 66, "h": 69 }, + "sourceSize": { "w": 75, "h": 71 }, + "duration": 100 + }, + { + "filename": "0010.png", + "frame": { "x": 200, "y": 347, "w": 65, "h": 68 }, + "rotated": false, + "trimmed": true, + "spriteSourceSize": { "x": 6, "y": 3, "w": 65, "h": 68 }, + "sourceSize": { "w": 75, "h": 71 }, + "duration": 100 + }, + { + "filename": "0011.png", + "frame": { "x": 329, "y": 350, "w": 64, "h": 68 }, + "rotated": false, + "trimmed": true, + "spriteSourceSize": { "x": 8, "y": 3, "w": 64, "h": 68 }, + "sourceSize": { "w": 75, "h": 71 }, + "duration": 100 + }, + { + "filename": "0012.png", + "frame": { "x": 1, "y": 418, "w": 62, "h": 67 }, + "rotated": false, + "trimmed": true, + "spriteSourceSize": { "x": 10, "y": 4, "w": 62, "h": 67 }, + "sourceSize": { "w": 75, "h": 71 }, + "duration": 100 + }, + { + "filename": "0013.png", + "frame": { "x": 519, "y": 418, "w": 61, "h": 67 }, + "rotated": false, + "trimmed": true, + "spriteSourceSize": { "x": 12, "y": 4, "w": 61, "h": 67 }, + "sourceSize": { "w": 75, "h": 71 }, + "duration": 100 + }, + { + "filename": "0014.png", + "frame": { "x": 456, "y": 418, "w": 62, "h": 67 }, + "rotated": false, + "trimmed": true, + "spriteSourceSize": { "x": 10, "y": 4, "w": 62, "h": 67 }, + "sourceSize": { "w": 75, "h": 71 }, + "duration": 100 + }, + { + "filename": "0015.png", + "frame": { "x": 130, "y": 352, "w": 64, "h": 68 }, + "rotated": false, + "trimmed": true, + "spriteSourceSize": { "x": 8, "y": 3, "w": 64, "h": 68 }, + "sourceSize": { "w": 75, "h": 71 }, + "duration": 100 + }, + { + "filename": "0016.png", + "frame": { "x": 413, "y": 347, "w": 65, "h": 68 }, + "rotated": false, + "trimmed": true, + "spriteSourceSize": { "x": 6, "y": 3, "w": 65, "h": 68 }, + "sourceSize": { "w": 75, "h": 71 }, + "duration": 100 + }, + { + "filename": "0017.png", + "frame": { "x": 420, "y": 277, "w": 66, "h": 69 }, + "rotated": false, + "trimmed": true, + "spriteSourceSize": { "x": 4, "y": 2, "w": 66, "h": 69 }, + "sourceSize": { "w": 75, "h": 71 }, + "duration": 100 + }, + { + "filename": "0018.png", + "frame": { "x": 272, "y": 280, "w": 65, "h": 69 }, + "rotated": false, + "trimmed": true, + "spriteSourceSize": { "x": 3, "y": 2, "w": 65, "h": 69 }, + "sourceSize": { "w": 75, "h": 71 }, + "duration": 100 + }, + { + "filename": "0019.png", + "frame": { "x": 487, "y": 277, "w": 65, "h": 70 }, + "rotated": false, + "trimmed": true, + "spriteSourceSize": { "x": 2, "y": 1, "w": 65, "h": 70 }, + "sourceSize": { "w": 75, "h": 71 }, + "duration": 100 + }, + { + "filename": "0020.png", + "frame": { "x": 1, "y": 347, "w": 64, "h": 70 }, + "rotated": false, + "trimmed": true, + "spriteSourceSize": { "x": 1, "y": 1, "w": 64, "h": 70 }, + "sourceSize": { "w": 75, "h": 71 }, + "duration": 100 + }, + { + "filename": "0021.png", + "frame": { "x": 266, "y": 350, "w": 62, "h": 71 }, + "rotated": false, + "trimmed": true, + "spriteSourceSize": { "x": 1, "y": 0, "w": 62, "h": 71 }, + "sourceSize": { "w": 75, "h": 71 }, + "duration": 100 + }, + { + "filename": "0022.png", + "frame": { "x": 66, "y": 349, "w": 63, "h": 70 }, + "rotated": false, + "trimmed": true, + "spriteSourceSize": { "x": 2, "y": 1, "w": 63, "h": 70 }, + "sourceSize": { "w": 75, "h": 71 }, + "duration": 100 + }, + { + "filename": "0023.png", + "frame": { "x": 347, "y": 279, "w": 65, "h": 70 }, + "rotated": false, + "trimmed": true, + "spriteSourceSize": { "x": 2, "y": 1, "w": 65, "h": 70 }, + "sourceSize": { "w": 75, "h": 71 }, + "duration": 100 + }, + { + "filename": "0024.png", + "frame": { "x": 134, "y": 282, "w": 65, "h": 69 }, + "rotated": false, + "trimmed": true, + "spriteSourceSize": { "x": 3, "y": 2, "w": 65, "h": 69 }, + "sourceSize": { "w": 75, "h": 71 }, + "duration": 100 + }, + { + "filename": "0025.png", + "frame": { "x": 1, "y": 277, "w": 66, "h": 69 }, + "rotated": false, + "trimmed": true, + "spriteSourceSize": { "x": 4, "y": 2, "w": 66, "h": 69 }, + "sourceSize": { "w": 75, "h": 71 }, + "duration": 100 + }, + { + "filename": "0026.png", + "frame": { "x": 200, "y": 347, "w": 65, "h": 68 }, + "rotated": false, + "trimmed": true, + "spriteSourceSize": { "x": 6, "y": 3, "w": 65, "h": 68 }, + "sourceSize": { "w": 75, "h": 71 }, + "duration": 100 + }, + { + "filename": "0027.png", + "frame": { "x": 329, "y": 350, "w": 64, "h": 68 }, + "rotated": false, + "trimmed": true, + "spriteSourceSize": { "x": 8, "y": 3, "w": 64, "h": 68 }, + "sourceSize": { "w": 75, "h": 71 }, + "duration": 100 + }, + { + "filename": "0028.png", + "frame": { "x": 1, "y": 418, "w": 62, "h": 67 }, + "rotated": false, + "trimmed": true, + "spriteSourceSize": { "x": 10, "y": 4, "w": 62, "h": 67 }, + "sourceSize": { "w": 75, "h": 71 }, + "duration": 100 + }, + { + "filename": "0029.png", + "frame": { "x": 519, "y": 418, "w": 61, "h": 67 }, + "rotated": false, + "trimmed": true, + "spriteSourceSize": { "x": 12, "y": 4, "w": 61, "h": 67 }, + "sourceSize": { "w": 75, "h": 71 }, + "duration": 100 + }, + { + "filename": "0030.png", + "frame": { "x": 456, "y": 418, "w": 62, "h": 67 }, + "rotated": false, + "trimmed": true, + "spriteSourceSize": { "x": 10, "y": 4, "w": 62, "h": 67 }, + "sourceSize": { "w": 75, "h": 71 }, + "duration": 100 + }, + { + "filename": "0031.png", + "frame": { "x": 130, "y": 352, "w": 64, "h": 68 }, + "rotated": false, + "trimmed": true, + "spriteSourceSize": { "x": 8, "y": 3, "w": 64, "h": 68 }, + "sourceSize": { "w": 75, "h": 71 }, + "duration": 100 + }, + { + "filename": "0032.png", + "frame": { "x": 413, "y": 347, "w": 65, "h": 68 }, + "rotated": false, + "trimmed": true, + "spriteSourceSize": { "x": 6, "y": 3, "w": 65, "h": 68 }, + "sourceSize": { "w": 75, "h": 71 }, + "duration": 100 + }, + { + "filename": "0033.png", + "frame": { "x": 420, "y": 277, "w": 66, "h": 69 }, + "rotated": false, + "trimmed": true, + "spriteSourceSize": { "x": 4, "y": 2, "w": 66, "h": 69 }, + "sourceSize": { "w": 75, "h": 71 }, + "duration": 100 + }, + { + "filename": "0034.png", + "frame": { "x": 272, "y": 280, "w": 65, "h": 69 }, + "rotated": false, + "trimmed": true, + "spriteSourceSize": { "x": 3, "y": 2, "w": 65, "h": 69 }, + "sourceSize": { "w": 75, "h": 71 }, + "duration": 100 + }, + { + "filename": "0035.png", + "frame": { "x": 487, "y": 277, "w": 65, "h": 70 }, + "rotated": false, + "trimmed": true, + "spriteSourceSize": { "x": 2, "y": 1, "w": 65, "h": 70 }, + "sourceSize": { "w": 75, "h": 71 }, + "duration": 100 + }, + { + "filename": "0036.png", + "frame": { "x": 1, "y": 347, "w": 64, "h": 70 }, + "rotated": false, + "trimmed": true, + "spriteSourceSize": { "x": 1, "y": 1, "w": 64, "h": 70 }, + "sourceSize": { "w": 75, "h": 71 }, + "duration": 100 + }, + { + "filename": "0037.png", + "frame": { "x": 266, "y": 350, "w": 62, "h": 71 }, + "rotated": false, + "trimmed": true, + "spriteSourceSize": { "x": 1, "y": 0, "w": 62, "h": 71 }, + "sourceSize": { "w": 75, "h": 71 }, + "duration": 100 + }, + { + "filename": "0038.png", + "frame": { "x": 66, "y": 349, "w": 63, "h": 70 }, + "rotated": false, + "trimmed": true, + "spriteSourceSize": { "x": 2, "y": 1, "w": 63, "h": 70 }, + "sourceSize": { "w": 75, "h": 71 }, + "duration": 100 + }, + { + "filename": "0039.png", + "frame": { "x": 347, "y": 279, "w": 65, "h": 70 }, + "rotated": false, + "trimmed": true, + "spriteSourceSize": { "x": 2, "y": 1, "w": 65, "h": 70 }, + "sourceSize": { "w": 75, "h": 71 }, + "duration": 100 + }, + { + "filename": "0040.png", + "frame": { "x": 134, "y": 282, "w": 65, "h": 69 }, + "rotated": false, + "trimmed": true, + "spriteSourceSize": { "x": 3, "y": 2, "w": 65, "h": 69 }, + "sourceSize": { "w": 75, "h": 71 }, + "duration": 100 + }, + { + "filename": "0041.png", + "frame": { "x": 1, "y": 277, "w": 66, "h": 69 }, + "rotated": false, + "trimmed": true, + "spriteSourceSize": { "x": 4, "y": 2, "w": 66, "h": 69 }, + "sourceSize": { "w": 75, "h": 71 }, + "duration": 100 + }, + { + "filename": "0042.png", + "frame": { "x": 200, "y": 347, "w": 65, "h": 68 }, + "rotated": false, + "trimmed": true, + "spriteSourceSize": { "x": 6, "y": 3, "w": 65, "h": 68 }, + "sourceSize": { "w": 75, "h": 71 }, + "duration": 100 + }, + { + "filename": "0043.png", + "frame": { "x": 329, "y": 350, "w": 64, "h": 68 }, + "rotated": false, + "trimmed": true, + "spriteSourceSize": { "x": 8, "y": 3, "w": 64, "h": 68 }, + "sourceSize": { "w": 75, "h": 71 }, + "duration": 100 + }, + { + "filename": "0044.png", + "frame": { "x": 1, "y": 418, "w": 62, "h": 67 }, + "rotated": false, + "trimmed": true, + "spriteSourceSize": { "x": 10, "y": 4, "w": 62, "h": 67 }, + "sourceSize": { "w": 75, "h": 71 }, + "duration": 100 + }, + { + "filename": "0045.png", + "frame": { "x": 519, "y": 418, "w": 61, "h": 67 }, + "rotated": false, + "trimmed": true, + "spriteSourceSize": { "x": 12, "y": 4, "w": 61, "h": 67 }, + "sourceSize": { "w": 75, "h": 71 }, + "duration": 100 + }, + { + "filename": "0046.png", + "frame": { "x": 456, "y": 418, "w": 62, "h": 67 }, + "rotated": false, + "trimmed": true, + "spriteSourceSize": { "x": 10, "y": 4, "w": 62, "h": 67 }, + "sourceSize": { "w": 75, "h": 71 }, + "duration": 100 + }, + { + "filename": "0047.png", + "frame": { "x": 130, "y": 352, "w": 64, "h": 68 }, + "rotated": false, + "trimmed": true, + "spriteSourceSize": { "x": 8, "y": 3, "w": 64, "h": 68 }, + "sourceSize": { "w": 75, "h": 71 }, + "duration": 100 + }, + { + "filename": "0048.png", + "frame": { "x": 413, "y": 347, "w": 65, "h": 68 }, + "rotated": false, + "trimmed": true, + "spriteSourceSize": { "x": 6, "y": 3, "w": 65, "h": 68 }, + "sourceSize": { "w": 75, "h": 71 }, + "duration": 100 + }, + { + "filename": "0049.png", + "frame": { "x": 420, "y": 277, "w": 66, "h": 69 }, + "rotated": false, + "trimmed": true, + "spriteSourceSize": { "x": 4, "y": 2, "w": 66, "h": 69 }, + "sourceSize": { "w": 75, "h": 71 }, + "duration": 100 + }, + { + "filename": "0050.png", + "frame": { "x": 272, "y": 280, "w": 65, "h": 69 }, + "rotated": false, + "trimmed": true, + "spriteSourceSize": { "x": 3, "y": 2, "w": 65, "h": 69 }, + "sourceSize": { "w": 75, "h": 71 }, + "duration": 100 + }, + { + "filename": "0051.png", + "frame": { "x": 487, "y": 277, "w": 65, "h": 70 }, + "rotated": false, + "trimmed": true, + "spriteSourceSize": { "x": 2, "y": 1, "w": 65, "h": 70 }, + "sourceSize": { "w": 75, "h": 71 }, + "duration": 100 + }, + { + "filename": "0052.png", + "frame": { "x": 1, "y": 347, "w": 64, "h": 70 }, + "rotated": false, + "trimmed": true, + "spriteSourceSize": { "x": 1, "y": 1, "w": 64, "h": 70 }, + "sourceSize": { "w": 75, "h": 71 }, + "duration": 100 + }, + { + "filename": "0053.png", + "frame": { "x": 266, "y": 350, "w": 62, "h": 71 }, + "rotated": false, + "trimmed": true, + "spriteSourceSize": { "x": 1, "y": 0, "w": 62, "h": 71 }, + "sourceSize": { "w": 75, "h": 71 }, + "duration": 100 + }, + { + "filename": "0054.png", + "frame": { "x": 66, "y": 349, "w": 63, "h": 70 }, + "rotated": false, + "trimmed": true, + "spriteSourceSize": { "x": 2, "y": 1, "w": 63, "h": 70 }, + "sourceSize": { "w": 75, "h": 71 }, + "duration": 100 + }, + { + "filename": "0055.png", + "frame": { "x": 347, "y": 279, "w": 65, "h": 70 }, + "rotated": false, + "trimmed": true, + "spriteSourceSize": { "x": 2, "y": 1, "w": 65, "h": 70 }, + "sourceSize": { "w": 75, "h": 71 }, + "duration": 100 + }, + { + "filename": "0056.png", + "frame": { "x": 134, "y": 282, "w": 65, "h": 69 }, + "rotated": false, + "trimmed": true, + "spriteSourceSize": { "x": 3, "y": 2, "w": 65, "h": 69 }, + "sourceSize": { "w": 75, "h": 71 }, + "duration": 100 + }, + { + "filename": "0057.png", + "frame": { "x": 1, "y": 277, "w": 66, "h": 69 }, + "rotated": false, + "trimmed": true, + "spriteSourceSize": { "x": 4, "y": 2, "w": 66, "h": 69 }, + "sourceSize": { "w": 75, "h": 71 }, + "duration": 100 + }, + { + "filename": "0058.png", + "frame": { "x": 200, "y": 347, "w": 65, "h": 68 }, + "rotated": false, + "trimmed": true, + "spriteSourceSize": { "x": 6, "y": 3, "w": 65, "h": 68 }, + "sourceSize": { "w": 75, "h": 71 }, + "duration": 100 + }, + { + "filename": "0059.png", + "frame": { "x": 329, "y": 350, "w": 64, "h": 68 }, + "rotated": false, + "trimmed": true, + "spriteSourceSize": { "x": 8, "y": 3, "w": 64, "h": 68 }, + "sourceSize": { "w": 75, "h": 71 }, + "duration": 100 + }, + { + "filename": "0060.png", + "frame": { "x": 1, "y": 418, "w": 62, "h": 67 }, + "rotated": false, + "trimmed": true, + "spriteSourceSize": { "x": 10, "y": 4, "w": 62, "h": 67 }, + "sourceSize": { "w": 75, "h": 71 }, + "duration": 100 + }, + { + "filename": "0061.png", + "frame": { "x": 519, "y": 418, "w": 61, "h": 67 }, + "rotated": false, + "trimmed": true, + "spriteSourceSize": { "x": 12, "y": 4, "w": 61, "h": 67 }, + "sourceSize": { "w": 75, "h": 71 }, + "duration": 100 + }, + { + "filename": "0062.png", + "frame": { "x": 456, "y": 418, "w": 62, "h": 67 }, + "rotated": false, + "trimmed": true, + "spriteSourceSize": { "x": 10, "y": 4, "w": 62, "h": 67 }, + "sourceSize": { "w": 75, "h": 71 }, + "duration": 100 + }, + { + "filename": "0063.png", + "frame": { "x": 130, "y": 352, "w": 64, "h": 68 }, + "rotated": false, + "trimmed": true, + "spriteSourceSize": { "x": 8, "y": 3, "w": 64, "h": 68 }, + "sourceSize": { "w": 75, "h": 71 }, + "duration": 100 + }, + { + "filename": "0064.png", + "frame": { "x": 413, "y": 347, "w": 65, "h": 68 }, + "rotated": false, + "trimmed": true, + "spriteSourceSize": { "x": 6, "y": 3, "w": 65, "h": 68 }, + "sourceSize": { "w": 75, "h": 71 }, + "duration": 100 + }, + { + "filename": "0065.png", + "frame": { "x": 420, "y": 277, "w": 66, "h": 69 }, + "rotated": false, + "trimmed": true, + "spriteSourceSize": { "x": 4, "y": 2, "w": 66, "h": 69 }, + "sourceSize": { "w": 75, "h": 71 }, + "duration": 100 + }, + { + "filename": "0066.png", + "frame": { "x": 205, "y": 277, "w": 66, "h": 69 }, + "rotated": false, + "trimmed": true, + "spriteSourceSize": { "x": 5, "y": 2, "w": 66, "h": 69 }, + "sourceSize": { "w": 75, "h": 71 }, + "duration": 100 + }, + { + "filename": "0067.png", + "frame": { "x": 138, "y": 211, "w": 66, "h": 70 }, + "rotated": false, + "trimmed": true, + "spriteSourceSize": { "x": 6, "y": 1, "w": 66, "h": 70 }, + "sourceSize": { "w": 75, "h": 71 }, + "duration": 100 + }, + { + "filename": "0068.png", + "frame": { "x": 68, "y": 278, "w": 65, "h": 70 }, + "rotated": false, + "trimmed": true, + "spriteSourceSize": { "x": 8, "y": 1, "w": 65, "h": 70 }, + "sourceSize": { "w": 75, "h": 71 }, + "duration": 100 + }, + { + "filename": "0069.png", + "frame": { "x": 141, "y": 140, "w": 67, "h": 70 }, + "rotated": false, + "trimmed": true, + "spriteSourceSize": { "x": 7, "y": 1, "w": 67, "h": 70 }, + "sourceSize": { "w": 75, "h": 71 }, + "duration": 100 + }, + { + "filename": "0070.png", + "frame": { "x": 294, "y": 1, "w": 69, "h": 70 }, + "rotated": false, + "trimmed": true, + "spriteSourceSize": { "x": 6, "y": 1, "w": 69, "h": 70 }, + "sourceSize": { "w": 75, "h": 71 }, + "duration": 100 + }, + { + "filename": "0071.png", + "frame": { "x": 149, "y": 1, "w": 71, "h": 69 }, + "rotated": false, + "trimmed": true, + "spriteSourceSize": { "x": 2, "y": 2, "w": 71, "h": 69 }, + "sourceSize": { "w": 75, "h": 71 }, + "duration": 100 + }, + { + "filename": "0072.png", + "frame": { "x": 490, "y": 209, "w": 69, "h": 67 }, + "rotated": false, + "trimmed": true, + "spriteSourceSize": { "x": 1, "y": 4, "w": 69, "h": 67 }, + "sourceSize": { "w": 75, "h": 71 }, + "duration": 100 + }, + { + "filename": "0073.png", + "frame": { "x": 143, "y": 71, "w": 70, "h": 68 }, + "rotated": false, + "trimmed": true, + "spriteSourceSize": { "x": 0, "y": 3, "w": 70, "h": 68 }, + "sourceSize": { "w": 75, "h": 71 }, + "duration": 100 + }, + { + "filename": "0074.png", + "frame": { "x": 506, "y": 1, "w": 69, "h": 69 }, + "rotated": false, + "trimmed": true, + "spriteSourceSize": { "x": 1, "y": 2, "w": 69, "h": 69 }, + "sourceSize": { "w": 75, "h": 71 }, + "duration": 100 + }, + { + "filename": "0075.png", + "frame": { "x": 361, "y": 139, "w": 68, "h": 69 }, + "rotated": false, + "trimmed": true, + "spriteSourceSize": { "x": 2, "y": 2, "w": 68, "h": 69 }, + "sourceSize": { "w": 75, "h": 71 }, + "duration": 100 + }, + { + "filename": "0076.png", + "frame": { "x": 420, "y": 277, "w": 66, "h": 69 }, + "rotated": false, + "trimmed": true, + "spriteSourceSize": { "x": 4, "y": 2, "w": 66, "h": 69 }, + "sourceSize": { "w": 75, "h": 71 }, + "duration": 100 + }, + { + "filename": "0077.png", + "frame": { "x": 430, "y": 140, "w": 68, "h": 68 }, + "rotated": false, + "trimmed": true, + "spriteSourceSize": { "x": 3, "y": 2, "w": 68, "h": 68 }, + "sourceSize": { "w": 75, "h": 71 }, + "duration": 100 + }, + { + "filename": "0078.png", + "frame": { "x": 436, "y": 1, "w": 69, "h": 69 }, + "rotated": false, + "trimmed": true, + "spriteSourceSize": { "x": 2, "y": 1, "w": 69, "h": 69 }, + "sourceSize": { "w": 75, "h": 71 }, + "duration": 100 + }, + { + "filename": "0079.png", + "frame": { "x": 505, "y": 71, "w": 69, "h": 68 }, + "rotated": false, + "trimmed": true, + "spriteSourceSize": { "x": 2, "y": 1, "w": 69, "h": 68 }, + "sourceSize": { "w": 75, "h": 71 }, + "duration": 100 + }, + { + "filename": "0080.png", + "frame": { "x": 209, "y": 209, "w": 69, "h": 67 }, + "rotated": false, + "trimmed": true, + "spriteSourceSize": { "x": 2, "y": 1, "w": 69, "h": 67 }, + "sourceSize": { "w": 75, "h": 71 }, + "duration": 100 + }, + { + "filename": "0081.png", + "frame": { "x": 420, "y": 209, "w": 69, "h": 67 }, + "rotated": false, + "trimmed": true, + "spriteSourceSize": { "x": 2, "y": 1, "w": 69, "h": 67 }, + "sourceSize": { "w": 75, "h": 71 }, + "duration": 100 + }, + { + "filename": "0082.png", + "frame": { "x": 195, "y": 416, "w": 63, "h": 68 }, + "rotated": false, + "trimmed": true, + "spriteSourceSize": { "x": 8, "y": 2, "w": 63, "h": 68 }, + "sourceSize": { "w": 75, "h": 71 }, + "duration": 100 + }, + { + "filename": "0083.png", + "frame": { "x": 329, "y": 419, "w": 59, "h": 67 }, + "rotated": false, + "trimmed": true, + "spriteSourceSize": { "x": 11, "y": 4, "w": 59, "h": 67 }, + "sourceSize": { "w": 75, "h": 71 }, + "duration": 100 + }, + { + "filename": "0084.png", + "frame": { "x": 64, "y": 420, "w": 58, "h": 68 }, + "rotated": false, + "trimmed": true, + "spriteSourceSize": { "x": 12, "y": 3, "w": 58, "h": 68 }, + "sourceSize": { "w": 75, "h": 71 }, + "duration": 100 + }, + { + "filename": "0085.png", + "frame": { "x": 394, "y": 416, "w": 61, "h": 69 }, + "rotated": false, + "trimmed": true, + "spriteSourceSize": { "x": 9, "y": 2, "w": 61, "h": 69 }, + "sourceSize": { "w": 75, "h": 71 }, + "duration": 100 + }, + { + "filename": "0086.png", + "frame": { "x": 479, "y": 348, "w": 64, "h": 69 }, + "rotated": false, + "trimmed": true, + "spriteSourceSize": { "x": 6, "y": 2, "w": 64, "h": 69 }, + "sourceSize": { "w": 75, "h": 71 }, + "duration": 100 + }, + { + "filename": "0087.png", + "frame": { "x": 420, "y": 277, "w": 66, "h": 69 }, + "rotated": false, + "trimmed": true, + "spriteSourceSize": { "x": 4, "y": 2, "w": 66, "h": 69 }, + "sourceSize": { "w": 75, "h": 71 }, + "duration": 100 + }, + { + "filename": "0088.png", + "frame": { "x": 292, "y": 72, "w": 68, "h": 69 }, + "rotated": false, + "trimmed": true, + "spriteSourceSize": { "x": 4, "y": 2, "w": 68, "h": 69 }, + "sourceSize": { "w": 75, "h": 71 }, + "duration": 100 + }, + { + "filename": "0089.png", + "frame": { "x": 221, "y": 1, "w": 72, "h": 68 }, + "rotated": false, + "trimmed": true, + "spriteSourceSize": { "x": 1, "y": 3, "w": 72, "h": 68 }, + "sourceSize": { "w": 75, "h": 71 }, + "duration": 100 + }, + { + "filename": "0090.png", + "frame": { "x": 1, "y": 139, "w": 69, "h": 68 }, + "rotated": false, + "trimmed": true, + "spriteSourceSize": { "x": 6, "y": 3, "w": 69, "h": 68 }, + "sourceSize": { "w": 75, "h": 71 }, + "duration": 100 + }, + { + "filename": "0091.png", + "frame": { "x": 364, "y": 70, "w": 70, "h": 68 }, + "rotated": false, + "trimmed": true, + "spriteSourceSize": { "x": 5, "y": 3, "w": 70, "h": 68 }, + "sourceSize": { "w": 75, "h": 71 }, + "duration": 100 + }, + { + "filename": "0092.png", + "frame": { "x": 221, "y": 70, "w": 70, "h": 68 }, + "rotated": false, + "trimmed": true, + "spriteSourceSize": { "x": 5, "y": 3, "w": 70, "h": 68 }, + "sourceSize": { "w": 75, "h": 71 }, + "duration": 100 + }, + { + "filename": "0093.png", + "frame": { "x": 75, "y": 1, "w": 73, "h": 68 }, + "rotated": false, + "trimmed": true, + "spriteSourceSize": { "x": 2, "y": 3, "w": 73, "h": 68 }, + "sourceSize": { "w": 75, "h": 71 }, + "duration": 100 + }, + { + "filename": "0094.png", + "frame": { "x": 71, "y": 139, "w": 69, "h": 68 }, + "rotated": false, + "trimmed": true, + "spriteSourceSize": { "x": 6, "y": 3, "w": 69, "h": 68 }, + "sourceSize": { "w": 75, "h": 71 }, + "duration": 100 + }, + { + "filename": "0095.png", + "frame": { "x": 72, "y": 70, "w": 70, "h": 68 }, + "rotated": false, + "trimmed": true, + "spriteSourceSize": { "x": 5, "y": 3, "w": 70, "h": 68 }, + "sourceSize": { "w": 75, "h": 71 }, + "duration": 100 + }, + { + "filename": "0096.png", + "frame": { "x": 1, "y": 70, "w": 70, "h": 68 }, + "rotated": false, + "trimmed": true, + "spriteSourceSize": { "x": 5, "y": 3, "w": 70, "h": 68 }, + "sourceSize": { "w": 75, "h": 71 }, + "duration": 100 + }, + { + "filename": "0097.png", + "frame": { "x": 1, "y": 1, "w": 73, "h": 68 }, + "rotated": false, + "trimmed": true, + "spriteSourceSize": { "x": 2, "y": 3, "w": 73, "h": 68 }, + "sourceSize": { "w": 75, "h": 71 }, + "duration": 100 + }, + { + "filename": "0098.png", + "frame": { "x": 283, "y": 142, "w": 68, "h": 68 }, + "rotated": false, + "trimmed": true, + "spriteSourceSize": { "x": 7, "y": 3, "w": 68, "h": 68 }, + "sourceSize": { "w": 75, "h": 71 }, + "duration": 100 + }, + { + "filename": "0099.png", + "frame": { "x": 499, "y": 140, "w": 68, "h": 68 }, + "rotated": false, + "trimmed": true, + "spriteSourceSize": { "x": 6, "y": 3, "w": 68, "h": 68 }, + "sourceSize": { "w": 75, "h": 71 }, + "duration": 100 + }, + { + "filename": "0100.png", + "frame": { "x": 435, "y": 71, "w": 69, "h": 68 }, + "rotated": false, + "trimmed": true, + "spriteSourceSize": { "x": 5, "y": 3, "w": 69, "h": 68 }, + "sourceSize": { "w": 75, "h": 71 }, + "duration": 100 + }, + { + "filename": "0101.png", + "frame": { "x": 364, "y": 1, "w": 71, "h": 68 }, + "rotated": false, + "trimmed": true, + "spriteSourceSize": { "x": 2, "y": 3, "w": 71, "h": 68 }, + "sourceSize": { "w": 75, "h": 71 }, + "duration": 100 + }, + { + "filename": "0102.png", + "frame": { "x": 1, "y": 208, "w": 68, "h": 68 }, + "rotated": false, + "trimmed": true, + "spriteSourceSize": { "x": 5, "y": 3, "w": 68, "h": 68 }, + "sourceSize": { "w": 75, "h": 71 }, + "duration": 100 + }, + { + "filename": "0103.png", + "frame": { "x": 279, "y": 211, "w": 67, "h": 68 }, + "rotated": false, + "trimmed": true, + "spriteSourceSize": { "x": 5, "y": 3, "w": 67, "h": 68 }, + "sourceSize": { "w": 75, "h": 71 }, + "duration": 100 + }, + { + "filename": "0104.png", + "frame": { "x": 214, "y": 139, "w": 68, "h": 69 }, + "rotated": false, + "trimmed": true, + "spriteSourceSize": { "x": 4, "y": 2, "w": 68, "h": 69 }, + "sourceSize": { "w": 75, "h": 71 }, + "duration": 100 + }, + { + "filename": "0105.png", + "frame": { "x": 70, "y": 208, "w": 67, "h": 69 }, + "rotated": false, + "trimmed": true, + "spriteSourceSize": { "x": 4, "y": 2, "w": 67, "h": 69 }, + "sourceSize": { "w": 75, "h": 71 }, + "duration": 100 + }, + { + "filename": "0106.png", + "frame": { "x": 352, "y": 209, "w": 67, "h": 69 }, + "rotated": false, + "trimmed": true, + "spriteSourceSize": { "x": 4, "y": 2, "w": 67, "h": 69 }, + "sourceSize": { "w": 75, "h": 71 }, + "duration": 100 + } + ], + "meta": { + "app": "https://www.aseprite.org/", + "version": "1.3.13-x64", + "image": "783.png", + "format": "I8", + "size": { "w": 581, "h": 489 }, + "scale": "1" + } } diff --git a/public/images/pokemon/back/783.png b/public/images/pokemon/back/783.png index 80b07db3466..ff8c7ca052f 100644 Binary files a/public/images/pokemon/back/783.png and b/public/images/pokemon/back/783.png differ diff --git a/public/images/pokemon/back/784.json b/public/images/pokemon/back/784.json index 8a31743fa63..2be405d5d06 100644 --- a/public/images/pokemon/back/784.json +++ b/public/images/pokemon/back/784.json @@ -1,41 +1,812 @@ -{ - "textures": [ - { - "image": "784.png", - "format": "RGBA8888", - "size": { - "w": 92, - "h": 92 - }, - "scale": 1, - "frames": [ - { - "filename": "0001.png", - "rotated": false, - "trimmed": false, - "sourceSize": { - "w": 92, - "h": 81 - }, - "spriteSourceSize": { - "x": 0, - "y": 0, - "w": 92, - "h": 81 - }, - "frame": { - "x": 0, - "y": 0, - "w": 92, - "h": 81 - } - } - ] - } - ], - "meta": { - "app": "https://www.codeandweb.com/texturepacker", - "version": "3.0", - "smartupdate": "$TexturePacker:SmartUpdate:f20be28706ee0de7538fc5feaf80d0ee:599492666e3be0e6a26e56f7fe23eebd:c2f7ca3ab1075b8c824730653d891244$" - } +{ "frames": [ + { + "filename": "0001.png", + "frame": { "x": 189, "y": 242, "w": 90, "h": 81 }, + "rotated": false, + "trimmed": true, + "spriteSourceSize": { "x": 12, "y": 4, "w": 90, "h": 81 }, + "sourceSize": { "w": 112, "h": 86 }, + "duration": 100 + }, + { + "filename": "0002.png", + "frame": { "x": 1, "y": 166, "w": 94, "h": 81 }, + "rotated": false, + "trimmed": true, + "spriteSourceSize": { "x": 10, "y": 4, "w": 94, "h": 81 }, + "sourceSize": { "w": 112, "h": 86 }, + "duration": 100 + }, + { + "filename": "0003.png", + "frame": { "x": 545, "y": 84, "w": 98, "h": 81 }, + "rotated": false, + "trimmed": true, + "spriteSourceSize": { "x": 7, "y": 4, "w": 98, "h": 81 }, + "sourceSize": { "w": 112, "h": 86 }, + "duration": 100 + }, + { + "filename": "0004.png", + "frame": { "x": 545, "y": 1, "w": 103, "h": 80 }, + "rotated": false, + "trimmed": true, + "spriteSourceSize": { "x": 4, "y": 5, "w": 103, "h": 80 }, + "sourceSize": { "w": 112, "h": 86 }, + "duration": 100 + }, + { + "filename": "0005.png", + "frame": { "x": 333, "y": 1, "w": 106, "h": 80 }, + "rotated": false, + "trimmed": true, + "spriteSourceSize": { "x": 2, "y": 5, "w": 106, "h": 80 }, + "sourceSize": { "w": 112, "h": 86 }, + "duration": 100 + }, + { + "filename": "0006.png", + "frame": { "x": 1, "y": 1, "w": 110, "h": 79 }, + "rotated": false, + "trimmed": true, + "spriteSourceSize": { "x": 0, "y": 6, "w": 110, "h": 79 }, + "sourceSize": { "w": 112, "h": 86 }, + "duration": 100 + }, + { + "filename": "0007.png", + "frame": { "x": 220, "y": 1, "w": 110, "h": 78 }, + "rotated": false, + "trimmed": true, + "spriteSourceSize": { "x": 1, "y": 7, "w": 110, "h": 78 }, + "sourceSize": { "w": 112, "h": 86 }, + "duration": 100 + }, + { + "filename": "0008.png", + "frame": { "x": 651, "y": 1, "w": 106, "h": 77 }, + "rotated": false, + "trimmed": true, + "spriteSourceSize": { "x": 6, "y": 8, "w": 106, "h": 77 }, + "sourceSize": { "w": 112, "h": 86 }, + "duration": 100 + }, + { + "filename": "0009.png", + "frame": { "x": 204, "y": 162, "w": 102, "h": 77 }, + "rotated": false, + "trimmed": true, + "spriteSourceSize": { "x": 9, "y": 8, "w": 102, "h": 77 }, + "sourceSize": { "w": 112, "h": 86 }, + "duration": 100 + }, + { + "filename": "0010.png", + "frame": { "x": 309, "y": 165, "w": 97, "h": 80 }, + "rotated": false, + "trimmed": true, + "spriteSourceSize": { "x": 13, "y": 5, "w": 97, "h": 80 }, + "sourceSize": { "w": 112, "h": 86 }, + "duration": 100 + }, + { + "filename": "0011.png", + "frame": { "x": 98, "y": 172, "w": 88, "h": 83 }, + "rotated": false, + "trimmed": true, + "spriteSourceSize": { "x": 21, "y": 2, "w": 88, "h": 83 }, + "sourceSize": { "w": 112, "h": 86 }, + "duration": 100 + }, + { + "filename": "0012.png", + "frame": { "x": 461, "y": 251, "w": 83, "h": 81 }, + "rotated": false, + "trimmed": true, + "spriteSourceSize": { "x": 25, "y": 4, "w": 83, "h": 81 }, + "sourceSize": { "w": 112, "h": 86 }, + "duration": 100 + }, + { + "filename": "0013.png", + "frame": { "x": 341, "y": 332, "w": 81, "h": 79 }, + "rotated": false, + "trimmed": true, + "spriteSourceSize": { "x": 26, "y": 6, "w": 81, "h": 79 }, + "sourceSize": { "w": 112, "h": 86 }, + "duration": 100 + }, + { + "filename": "0014.png", + "frame": { "x": 176, "y": 326, "w": 82, "h": 80 }, + "rotated": false, + "trimmed": true, + "spriteSourceSize": { "x": 24, "y": 5, "w": 82, "h": 80 }, + "sourceSize": { "w": 112, "h": 86 }, + "duration": 100 + }, + { + "filename": "0015.png", + "frame": { "x": 89, "y": 258, "w": 84, "h": 80 }, + "rotated": false, + "trimmed": true, + "spriteSourceSize": { "x": 21, "y": 5, "w": 84, "h": 80 }, + "sourceSize": { "w": 112, "h": 86 }, + "duration": 100 + }, + { + "filename": "0016.png", + "frame": { "x": 1, "y": 250, "w": 85, "h": 81 }, + "rotated": false, + "trimmed": true, + "spriteSourceSize": { "x": 18, "y": 4, "w": 85, "h": 81 }, + "sourceSize": { "w": 112, "h": 86 }, + "duration": 100 + }, + { + "filename": "0017.png", + "frame": { "x": 189, "y": 242, "w": 90, "h": 81 }, + "rotated": false, + "trimmed": true, + "spriteSourceSize": { "x": 12, "y": 4, "w": 90, "h": 81 }, + "sourceSize": { "w": 112, "h": 86 }, + "duration": 100 + }, + { + "filename": "0018.png", + "frame": { "x": 1, "y": 166, "w": 94, "h": 81 }, + "rotated": false, + "trimmed": true, + "spriteSourceSize": { "x": 10, "y": 4, "w": 94, "h": 81 }, + "sourceSize": { "w": 112, "h": 86 }, + "duration": 100 + }, + { + "filename": "0019.png", + "frame": { "x": 545, "y": 84, "w": 98, "h": 81 }, + "rotated": false, + "trimmed": true, + "spriteSourceSize": { "x": 7, "y": 4, "w": 98, "h": 81 }, + "sourceSize": { "w": 112, "h": 86 }, + "duration": 100 + }, + { + "filename": "0020.png", + "frame": { "x": 545, "y": 1, "w": 103, "h": 80 }, + "rotated": false, + "trimmed": true, + "spriteSourceSize": { "x": 4, "y": 5, "w": 103, "h": 80 }, + "sourceSize": { "w": 112, "h": 86 }, + "duration": 100 + }, + { + "filename": "0021.png", + "frame": { "x": 333, "y": 1, "w": 106, "h": 80 }, + "rotated": false, + "trimmed": true, + "spriteSourceSize": { "x": 2, "y": 5, "w": 106, "h": 80 }, + "sourceSize": { "w": 112, "h": 86 }, + "duration": 100 + }, + { + "filename": "0022.png", + "frame": { "x": 1, "y": 1, "w": 110, "h": 79 }, + "rotated": false, + "trimmed": true, + "spriteSourceSize": { "x": 0, "y": 6, "w": 110, "h": 79 }, + "sourceSize": { "w": 112, "h": 86 }, + "duration": 100 + }, + { + "filename": "0023.png", + "frame": { "x": 220, "y": 1, "w": 110, "h": 78 }, + "rotated": false, + "trimmed": true, + "spriteSourceSize": { "x": 1, "y": 7, "w": 110, "h": 78 }, + "sourceSize": { "w": 112, "h": 86 }, + "duration": 100 + }, + { + "filename": "0024.png", + "frame": { "x": 651, "y": 1, "w": 106, "h": 77 }, + "rotated": false, + "trimmed": true, + "spriteSourceSize": { "x": 6, "y": 8, "w": 106, "h": 77 }, + "sourceSize": { "w": 112, "h": 86 }, + "duration": 100 + }, + { + "filename": "0025.png", + "frame": { "x": 204, "y": 162, "w": 102, "h": 77 }, + "rotated": false, + "trimmed": true, + "spriteSourceSize": { "x": 9, "y": 8, "w": 102, "h": 77 }, + "sourceSize": { "w": 112, "h": 86 }, + "duration": 100 + }, + { + "filename": "0026.png", + "frame": { "x": 309, "y": 165, "w": 97, "h": 80 }, + "rotated": false, + "trimmed": true, + "spriteSourceSize": { "x": 13, "y": 5, "w": 97, "h": 80 }, + "sourceSize": { "w": 112, "h": 86 }, + "duration": 100 + }, + { + "filename": "0027.png", + "frame": { "x": 98, "y": 172, "w": 88, "h": 83 }, + "rotated": false, + "trimmed": true, + "spriteSourceSize": { "x": 21, "y": 2, "w": 88, "h": 83 }, + "sourceSize": { "w": 112, "h": 86 }, + "duration": 100 + }, + { + "filename": "0028.png", + "frame": { "x": 461, "y": 251, "w": 83, "h": 81 }, + "rotated": false, + "trimmed": true, + "spriteSourceSize": { "x": 25, "y": 4, "w": 83, "h": 81 }, + "sourceSize": { "w": 112, "h": 86 }, + "duration": 100 + }, + { + "filename": "0029.png", + "frame": { "x": 341, "y": 332, "w": 81, "h": 79 }, + "rotated": false, + "trimmed": true, + "spriteSourceSize": { "x": 26, "y": 6, "w": 81, "h": 79 }, + "sourceSize": { "w": 112, "h": 86 }, + "duration": 100 + }, + { + "filename": "0030.png", + "frame": { "x": 176, "y": 326, "w": 82, "h": 80 }, + "rotated": false, + "trimmed": true, + "spriteSourceSize": { "x": 24, "y": 5, "w": 82, "h": 80 }, + "sourceSize": { "w": 112, "h": 86 }, + "duration": 100 + }, + { + "filename": "0031.png", + "frame": { "x": 89, "y": 258, "w": 84, "h": 80 }, + "rotated": false, + "trimmed": true, + "spriteSourceSize": { "x": 21, "y": 5, "w": 84, "h": 80 }, + "sourceSize": { "w": 112, "h": 86 }, + "duration": 100 + }, + { + "filename": "0032.png", + "frame": { "x": 1, "y": 250, "w": 85, "h": 81 }, + "rotated": false, + "trimmed": true, + "spriteSourceSize": { "x": 18, "y": 4, "w": 85, "h": 81 }, + "sourceSize": { "w": 112, "h": 86 }, + "duration": 100 + }, + { + "filename": "0033.png", + "frame": { "x": 189, "y": 242, "w": 90, "h": 81 }, + "rotated": false, + "trimmed": true, + "spriteSourceSize": { "x": 12, "y": 4, "w": 90, "h": 81 }, + "sourceSize": { "w": 112, "h": 86 }, + "duration": 100 + }, + { + "filename": "0034.png", + "frame": { "x": 1, "y": 166, "w": 94, "h": 81 }, + "rotated": false, + "trimmed": true, + "spriteSourceSize": { "x": 10, "y": 4, "w": 94, "h": 81 }, + "sourceSize": { "w": 112, "h": 86 }, + "duration": 100 + }, + { + "filename": "0035.png", + "frame": { "x": 545, "y": 84, "w": 98, "h": 81 }, + "rotated": false, + "trimmed": true, + "spriteSourceSize": { "x": 7, "y": 4, "w": 98, "h": 81 }, + "sourceSize": { "w": 112, "h": 86 }, + "duration": 100 + }, + { + "filename": "0036.png", + "frame": { "x": 545, "y": 1, "w": 103, "h": 80 }, + "rotated": false, + "trimmed": true, + "spriteSourceSize": { "x": 4, "y": 5, "w": 103, "h": 80 }, + "sourceSize": { "w": 112, "h": 86 }, + "duration": 100 + }, + { + "filename": "0037.png", + "frame": { "x": 333, "y": 1, "w": 106, "h": 80 }, + "rotated": false, + "trimmed": true, + "spriteSourceSize": { "x": 2, "y": 5, "w": 106, "h": 80 }, + "sourceSize": { "w": 112, "h": 86 }, + "duration": 100 + }, + { + "filename": "0038.png", + "frame": { "x": 1, "y": 1, "w": 110, "h": 79 }, + "rotated": false, + "trimmed": true, + "spriteSourceSize": { "x": 0, "y": 6, "w": 110, "h": 79 }, + "sourceSize": { "w": 112, "h": 86 }, + "duration": 100 + }, + { + "filename": "0039.png", + "frame": { "x": 220, "y": 1, "w": 110, "h": 78 }, + "rotated": false, + "trimmed": true, + "spriteSourceSize": { "x": 1, "y": 7, "w": 110, "h": 78 }, + "sourceSize": { "w": 112, "h": 86 }, + "duration": 100 + }, + { + "filename": "0040.png", + "frame": { "x": 651, "y": 1, "w": 106, "h": 77 }, + "rotated": false, + "trimmed": true, + "spriteSourceSize": { "x": 6, "y": 8, "w": 106, "h": 77 }, + "sourceSize": { "w": 112, "h": 86 }, + "duration": 100 + }, + { + "filename": "0041.png", + "frame": { "x": 204, "y": 162, "w": 102, "h": 77 }, + "rotated": false, + "trimmed": true, + "spriteSourceSize": { "x": 9, "y": 8, "w": 102, "h": 77 }, + "sourceSize": { "w": 112, "h": 86 }, + "duration": 100 + }, + { + "filename": "0042.png", + "frame": { "x": 309, "y": 165, "w": 97, "h": 80 }, + "rotated": false, + "trimmed": true, + "spriteSourceSize": { "x": 13, "y": 5, "w": 97, "h": 80 }, + "sourceSize": { "w": 112, "h": 86 }, + "duration": 100 + }, + { + "filename": "0043.png", + "frame": { "x": 98, "y": 172, "w": 88, "h": 83 }, + "rotated": false, + "trimmed": true, + "spriteSourceSize": { "x": 21, "y": 2, "w": 88, "h": 83 }, + "sourceSize": { "w": 112, "h": 86 }, + "duration": 100 + }, + { + "filename": "0044.png", + "frame": { "x": 461, "y": 251, "w": 83, "h": 81 }, + "rotated": false, + "trimmed": true, + "spriteSourceSize": { "x": 25, "y": 4, "w": 83, "h": 81 }, + "sourceSize": { "w": 112, "h": 86 }, + "duration": 100 + }, + { + "filename": "0045.png", + "frame": { "x": 341, "y": 332, "w": 81, "h": 79 }, + "rotated": false, + "trimmed": true, + "spriteSourceSize": { "x": 26, "y": 6, "w": 81, "h": 79 }, + "sourceSize": { "w": 112, "h": 86 }, + "duration": 100 + }, + { + "filename": "0046.png", + "frame": { "x": 176, "y": 326, "w": 82, "h": 80 }, + "rotated": false, + "trimmed": true, + "spriteSourceSize": { "x": 24, "y": 5, "w": 82, "h": 80 }, + "sourceSize": { "w": 112, "h": 86 }, + "duration": 100 + }, + { + "filename": "0047.png", + "frame": { "x": 89, "y": 258, "w": 84, "h": 80 }, + "rotated": false, + "trimmed": true, + "spriteSourceSize": { "x": 21, "y": 5, "w": 84, "h": 80 }, + "sourceSize": { "w": 112, "h": 86 }, + "duration": 100 + }, + { + "filename": "0048.png", + "frame": { "x": 1, "y": 250, "w": 85, "h": 81 }, + "rotated": false, + "trimmed": true, + "spriteSourceSize": { "x": 18, "y": 4, "w": 85, "h": 81 }, + "sourceSize": { "w": 112, "h": 86 }, + "duration": 100 + }, + { + "filename": "0049.png", + "frame": { "x": 189, "y": 242, "w": 90, "h": 81 }, + "rotated": false, + "trimmed": true, + "spriteSourceSize": { "x": 12, "y": 4, "w": 90, "h": 81 }, + "sourceSize": { "w": 112, "h": 86 }, + "duration": 100 + }, + { + "filename": "0050.png", + "frame": { "x": 1, "y": 166, "w": 94, "h": 81 }, + "rotated": false, + "trimmed": true, + "spriteSourceSize": { "x": 10, "y": 4, "w": 94, "h": 81 }, + "sourceSize": { "w": 112, "h": 86 }, + "duration": 100 + }, + { + "filename": "0051.png", + "frame": { "x": 545, "y": 84, "w": 98, "h": 81 }, + "rotated": false, + "trimmed": true, + "spriteSourceSize": { "x": 7, "y": 4, "w": 98, "h": 81 }, + "sourceSize": { "w": 112, "h": 86 }, + "duration": 100 + }, + { + "filename": "0052.png", + "frame": { "x": 545, "y": 1, "w": 103, "h": 80 }, + "rotated": false, + "trimmed": true, + "spriteSourceSize": { "x": 4, "y": 5, "w": 103, "h": 80 }, + "sourceSize": { "w": 112, "h": 86 }, + "duration": 100 + }, + { + "filename": "0053.png", + "frame": { "x": 333, "y": 1, "w": 106, "h": 80 }, + "rotated": false, + "trimmed": true, + "spriteSourceSize": { "x": 2, "y": 5, "w": 106, "h": 80 }, + "sourceSize": { "w": 112, "h": 86 }, + "duration": 100 + }, + { + "filename": "0054.png", + "frame": { "x": 1, "y": 1, "w": 110, "h": 79 }, + "rotated": false, + "trimmed": true, + "spriteSourceSize": { "x": 0, "y": 6, "w": 110, "h": 79 }, + "sourceSize": { "w": 112, "h": 86 }, + "duration": 100 + }, + { + "filename": "0055.png", + "frame": { "x": 220, "y": 1, "w": 110, "h": 78 }, + "rotated": false, + "trimmed": true, + "spriteSourceSize": { "x": 1, "y": 7, "w": 110, "h": 78 }, + "sourceSize": { "w": 112, "h": 86 }, + "duration": 100 + }, + { + "filename": "0056.png", + "frame": { "x": 651, "y": 1, "w": 106, "h": 77 }, + "rotated": false, + "trimmed": true, + "spriteSourceSize": { "x": 6, "y": 8, "w": 106, "h": 77 }, + "sourceSize": { "w": 112, "h": 86 }, + "duration": 100 + }, + { + "filename": "0057.png", + "frame": { "x": 204, "y": 162, "w": 102, "h": 77 }, + "rotated": false, + "trimmed": true, + "spriteSourceSize": { "x": 9, "y": 8, "w": 102, "h": 77 }, + "sourceSize": { "w": 112, "h": 86 }, + "duration": 100 + }, + { + "filename": "0058.png", + "frame": { "x": 309, "y": 165, "w": 97, "h": 80 }, + "rotated": false, + "trimmed": true, + "spriteSourceSize": { "x": 13, "y": 5, "w": 97, "h": 80 }, + "sourceSize": { "w": 112, "h": 86 }, + "duration": 100 + }, + { + "filename": "0059.png", + "frame": { "x": 98, "y": 172, "w": 88, "h": 83 }, + "rotated": false, + "trimmed": true, + "spriteSourceSize": { "x": 21, "y": 2, "w": 88, "h": 83 }, + "sourceSize": { "w": 112, "h": 86 }, + "duration": 100 + }, + { + "filename": "0060.png", + "frame": { "x": 461, "y": 251, "w": 83, "h": 81 }, + "rotated": false, + "trimmed": true, + "spriteSourceSize": { "x": 25, "y": 4, "w": 83, "h": 81 }, + "sourceSize": { "w": 112, "h": 86 }, + "duration": 100 + }, + { + "filename": "0061.png", + "frame": { "x": 341, "y": 332, "w": 81, "h": 79 }, + "rotated": false, + "trimmed": true, + "spriteSourceSize": { "x": 26, "y": 6, "w": 81, "h": 79 }, + "sourceSize": { "w": 112, "h": 86 }, + "duration": 100 + }, + { + "filename": "0062.png", + "frame": { "x": 176, "y": 326, "w": 82, "h": 80 }, + "rotated": false, + "trimmed": true, + "spriteSourceSize": { "x": 24, "y": 5, "w": 82, "h": 80 }, + "sourceSize": { "w": 112, "h": 86 }, + "duration": 100 + }, + { + "filename": "0063.png", + "frame": { "x": 89, "y": 258, "w": 84, "h": 80 }, + "rotated": false, + "trimmed": true, + "spriteSourceSize": { "x": 21, "y": 5, "w": 84, "h": 80 }, + "sourceSize": { "w": 112, "h": 86 }, + "duration": 100 + }, + { + "filename": "0064.png", + "frame": { "x": 1, "y": 250, "w": 85, "h": 81 }, + "rotated": false, + "trimmed": true, + "spriteSourceSize": { "x": 18, "y": 4, "w": 85, "h": 81 }, + "sourceSize": { "w": 112, "h": 86 }, + "duration": 100 + }, + { + "filename": "0065.png", + "frame": { "x": 409, "y": 166, "w": 93, "h": 81 }, + "rotated": false, + "trimmed": true, + "spriteSourceSize": { "x": 9, "y": 4, "w": 93, "h": 81 }, + "sourceSize": { "w": 112, "h": 86 }, + "duration": 100 + }, + { + "filename": "0066.png", + "frame": { "x": 104, "y": 88, "w": 97, "h": 81 }, + "rotated": false, + "trimmed": true, + "spriteSourceSize": { "x": 7, "y": 4, "w": 97, "h": 81 }, + "sourceSize": { "w": 112, "h": 86 }, + "duration": 100 + }, + { + "filename": "0067.png", + "frame": { "x": 1, "y": 83, "w": 100, "h": 80 }, + "rotated": false, + "trimmed": true, + "spriteSourceSize": { "x": 5, "y": 5, "w": 100, "h": 80 }, + "sourceSize": { "w": 112, "h": 86 }, + "duration": 100 + }, + { + "filename": "0068.png", + "frame": { "x": 651, "y": 81, "w": 102, "h": 79 }, + "rotated": false, + "trimmed": true, + "spriteSourceSize": { "x": 4, "y": 6, "w": 102, "h": 79 }, + "sourceSize": { "w": 112, "h": 86 }, + "duration": 100 + }, + { + "filename": "0069.png", + "frame": { "x": 220, "y": 82, "w": 104, "h": 77 }, + "rotated": false, + "trimmed": true, + "spriteSourceSize": { "x": 4, "y": 8, "w": 104, "h": 77 }, + "sourceSize": { "w": 112, "h": 86 }, + "duration": 100 + }, + { + "filename": "0070.png", + "frame": { "x": 432, "y": 87, "w": 104, "h": 76 }, + "rotated": false, + "trimmed": true, + "spriteSourceSize": { "x": 5, "y": 9, "w": 104, "h": 76 }, + "sourceSize": { "w": 112, "h": 86 }, + "duration": 100 + }, + { + "filename": "0071.png", + "frame": { "x": 327, "y": 84, "w": 102, "h": 78 }, + "rotated": false, + "trimmed": true, + "spriteSourceSize": { "x": 2, "y": 7, "w": 102, "h": 78 }, + "sourceSize": { "w": 112, "h": 86 }, + "duration": 100 + }, + { + "filename": "0072.png", + "frame": { "x": 646, "y": 163, "w": 96, "h": 81 }, + "rotated": false, + "trimmed": true, + "spriteSourceSize": { "x": 2, "y": 4, "w": 96, "h": 81 }, + "sourceSize": { "w": 112, "h": 86 }, + "duration": 100 + }, + { + "filename": "0073.png", + "frame": { "x": 442, "y": 1, "w": 100, "h": 83 }, + "rotated": false, + "trimmed": true, + "spriteSourceSize": { "x": 2, "y": 2, "w": 100, "h": 83 }, + "sourceSize": { "w": 112, "h": 86 }, + "duration": 100 + }, + { + "filename": "0074.png", + "frame": { "x": 114, "y": 1, "w": 103, "h": 84 }, + "rotated": false, + "trimmed": true, + "spriteSourceSize": { "x": 0, "y": 1, "w": 103, "h": 84 }, + "sourceSize": { "w": 112, "h": 86 }, + "duration": 100 + }, + { + "filename": "0075.png", + "frame": { "x": 505, "y": 168, "w": 92, "h": 80 }, + "rotated": false, + "trimmed": true, + "spriteSourceSize": { "x": 13, "y": 5, "w": 92, "h": 80 }, + "sourceSize": { "w": 112, "h": 86 }, + "duration": 100 + }, + { + "filename": "0076.png", + "frame": { "x": 83, "y": 341, "w": 75, "h": 85 }, + "rotated": false, + "trimmed": true, + "spriteSourceSize": { "x": 33, "y": 0, "w": 75, "h": 85 }, + "sourceSize": { "w": 112, "h": 86 }, + "duration": 100 + }, + { + "filename": "0077.png", + "frame": { "x": 579, "y": 415, "w": 72, "h": 74 }, + "rotated": false, + "trimmed": true, + "spriteSourceSize": { "x": 36, "y": 12, "w": 72, "h": 74 }, + "sourceSize": { "w": 112, "h": 86 }, + "duration": 100 + }, + { + "filename": "0078.png", + "frame": { "x": 504, "y": 413, "w": 72, "h": 80 }, + "rotated": false, + "trimmed": true, + "spriteSourceSize": { "x": 36, "y": 5, "w": 72, "h": 80 }, + "sourceSize": { "w": 112, "h": 86 }, + "duration": 100 + }, + { + "filename": "0079.png", + "frame": { "x": 341, "y": 414, "w": 72, "h": 75 }, + "rotated": false, + "trimmed": true, + "spriteSourceSize": { "x": 36, "y": 10, "w": 72, "h": 75 }, + "sourceSize": { "w": 112, "h": 86 }, + "duration": 100 + }, + { + "filename": "0080.png", + "frame": { "x": 693, "y": 247, "w": 73, "h": 80 }, + "rotated": false, + "trimmed": true, + "spriteSourceSize": { "x": 35, "y": 5, "w": 73, "h": 80 }, + "sourceSize": { "w": 112, "h": 86 }, + "duration": 100 + }, + { + "filename": "0081.png", + "frame": { "x": 161, "y": 409, "w": 74, "h": 82 }, + "rotated": false, + "trimmed": true, + "spriteSourceSize": { "x": 34, "y": 3, "w": 74, "h": 82 }, + "sourceSize": { "w": 112, "h": 86 }, + "duration": 100 + }, + { + "filename": "0082.png", + "frame": { "x": 425, "y": 335, "w": 76, "h": 84 }, + "rotated": false, + "trimmed": true, + "spriteSourceSize": { "x": 31, "y": 1, "w": 76, "h": 84 }, + "sourceSize": { "w": 112, "h": 86 }, + "duration": 100 + }, + { + "filename": "0083.png", + "frame": { "x": 261, "y": 331, "w": 77, "h": 84 }, + "rotated": false, + "trimmed": true, + "spriteSourceSize": { "x": 29, "y": 1, "w": 77, "h": 84 }, + "sourceSize": { "w": 112, "h": 86 }, + "duration": 100 + }, + { + "filename": "0084.png", + "frame": { "x": 632, "y": 330, "w": 79, "h": 82 }, + "rotated": false, + "trimmed": true, + "spriteSourceSize": { "x": 26, "y": 3, "w": 79, "h": 82 }, + "sourceSize": { "w": 112, "h": 86 }, + "duration": 100 + }, + { + "filename": "0085.png", + "frame": { "x": 1, "y": 334, "w": 79, "h": 81 }, + "rotated": false, + "trimmed": true, + "spriteSourceSize": { "x": 24, "y": 4, "w": 79, "h": 81 }, + "sourceSize": { "w": 112, "h": 86 }, + "duration": 100 + }, + { + "filename": "0086.png", + "frame": { "x": 547, "y": 330, "w": 82, "h": 80 }, + "rotated": false, + "trimmed": true, + "spriteSourceSize": { "x": 21, "y": 5, "w": 82, "h": 80 }, + "sourceSize": { "w": 112, "h": 86 }, + "duration": 100 + }, + { + "filename": "0087.png", + "frame": { "x": 372, "y": 250, "w": 86, "h": 79 }, + "rotated": false, + "trimmed": true, + "spriteSourceSize": { "x": 17, "y": 6, "w": 86, "h": 79 }, + "sourceSize": { "w": 112, "h": 86 }, + "duration": 100 + }, + { + "filename": "0088.png", + "frame": { "x": 282, "y": 248, "w": 87, "h": 80 }, + "rotated": false, + "trimmed": true, + "spriteSourceSize": { "x": 15, "y": 5, "w": 87, "h": 80 }, + "sourceSize": { "w": 112, "h": 86 }, + "duration": 100 + }, + { + "filename": "0089.png", + "frame": { "x": 600, "y": 247, "w": 90, "h": 80 }, + "rotated": false, + "trimmed": true, + "spriteSourceSize": { "x": 12, "y": 5, "w": 90, "h": 80 }, + "sourceSize": { "w": 112, "h": 86 }, + "duration": 100 + } + ], + "meta": { + "app": "https://www.aseprite.org/", + "version": "1.3.13-x64", + "image": "784.png", + "format": "I8", + "size": { "w": 767, "h": 494 }, + "scale": "1" + } } diff --git a/public/images/pokemon/back/784.png b/public/images/pokemon/back/784.png index 365f0d0610d..08b953b3351 100644 Binary files a/public/images/pokemon/back/784.png and b/public/images/pokemon/back/784.png differ diff --git a/public/images/pokemon/back/840.png b/public/images/pokemon/back/840.png index f9ff9f11790..a247dc33939 100644 Binary files a/public/images/pokemon/back/840.png and b/public/images/pokemon/back/840.png differ diff --git a/public/images/pokemon/back/841-gigantamax.png b/public/images/pokemon/back/841-gigantamax.png index af30e475002..7c7e9e442b5 100644 Binary files a/public/images/pokemon/back/841-gigantamax.png and b/public/images/pokemon/back/841-gigantamax.png differ diff --git a/public/images/pokemon/back/841.png b/public/images/pokemon/back/841.png index 705b651521b..7b083594ab0 100644 Binary files a/public/images/pokemon/back/841.png and b/public/images/pokemon/back/841.png differ diff --git a/public/images/pokemon/back/842-gigantamax.png b/public/images/pokemon/back/842-gigantamax.png index af30e475002..7c7e9e442b5 100644 Binary files a/public/images/pokemon/back/842-gigantamax.png and b/public/images/pokemon/back/842-gigantamax.png differ diff --git a/public/images/pokemon/back/842.png b/public/images/pokemon/back/842.png index d3f9ff8e12b..f6f72d57b06 100644 Binary files a/public/images/pokemon/back/842.png and b/public/images/pokemon/back/842.png differ diff --git a/public/images/pokemon/back/871.png b/public/images/pokemon/back/871.png index 657da7f864f..73eb65ab089 100644 Binary files a/public/images/pokemon/back/871.png and b/public/images/pokemon/back/871.png differ diff --git a/public/images/pokemon/back/female/332.png b/public/images/pokemon/back/female/332.png index a6940fbaba6..a432b1af4b2 100644 Binary files a/public/images/pokemon/back/female/332.png and b/public/images/pokemon/back/female/332.png differ diff --git a/public/images/pokemon/back/female/396.png b/public/images/pokemon/back/female/396.png index 0222da73920..d18d4c1a99a 100644 Binary files a/public/images/pokemon/back/female/396.png and b/public/images/pokemon/back/female/396.png differ diff --git a/public/images/pokemon/back/female/397.png b/public/images/pokemon/back/female/397.png index a1f7f52a0e4..32768daead2 100644 Binary files a/public/images/pokemon/back/female/397.png and b/public/images/pokemon/back/female/397.png differ diff --git a/public/images/pokemon/back/female/398.png b/public/images/pokemon/back/female/398.png index 57fbb92e12f..bf296c54b91 100644 Binary files a/public/images/pokemon/back/female/398.png and b/public/images/pokemon/back/female/398.png differ diff --git a/public/images/pokemon/back/female/403.png b/public/images/pokemon/back/female/403.png index 68ed4a12507..b730b32f6ee 100644 Binary files a/public/images/pokemon/back/female/403.png and b/public/images/pokemon/back/female/403.png differ diff --git a/public/images/pokemon/back/female/404.png b/public/images/pokemon/back/female/404.png index d6fdef26c83..27602ee0439 100644 Binary files a/public/images/pokemon/back/female/404.png and b/public/images/pokemon/back/female/404.png differ diff --git a/public/images/pokemon/back/female/405.png b/public/images/pokemon/back/female/405.png index 21d28b1fede..1aa669e1fbd 100644 Binary files a/public/images/pokemon/back/female/405.png and b/public/images/pokemon/back/female/405.png differ diff --git a/public/images/pokemon/back/shiny/782.json b/public/images/pokemon/back/shiny/782.json index 326e8fa09de..ed58485e3bd 100644 --- a/public/images/pokemon/back/shiny/782.json +++ b/public/images/pokemon/back/shiny/782.json @@ -1,41 +1,1010 @@ -{ - "textures": [ - { - "image": "782.png", - "format": "RGBA8888", - "size": { - "w": 50, - "h": 50 - }, - "scale": 1, - "frames": [ - { - "filename": "0001.png", - "rotated": false, - "trimmed": false, - "sourceSize": { - "w": 46, - "h": 50 - }, - "spriteSourceSize": { - "x": 0, - "y": 0, - "w": 46, - "h": 50 - }, - "frame": { - "x": 0, - "y": 0, - "w": 46, - "h": 50 - } - } - ] - } - ], - "meta": { - "app": "https://www.codeandweb.com/texturepacker", - "version": "3.0", - "smartupdate": "$TexturePacker:SmartUpdate:ab84568c98e2c8417dfbab0b26bf5b7a:bf5226700592a08e6818638b6aca1b1a:d07862436676aa228a148ee1f1d82a8f$" - } +{ "frames": [ + { + "filename": "0001.png", + "frame": { "x": 47, "y": 105, "w": 46, "h": 50 }, + "rotated": false, + "trimmed": true, + "spriteSourceSize": { "x": 23, "y": 24, "w": 46, "h": 50 }, + "sourceSize": { "w": 96, "h": 96 }, + "duration": 50 + }, + { + "filename": "0002.png", + "frame": { "x": 47, "y": 105, "w": 46, "h": 50 }, + "rotated": false, + "trimmed": true, + "spriteSourceSize": { "x": 23, "y": 24, "w": 46, "h": 50 }, + "sourceSize": { "w": 96, "h": 96 }, + "duration": 50 + }, + { + "filename": "0003.png", + "frame": { "x": 93, "y": 105, "w": 46, "h": 50 }, + "rotated": false, + "trimmed": true, + "spriteSourceSize": { "x": 23, "y": 24, "w": 46, "h": 50 }, + "sourceSize": { "w": 96, "h": 96 }, + "duration": 50 + }, + { + "filename": "0004.png", + "frame": { "x": 93, "y": 105, "w": 46, "h": 50 }, + "rotated": false, + "trimmed": true, + "spriteSourceSize": { "x": 23, "y": 24, "w": 46, "h": 50 }, + "sourceSize": { "w": 96, "h": 96 }, + "duration": 50 + }, + { + "filename": "0005.png", + "frame": { "x": 139, "y": 105, "w": 46, "h": 50 }, + "rotated": false, + "trimmed": true, + "spriteSourceSize": { "x": 24, "y": 24, "w": 46, "h": 50 }, + "sourceSize": { "w": 96, "h": 96 }, + "duration": 50 + }, + { + "filename": "0006.png", + "frame": { "x": 139, "y": 105, "w": 46, "h": 50 }, + "rotated": false, + "trimmed": true, + "spriteSourceSize": { "x": 24, "y": 24, "w": 46, "h": 50 }, + "sourceSize": { "w": 96, "h": 96 }, + "duration": 50 + }, + { + "filename": "0007.png", + "frame": { "x": 183, "y": 155, "w": 45, "h": 49 }, + "rotated": false, + "trimmed": true, + "spriteSourceSize": { "x": 25, "y": 25, "w": 45, "h": 49 }, + "sourceSize": { "w": 96, "h": 96 }, + "duration": 50 + }, + { + "filename": "0008.png", + "frame": { "x": 183, "y": 155, "w": 45, "h": 49 }, + "rotated": false, + "trimmed": true, + "spriteSourceSize": { "x": 25, "y": 25, "w": 45, "h": 49 }, + "sourceSize": { "w": 96, "h": 96 }, + "duration": 50 + }, + { + "filename": "0009.png", + "frame": { "x": 137, "y": 155, "w": 46, "h": 48 }, + "rotated": false, + "trimmed": true, + "spriteSourceSize": { "x": 25, "y": 26, "w": 46, "h": 48 }, + "sourceSize": { "w": 96, "h": 96 }, + "duration": 50 + }, + { + "filename": "0010.png", + "frame": { "x": 137, "y": 155, "w": 46, "h": 48 }, + "rotated": false, + "trimmed": true, + "spriteSourceSize": { "x": 25, "y": 26, "w": 46, "h": 48 }, + "sourceSize": { "w": 96, "h": 96 }, + "duration": 50 + }, + { + "filename": "0011.png", + "frame": { "x": 1, "y": 157, "w": 45, "h": 49 }, + "rotated": false, + "trimmed": true, + "spriteSourceSize": { "x": 25, "y": 25, "w": 45, "h": 49 }, + "sourceSize": { "w": 96, "h": 96 }, + "duration": 50 + }, + { + "filename": "0012.png", + "frame": { "x": 1, "y": 157, "w": 45, "h": 49 }, + "rotated": false, + "trimmed": true, + "spriteSourceSize": { "x": 25, "y": 25, "w": 45, "h": 49 }, + "sourceSize": { "w": 96, "h": 96 }, + "duration": 50 + }, + { + "filename": "0013.png", + "frame": { "x": 47, "y": 155, "w": 45, "h": 50 }, + "rotated": false, + "trimmed": true, + "spriteSourceSize": { "x": 25, "y": 24, "w": 45, "h": 50 }, + "sourceSize": { "w": 96, "h": 96 }, + "duration": 50 + }, + { + "filename": "0014.png", + "frame": { "x": 47, "y": 155, "w": 45, "h": 50 }, + "rotated": false, + "trimmed": true, + "spriteSourceSize": { "x": 25, "y": 24, "w": 45, "h": 50 }, + "sourceSize": { "w": 96, "h": 96 }, + "duration": 50 + }, + { + "filename": "0015.png", + "frame": { "x": 92, "y": 155, "w": 45, "h": 50 }, + "rotated": false, + "trimmed": true, + "spriteSourceSize": { "x": 24, "y": 24, "w": 45, "h": 50 }, + "sourceSize": { "w": 96, "h": 96 }, + "duration": 50 + }, + { + "filename": "0016.png", + "frame": { "x": 92, "y": 155, "w": 45, "h": 50 }, + "rotated": false, + "trimmed": true, + "spriteSourceSize": { "x": 24, "y": 24, "w": 45, "h": 50 }, + "sourceSize": { "w": 96, "h": 96 }, + "duration": 50 + }, + { + "filename": "0017.png", + "frame": { "x": 47, "y": 105, "w": 46, "h": 50 }, + "rotated": false, + "trimmed": true, + "spriteSourceSize": { "x": 23, "y": 24, "w": 46, "h": 50 }, + "sourceSize": { "w": 96, "h": 96 }, + "duration": 50 + }, + { + "filename": "0018.png", + "frame": { "x": 47, "y": 105, "w": 46, "h": 50 }, + "rotated": false, + "trimmed": true, + "spriteSourceSize": { "x": 23, "y": 24, "w": 46, "h": 50 }, + "sourceSize": { "w": 96, "h": 96 }, + "duration": 50 + }, + { + "filename": "0019.png", + "frame": { "x": 93, "y": 105, "w": 46, "h": 50 }, + "rotated": false, + "trimmed": true, + "spriteSourceSize": { "x": 23, "y": 24, "w": 46, "h": 50 }, + "sourceSize": { "w": 96, "h": 96 }, + "duration": 50 + }, + { + "filename": "0020.png", + "frame": { "x": 93, "y": 105, "w": 46, "h": 50 }, + "rotated": false, + "trimmed": true, + "spriteSourceSize": { "x": 23, "y": 24, "w": 46, "h": 50 }, + "sourceSize": { "w": 96, "h": 96 }, + "duration": 50 + }, + { + "filename": "0021.png", + "frame": { "x": 139, "y": 105, "w": 46, "h": 50 }, + "rotated": false, + "trimmed": true, + "spriteSourceSize": { "x": 24, "y": 24, "w": 46, "h": 50 }, + "sourceSize": { "w": 96, "h": 96 }, + "duration": 50 + }, + { + "filename": "0022.png", + "frame": { "x": 139, "y": 105, "w": 46, "h": 50 }, + "rotated": false, + "trimmed": true, + "spriteSourceSize": { "x": 24, "y": 24, "w": 46, "h": 50 }, + "sourceSize": { "w": 96, "h": 96 }, + "duration": 50 + }, + { + "filename": "0023.png", + "frame": { "x": 183, "y": 155, "w": 45, "h": 49 }, + "rotated": false, + "trimmed": true, + "spriteSourceSize": { "x": 25, "y": 25, "w": 45, "h": 49 }, + "sourceSize": { "w": 96, "h": 96 }, + "duration": 50 + }, + { + "filename": "0024.png", + "frame": { "x": 183, "y": 155, "w": 45, "h": 49 }, + "rotated": false, + "trimmed": true, + "spriteSourceSize": { "x": 25, "y": 25, "w": 45, "h": 49 }, + "sourceSize": { "w": 96, "h": 96 }, + "duration": 50 + }, + { + "filename": "0025.png", + "frame": { "x": 137, "y": 155, "w": 46, "h": 48 }, + "rotated": false, + "trimmed": true, + "spriteSourceSize": { "x": 25, "y": 26, "w": 46, "h": 48 }, + "sourceSize": { "w": 96, "h": 96 }, + "duration": 50 + }, + { + "filename": "0026.png", + "frame": { "x": 137, "y": 155, "w": 46, "h": 48 }, + "rotated": false, + "trimmed": true, + "spriteSourceSize": { "x": 25, "y": 26, "w": 46, "h": 48 }, + "sourceSize": { "w": 96, "h": 96 }, + "duration": 50 + }, + { + "filename": "0027.png", + "frame": { "x": 1, "y": 157, "w": 45, "h": 49 }, + "rotated": false, + "trimmed": true, + "spriteSourceSize": { "x": 25, "y": 25, "w": 45, "h": 49 }, + "sourceSize": { "w": 96, "h": 96 }, + "duration": 50 + }, + { + "filename": "0028.png", + "frame": { "x": 1, "y": 157, "w": 45, "h": 49 }, + "rotated": false, + "trimmed": true, + "spriteSourceSize": { "x": 25, "y": 25, "w": 45, "h": 49 }, + "sourceSize": { "w": 96, "h": 96 }, + "duration": 50 + }, + { + "filename": "0029.png", + "frame": { "x": 47, "y": 155, "w": 45, "h": 50 }, + "rotated": false, + "trimmed": true, + "spriteSourceSize": { "x": 25, "y": 24, "w": 45, "h": 50 }, + "sourceSize": { "w": 96, "h": 96 }, + "duration": 50 + }, + { + "filename": "0030.png", + "frame": { "x": 47, "y": 155, "w": 45, "h": 50 }, + "rotated": false, + "trimmed": true, + "spriteSourceSize": { "x": 25, "y": 24, "w": 45, "h": 50 }, + "sourceSize": { "w": 96, "h": 96 }, + "duration": 50 + }, + { + "filename": "0031.png", + "frame": { "x": 92, "y": 155, "w": 45, "h": 50 }, + "rotated": false, + "trimmed": true, + "spriteSourceSize": { "x": 24, "y": 24, "w": 45, "h": 50 }, + "sourceSize": { "w": 96, "h": 96 }, + "duration": 50 + }, + { + "filename": "0032.png", + "frame": { "x": 92, "y": 155, "w": 45, "h": 50 }, + "rotated": false, + "trimmed": true, + "spriteSourceSize": { "x": 24, "y": 24, "w": 45, "h": 50 }, + "sourceSize": { "w": 96, "h": 96 }, + "duration": 50 + }, + { + "filename": "0033.png", + "frame": { "x": 47, "y": 105, "w": 46, "h": 50 }, + "rotated": false, + "trimmed": true, + "spriteSourceSize": { "x": 23, "y": 24, "w": 46, "h": 50 }, + "sourceSize": { "w": 96, "h": 96 }, + "duration": 50 + }, + { + "filename": "0034.png", + "frame": { "x": 47, "y": 105, "w": 46, "h": 50 }, + "rotated": false, + "trimmed": true, + "spriteSourceSize": { "x": 23, "y": 24, "w": 46, "h": 50 }, + "sourceSize": { "w": 96, "h": 96 }, + "duration": 50 + }, + { + "filename": "0035.png", + "frame": { "x": 93, "y": 105, "w": 46, "h": 50 }, + "rotated": false, + "trimmed": true, + "spriteSourceSize": { "x": 23, "y": 24, "w": 46, "h": 50 }, + "sourceSize": { "w": 96, "h": 96 }, + "duration": 50 + }, + { + "filename": "0036.png", + "frame": { "x": 93, "y": 105, "w": 46, "h": 50 }, + "rotated": false, + "trimmed": true, + "spriteSourceSize": { "x": 23, "y": 24, "w": 46, "h": 50 }, + "sourceSize": { "w": 96, "h": 96 }, + "duration": 50 + }, + { + "filename": "0037.png", + "frame": { "x": 139, "y": 105, "w": 46, "h": 50 }, + "rotated": false, + "trimmed": true, + "spriteSourceSize": { "x": 24, "y": 24, "w": 46, "h": 50 }, + "sourceSize": { "w": 96, "h": 96 }, + "duration": 50 + }, + { + "filename": "0038.png", + "frame": { "x": 139, "y": 105, "w": 46, "h": 50 }, + "rotated": false, + "trimmed": true, + "spriteSourceSize": { "x": 24, "y": 24, "w": 46, "h": 50 }, + "sourceSize": { "w": 96, "h": 96 }, + "duration": 50 + }, + { + "filename": "0039.png", + "frame": { "x": 183, "y": 155, "w": 45, "h": 49 }, + "rotated": false, + "trimmed": true, + "spriteSourceSize": { "x": 25, "y": 25, "w": 45, "h": 49 }, + "sourceSize": { "w": 96, "h": 96 }, + "duration": 50 + }, + { + "filename": "0040.png", + "frame": { "x": 183, "y": 155, "w": 45, "h": 49 }, + "rotated": false, + "trimmed": true, + "spriteSourceSize": { "x": 25, "y": 25, "w": 45, "h": 49 }, + "sourceSize": { "w": 96, "h": 96 }, + "duration": 50 + }, + { + "filename": "0041.png", + "frame": { "x": 137, "y": 155, "w": 46, "h": 48 }, + "rotated": false, + "trimmed": true, + "spriteSourceSize": { "x": 25, "y": 26, "w": 46, "h": 48 }, + "sourceSize": { "w": 96, "h": 96 }, + "duration": 50 + }, + { + "filename": "0042.png", + "frame": { "x": 137, "y": 155, "w": 46, "h": 48 }, + "rotated": false, + "trimmed": true, + "spriteSourceSize": { "x": 25, "y": 26, "w": 46, "h": 48 }, + "sourceSize": { "w": 96, "h": 96 }, + "duration": 50 + }, + { + "filename": "0043.png", + "frame": { "x": 1, "y": 157, "w": 45, "h": 49 }, + "rotated": false, + "trimmed": true, + "spriteSourceSize": { "x": 25, "y": 25, "w": 45, "h": 49 }, + "sourceSize": { "w": 96, "h": 96 }, + "duration": 50 + }, + { + "filename": "0044.png", + "frame": { "x": 1, "y": 157, "w": 45, "h": 49 }, + "rotated": false, + "trimmed": true, + "spriteSourceSize": { "x": 25, "y": 25, "w": 45, "h": 49 }, + "sourceSize": { "w": 96, "h": 96 }, + "duration": 50 + }, + { + "filename": "0045.png", + "frame": { "x": 47, "y": 155, "w": 45, "h": 50 }, + "rotated": false, + "trimmed": true, + "spriteSourceSize": { "x": 25, "y": 24, "w": 45, "h": 50 }, + "sourceSize": { "w": 96, "h": 96 }, + "duration": 50 + }, + { + "filename": "0046.png", + "frame": { "x": 47, "y": 155, "w": 45, "h": 50 }, + "rotated": false, + "trimmed": true, + "spriteSourceSize": { "x": 25, "y": 24, "w": 45, "h": 50 }, + "sourceSize": { "w": 96, "h": 96 }, + "duration": 50 + }, + { + "filename": "0047.png", + "frame": { "x": 92, "y": 155, "w": 45, "h": 50 }, + "rotated": false, + "trimmed": true, + "spriteSourceSize": { "x": 24, "y": 24, "w": 45, "h": 50 }, + "sourceSize": { "w": 96, "h": 96 }, + "duration": 50 + }, + { + "filename": "0048.png", + "frame": { "x": 92, "y": 155, "w": 45, "h": 50 }, + "rotated": false, + "trimmed": true, + "spriteSourceSize": { "x": 24, "y": 24, "w": 45, "h": 50 }, + "sourceSize": { "w": 96, "h": 96 }, + "duration": 50 + }, + { + "filename": "0049.png", + "frame": { "x": 47, "y": 105, "w": 46, "h": 50 }, + "rotated": false, + "trimmed": true, + "spriteSourceSize": { "x": 23, "y": 24, "w": 46, "h": 50 }, + "sourceSize": { "w": 96, "h": 96 }, + "duration": 50 + }, + { + "filename": "0050.png", + "frame": { "x": 47, "y": 105, "w": 46, "h": 50 }, + "rotated": false, + "trimmed": true, + "spriteSourceSize": { "x": 23, "y": 24, "w": 46, "h": 50 }, + "sourceSize": { "w": 96, "h": 96 }, + "duration": 50 + }, + { + "filename": "0051.png", + "frame": { "x": 93, "y": 105, "w": 46, "h": 50 }, + "rotated": false, + "trimmed": true, + "spriteSourceSize": { "x": 23, "y": 24, "w": 46, "h": 50 }, + "sourceSize": { "w": 96, "h": 96 }, + "duration": 50 + }, + { + "filename": "0052.png", + "frame": { "x": 93, "y": 105, "w": 46, "h": 50 }, + "rotated": false, + "trimmed": true, + "spriteSourceSize": { "x": 23, "y": 24, "w": 46, "h": 50 }, + "sourceSize": { "w": 96, "h": 96 }, + "duration": 50 + }, + { + "filename": "0053.png", + "frame": { "x": 139, "y": 105, "w": 46, "h": 50 }, + "rotated": false, + "trimmed": true, + "spriteSourceSize": { "x": 24, "y": 24, "w": 46, "h": 50 }, + "sourceSize": { "w": 96, "h": 96 }, + "duration": 50 + }, + { + "filename": "0054.png", + "frame": { "x": 139, "y": 105, "w": 46, "h": 50 }, + "rotated": false, + "trimmed": true, + "spriteSourceSize": { "x": 24, "y": 24, "w": 46, "h": 50 }, + "sourceSize": { "w": 96, "h": 96 }, + "duration": 50 + }, + { + "filename": "0055.png", + "frame": { "x": 183, "y": 155, "w": 45, "h": 49 }, + "rotated": false, + "trimmed": true, + "spriteSourceSize": { "x": 25, "y": 25, "w": 45, "h": 49 }, + "sourceSize": { "w": 96, "h": 96 }, + "duration": 50 + }, + { + "filename": "0056.png", + "frame": { "x": 183, "y": 155, "w": 45, "h": 49 }, + "rotated": false, + "trimmed": true, + "spriteSourceSize": { "x": 25, "y": 25, "w": 45, "h": 49 }, + "sourceSize": { "w": 96, "h": 96 }, + "duration": 50 + }, + { + "filename": "0057.png", + "frame": { "x": 137, "y": 155, "w": 46, "h": 48 }, + "rotated": false, + "trimmed": true, + "spriteSourceSize": { "x": 25, "y": 26, "w": 46, "h": 48 }, + "sourceSize": { "w": 96, "h": 96 }, + "duration": 50 + }, + { + "filename": "0058.png", + "frame": { "x": 137, "y": 155, "w": 46, "h": 48 }, + "rotated": false, + "trimmed": true, + "spriteSourceSize": { "x": 25, "y": 26, "w": 46, "h": 48 }, + "sourceSize": { "w": 96, "h": 96 }, + "duration": 50 + }, + { + "filename": "0059.png", + "frame": { "x": 1, "y": 157, "w": 45, "h": 49 }, + "rotated": false, + "trimmed": true, + "spriteSourceSize": { "x": 25, "y": 25, "w": 45, "h": 49 }, + "sourceSize": { "w": 96, "h": 96 }, + "duration": 50 + }, + { + "filename": "0060.png", + "frame": { "x": 1, "y": 157, "w": 45, "h": 49 }, + "rotated": false, + "trimmed": true, + "spriteSourceSize": { "x": 25, "y": 25, "w": 45, "h": 49 }, + "sourceSize": { "w": 96, "h": 96 }, + "duration": 50 + }, + { + "filename": "0061.png", + "frame": { "x": 47, "y": 155, "w": 45, "h": 50 }, + "rotated": false, + "trimmed": true, + "spriteSourceSize": { "x": 25, "y": 24, "w": 45, "h": 50 }, + "sourceSize": { "w": 96, "h": 96 }, + "duration": 50 + }, + { + "filename": "0062.png", + "frame": { "x": 47, "y": 155, "w": 45, "h": 50 }, + "rotated": false, + "trimmed": true, + "spriteSourceSize": { "x": 25, "y": 24, "w": 45, "h": 50 }, + "sourceSize": { "w": 96, "h": 96 }, + "duration": 50 + }, + { + "filename": "0063.png", + "frame": { "x": 92, "y": 155, "w": 45, "h": 50 }, + "rotated": false, + "trimmed": true, + "spriteSourceSize": { "x": 24, "y": 24, "w": 45, "h": 50 }, + "sourceSize": { "w": 96, "h": 96 }, + "duration": 50 + }, + { + "filename": "0064.png", + "frame": { "x": 92, "y": 155, "w": 45, "h": 50 }, + "rotated": false, + "trimmed": true, + "spriteSourceSize": { "x": 24, "y": 24, "w": 45, "h": 50 }, + "sourceSize": { "w": 96, "h": 96 }, + "duration": 50 + }, + { + "filename": "0065.png", + "frame": { "x": 47, "y": 105, "w": 46, "h": 50 }, + "rotated": false, + "trimmed": true, + "spriteSourceSize": { "x": 23, "y": 24, "w": 46, "h": 50 }, + "sourceSize": { "w": 96, "h": 96 }, + "duration": 50 + }, + { + "filename": "0066.png", + "frame": { "x": 47, "y": 105, "w": 46, "h": 50 }, + "rotated": false, + "trimmed": true, + "spriteSourceSize": { "x": 23, "y": 24, "w": 46, "h": 50 }, + "sourceSize": { "w": 96, "h": 96 }, + "duration": 50 + }, + { + "filename": "0067.png", + "frame": { "x": 93, "y": 105, "w": 46, "h": 50 }, + "rotated": false, + "trimmed": true, + "spriteSourceSize": { "x": 23, "y": 24, "w": 46, "h": 50 }, + "sourceSize": { "w": 96, "h": 96 }, + "duration": 50 + }, + { + "filename": "0068.png", + "frame": { "x": 93, "y": 105, "w": 46, "h": 50 }, + "rotated": false, + "trimmed": true, + "spriteSourceSize": { "x": 23, "y": 24, "w": 46, "h": 50 }, + "sourceSize": { "w": 96, "h": 96 }, + "duration": 50 + }, + { + "filename": "0069.png", + "frame": { "x": 139, "y": 105, "w": 46, "h": 50 }, + "rotated": false, + "trimmed": true, + "spriteSourceSize": { "x": 24, "y": 24, "w": 46, "h": 50 }, + "sourceSize": { "w": 96, "h": 96 }, + "duration": 50 + }, + { + "filename": "0070.png", + "frame": { "x": 139, "y": 105, "w": 46, "h": 50 }, + "rotated": false, + "trimmed": true, + "spriteSourceSize": { "x": 24, "y": 24, "w": 46, "h": 50 }, + "sourceSize": { "w": 96, "h": 96 }, + "duration": 50 + }, + { + "filename": "0071.png", + "frame": { "x": 183, "y": 155, "w": 45, "h": 49 }, + "rotated": false, + "trimmed": true, + "spriteSourceSize": { "x": 25, "y": 25, "w": 45, "h": 49 }, + "sourceSize": { "w": 96, "h": 96 }, + "duration": 50 + }, + { + "filename": "0072.png", + "frame": { "x": 183, "y": 155, "w": 45, "h": 49 }, + "rotated": false, + "trimmed": true, + "spriteSourceSize": { "x": 25, "y": 25, "w": 45, "h": 49 }, + "sourceSize": { "w": 96, "h": 96 }, + "duration": 50 + }, + { + "filename": "0073.png", + "frame": { "x": 137, "y": 155, "w": 46, "h": 48 }, + "rotated": false, + "trimmed": true, + "spriteSourceSize": { "x": 25, "y": 26, "w": 46, "h": 48 }, + "sourceSize": { "w": 96, "h": 96 }, + "duration": 50 + }, + { + "filename": "0074.png", + "frame": { "x": 137, "y": 155, "w": 46, "h": 48 }, + "rotated": false, + "trimmed": true, + "spriteSourceSize": { "x": 25, "y": 26, "w": 46, "h": 48 }, + "sourceSize": { "w": 96, "h": 96 }, + "duration": 50 + }, + { + "filename": "0075.png", + "frame": { "x": 1, "y": 157, "w": 45, "h": 49 }, + "rotated": false, + "trimmed": true, + "spriteSourceSize": { "x": 25, "y": 25, "w": 45, "h": 49 }, + "sourceSize": { "w": 96, "h": 96 }, + "duration": 50 + }, + { + "filename": "0076.png", + "frame": { "x": 1, "y": 157, "w": 45, "h": 49 }, + "rotated": false, + "trimmed": true, + "spriteSourceSize": { "x": 25, "y": 25, "w": 45, "h": 49 }, + "sourceSize": { "w": 96, "h": 96 }, + "duration": 50 + }, + { + "filename": "0077.png", + "frame": { "x": 47, "y": 155, "w": 45, "h": 50 }, + "rotated": false, + "trimmed": true, + "spriteSourceSize": { "x": 25, "y": 24, "w": 45, "h": 50 }, + "sourceSize": { "w": 96, "h": 96 }, + "duration": 50 + }, + { + "filename": "0078.png", + "frame": { "x": 47, "y": 155, "w": 45, "h": 50 }, + "rotated": false, + "trimmed": true, + "spriteSourceSize": { "x": 25, "y": 24, "w": 45, "h": 50 }, + "sourceSize": { "w": 96, "h": 96 }, + "duration": 50 + }, + { + "filename": "0079.png", + "frame": { "x": 92, "y": 155, "w": 45, "h": 50 }, + "rotated": false, + "trimmed": true, + "spriteSourceSize": { "x": 24, "y": 24, "w": 45, "h": 50 }, + "sourceSize": { "w": 96, "h": 96 }, + "duration": 50 + }, + { + "filename": "0080.png", + "frame": { "x": 92, "y": 155, "w": 45, "h": 50 }, + "rotated": false, + "trimmed": true, + "spriteSourceSize": { "x": 24, "y": 24, "w": 45, "h": 50 }, + "sourceSize": { "w": 96, "h": 96 }, + "duration": 50 + }, + { + "filename": "0081.png", + "frame": { "x": 47, "y": 105, "w": 46, "h": 50 }, + "rotated": false, + "trimmed": true, + "spriteSourceSize": { "x": 23, "y": 24, "w": 46, "h": 50 }, + "sourceSize": { "w": 96, "h": 96 }, + "duration": 50 + }, + { + "filename": "0082.png", + "frame": { "x": 47, "y": 105, "w": 46, "h": 50 }, + "rotated": false, + "trimmed": true, + "spriteSourceSize": { "x": 23, "y": 24, "w": 46, "h": 50 }, + "sourceSize": { "w": 96, "h": 96 }, + "duration": 50 + }, + { + "filename": "0083.png", + "frame": { "x": 189, "y": 1, "w": 47, "h": 51 }, + "rotated": false, + "trimmed": true, + "spriteSourceSize": { "x": 22, "y": 23, "w": 47, "h": 51 }, + "sourceSize": { "w": 96, "h": 96 }, + "duration": 50 + }, + { + "filename": "0084.png", + "frame": { "x": 189, "y": 52, "w": 47, "h": 51 }, + "rotated": false, + "trimmed": true, + "spriteSourceSize": { "x": 22, "y": 23, "w": 47, "h": 51 }, + "sourceSize": { "w": 96, "h": 96 }, + "duration": 50 + }, + { + "filename": "0085.png", + "frame": { "x": 1, "y": 1, "w": 47, "h": 52 }, + "rotated": false, + "trimmed": true, + "spriteSourceSize": { "x": 22, "y": 22, "w": 47, "h": 52 }, + "sourceSize": { "w": 96, "h": 96 }, + "duration": 50 + }, + { + "filename": "0086.png", + "frame": { "x": 48, "y": 1, "w": 47, "h": 52 }, + "rotated": false, + "trimmed": true, + "spriteSourceSize": { "x": 22, "y": 22, "w": 47, "h": 52 }, + "sourceSize": { "w": 96, "h": 96 }, + "duration": 50 + }, + { + "filename": "0087.png", + "frame": { "x": 95, "y": 1, "w": 47, "h": 52 }, + "rotated": false, + "trimmed": true, + "spriteSourceSize": { "x": 22, "y": 22, "w": 47, "h": 52 }, + "sourceSize": { "w": 96, "h": 96 }, + "duration": 50 + }, + { + "filename": "0088.png", + "frame": { "x": 95, "y": 1, "w": 47, "h": 52 }, + "rotated": false, + "trimmed": true, + "spriteSourceSize": { "x": 22, "y": 22, "w": 47, "h": 52 }, + "sourceSize": { "w": 96, "h": 96 }, + "duration": 50 + }, + { + "filename": "0089.png", + "frame": { "x": 1, "y": 53, "w": 46, "h": 52 }, + "rotated": false, + "trimmed": true, + "spriteSourceSize": { "x": 23, "y": 22, "w": 46, "h": 52 }, + "sourceSize": { "w": 96, "h": 96 }, + "duration": 50 + }, + { + "filename": "0090.png", + "frame": { "x": 47, "y": 53, "w": 46, "h": 52 }, + "rotated": false, + "trimmed": true, + "spriteSourceSize": { "x": 23, "y": 22, "w": 46, "h": 52 }, + "sourceSize": { "w": 96, "h": 96 }, + "duration": 50 + }, + { + "filename": "0091.png", + "frame": { "x": 93, "y": 53, "w": 46, "h": 52 }, + "rotated": false, + "trimmed": true, + "spriteSourceSize": { "x": 23, "y": 22, "w": 46, "h": 52 }, + "sourceSize": { "w": 96, "h": 96 }, + "duration": 50 + }, + { + "filename": "0092.png", + "frame": { "x": 139, "y": 53, "w": 46, "h": 52 }, + "rotated": false, + "trimmed": true, + "spriteSourceSize": { "x": 23, "y": 22, "w": 46, "h": 52 }, + "sourceSize": { "w": 96, "h": 96 }, + "duration": 50 + }, + { + "filename": "0093.png", + "frame": { "x": 142, "y": 1, "w": 47, "h": 52 }, + "rotated": false, + "trimmed": true, + "spriteSourceSize": { "x": 22, "y": 22, "w": 47, "h": 52 }, + "sourceSize": { "w": 96, "h": 96 }, + "duration": 50 + }, + { + "filename": "0094.png", + "frame": { "x": 142, "y": 1, "w": 47, "h": 52 }, + "rotated": false, + "trimmed": true, + "spriteSourceSize": { "x": 22, "y": 22, "w": 47, "h": 52 }, + "sourceSize": { "w": 96, "h": 96 }, + "duration": 50 + }, + { + "filename": "0095.png", + "frame": { "x": 95, "y": 1, "w": 47, "h": 52 }, + "rotated": false, + "trimmed": true, + "spriteSourceSize": { "x": 22, "y": 22, "w": 47, "h": 52 }, + "sourceSize": { "w": 96, "h": 96 }, + "duration": 50 + }, + { + "filename": "0096.png", + "frame": { "x": 95, "y": 1, "w": 47, "h": 52 }, + "rotated": false, + "trimmed": true, + "spriteSourceSize": { "x": 22, "y": 22, "w": 47, "h": 52 }, + "sourceSize": { "w": 96, "h": 96 }, + "duration": 50 + }, + { + "filename": "0097.png", + "frame": { "x": 185, "y": 103, "w": 46, "h": 52 }, + "rotated": false, + "trimmed": true, + "spriteSourceSize": { "x": 23, "y": 22, "w": 46, "h": 52 }, + "sourceSize": { "w": 96, "h": 96 }, + "duration": 50 + }, + { + "filename": "0098.png", + "frame": { "x": 185, "y": 103, "w": 46, "h": 52 }, + "rotated": false, + "trimmed": true, + "spriteSourceSize": { "x": 23, "y": 22, "w": 46, "h": 52 }, + "sourceSize": { "w": 96, "h": 96 }, + "duration": 50 + }, + { + "filename": "0099.png", + "frame": { "x": 139, "y": 53, "w": 46, "h": 52 }, + "rotated": false, + "trimmed": true, + "spriteSourceSize": { "x": 23, "y": 22, "w": 46, "h": 52 }, + "sourceSize": { "w": 96, "h": 96 }, + "duration": 50 + }, + { + "filename": "0100.png", + "frame": { "x": 139, "y": 53, "w": 46, "h": 52 }, + "rotated": false, + "trimmed": true, + "spriteSourceSize": { "x": 23, "y": 22, "w": 46, "h": 52 }, + "sourceSize": { "w": 96, "h": 96 }, + "duration": 50 + }, + { + "filename": "0101.png", + "frame": { "x": 142, "y": 1, "w": 47, "h": 52 }, + "rotated": false, + "trimmed": true, + "spriteSourceSize": { "x": 22, "y": 22, "w": 47, "h": 52 }, + "sourceSize": { "w": 96, "h": 96 }, + "duration": 50 + }, + { + "filename": "0102.png", + "frame": { "x": 142, "y": 1, "w": 47, "h": 52 }, + "rotated": false, + "trimmed": true, + "spriteSourceSize": { "x": 22, "y": 22, "w": 47, "h": 52 }, + "sourceSize": { "w": 96, "h": 96 }, + "duration": 50 + }, + { + "filename": "0103.png", + "frame": { "x": 142, "y": 1, "w": 47, "h": 52 }, + "rotated": false, + "trimmed": true, + "spriteSourceSize": { "x": 22, "y": 22, "w": 47, "h": 52 }, + "sourceSize": { "w": 96, "h": 96 }, + "duration": 50 + }, + { + "filename": "0104.png", + "frame": { "x": 95, "y": 1, "w": 47, "h": 52 }, + "rotated": false, + "trimmed": true, + "spriteSourceSize": { "x": 22, "y": 22, "w": 47, "h": 52 }, + "sourceSize": { "w": 96, "h": 96 }, + "duration": 50 + }, + { + "filename": "0105.png", + "frame": { "x": 95, "y": 1, "w": 47, "h": 52 }, + "rotated": false, + "trimmed": true, + "spriteSourceSize": { "x": 22, "y": 22, "w": 47, "h": 52 }, + "sourceSize": { "w": 96, "h": 96 }, + "duration": 50 + }, + { + "filename": "0106.png", + "frame": { "x": 185, "y": 103, "w": 46, "h": 52 }, + "rotated": false, + "trimmed": true, + "spriteSourceSize": { "x": 23, "y": 22, "w": 46, "h": 52 }, + "sourceSize": { "w": 96, "h": 96 }, + "duration": 50 + }, + { + "filename": "0107.png", + "frame": { "x": 185, "y": 103, "w": 46, "h": 52 }, + "rotated": false, + "trimmed": true, + "spriteSourceSize": { "x": 23, "y": 22, "w": 46, "h": 52 }, + "sourceSize": { "w": 96, "h": 96 }, + "duration": 50 + }, + { + "filename": "0108.png", + "frame": { "x": 93, "y": 53, "w": 46, "h": 52 }, + "rotated": false, + "trimmed": true, + "spriteSourceSize": { "x": 23, "y": 22, "w": 46, "h": 52 }, + "sourceSize": { "w": 96, "h": 96 }, + "duration": 50 + }, + { + "filename": "0109.png", + "frame": { "x": 1, "y": 105, "w": 46, "h": 52 }, + "rotated": false, + "trimmed": true, + "spriteSourceSize": { "x": 23, "y": 22, "w": 46, "h": 52 }, + "sourceSize": { "w": 96, "h": 96 }, + "duration": 50 + }, + { + "filename": "0110.png", + "frame": { "x": 189, "y": 52, "w": 47, "h": 51 }, + "rotated": false, + "trimmed": true, + "spriteSourceSize": { "x": 22, "y": 23, "w": 47, "h": 51 }, + "sourceSize": { "w": 96, "h": 96 }, + "duration": 50 + }, + { + "filename": "0111.png", + "frame": { "x": 189, "y": 1, "w": 47, "h": 51 }, + "rotated": false, + "trimmed": true, + "spriteSourceSize": { "x": 22, "y": 23, "w": 47, "h": 51 }, + "sourceSize": { "w": 96, "h": 96 }, + "duration": 50 + } + ], + "meta": { + "app": "https://www.aseprite.org/", + "version": "1.3.13-x64", + "image": "782.png", + "format": "I8", + "size": { "w": 237, "h": 207 }, + "scale": "1" + } } diff --git a/public/images/pokemon/back/shiny/782.png b/public/images/pokemon/back/shiny/782.png index a775abe8bf4..e5bed3d1642 100644 Binary files a/public/images/pokemon/back/shiny/782.png and b/public/images/pokemon/back/shiny/782.png differ diff --git a/public/images/pokemon/back/shiny/783.json b/public/images/pokemon/back/shiny/783.json index 253da2ab9a8..17ec3df99a0 100644 --- a/public/images/pokemon/back/shiny/783.json +++ b/public/images/pokemon/back/shiny/783.json @@ -1,41 +1,965 @@ -{ - "textures": [ - { - "image": "783.png", - "format": "RGBA8888", - "size": { - "w": 69, - "h": 69 - }, - "scale": 1, - "frames": [ - { - "filename": "0001.png", - "rotated": false, - "trimmed": false, - "sourceSize": { - "w": 66, - "h": 69 - }, - "spriteSourceSize": { - "x": 0, - "y": 0, - "w": 66, - "h": 69 - }, - "frame": { - "x": 0, - "y": 0, - "w": 66, - "h": 69 - } - } - ] - } - ], - "meta": { - "app": "https://www.codeandweb.com/texturepacker", - "version": "3.0", - "smartupdate": "$TexturePacker:SmartUpdate:e5544237a4fd9ef3e516be84f3a24a8a:dd780189298088c8e8eb741377c46b07:aab166e28c744865a0296041224dd01b$" - } +{ "frames": [ + { + "filename": "0001.png", + "frame": { "x": 414, "y": 273, "w": 66, "h": 69 }, + "rotated": false, + "trimmed": true, + "spriteSourceSize": { "x": 4, "y": 2, "w": 66, "h": 69 }, + "sourceSize": { "w": 75, "h": 71 }, + "duration": 100 + }, + { + "filename": "0002.png", + "frame": { "x": 268, "y": 276, "w": 65, "h": 69 }, + "rotated": false, + "trimmed": true, + "spriteSourceSize": { "x": 3, "y": 2, "w": 65, "h": 69 }, + "sourceSize": { "w": 75, "h": 71 }, + "duration": 100 + }, + { + "filename": "0003.png", + "frame": { "x": 480, "y": 273, "w": 65, "h": 70 }, + "rotated": false, + "trimmed": true, + "spriteSourceSize": { "x": 2, "y": 1, "w": 65, "h": 70 }, + "sourceSize": { "w": 75, "h": 71 }, + "duration": 100 + }, + { + "filename": "0004.png", + "frame": { "x": 1, "y": 342, "w": 64, "h": 70 }, + "rotated": false, + "trimmed": true, + "spriteSourceSize": { "x": 1, "y": 1, "w": 64, "h": 70 }, + "sourceSize": { "w": 75, "h": 71 }, + "duration": 100 + }, + { + "filename": "0005.png", + "frame": { "x": 262, "y": 345, "w": 62, "h": 71 }, + "rotated": false, + "trimmed": true, + "spriteSourceSize": { "x": 1, "y": 0, "w": 62, "h": 71 }, + "sourceSize": { "w": 75, "h": 71 }, + "duration": 100 + }, + { + "filename": "0006.png", + "frame": { "x": 65, "y": 344, "w": 63, "h": 70 }, + "rotated": false, + "trimmed": true, + "spriteSourceSize": { "x": 2, "y": 1, "w": 63, "h": 70 }, + "sourceSize": { "w": 75, "h": 71 }, + "duration": 100 + }, + { + "filename": "0007.png", + "frame": { "x": 342, "y": 275, "w": 65, "h": 70 }, + "rotated": false, + "trimmed": true, + "spriteSourceSize": { "x": 2, "y": 1, "w": 65, "h": 70 }, + "sourceSize": { "w": 75, "h": 71 }, + "duration": 100 + }, + { + "filename": "0008.png", + "frame": { "x": 132, "y": 278, "w": 65, "h": 69 }, + "rotated": false, + "trimmed": true, + "spriteSourceSize": { "x": 3, "y": 2, "w": 65, "h": 69 }, + "sourceSize": { "w": 75, "h": 71 }, + "duration": 100 + }, + { + "filename": "0009.png", + "frame": { "x": 1, "y": 273, "w": 66, "h": 69 }, + "rotated": false, + "trimmed": true, + "spriteSourceSize": { "x": 4, "y": 2, "w": 66, "h": 69 }, + "sourceSize": { "w": 75, "h": 71 }, + "duration": 100 + }, + { + "filename": "0010.png", + "frame": { "x": 197, "y": 342, "w": 65, "h": 68 }, + "rotated": false, + "trimmed": true, + "spriteSourceSize": { "x": 6, "y": 3, "w": 65, "h": 68 }, + "sourceSize": { "w": 75, "h": 71 }, + "duration": 100 + }, + { + "filename": "0011.png", + "frame": { "x": 324, "y": 345, "w": 64, "h": 68 }, + "rotated": false, + "trimmed": true, + "spriteSourceSize": { "x": 8, "y": 3, "w": 64, "h": 68 }, + "sourceSize": { "w": 75, "h": 71 }, + "duration": 100 + }, + { + "filename": "0012.png", + "frame": { "x": 1, "y": 412, "w": 62, "h": 67 }, + "rotated": false, + "trimmed": true, + "spriteSourceSize": { "x": 10, "y": 4, "w": 62, "h": 67 }, + "sourceSize": { "w": 75, "h": 71 }, + "duration": 100 + }, + { + "filename": "0013.png", + "frame": { "x": 511, "y": 412, "w": 61, "h": 67 }, + "rotated": false, + "trimmed": true, + "spriteSourceSize": { "x": 12, "y": 4, "w": 61, "h": 67 }, + "sourceSize": { "w": 75, "h": 71 }, + "duration": 100 + }, + { + "filename": "0014.png", + "frame": { "x": 449, "y": 412, "w": 62, "h": 67 }, + "rotated": false, + "trimmed": true, + "spriteSourceSize": { "x": 10, "y": 4, "w": 62, "h": 67 }, + "sourceSize": { "w": 75, "h": 71 }, + "duration": 100 + }, + { + "filename": "0015.png", + "frame": { "x": 128, "y": 347, "w": 64, "h": 68 }, + "rotated": false, + "trimmed": true, + "spriteSourceSize": { "x": 8, "y": 3, "w": 64, "h": 68 }, + "sourceSize": { "w": 75, "h": 71 }, + "duration": 100 + }, + { + "filename": "0016.png", + "frame": { "x": 407, "y": 342, "w": 65, "h": 68 }, + "rotated": false, + "trimmed": true, + "spriteSourceSize": { "x": 6, "y": 3, "w": 65, "h": 68 }, + "sourceSize": { "w": 75, "h": 71 }, + "duration": 100 + }, + { + "filename": "0017.png", + "frame": { "x": 414, "y": 273, "w": 66, "h": 69 }, + "rotated": false, + "trimmed": true, + "spriteSourceSize": { "x": 4, "y": 2, "w": 66, "h": 69 }, + "sourceSize": { "w": 75, "h": 71 }, + "duration": 100 + }, + { + "filename": "0018.png", + "frame": { "x": 268, "y": 276, "w": 65, "h": 69 }, + "rotated": false, + "trimmed": true, + "spriteSourceSize": { "x": 3, "y": 2, "w": 65, "h": 69 }, + "sourceSize": { "w": 75, "h": 71 }, + "duration": 100 + }, + { + "filename": "0019.png", + "frame": { "x": 480, "y": 273, "w": 65, "h": 70 }, + "rotated": false, + "trimmed": true, + "spriteSourceSize": { "x": 2, "y": 1, "w": 65, "h": 70 }, + "sourceSize": { "w": 75, "h": 71 }, + "duration": 100 + }, + { + "filename": "0020.png", + "frame": { "x": 1, "y": 342, "w": 64, "h": 70 }, + "rotated": false, + "trimmed": true, + "spriteSourceSize": { "x": 1, "y": 1, "w": 64, "h": 70 }, + "sourceSize": { "w": 75, "h": 71 }, + "duration": 100 + }, + { + "filename": "0021.png", + "frame": { "x": 262, "y": 345, "w": 62, "h": 71 }, + "rotated": false, + "trimmed": true, + "spriteSourceSize": { "x": 1, "y": 0, "w": 62, "h": 71 }, + "sourceSize": { "w": 75, "h": 71 }, + "duration": 100 + }, + { + "filename": "0022.png", + "frame": { "x": 65, "y": 344, "w": 63, "h": 70 }, + "rotated": false, + "trimmed": true, + "spriteSourceSize": { "x": 2, "y": 1, "w": 63, "h": 70 }, + "sourceSize": { "w": 75, "h": 71 }, + "duration": 100 + }, + { + "filename": "0023.png", + "frame": { "x": 342, "y": 275, "w": 65, "h": 70 }, + "rotated": false, + "trimmed": true, + "spriteSourceSize": { "x": 2, "y": 1, "w": 65, "h": 70 }, + "sourceSize": { "w": 75, "h": 71 }, + "duration": 100 + }, + { + "filename": "0024.png", + "frame": { "x": 132, "y": 278, "w": 65, "h": 69 }, + "rotated": false, + "trimmed": true, + "spriteSourceSize": { "x": 3, "y": 2, "w": 65, "h": 69 }, + "sourceSize": { "w": 75, "h": 71 }, + "duration": 100 + }, + { + "filename": "0025.png", + "frame": { "x": 1, "y": 273, "w": 66, "h": 69 }, + "rotated": false, + "trimmed": true, + "spriteSourceSize": { "x": 4, "y": 2, "w": 66, "h": 69 }, + "sourceSize": { "w": 75, "h": 71 }, + "duration": 100 + }, + { + "filename": "0026.png", + "frame": { "x": 197, "y": 342, "w": 65, "h": 68 }, + "rotated": false, + "trimmed": true, + "spriteSourceSize": { "x": 6, "y": 3, "w": 65, "h": 68 }, + "sourceSize": { "w": 75, "h": 71 }, + "duration": 100 + }, + { + "filename": "0027.png", + "frame": { "x": 324, "y": 345, "w": 64, "h": 68 }, + "rotated": false, + "trimmed": true, + "spriteSourceSize": { "x": 8, "y": 3, "w": 64, "h": 68 }, + "sourceSize": { "w": 75, "h": 71 }, + "duration": 100 + }, + { + "filename": "0028.png", + "frame": { "x": 1, "y": 412, "w": 62, "h": 67 }, + "rotated": false, + "trimmed": true, + "spriteSourceSize": { "x": 10, "y": 4, "w": 62, "h": 67 }, + "sourceSize": { "w": 75, "h": 71 }, + "duration": 100 + }, + { + "filename": "0029.png", + "frame": { "x": 511, "y": 412, "w": 61, "h": 67 }, + "rotated": false, + "trimmed": true, + "spriteSourceSize": { "x": 12, "y": 4, "w": 61, "h": 67 }, + "sourceSize": { "w": 75, "h": 71 }, + "duration": 100 + }, + { + "filename": "0030.png", + "frame": { "x": 449, "y": 412, "w": 62, "h": 67 }, + "rotated": false, + "trimmed": true, + "spriteSourceSize": { "x": 10, "y": 4, "w": 62, "h": 67 }, + "sourceSize": { "w": 75, "h": 71 }, + "duration": 100 + }, + { + "filename": "0031.png", + "frame": { "x": 128, "y": 347, "w": 64, "h": 68 }, + "rotated": false, + "trimmed": true, + "spriteSourceSize": { "x": 8, "y": 3, "w": 64, "h": 68 }, + "sourceSize": { "w": 75, "h": 71 }, + "duration": 100 + }, + { + "filename": "0032.png", + "frame": { "x": 407, "y": 342, "w": 65, "h": 68 }, + "rotated": false, + "trimmed": true, + "spriteSourceSize": { "x": 6, "y": 3, "w": 65, "h": 68 }, + "sourceSize": { "w": 75, "h": 71 }, + "duration": 100 + }, + { + "filename": "0033.png", + "frame": { "x": 414, "y": 273, "w": 66, "h": 69 }, + "rotated": false, + "trimmed": true, + "spriteSourceSize": { "x": 4, "y": 2, "w": 66, "h": 69 }, + "sourceSize": { "w": 75, "h": 71 }, + "duration": 100 + }, + { + "filename": "0034.png", + "frame": { "x": 268, "y": 276, "w": 65, "h": 69 }, + "rotated": false, + "trimmed": true, + "spriteSourceSize": { "x": 3, "y": 2, "w": 65, "h": 69 }, + "sourceSize": { "w": 75, "h": 71 }, + "duration": 100 + }, + { + "filename": "0035.png", + "frame": { "x": 480, "y": 273, "w": 65, "h": 70 }, + "rotated": false, + "trimmed": true, + "spriteSourceSize": { "x": 2, "y": 1, "w": 65, "h": 70 }, + "sourceSize": { "w": 75, "h": 71 }, + "duration": 100 + }, + { + "filename": "0036.png", + "frame": { "x": 1, "y": 342, "w": 64, "h": 70 }, + "rotated": false, + "trimmed": true, + "spriteSourceSize": { "x": 1, "y": 1, "w": 64, "h": 70 }, + "sourceSize": { "w": 75, "h": 71 }, + "duration": 100 + }, + { + "filename": "0037.png", + "frame": { "x": 262, "y": 345, "w": 62, "h": 71 }, + "rotated": false, + "trimmed": true, + "spriteSourceSize": { "x": 1, "y": 0, "w": 62, "h": 71 }, + "sourceSize": { "w": 75, "h": 71 }, + "duration": 100 + }, + { + "filename": "0038.png", + "frame": { "x": 65, "y": 344, "w": 63, "h": 70 }, + "rotated": false, + "trimmed": true, + "spriteSourceSize": { "x": 2, "y": 1, "w": 63, "h": 70 }, + "sourceSize": { "w": 75, "h": 71 }, + "duration": 100 + }, + { + "filename": "0039.png", + "frame": { "x": 342, "y": 275, "w": 65, "h": 70 }, + "rotated": false, + "trimmed": true, + "spriteSourceSize": { "x": 2, "y": 1, "w": 65, "h": 70 }, + "sourceSize": { "w": 75, "h": 71 }, + "duration": 100 + }, + { + "filename": "0040.png", + "frame": { "x": 132, "y": 278, "w": 65, "h": 69 }, + "rotated": false, + "trimmed": true, + "spriteSourceSize": { "x": 3, "y": 2, "w": 65, "h": 69 }, + "sourceSize": { "w": 75, "h": 71 }, + "duration": 100 + }, + { + "filename": "0041.png", + "frame": { "x": 1, "y": 273, "w": 66, "h": 69 }, + "rotated": false, + "trimmed": true, + "spriteSourceSize": { "x": 4, "y": 2, "w": 66, "h": 69 }, + "sourceSize": { "w": 75, "h": 71 }, + "duration": 100 + }, + { + "filename": "0042.png", + "frame": { "x": 197, "y": 342, "w": 65, "h": 68 }, + "rotated": false, + "trimmed": true, + "spriteSourceSize": { "x": 6, "y": 3, "w": 65, "h": 68 }, + "sourceSize": { "w": 75, "h": 71 }, + "duration": 100 + }, + { + "filename": "0043.png", + "frame": { "x": 324, "y": 345, "w": 64, "h": 68 }, + "rotated": false, + "trimmed": true, + "spriteSourceSize": { "x": 8, "y": 3, "w": 64, "h": 68 }, + "sourceSize": { "w": 75, "h": 71 }, + "duration": 100 + }, + { + "filename": "0044.png", + "frame": { "x": 1, "y": 412, "w": 62, "h": 67 }, + "rotated": false, + "trimmed": true, + "spriteSourceSize": { "x": 10, "y": 4, "w": 62, "h": 67 }, + "sourceSize": { "w": 75, "h": 71 }, + "duration": 100 + }, + { + "filename": "0045.png", + "frame": { "x": 511, "y": 412, "w": 61, "h": 67 }, + "rotated": false, + "trimmed": true, + "spriteSourceSize": { "x": 12, "y": 4, "w": 61, "h": 67 }, + "sourceSize": { "w": 75, "h": 71 }, + "duration": 100 + }, + { + "filename": "0046.png", + "frame": { "x": 449, "y": 412, "w": 62, "h": 67 }, + "rotated": false, + "trimmed": true, + "spriteSourceSize": { "x": 10, "y": 4, "w": 62, "h": 67 }, + "sourceSize": { "w": 75, "h": 71 }, + "duration": 100 + }, + { + "filename": "0047.png", + "frame": { "x": 128, "y": 347, "w": 64, "h": 68 }, + "rotated": false, + "trimmed": true, + "spriteSourceSize": { "x": 8, "y": 3, "w": 64, "h": 68 }, + "sourceSize": { "w": 75, "h": 71 }, + "duration": 100 + }, + { + "filename": "0048.png", + "frame": { "x": 407, "y": 342, "w": 65, "h": 68 }, + "rotated": false, + "trimmed": true, + "spriteSourceSize": { "x": 6, "y": 3, "w": 65, "h": 68 }, + "sourceSize": { "w": 75, "h": 71 }, + "duration": 100 + }, + { + "filename": "0049.png", + "frame": { "x": 414, "y": 273, "w": 66, "h": 69 }, + "rotated": false, + "trimmed": true, + "spriteSourceSize": { "x": 4, "y": 2, "w": 66, "h": 69 }, + "sourceSize": { "w": 75, "h": 71 }, + "duration": 100 + }, + { + "filename": "0050.png", + "frame": { "x": 268, "y": 276, "w": 65, "h": 69 }, + "rotated": false, + "trimmed": true, + "spriteSourceSize": { "x": 3, "y": 2, "w": 65, "h": 69 }, + "sourceSize": { "w": 75, "h": 71 }, + "duration": 100 + }, + { + "filename": "0051.png", + "frame": { "x": 480, "y": 273, "w": 65, "h": 70 }, + "rotated": false, + "trimmed": true, + "spriteSourceSize": { "x": 2, "y": 1, "w": 65, "h": 70 }, + "sourceSize": { "w": 75, "h": 71 }, + "duration": 100 + }, + { + "filename": "0052.png", + "frame": { "x": 1, "y": 342, "w": 64, "h": 70 }, + "rotated": false, + "trimmed": true, + "spriteSourceSize": { "x": 1, "y": 1, "w": 64, "h": 70 }, + "sourceSize": { "w": 75, "h": 71 }, + "duration": 100 + }, + { + "filename": "0053.png", + "frame": { "x": 262, "y": 345, "w": 62, "h": 71 }, + "rotated": false, + "trimmed": true, + "spriteSourceSize": { "x": 1, "y": 0, "w": 62, "h": 71 }, + "sourceSize": { "w": 75, "h": 71 }, + "duration": 100 + }, + { + "filename": "0054.png", + "frame": { "x": 65, "y": 344, "w": 63, "h": 70 }, + "rotated": false, + "trimmed": true, + "spriteSourceSize": { "x": 2, "y": 1, "w": 63, "h": 70 }, + "sourceSize": { "w": 75, "h": 71 }, + "duration": 100 + }, + { + "filename": "0055.png", + "frame": { "x": 342, "y": 275, "w": 65, "h": 70 }, + "rotated": false, + "trimmed": true, + "spriteSourceSize": { "x": 2, "y": 1, "w": 65, "h": 70 }, + "sourceSize": { "w": 75, "h": 71 }, + "duration": 100 + }, + { + "filename": "0056.png", + "frame": { "x": 132, "y": 278, "w": 65, "h": 69 }, + "rotated": false, + "trimmed": true, + "spriteSourceSize": { "x": 3, "y": 2, "w": 65, "h": 69 }, + "sourceSize": { "w": 75, "h": 71 }, + "duration": 100 + }, + { + "filename": "0057.png", + "frame": { "x": 1, "y": 273, "w": 66, "h": 69 }, + "rotated": false, + "trimmed": true, + "spriteSourceSize": { "x": 4, "y": 2, "w": 66, "h": 69 }, + "sourceSize": { "w": 75, "h": 71 }, + "duration": 100 + }, + { + "filename": "0058.png", + "frame": { "x": 197, "y": 342, "w": 65, "h": 68 }, + "rotated": false, + "trimmed": true, + "spriteSourceSize": { "x": 6, "y": 3, "w": 65, "h": 68 }, + "sourceSize": { "w": 75, "h": 71 }, + "duration": 100 + }, + { + "filename": "0059.png", + "frame": { "x": 324, "y": 345, "w": 64, "h": 68 }, + "rotated": false, + "trimmed": true, + "spriteSourceSize": { "x": 8, "y": 3, "w": 64, "h": 68 }, + "sourceSize": { "w": 75, "h": 71 }, + "duration": 100 + }, + { + "filename": "0060.png", + "frame": { "x": 1, "y": 412, "w": 62, "h": 67 }, + "rotated": false, + "trimmed": true, + "spriteSourceSize": { "x": 10, "y": 4, "w": 62, "h": 67 }, + "sourceSize": { "w": 75, "h": 71 }, + "duration": 100 + }, + { + "filename": "0061.png", + "frame": { "x": 511, "y": 412, "w": 61, "h": 67 }, + "rotated": false, + "trimmed": true, + "spriteSourceSize": { "x": 12, "y": 4, "w": 61, "h": 67 }, + "sourceSize": { "w": 75, "h": 71 }, + "duration": 100 + }, + { + "filename": "0062.png", + "frame": { "x": 449, "y": 412, "w": 62, "h": 67 }, + "rotated": false, + "trimmed": true, + "spriteSourceSize": { "x": 10, "y": 4, "w": 62, "h": 67 }, + "sourceSize": { "w": 75, "h": 71 }, + "duration": 100 + }, + { + "filename": "0063.png", + "frame": { "x": 128, "y": 347, "w": 64, "h": 68 }, + "rotated": false, + "trimmed": true, + "spriteSourceSize": { "x": 8, "y": 3, "w": 64, "h": 68 }, + "sourceSize": { "w": 75, "h": 71 }, + "duration": 100 + }, + { + "filename": "0064.png", + "frame": { "x": 407, "y": 342, "w": 65, "h": 68 }, + "rotated": false, + "trimmed": true, + "spriteSourceSize": { "x": 6, "y": 3, "w": 65, "h": 68 }, + "sourceSize": { "w": 75, "h": 71 }, + "duration": 100 + }, + { + "filename": "0065.png", + "frame": { "x": 414, "y": 273, "w": 66, "h": 69 }, + "rotated": false, + "trimmed": true, + "spriteSourceSize": { "x": 4, "y": 2, "w": 66, "h": 69 }, + "sourceSize": { "w": 75, "h": 71 }, + "duration": 100 + }, + { + "filename": "0066.png", + "frame": { "x": 202, "y": 273, "w": 66, "h": 69 }, + "rotated": false, + "trimmed": true, + "spriteSourceSize": { "x": 5, "y": 2, "w": 66, "h": 69 }, + "sourceSize": { "w": 75, "h": 71 }, + "duration": 100 + }, + { + "filename": "0067.png", + "frame": { "x": 136, "y": 208, "w": 66, "h": 70 }, + "rotated": false, + "trimmed": true, + "spriteSourceSize": { "x": 6, "y": 1, "w": 66, "h": 70 }, + "sourceSize": { "w": 75, "h": 71 }, + "duration": 100 + }, + { + "filename": "0068.png", + "frame": { "x": 67, "y": 274, "w": 65, "h": 70 }, + "rotated": false, + "trimmed": true, + "spriteSourceSize": { "x": 8, "y": 1, "w": 65, "h": 70 }, + "sourceSize": { "w": 75, "h": 71 }, + "duration": 100 + }, + { + "filename": "0069.png", + "frame": { "x": 139, "y": 138, "w": 67, "h": 70 }, + "rotated": false, + "trimmed": true, + "spriteSourceSize": { "x": 7, "y": 1, "w": 67, "h": 70 }, + "sourceSize": { "w": 75, "h": 71 }, + "duration": 100 + }, + { + "filename": "0070.png", + "frame": { "x": 290, "y": 1, "w": 69, "h": 70 }, + "rotated": false, + "trimmed": true, + "spriteSourceSize": { "x": 6, "y": 1, "w": 69, "h": 70 }, + "sourceSize": { "w": 75, "h": 71 }, + "duration": 100 + }, + { + "filename": "0071.png", + "frame": { "x": 147, "y": 1, "w": 71, "h": 69 }, + "rotated": false, + "trimmed": true, + "spriteSourceSize": { "x": 2, "y": 2, "w": 71, "h": 69 }, + "sourceSize": { "w": 75, "h": 71 }, + "duration": 100 + }, + { + "filename": "0072.png", + "frame": { "x": 483, "y": 206, "w": 69, "h": 67 }, + "rotated": false, + "trimmed": true, + "spriteSourceSize": { "x": 1, "y": 4, "w": 69, "h": 67 }, + "sourceSize": { "w": 75, "h": 71 }, + "duration": 100 + }, + { + "filename": "0073.png", + "frame": { "x": 141, "y": 70, "w": 70, "h": 68 }, + "rotated": false, + "trimmed": true, + "spriteSourceSize": { "x": 0, "y": 3, "w": 70, "h": 68 }, + "sourceSize": { "w": 75, "h": 71 }, + "duration": 100 + }, + { + "filename": "0074.png", + "frame": { "x": 499, "y": 1, "w": 69, "h": 69 }, + "rotated": false, + "trimmed": true, + "spriteSourceSize": { "x": 1, "y": 2, "w": 69, "h": 69 }, + "sourceSize": { "w": 75, "h": 71 }, + "duration": 100 + }, + { + "filename": "0075.png", + "frame": { "x": 356, "y": 137, "w": 68, "h": 69 }, + "rotated": false, + "trimmed": true, + "spriteSourceSize": { "x": 2, "y": 2, "w": 68, "h": 69 }, + "sourceSize": { "w": 75, "h": 71 }, + "duration": 100 + }, + { + "filename": "0076.png", + "frame": { "x": 414, "y": 273, "w": 66, "h": 69 }, + "rotated": false, + "trimmed": true, + "spriteSourceSize": { "x": 4, "y": 2, "w": 66, "h": 69 }, + "sourceSize": { "w": 75, "h": 71 }, + "duration": 100 + }, + { + "filename": "0077.png", + "frame": { "x": 424, "y": 138, "w": 68, "h": 68 }, + "rotated": false, + "trimmed": true, + "spriteSourceSize": { "x": 3, "y": 2, "w": 68, "h": 68 }, + "sourceSize": { "w": 75, "h": 71 }, + "duration": 100 + }, + { + "filename": "0078.png", + "frame": { "x": 430, "y": 1, "w": 69, "h": 69 }, + "rotated": false, + "trimmed": true, + "spriteSourceSize": { "x": 2, "y": 1, "w": 69, "h": 69 }, + "sourceSize": { "w": 75, "h": 71 }, + "duration": 100 + }, + { + "filename": "0079.png", + "frame": { "x": 498, "y": 70, "w": 69, "h": 68 }, + "rotated": false, + "trimmed": true, + "spriteSourceSize": { "x": 2, "y": 1, "w": 69, "h": 68 }, + "sourceSize": { "w": 75, "h": 71 }, + "duration": 100 + }, + { + "filename": "0080.png", + "frame": { "x": 206, "y": 206, "w": 69, "h": 67 }, + "rotated": false, + "trimmed": true, + "spriteSourceSize": { "x": 2, "y": 1, "w": 69, "h": 67 }, + "sourceSize": { "w": 75, "h": 71 }, + "duration": 100 + }, + { + "filename": "0081.png", + "frame": { "x": 414, "y": 206, "w": 69, "h": 67 }, + "rotated": false, + "trimmed": true, + "spriteSourceSize": { "x": 2, "y": 1, "w": 69, "h": 67 }, + "sourceSize": { "w": 75, "h": 71 }, + "duration": 100 + }, + { + "filename": "0082.png", + "frame": { "x": 192, "y": 410, "w": 63, "h": 68 }, + "rotated": false, + "trimmed": true, + "spriteSourceSize": { "x": 8, "y": 2, "w": 63, "h": 68 }, + "sourceSize": { "w": 75, "h": 71 }, + "duration": 100 + }, + { + "filename": "0083.png", + "frame": { "x": 324, "y": 413, "w": 59, "h": 67 }, + "rotated": false, + "trimmed": true, + "spriteSourceSize": { "x": 11, "y": 4, "w": 59, "h": 67 }, + "sourceSize": { "w": 75, "h": 71 }, + "duration": 100 + }, + { + "filename": "0084.png", + "frame": { "x": 63, "y": 414, "w": 58, "h": 68 }, + "rotated": false, + "trimmed": true, + "spriteSourceSize": { "x": 12, "y": 3, "w": 58, "h": 68 }, + "sourceSize": { "w": 75, "h": 71 }, + "duration": 100 + }, + { + "filename": "0085.png", + "frame": { "x": 388, "y": 410, "w": 61, "h": 69 }, + "rotated": false, + "trimmed": true, + "spriteSourceSize": { "x": 9, "y": 2, "w": 61, "h": 69 }, + "sourceSize": { "w": 75, "h": 71 }, + "duration": 100 + }, + { + "filename": "0086.png", + "frame": { "x": 472, "y": 343, "w": 64, "h": 69 }, + "rotated": false, + "trimmed": true, + "spriteSourceSize": { "x": 6, "y": 2, "w": 64, "h": 69 }, + "sourceSize": { "w": 75, "h": 71 }, + "duration": 100 + }, + { + "filename": "0087.png", + "frame": { "x": 414, "y": 273, "w": 66, "h": 69 }, + "rotated": false, + "trimmed": true, + "spriteSourceSize": { "x": 4, "y": 2, "w": 66, "h": 69 }, + "sourceSize": { "w": 75, "h": 71 }, + "duration": 100 + }, + { + "filename": "0088.png", + "frame": { "x": 288, "y": 71, "w": 68, "h": 69 }, + "rotated": false, + "trimmed": true, + "spriteSourceSize": { "x": 4, "y": 2, "w": 68, "h": 69 }, + "sourceSize": { "w": 75, "h": 71 }, + "duration": 100 + }, + { + "filename": "0089.png", + "frame": { "x": 218, "y": 1, "w": 72, "h": 68 }, + "rotated": false, + "trimmed": true, + "spriteSourceSize": { "x": 1, "y": 3, "w": 72, "h": 68 }, + "sourceSize": { "w": 75, "h": 71 }, + "duration": 100 + }, + { + "filename": "0090.png", + "frame": { "x": 1, "y": 137, "w": 69, "h": 68 }, + "rotated": false, + "trimmed": true, + "spriteSourceSize": { "x": 6, "y": 3, "w": 69, "h": 68 }, + "sourceSize": { "w": 75, "h": 71 }, + "duration": 100 + }, + { + "filename": "0091.png", + "frame": { "x": 359, "y": 69, "w": 70, "h": 68 }, + "rotated": false, + "trimmed": true, + "spriteSourceSize": { "x": 5, "y": 3, "w": 70, "h": 68 }, + "sourceSize": { "w": 75, "h": 71 }, + "duration": 100 + }, + { + "filename": "0092.png", + "frame": { "x": 218, "y": 69, "w": 70, "h": 68 }, + "rotated": false, + "trimmed": true, + "spriteSourceSize": { "x": 5, "y": 3, "w": 70, "h": 68 }, + "sourceSize": { "w": 75, "h": 71 }, + "duration": 100 + }, + { + "filename": "0093.png", + "frame": { "x": 74, "y": 1, "w": 73, "h": 68 }, + "rotated": false, + "trimmed": true, + "spriteSourceSize": { "x": 2, "y": 3, "w": 73, "h": 68 }, + "sourceSize": { "w": 75, "h": 71 }, + "duration": 100 + }, + { + "filename": "0094.png", + "frame": { "x": 70, "y": 137, "w": 69, "h": 68 }, + "rotated": false, + "trimmed": true, + "spriteSourceSize": { "x": 6, "y": 3, "w": 69, "h": 68 }, + "sourceSize": { "w": 75, "h": 71 }, + "duration": 100 + }, + { + "filename": "0095.png", + "frame": { "x": 71, "y": 69, "w": 70, "h": 68 }, + "rotated": false, + "trimmed": true, + "spriteSourceSize": { "x": 5, "y": 3, "w": 70, "h": 68 }, + "sourceSize": { "w": 75, "h": 71 }, + "duration": 100 + }, + { + "filename": "0096.png", + "frame": { "x": 1, "y": 69, "w": 70, "h": 68 }, + "rotated": false, + "trimmed": true, + "spriteSourceSize": { "x": 5, "y": 3, "w": 70, "h": 68 }, + "sourceSize": { "w": 75, "h": 71 }, + "duration": 100 + }, + { + "filename": "0097.png", + "frame": { "x": 1, "y": 1, "w": 73, "h": 68 }, + "rotated": false, + "trimmed": true, + "spriteSourceSize": { "x": 2, "y": 3, "w": 73, "h": 68 }, + "sourceSize": { "w": 75, "h": 71 }, + "duration": 100 + }, + { + "filename": "0098.png", + "frame": { "x": 279, "y": 140, "w": 68, "h": 68 }, + "rotated": false, + "trimmed": true, + "spriteSourceSize": { "x": 7, "y": 3, "w": 68, "h": 68 }, + "sourceSize": { "w": 75, "h": 71 }, + "duration": 100 + }, + { + "filename": "0099.png", + "frame": { "x": 492, "y": 138, "w": 68, "h": 68 }, + "rotated": false, + "trimmed": true, + "spriteSourceSize": { "x": 6, "y": 3, "w": 68, "h": 68 }, + "sourceSize": { "w": 75, "h": 71 }, + "duration": 100 + }, + { + "filename": "0100.png", + "frame": { "x": 429, "y": 70, "w": 69, "h": 68 }, + "rotated": false, + "trimmed": true, + "spriteSourceSize": { "x": 5, "y": 3, "w": 69, "h": 68 }, + "sourceSize": { "w": 75, "h": 71 }, + "duration": 100 + }, + { + "filename": "0101.png", + "frame": { "x": 359, "y": 1, "w": 71, "h": 68 }, + "rotated": false, + "trimmed": true, + "spriteSourceSize": { "x": 2, "y": 3, "w": 71, "h": 68 }, + "sourceSize": { "w": 75, "h": 71 }, + "duration": 100 + }, + { + "filename": "0102.png", + "frame": { "x": 1, "y": 205, "w": 68, "h": 68 }, + "rotated": false, + "trimmed": true, + "spriteSourceSize": { "x": 5, "y": 3, "w": 68, "h": 68 }, + "sourceSize": { "w": 75, "h": 71 }, + "duration": 100 + }, + { + "filename": "0103.png", + "frame": { "x": 275, "y": 208, "w": 67, "h": 68 }, + "rotated": false, + "trimmed": true, + "spriteSourceSize": { "x": 5, "y": 3, "w": 67, "h": 68 }, + "sourceSize": { "w": 75, "h": 71 }, + "duration": 100 + }, + { + "filename": "0104.png", + "frame": { "x": 211, "y": 137, "w": 68, "h": 69 }, + "rotated": false, + "trimmed": true, + "spriteSourceSize": { "x": 4, "y": 2, "w": 68, "h": 69 }, + "sourceSize": { "w": 75, "h": 71 }, + "duration": 100 + }, + { + "filename": "0105.png", + "frame": { "x": 69, "y": 205, "w": 67, "h": 69 }, + "rotated": false, + "trimmed": true, + "spriteSourceSize": { "x": 4, "y": 2, "w": 67, "h": 69 }, + "sourceSize": { "w": 75, "h": 71 }, + "duration": 100 + }, + { + "filename": "0106.png", + "frame": { "x": 347, "y": 206, "w": 67, "h": 69 }, + "rotated": false, + "trimmed": true, + "spriteSourceSize": { "x": 4, "y": 2, "w": 67, "h": 69 }, + "sourceSize": { "w": 75, "h": 71 }, + "duration": 100 + } + ], + "meta": { + "app": "https://www.aseprite.org/", + "version": "1.3.13-x64", + "image": "783.png", + "format": "I8", + "size": { "w": 573, "h": 483 }, + "scale": "1" + } } diff --git a/public/images/pokemon/back/shiny/783.png b/public/images/pokemon/back/shiny/783.png index 6ba2506ecc8..30d6c49f5e0 100644 Binary files a/public/images/pokemon/back/shiny/783.png and b/public/images/pokemon/back/shiny/783.png differ diff --git a/public/images/pokemon/back/shiny/784.json b/public/images/pokemon/back/shiny/784.json index 552fb3c9595..87ddecc06fb 100644 --- a/public/images/pokemon/back/shiny/784.json +++ b/public/images/pokemon/back/shiny/784.json @@ -1,41 +1,812 @@ -{ - "textures": [ - { - "image": "784.png", - "format": "RGBA8888", - "size": { - "w": 92, - "h": 92 - }, - "scale": 1, - "frames": [ - { - "filename": "0001.png", - "rotated": false, - "trimmed": false, - "sourceSize": { - "w": 92, - "h": 81 - }, - "spriteSourceSize": { - "x": 0, - "y": 0, - "w": 92, - "h": 81 - }, - "frame": { - "x": 0, - "y": 0, - "w": 92, - "h": 81 - } - } - ] - } - ], - "meta": { - "app": "https://www.codeandweb.com/texturepacker", - "version": "3.0", - "smartupdate": "$TexturePacker:SmartUpdate:3e83e25b8e7e32a8993a48c7e36af553:6ed75435976e4481fad74457807089c7:c2f7ca3ab1075b8c824730653d891244$" - } +{ "frames": [ + { + "filename": "0001.png", + "frame": { "x": 183, "y": 233, "w": 90, "h": 81 }, + "rotated": false, + "trimmed": true, + "spriteSourceSize": { "x": 12, "y": 4, "w": 90, "h": 81 }, + "sourceSize": { "w": 112, "h": 86 }, + "duration": 100 + }, + { + "filename": "0002.png", + "frame": { "x": 1, "y": 160, "w": 94, "h": 81 }, + "rotated": false, + "trimmed": true, + "spriteSourceSize": { "x": 10, "y": 4, "w": 94, "h": 81 }, + "sourceSize": { "w": 112, "h": 86 }, + "duration": 100 + }, + { + "filename": "0003.png", + "frame": { "x": 530, "y": 81, "w": 98, "h": 81 }, + "rotated": false, + "trimmed": true, + "spriteSourceSize": { "x": 7, "y": 4, "w": 98, "h": 81 }, + "sourceSize": { "w": 112, "h": 86 }, + "duration": 100 + }, + { + "filename": "0004.png", + "frame": { "x": 530, "y": 1, "w": 103, "h": 80 }, + "rotated": false, + "trimmed": true, + "spriteSourceSize": { "x": 4, "y": 5, "w": 103, "h": 80 }, + "sourceSize": { "w": 112, "h": 86 }, + "duration": 100 + }, + { + "filename": "0005.png", + "frame": { "x": 324, "y": 1, "w": 106, "h": 80 }, + "rotated": false, + "trimmed": true, + "spriteSourceSize": { "x": 2, "y": 5, "w": 106, "h": 80 }, + "sourceSize": { "w": 112, "h": 86 }, + "duration": 100 + }, + { + "filename": "0006.png", + "frame": { "x": 1, "y": 1, "w": 110, "h": 79 }, + "rotated": false, + "trimmed": true, + "spriteSourceSize": { "x": 0, "y": 6, "w": 110, "h": 79 }, + "sourceSize": { "w": 112, "h": 86 }, + "duration": 100 + }, + { + "filename": "0007.png", + "frame": { "x": 214, "y": 1, "w": 110, "h": 78 }, + "rotated": false, + "trimmed": true, + "spriteSourceSize": { "x": 1, "y": 7, "w": 110, "h": 78 }, + "sourceSize": { "w": 112, "h": 86 }, + "duration": 100 + }, + { + "filename": "0008.png", + "frame": { "x": 633, "y": 1, "w": 106, "h": 77 }, + "rotated": false, + "trimmed": true, + "spriteSourceSize": { "x": 6, "y": 8, "w": 106, "h": 77 }, + "sourceSize": { "w": 112, "h": 86 }, + "duration": 100 + }, + { + "filename": "0009.png", + "frame": { "x": 198, "y": 156, "w": 102, "h": 77 }, + "rotated": false, + "trimmed": true, + "spriteSourceSize": { "x": 9, "y": 8, "w": 102, "h": 77 }, + "sourceSize": { "w": 112, "h": 86 }, + "duration": 100 + }, + { + "filename": "0010.png", + "frame": { "x": 300, "y": 159, "w": 97, "h": 80 }, + "rotated": false, + "trimmed": true, + "spriteSourceSize": { "x": 13, "y": 5, "w": 97, "h": 80 }, + "sourceSize": { "w": 112, "h": 86 }, + "duration": 100 + }, + { + "filename": "0011.png", + "frame": { "x": 95, "y": 166, "w": 88, "h": 83 }, + "rotated": false, + "trimmed": true, + "spriteSourceSize": { "x": 21, "y": 2, "w": 88, "h": 83 }, + "sourceSize": { "w": 112, "h": 86 }, + "duration": 100 + }, + { + "filename": "0012.png", + "frame": { "x": 358, "y": 241, "w": 83, "h": 81 }, + "rotated": false, + "trimmed": true, + "spriteSourceSize": { "x": 25, "y": 4, "w": 83, "h": 81 }, + "sourceSize": { "w": 112, "h": 86 }, + "duration": 100 + }, + { + "filename": "0013.png", + "frame": { "x": 681, "y": 318, "w": 81, "h": 79 }, + "rotated": false, + "trimmed": true, + "spriteSourceSize": { "x": 26, "y": 6, "w": 81, "h": 79 }, + "sourceSize": { "w": 112, "h": 86 }, + "duration": 100 + }, + { + "filename": "0014.png", + "frame": { "x": 87, "y": 249, "w": 82, "h": 80 }, + "rotated": false, + "trimmed": true, + "spriteSourceSize": { "x": 24, "y": 5, "w": 82, "h": 80 }, + "sourceSize": { "w": 112, "h": 86 }, + "duration": 100 + }, + { + "filename": "0015.png", + "frame": { "x": 441, "y": 242, "w": 84, "h": 80 }, + "rotated": false, + "trimmed": true, + "spriteSourceSize": { "x": 21, "y": 5, "w": 84, "h": 80 }, + "sourceSize": { "w": 112, "h": 86 }, + "duration": 100 + }, + { + "filename": "0016.png", + "frame": { "x": 273, "y": 239, "w": 85, "h": 81 }, + "rotated": false, + "trimmed": true, + "spriteSourceSize": { "x": 18, "y": 4, "w": 85, "h": 81 }, + "sourceSize": { "w": 112, "h": 86 }, + "duration": 100 + }, + { + "filename": "0017.png", + "frame": { "x": 183, "y": 233, "w": 90, "h": 81 }, + "rotated": false, + "trimmed": true, + "spriteSourceSize": { "x": 12, "y": 4, "w": 90, "h": 81 }, + "sourceSize": { "w": 112, "h": 86 }, + "duration": 100 + }, + { + "filename": "0018.png", + "frame": { "x": 1, "y": 160, "w": 94, "h": 81 }, + "rotated": false, + "trimmed": true, + "spriteSourceSize": { "x": 10, "y": 4, "w": 94, "h": 81 }, + "sourceSize": { "w": 112, "h": 86 }, + "duration": 100 + }, + { + "filename": "0019.png", + "frame": { "x": 530, "y": 81, "w": 98, "h": 81 }, + "rotated": false, + "trimmed": true, + "spriteSourceSize": { "x": 7, "y": 4, "w": 98, "h": 81 }, + "sourceSize": { "w": 112, "h": 86 }, + "duration": 100 + }, + { + "filename": "0020.png", + "frame": { "x": 530, "y": 1, "w": 103, "h": 80 }, + "rotated": false, + "trimmed": true, + "spriteSourceSize": { "x": 4, "y": 5, "w": 103, "h": 80 }, + "sourceSize": { "w": 112, "h": 86 }, + "duration": 100 + }, + { + "filename": "0021.png", + "frame": { "x": 324, "y": 1, "w": 106, "h": 80 }, + "rotated": false, + "trimmed": true, + "spriteSourceSize": { "x": 2, "y": 5, "w": 106, "h": 80 }, + "sourceSize": { "w": 112, "h": 86 }, + "duration": 100 + }, + { + "filename": "0022.png", + "frame": { "x": 1, "y": 1, "w": 110, "h": 79 }, + "rotated": false, + "trimmed": true, + "spriteSourceSize": { "x": 0, "y": 6, "w": 110, "h": 79 }, + "sourceSize": { "w": 112, "h": 86 }, + "duration": 100 + }, + { + "filename": "0023.png", + "frame": { "x": 214, "y": 1, "w": 110, "h": 78 }, + "rotated": false, + "trimmed": true, + "spriteSourceSize": { "x": 1, "y": 7, "w": 110, "h": 78 }, + "sourceSize": { "w": 112, "h": 86 }, + "duration": 100 + }, + { + "filename": "0024.png", + "frame": { "x": 633, "y": 1, "w": 106, "h": 77 }, + "rotated": false, + "trimmed": true, + "spriteSourceSize": { "x": 6, "y": 8, "w": 106, "h": 77 }, + "sourceSize": { "w": 112, "h": 86 }, + "duration": 100 + }, + { + "filename": "0025.png", + "frame": { "x": 198, "y": 156, "w": 102, "h": 77 }, + "rotated": false, + "trimmed": true, + "spriteSourceSize": { "x": 9, "y": 8, "w": 102, "h": 77 }, + "sourceSize": { "w": 112, "h": 86 }, + "duration": 100 + }, + { + "filename": "0026.png", + "frame": { "x": 300, "y": 159, "w": 97, "h": 80 }, + "rotated": false, + "trimmed": true, + "spriteSourceSize": { "x": 13, "y": 5, "w": 97, "h": 80 }, + "sourceSize": { "w": 112, "h": 86 }, + "duration": 100 + }, + { + "filename": "0027.png", + "frame": { "x": 95, "y": 166, "w": 88, "h": 83 }, + "rotated": false, + "trimmed": true, + "spriteSourceSize": { "x": 21, "y": 2, "w": 88, "h": 83 }, + "sourceSize": { "w": 112, "h": 86 }, + "duration": 100 + }, + { + "filename": "0028.png", + "frame": { "x": 358, "y": 241, "w": 83, "h": 81 }, + "rotated": false, + "trimmed": true, + "spriteSourceSize": { "x": 25, "y": 4, "w": 83, "h": 81 }, + "sourceSize": { "w": 112, "h": 86 }, + "duration": 100 + }, + { + "filename": "0029.png", + "frame": { "x": 681, "y": 318, "w": 81, "h": 79 }, + "rotated": false, + "trimmed": true, + "spriteSourceSize": { "x": 26, "y": 6, "w": 81, "h": 79 }, + "sourceSize": { "w": 112, "h": 86 }, + "duration": 100 + }, + { + "filename": "0030.png", + "frame": { "x": 87, "y": 249, "w": 82, "h": 80 }, + "rotated": false, + "trimmed": true, + "spriteSourceSize": { "x": 24, "y": 5, "w": 82, "h": 80 }, + "sourceSize": { "w": 112, "h": 86 }, + "duration": 100 + }, + { + "filename": "0031.png", + "frame": { "x": 441, "y": 242, "w": 84, "h": 80 }, + "rotated": false, + "trimmed": true, + "spriteSourceSize": { "x": 21, "y": 5, "w": 84, "h": 80 }, + "sourceSize": { "w": 112, "h": 86 }, + "duration": 100 + }, + { + "filename": "0032.png", + "frame": { "x": 273, "y": 239, "w": 85, "h": 81 }, + "rotated": false, + "trimmed": true, + "spriteSourceSize": { "x": 18, "y": 4, "w": 85, "h": 81 }, + "sourceSize": { "w": 112, "h": 86 }, + "duration": 100 + }, + { + "filename": "0033.png", + "frame": { "x": 183, "y": 233, "w": 90, "h": 81 }, + "rotated": false, + "trimmed": true, + "spriteSourceSize": { "x": 12, "y": 4, "w": 90, "h": 81 }, + "sourceSize": { "w": 112, "h": 86 }, + "duration": 100 + }, + { + "filename": "0034.png", + "frame": { "x": 1, "y": 160, "w": 94, "h": 81 }, + "rotated": false, + "trimmed": true, + "spriteSourceSize": { "x": 10, "y": 4, "w": 94, "h": 81 }, + "sourceSize": { "w": 112, "h": 86 }, + "duration": 100 + }, + { + "filename": "0035.png", + "frame": { "x": 530, "y": 81, "w": 98, "h": 81 }, + "rotated": false, + "trimmed": true, + "spriteSourceSize": { "x": 7, "y": 4, "w": 98, "h": 81 }, + "sourceSize": { "w": 112, "h": 86 }, + "duration": 100 + }, + { + "filename": "0036.png", + "frame": { "x": 530, "y": 1, "w": 103, "h": 80 }, + "rotated": false, + "trimmed": true, + "spriteSourceSize": { "x": 4, "y": 5, "w": 103, "h": 80 }, + "sourceSize": { "w": 112, "h": 86 }, + "duration": 100 + }, + { + "filename": "0037.png", + "frame": { "x": 324, "y": 1, "w": 106, "h": 80 }, + "rotated": false, + "trimmed": true, + "spriteSourceSize": { "x": 2, "y": 5, "w": 106, "h": 80 }, + "sourceSize": { "w": 112, "h": 86 }, + "duration": 100 + }, + { + "filename": "0038.png", + "frame": { "x": 1, "y": 1, "w": 110, "h": 79 }, + "rotated": false, + "trimmed": true, + "spriteSourceSize": { "x": 0, "y": 6, "w": 110, "h": 79 }, + "sourceSize": { "w": 112, "h": 86 }, + "duration": 100 + }, + { + "filename": "0039.png", + "frame": { "x": 214, "y": 1, "w": 110, "h": 78 }, + "rotated": false, + "trimmed": true, + "spriteSourceSize": { "x": 1, "y": 7, "w": 110, "h": 78 }, + "sourceSize": { "w": 112, "h": 86 }, + "duration": 100 + }, + { + "filename": "0040.png", + "frame": { "x": 633, "y": 1, "w": 106, "h": 77 }, + "rotated": false, + "trimmed": true, + "spriteSourceSize": { "x": 6, "y": 8, "w": 106, "h": 77 }, + "sourceSize": { "w": 112, "h": 86 }, + "duration": 100 + }, + { + "filename": "0041.png", + "frame": { "x": 198, "y": 156, "w": 102, "h": 77 }, + "rotated": false, + "trimmed": true, + "spriteSourceSize": { "x": 9, "y": 8, "w": 102, "h": 77 }, + "sourceSize": { "w": 112, "h": 86 }, + "duration": 100 + }, + { + "filename": "0042.png", + "frame": { "x": 300, "y": 159, "w": 97, "h": 80 }, + "rotated": false, + "trimmed": true, + "spriteSourceSize": { "x": 13, "y": 5, "w": 97, "h": 80 }, + "sourceSize": { "w": 112, "h": 86 }, + "duration": 100 + }, + { + "filename": "0043.png", + "frame": { "x": 95, "y": 166, "w": 88, "h": 83 }, + "rotated": false, + "trimmed": true, + "spriteSourceSize": { "x": 21, "y": 2, "w": 88, "h": 83 }, + "sourceSize": { "w": 112, "h": 86 }, + "duration": 100 + }, + { + "filename": "0044.png", + "frame": { "x": 358, "y": 241, "w": 83, "h": 81 }, + "rotated": false, + "trimmed": true, + "spriteSourceSize": { "x": 25, "y": 4, "w": 83, "h": 81 }, + "sourceSize": { "w": 112, "h": 86 }, + "duration": 100 + }, + { + "filename": "0045.png", + "frame": { "x": 681, "y": 318, "w": 81, "h": 79 }, + "rotated": false, + "trimmed": true, + "spriteSourceSize": { "x": 26, "y": 6, "w": 81, "h": 79 }, + "sourceSize": { "w": 112, "h": 86 }, + "duration": 100 + }, + { + "filename": "0046.png", + "frame": { "x": 87, "y": 249, "w": 82, "h": 80 }, + "rotated": false, + "trimmed": true, + "spriteSourceSize": { "x": 24, "y": 5, "w": 82, "h": 80 }, + "sourceSize": { "w": 112, "h": 86 }, + "duration": 100 + }, + { + "filename": "0047.png", + "frame": { "x": 441, "y": 242, "w": 84, "h": 80 }, + "rotated": false, + "trimmed": true, + "spriteSourceSize": { "x": 21, "y": 5, "w": 84, "h": 80 }, + "sourceSize": { "w": 112, "h": 86 }, + "duration": 100 + }, + { + "filename": "0048.png", + "frame": { "x": 273, "y": 239, "w": 85, "h": 81 }, + "rotated": false, + "trimmed": true, + "spriteSourceSize": { "x": 18, "y": 4, "w": 85, "h": 81 }, + "sourceSize": { "w": 112, "h": 86 }, + "duration": 100 + }, + { + "filename": "0049.png", + "frame": { "x": 183, "y": 233, "w": 90, "h": 81 }, + "rotated": false, + "trimmed": true, + "spriteSourceSize": { "x": 12, "y": 4, "w": 90, "h": 81 }, + "sourceSize": { "w": 112, "h": 86 }, + "duration": 100 + }, + { + "filename": "0050.png", + "frame": { "x": 1, "y": 160, "w": 94, "h": 81 }, + "rotated": false, + "trimmed": true, + "spriteSourceSize": { "x": 10, "y": 4, "w": 94, "h": 81 }, + "sourceSize": { "w": 112, "h": 86 }, + "duration": 100 + }, + { + "filename": "0051.png", + "frame": { "x": 530, "y": 81, "w": 98, "h": 81 }, + "rotated": false, + "trimmed": true, + "spriteSourceSize": { "x": 7, "y": 4, "w": 98, "h": 81 }, + "sourceSize": { "w": 112, "h": 86 }, + "duration": 100 + }, + { + "filename": "0052.png", + "frame": { "x": 530, "y": 1, "w": 103, "h": 80 }, + "rotated": false, + "trimmed": true, + "spriteSourceSize": { "x": 4, "y": 5, "w": 103, "h": 80 }, + "sourceSize": { "w": 112, "h": 86 }, + "duration": 100 + }, + { + "filename": "0053.png", + "frame": { "x": 324, "y": 1, "w": 106, "h": 80 }, + "rotated": false, + "trimmed": true, + "spriteSourceSize": { "x": 2, "y": 5, "w": 106, "h": 80 }, + "sourceSize": { "w": 112, "h": 86 }, + "duration": 100 + }, + { + "filename": "0054.png", + "frame": { "x": 1, "y": 1, "w": 110, "h": 79 }, + "rotated": false, + "trimmed": true, + "spriteSourceSize": { "x": 0, "y": 6, "w": 110, "h": 79 }, + "sourceSize": { "w": 112, "h": 86 }, + "duration": 100 + }, + { + "filename": "0055.png", + "frame": { "x": 214, "y": 1, "w": 110, "h": 78 }, + "rotated": false, + "trimmed": true, + "spriteSourceSize": { "x": 1, "y": 7, "w": 110, "h": 78 }, + "sourceSize": { "w": 112, "h": 86 }, + "duration": 100 + }, + { + "filename": "0056.png", + "frame": { "x": 633, "y": 1, "w": 106, "h": 77 }, + "rotated": false, + "trimmed": true, + "spriteSourceSize": { "x": 6, "y": 8, "w": 106, "h": 77 }, + "sourceSize": { "w": 112, "h": 86 }, + "duration": 100 + }, + { + "filename": "0057.png", + "frame": { "x": 198, "y": 156, "w": 102, "h": 77 }, + "rotated": false, + "trimmed": true, + "spriteSourceSize": { "x": 9, "y": 8, "w": 102, "h": 77 }, + "sourceSize": { "w": 112, "h": 86 }, + "duration": 100 + }, + { + "filename": "0058.png", + "frame": { "x": 300, "y": 159, "w": 97, "h": 80 }, + "rotated": false, + "trimmed": true, + "spriteSourceSize": { "x": 13, "y": 5, "w": 97, "h": 80 }, + "sourceSize": { "w": 112, "h": 86 }, + "duration": 100 + }, + { + "filename": "0059.png", + "frame": { "x": 95, "y": 166, "w": 88, "h": 83 }, + "rotated": false, + "trimmed": true, + "spriteSourceSize": { "x": 21, "y": 2, "w": 88, "h": 83 }, + "sourceSize": { "w": 112, "h": 86 }, + "duration": 100 + }, + { + "filename": "0060.png", + "frame": { "x": 358, "y": 241, "w": 83, "h": 81 }, + "rotated": false, + "trimmed": true, + "spriteSourceSize": { "x": 25, "y": 4, "w": 83, "h": 81 }, + "sourceSize": { "w": 112, "h": 86 }, + "duration": 100 + }, + { + "filename": "0061.png", + "frame": { "x": 681, "y": 318, "w": 81, "h": 79 }, + "rotated": false, + "trimmed": true, + "spriteSourceSize": { "x": 26, "y": 6, "w": 81, "h": 79 }, + "sourceSize": { "w": 112, "h": 86 }, + "duration": 100 + }, + { + "filename": "0062.png", + "frame": { "x": 87, "y": 249, "w": 82, "h": 80 }, + "rotated": false, + "trimmed": true, + "spriteSourceSize": { "x": 24, "y": 5, "w": 82, "h": 80 }, + "sourceSize": { "w": 112, "h": 86 }, + "duration": 100 + }, + { + "filename": "0063.png", + "frame": { "x": 441, "y": 242, "w": 84, "h": 80 }, + "rotated": false, + "trimmed": true, + "spriteSourceSize": { "x": 21, "y": 5, "w": 84, "h": 80 }, + "sourceSize": { "w": 112, "h": 86 }, + "duration": 100 + }, + { + "filename": "0064.png", + "frame": { "x": 273, "y": 239, "w": 85, "h": 81 }, + "rotated": false, + "trimmed": true, + "spriteSourceSize": { "x": 18, "y": 4, "w": 85, "h": 81 }, + "sourceSize": { "w": 112, "h": 86 }, + "duration": 100 + }, + { + "filename": "0065.png", + "frame": { "x": 397, "y": 160, "w": 93, "h": 81 }, + "rotated": false, + "trimmed": true, + "spriteSourceSize": { "x": 9, "y": 4, "w": 93, "h": 81 }, + "sourceSize": { "w": 112, "h": 86 }, + "duration": 100 + }, + { + "filename": "0066.png", + "frame": { "x": 101, "y": 85, "w": 97, "h": 81 }, + "rotated": false, + "trimmed": true, + "spriteSourceSize": { "x": 7, "y": 4, "w": 97, "h": 81 }, + "sourceSize": { "w": 112, "h": 86 }, + "duration": 100 + }, + { + "filename": "0067.png", + "frame": { "x": 1, "y": 80, "w": 100, "h": 80 }, + "rotated": false, + "trimmed": true, + "spriteSourceSize": { "x": 5, "y": 5, "w": 100, "h": 80 }, + "sourceSize": { "w": 112, "h": 86 }, + "duration": 100 + }, + { + "filename": "0068.png", + "frame": { "x": 633, "y": 78, "w": 102, "h": 79 }, + "rotated": false, + "trimmed": true, + "spriteSourceSize": { "x": 4, "y": 6, "w": 102, "h": 79 }, + "sourceSize": { "w": 112, "h": 86 }, + "duration": 100 + }, + { + "filename": "0069.png", + "frame": { "x": 214, "y": 79, "w": 104, "h": 77 }, + "rotated": false, + "trimmed": true, + "spriteSourceSize": { "x": 4, "y": 8, "w": 104, "h": 77 }, + "sourceSize": { "w": 112, "h": 86 }, + "duration": 100 + }, + { + "filename": "0070.png", + "frame": { "x": 420, "y": 84, "w": 104, "h": 76 }, + "rotated": false, + "trimmed": true, + "spriteSourceSize": { "x": 5, "y": 9, "w": 104, "h": 76 }, + "sourceSize": { "w": 112, "h": 86 }, + "duration": 100 + }, + { + "filename": "0071.png", + "frame": { "x": 318, "y": 81, "w": 102, "h": 78 }, + "rotated": false, + "trimmed": true, + "spriteSourceSize": { "x": 2, "y": 7, "w": 102, "h": 78 }, + "sourceSize": { "w": 112, "h": 86 }, + "duration": 100 + }, + { + "filename": "0072.png", + "frame": { "x": 628, "y": 157, "w": 96, "h": 81 }, + "rotated": false, + "trimmed": true, + "spriteSourceSize": { "x": 2, "y": 4, "w": 96, "h": 81 }, + "sourceSize": { "w": 112, "h": 86 }, + "duration": 100 + }, + { + "filename": "0073.png", + "frame": { "x": 430, "y": 1, "w": 100, "h": 83 }, + "rotated": false, + "trimmed": true, + "spriteSourceSize": { "x": 2, "y": 2, "w": 100, "h": 83 }, + "sourceSize": { "w": 112, "h": 86 }, + "duration": 100 + }, + { + "filename": "0074.png", + "frame": { "x": 111, "y": 1, "w": 103, "h": 84 }, + "rotated": false, + "trimmed": true, + "spriteSourceSize": { "x": 0, "y": 1, "w": 103, "h": 84 }, + "sourceSize": { "w": 112, "h": 86 }, + "duration": 100 + }, + { + "filename": "0075.png", + "frame": { "x": 490, "y": 162, "w": 92, "h": 80 }, + "rotated": false, + "trimmed": true, + "spriteSourceSize": { "x": 13, "y": 5, "w": 92, "h": 80 }, + "sourceSize": { "w": 112, "h": 86 }, + "duration": 100 + }, + { + "filename": "0076.png", + "frame": { "x": 327, "y": 322, "w": 75, "h": 85 }, + "rotated": false, + "trimmed": true, + "spriteSourceSize": { "x": 33, "y": 0, "w": 75, "h": 85 }, + "sourceSize": { "w": 112, "h": 86 }, + "duration": 100 + }, + { + "filename": "0077.png", + "frame": { "x": 476, "y": 400, "w": 72, "h": 74 }, + "rotated": false, + "trimmed": true, + "spriteSourceSize": { "x": 36, "y": 12, "w": 72, "h": 74 }, + "sourceSize": { "w": 112, "h": 86 }, + "duration": 100 + }, + { + "filename": "0078.png", + "frame": { "x": 153, "y": 394, "w": 72, "h": 80 }, + "rotated": false, + "trimmed": true, + "spriteSourceSize": { "x": 36, "y": 5, "w": 72, "h": 80 }, + "sourceSize": { "w": 112, "h": 86 }, + "duration": 100 + }, + { + "filename": "0079.png", + "frame": { "x": 681, "y": 397, "w": 72, "h": 75 }, + "rotated": false, + "trimmed": true, + "spriteSourceSize": { "x": 36, "y": 10, "w": 72, "h": 75 }, + "sourceSize": { "w": 112, "h": 86 }, + "duration": 100 + }, + { + "filename": "0080.png", + "frame": { "x": 80, "y": 329, "w": 73, "h": 80 }, + "rotated": false, + "trimmed": true, + "spriteSourceSize": { "x": 35, "y": 5, "w": 73, "h": 80 }, + "sourceSize": { "w": 112, "h": 86 }, + "duration": 100 + }, + { + "filename": "0081.png", + "frame": { "x": 402, "y": 322, "w": 74, "h": 82 }, + "rotated": false, + "trimmed": true, + "spriteSourceSize": { "x": 34, "y": 3, "w": 74, "h": 82 }, + "sourceSize": { "w": 112, "h": 86 }, + "duration": 100 + }, + { + "filename": "0082.png", + "frame": { "x": 251, "y": 320, "w": 76, "h": 84 }, + "rotated": false, + "trimmed": true, + "spriteSourceSize": { "x": 31, "y": 1, "w": 76, "h": 84 }, + "sourceSize": { "w": 112, "h": 86 }, + "duration": 100 + }, + { + "filename": "0083.png", + "frame": { "x": 604, "y": 318, "w": 77, "h": 84 }, + "rotated": false, + "trimmed": true, + "spriteSourceSize": { "x": 29, "y": 1, "w": 77, "h": 84 }, + "sourceSize": { "w": 112, "h": 86 }, + "duration": 100 + }, + { + "filename": "0084.png", + "frame": { "x": 525, "y": 318, "w": 79, "h": 82 }, + "rotated": false, + "trimmed": true, + "spriteSourceSize": { "x": 26, "y": 3, "w": 79, "h": 82 }, + "sourceSize": { "w": 112, "h": 86 }, + "duration": 100 + }, + { + "filename": "0085.png", + "frame": { "x": 1, "y": 320, "w": 79, "h": 81 }, + "rotated": false, + "trimmed": true, + "spriteSourceSize": { "x": 24, "y": 4, "w": 79, "h": 81 }, + "sourceSize": { "w": 112, "h": 86 }, + "duration": 100 + }, + { + "filename": "0086.png", + "frame": { "x": 169, "y": 314, "w": 82, "h": 80 }, + "rotated": false, + "trimmed": true, + "spriteSourceSize": { "x": 21, "y": 5, "w": 82, "h": 80 }, + "sourceSize": { "w": 112, "h": 86 }, + "duration": 100 + }, + { + "filename": "0087.png", + "frame": { "x": 1, "y": 241, "w": 86, "h": 79 }, + "rotated": false, + "trimmed": true, + "spriteSourceSize": { "x": 17, "y": 6, "w": 86, "h": 79 }, + "sourceSize": { "w": 112, "h": 86 }, + "duration": 100 + }, + { + "filename": "0088.png", + "frame": { "x": 672, "y": 238, "w": 87, "h": 80 }, + "rotated": false, + "trimmed": true, + "spriteSourceSize": { "x": 15, "y": 5, "w": 87, "h": 80 }, + "sourceSize": { "w": 112, "h": 86 }, + "duration": 100 + }, + { + "filename": "0089.png", + "frame": { "x": 582, "y": 238, "w": 90, "h": 80 }, + "rotated": false, + "trimmed": true, + "spriteSourceSize": { "x": 12, "y": 5, "w": 90, "h": 80 }, + "sourceSize": { "w": 112, "h": 86 }, + "duration": 100 + } + ], + "meta": { + "app": "https://www.aseprite.org/", + "version": "1.3.13-x64", + "image": "784.png", + "format": "I8", + "size": { "w": 763, "h": 475 }, + "scale": "1" + } } diff --git a/public/images/pokemon/back/shiny/784.png b/public/images/pokemon/back/shiny/784.png index c32690792ac..51a3962a6ea 100644 Binary files a/public/images/pokemon/back/shiny/784.png and b/public/images/pokemon/back/shiny/784.png differ diff --git a/public/images/pokemon/exp/2038.png b/public/images/pokemon/exp/2038.png index c6fdb999df3..f6295093fcc 100644 Binary files a/public/images/pokemon/exp/2038.png and b/public/images/pokemon/exp/2038.png differ diff --git a/public/images/pokemon/exp/692.png b/public/images/pokemon/exp/692.png index 1e42cbf47fa..a22655931a8 100644 Binary files a/public/images/pokemon/exp/692.png and b/public/images/pokemon/exp/692.png differ diff --git a/public/images/pokemon/exp/780.png b/public/images/pokemon/exp/780.png index 3453365f154..69a13eb3bf6 100644 Binary files a/public/images/pokemon/exp/780.png and b/public/images/pokemon/exp/780.png differ diff --git a/public/images/pokemon/exp/782.json b/public/images/pokemon/exp/782.json deleted file mode 100644 index ea51775cf3e..00000000000 --- a/public/images/pokemon/exp/782.json +++ /dev/null @@ -1,2351 +0,0 @@ -{ - "textures": [ - { - "image": "782.png", - "format": "RGBA8888", - "size": { - "w": 240, - "h": 240 - }, - "scale": 1, - "frames": [ - { - "filename": "0083.png", - "rotated": false, - "trimmed": true, - "sourceSize": { - "w": 49, - "h": 52 - }, - "spriteSourceSize": { - "x": 1, - "y": 0, - "w": 48, - "h": 52 - }, - "frame": { - "x": 0, - "y": 0, - "w": 48, - "h": 52 - } - }, - { - "filename": "0111.png", - "rotated": false, - "trimmed": true, - "sourceSize": { - "w": 49, - "h": 52 - }, - "spriteSourceSize": { - "x": 1, - "y": 0, - "w": 48, - "h": 52 - }, - "frame": { - "x": 0, - "y": 0, - "w": 48, - "h": 52 - } - }, - { - "filename": "0084.png", - "rotated": false, - "trimmed": true, - "sourceSize": { - "w": 49, - "h": 52 - }, - "spriteSourceSize": { - "x": 1, - "y": 0, - "w": 48, - "h": 52 - }, - "frame": { - "x": 0, - "y": 52, - "w": 48, - "h": 52 - } - }, - { - "filename": "0110.png", - "rotated": false, - "trimmed": true, - "sourceSize": { - "w": 49, - "h": 52 - }, - "spriteSourceSize": { - "x": 1, - "y": 0, - "w": 48, - "h": 52 - }, - "frame": { - "x": 0, - "y": 52, - "w": 48, - "h": 52 - } - }, - { - "filename": "0085.png", - "rotated": false, - "trimmed": true, - "sourceSize": { - "w": 49, - "h": 52 - }, - "spriteSourceSize": { - "x": 1, - "y": 0, - "w": 48, - "h": 52 - }, - "frame": { - "x": 0, - "y": 104, - "w": 48, - "h": 52 - } - }, - { - "filename": "0086.png", - "rotated": false, - "trimmed": true, - "sourceSize": { - "w": 49, - "h": 52 - }, - "spriteSourceSize": { - "x": 1, - "y": 0, - "w": 48, - "h": 52 - }, - "frame": { - "x": 0, - "y": 156, - "w": 48, - "h": 52 - } - }, - { - "filename": "0013.png", - "rotated": false, - "trimmed": true, - "sourceSize": { - "w": 49, - "h": 52 - }, - "spriteSourceSize": { - "x": 0, - "y": 2, - "w": 49, - "h": 50 - }, - "frame": { - "x": 48, - "y": 0, - "w": 49, - "h": 50 - } - }, - { - "filename": "0014.png", - "rotated": false, - "trimmed": true, - "sourceSize": { - "w": 49, - "h": 52 - }, - "spriteSourceSize": { - "x": 0, - "y": 2, - "w": 49, - "h": 50 - }, - "frame": { - "x": 48, - "y": 0, - "w": 49, - "h": 50 - } - }, - { - "filename": "0029.png", - "rotated": false, - "trimmed": true, - "sourceSize": { - "w": 49, - "h": 52 - }, - "spriteSourceSize": { - "x": 0, - "y": 2, - "w": 49, - "h": 50 - }, - "frame": { - "x": 48, - "y": 0, - "w": 49, - "h": 50 - } - }, - { - "filename": "0030.png", - "rotated": false, - "trimmed": true, - "sourceSize": { - "w": 49, - "h": 52 - }, - "spriteSourceSize": { - "x": 0, - "y": 2, - "w": 49, - "h": 50 - }, - "frame": { - "x": 48, - "y": 0, - "w": 49, - "h": 50 - } - }, - { - "filename": "0045.png", - "rotated": false, - "trimmed": true, - "sourceSize": { - "w": 49, - "h": 52 - }, - "spriteSourceSize": { - "x": 0, - "y": 2, - "w": 49, - "h": 50 - }, - "frame": { - "x": 48, - "y": 0, - "w": 49, - "h": 50 - } - }, - { - "filename": "0046.png", - "rotated": false, - "trimmed": true, - "sourceSize": { - "w": 49, - "h": 52 - }, - "spriteSourceSize": { - "x": 0, - "y": 2, - "w": 49, - "h": 50 - }, - "frame": { - "x": 48, - "y": 0, - "w": 49, - "h": 50 - } - }, - { - "filename": "0061.png", - "rotated": false, - "trimmed": true, - "sourceSize": { - "w": 49, - "h": 52 - }, - "spriteSourceSize": { - "x": 0, - "y": 2, - "w": 49, - "h": 50 - }, - "frame": { - "x": 48, - "y": 0, - "w": 49, - "h": 50 - } - }, - { - "filename": "0062.png", - "rotated": false, - "trimmed": true, - "sourceSize": { - "w": 49, - "h": 52 - }, - "spriteSourceSize": { - "x": 0, - "y": 2, - "w": 49, - "h": 50 - }, - "frame": { - "x": 48, - "y": 0, - "w": 49, - "h": 50 - } - }, - { - "filename": "0077.png", - "rotated": false, - "trimmed": true, - "sourceSize": { - "w": 49, - "h": 52 - }, - "spriteSourceSize": { - "x": 0, - "y": 2, - "w": 49, - "h": 50 - }, - "frame": { - "x": 48, - "y": 0, - "w": 49, - "h": 50 - } - }, - { - "filename": "0078.png", - "rotated": false, - "trimmed": true, - "sourceSize": { - "w": 49, - "h": 52 - }, - "spriteSourceSize": { - "x": 0, - "y": 2, - "w": 49, - "h": 50 - }, - "frame": { - "x": 48, - "y": 0, - "w": 49, - "h": 50 - } - }, - { - "filename": "0089.png", - "rotated": false, - "trimmed": true, - "sourceSize": { - "w": 49, - "h": 52 - }, - "spriteSourceSize": { - "x": 1, - "y": 0, - "w": 48, - "h": 52 - }, - "frame": { - "x": 97, - "y": 0, - "w": 48, - "h": 52 - } - }, - { - "filename": "0090.png", - "rotated": false, - "trimmed": true, - "sourceSize": { - "w": 49, - "h": 52 - }, - "spriteSourceSize": { - "x": 1, - "y": 0, - "w": 48, - "h": 52 - }, - "frame": { - "x": 48, - "y": 50, - "w": 48, - "h": 52 - } - }, - { - "filename": "0091.png", - "rotated": false, - "trimmed": true, - "sourceSize": { - "w": 49, - "h": 52 - }, - "spriteSourceSize": { - "x": 1, - "y": 0, - "w": 48, - "h": 52 - }, - "frame": { - "x": 145, - "y": 0, - "w": 48, - "h": 52 - } - }, - { - "filename": "0108.png", - "rotated": false, - "trimmed": true, - "sourceSize": { - "w": 49, - "h": 52 - }, - "spriteSourceSize": { - "x": 1, - "y": 0, - "w": 48, - "h": 52 - }, - "frame": { - "x": 145, - "y": 0, - "w": 48, - "h": 52 - } - }, - { - "filename": "0087.png", - "rotated": false, - "trimmed": true, - "sourceSize": { - "w": 49, - "h": 52 - }, - "spriteSourceSize": { - "x": 1, - "y": 0, - "w": 47, - "h": 52 - }, - "frame": { - "x": 193, - "y": 0, - "w": 47, - "h": 52 - } - }, - { - "filename": "0088.png", - "rotated": false, - "trimmed": true, - "sourceSize": { - "w": 49, - "h": 52 - }, - "spriteSourceSize": { - "x": 1, - "y": 0, - "w": 47, - "h": 52 - }, - "frame": { - "x": 193, - "y": 0, - "w": 47, - "h": 52 - } - }, - { - "filename": "0095.png", - "rotated": false, - "trimmed": true, - "sourceSize": { - "w": 49, - "h": 52 - }, - "spriteSourceSize": { - "x": 1, - "y": 0, - "w": 47, - "h": 52 - }, - "frame": { - "x": 193, - "y": 0, - "w": 47, - "h": 52 - } - }, - { - "filename": "0096.png", - "rotated": false, - "trimmed": true, - "sourceSize": { - "w": 49, - "h": 52 - }, - "spriteSourceSize": { - "x": 1, - "y": 0, - "w": 47, - "h": 52 - }, - "frame": { - "x": 193, - "y": 0, - "w": 47, - "h": 52 - } - }, - { - "filename": "0104.png", - "rotated": false, - "trimmed": true, - "sourceSize": { - "w": 49, - "h": 52 - }, - "spriteSourceSize": { - "x": 1, - "y": 0, - "w": 47, - "h": 52 - }, - "frame": { - "x": 193, - "y": 0, - "w": 47, - "h": 52 - } - }, - { - "filename": "0105.png", - "rotated": false, - "trimmed": true, - "sourceSize": { - "w": 49, - "h": 52 - }, - "spriteSourceSize": { - "x": 1, - "y": 0, - "w": 47, - "h": 52 - }, - "frame": { - "x": 193, - "y": 0, - "w": 47, - "h": 52 - } - }, - { - "filename": "0092.png", - "rotated": false, - "trimmed": true, - "sourceSize": { - "w": 49, - "h": 52 - }, - "spriteSourceSize": { - "x": 1, - "y": 0, - "w": 48, - "h": 52 - }, - "frame": { - "x": 48, - "y": 102, - "w": 48, - "h": 52 - } - }, - { - "filename": "0099.png", - "rotated": false, - "trimmed": true, - "sourceSize": { - "w": 49, - "h": 52 - }, - "spriteSourceSize": { - "x": 1, - "y": 0, - "w": 48, - "h": 52 - }, - "frame": { - "x": 48, - "y": 102, - "w": 48, - "h": 52 - } - }, - { - "filename": "0100.png", - "rotated": false, - "trimmed": true, - "sourceSize": { - "w": 49, - "h": 52 - }, - "spriteSourceSize": { - "x": 1, - "y": 0, - "w": 48, - "h": 52 - }, - "frame": { - "x": 48, - "y": 102, - "w": 48, - "h": 52 - } - }, - { - "filename": "0093.png", - "rotated": false, - "trimmed": true, - "sourceSize": { - "w": 49, - "h": 52 - }, - "spriteSourceSize": { - "x": 1, - "y": 0, - "w": 48, - "h": 52 - }, - "frame": { - "x": 48, - "y": 154, - "w": 48, - "h": 52 - } - }, - { - "filename": "0094.png", - "rotated": false, - "trimmed": true, - "sourceSize": { - "w": 49, - "h": 52 - }, - "spriteSourceSize": { - "x": 1, - "y": 0, - "w": 48, - "h": 52 - }, - "frame": { - "x": 48, - "y": 154, - "w": 48, - "h": 52 - } - }, - { - "filename": "0101.png", - "rotated": false, - "trimmed": true, - "sourceSize": { - "w": 49, - "h": 52 - }, - "spriteSourceSize": { - "x": 1, - "y": 0, - "w": 48, - "h": 52 - }, - "frame": { - "x": 48, - "y": 154, - "w": 48, - "h": 52 - } - }, - { - "filename": "0102.png", - "rotated": false, - "trimmed": true, - "sourceSize": { - "w": 49, - "h": 52 - }, - "spriteSourceSize": { - "x": 1, - "y": 0, - "w": 48, - "h": 52 - }, - "frame": { - "x": 48, - "y": 154, - "w": 48, - "h": 52 - } - }, - { - "filename": "0103.png", - "rotated": false, - "trimmed": true, - "sourceSize": { - "w": 49, - "h": 52 - }, - "spriteSourceSize": { - "x": 1, - "y": 0, - "w": 48, - "h": 52 - }, - "frame": { - "x": 48, - "y": 154, - "w": 48, - "h": 52 - } - }, - { - "filename": "0097.png", - "rotated": false, - "trimmed": true, - "sourceSize": { - "w": 49, - "h": 52 - }, - "spriteSourceSize": { - "x": 1, - "y": 0, - "w": 48, - "h": 52 - }, - "frame": { - "x": 96, - "y": 52, - "w": 48, - "h": 52 - } - }, - { - "filename": "0098.png", - "rotated": false, - "trimmed": true, - "sourceSize": { - "w": 49, - "h": 52 - }, - "spriteSourceSize": { - "x": 1, - "y": 0, - "w": 48, - "h": 52 - }, - "frame": { - "x": 96, - "y": 52, - "w": 48, - "h": 52 - } - }, - { - "filename": "0106.png", - "rotated": false, - "trimmed": true, - "sourceSize": { - "w": 49, - "h": 52 - }, - "spriteSourceSize": { - "x": 1, - "y": 0, - "w": 48, - "h": 52 - }, - "frame": { - "x": 96, - "y": 52, - "w": 48, - "h": 52 - } - }, - { - "filename": "0107.png", - "rotated": false, - "trimmed": true, - "sourceSize": { - "w": 49, - "h": 52 - }, - "spriteSourceSize": { - "x": 1, - "y": 0, - "w": 48, - "h": 52 - }, - "frame": { - "x": 96, - "y": 52, - "w": 48, - "h": 52 - } - }, - { - "filename": "0109.png", - "rotated": false, - "trimmed": true, - "sourceSize": { - "w": 49, - "h": 52 - }, - "spriteSourceSize": { - "x": 1, - "y": 0, - "w": 48, - "h": 52 - }, - "frame": { - "x": 144, - "y": 52, - "w": 48, - "h": 52 - } - }, - { - "filename": "0001.png", - "rotated": false, - "trimmed": true, - "sourceSize": { - "w": 49, - "h": 52 - }, - "spriteSourceSize": { - "x": 1, - "y": 1, - "w": 48, - "h": 51 - }, - "frame": { - "x": 192, - "y": 52, - "w": 48, - "h": 51 - } - }, - { - "filename": "0002.png", - "rotated": false, - "trimmed": true, - "sourceSize": { - "w": 49, - "h": 52 - }, - "spriteSourceSize": { - "x": 1, - "y": 1, - "w": 48, - "h": 51 - }, - "frame": { - "x": 192, - "y": 52, - "w": 48, - "h": 51 - } - }, - { - "filename": "0017.png", - "rotated": false, - "trimmed": true, - "sourceSize": { - "w": 49, - "h": 52 - }, - "spriteSourceSize": { - "x": 1, - "y": 1, - "w": 48, - "h": 51 - }, - "frame": { - "x": 192, - "y": 52, - "w": 48, - "h": 51 - } - }, - { - "filename": "0018.png", - "rotated": false, - "trimmed": true, - "sourceSize": { - "w": 49, - "h": 52 - }, - "spriteSourceSize": { - "x": 1, - "y": 1, - "w": 48, - "h": 51 - }, - "frame": { - "x": 192, - "y": 52, - "w": 48, - "h": 51 - } - }, - { - "filename": "0033.png", - "rotated": false, - "trimmed": true, - "sourceSize": { - "w": 49, - "h": 52 - }, - "spriteSourceSize": { - "x": 1, - "y": 1, - "w": 48, - "h": 51 - }, - "frame": { - "x": 192, - "y": 52, - "w": 48, - "h": 51 - } - }, - { - "filename": "0034.png", - "rotated": false, - "trimmed": true, - "sourceSize": { - "w": 49, - "h": 52 - }, - "spriteSourceSize": { - "x": 1, - "y": 1, - "w": 48, - "h": 51 - }, - "frame": { - "x": 192, - "y": 52, - "w": 48, - "h": 51 - } - }, - { - "filename": "0049.png", - "rotated": false, - "trimmed": true, - "sourceSize": { - "w": 49, - "h": 52 - }, - "spriteSourceSize": { - "x": 1, - "y": 1, - "w": 48, - "h": 51 - }, - "frame": { - "x": 192, - "y": 52, - "w": 48, - "h": 51 - } - }, - { - "filename": "0050.png", - "rotated": false, - "trimmed": true, - "sourceSize": { - "w": 49, - "h": 52 - }, - "spriteSourceSize": { - "x": 1, - "y": 1, - "w": 48, - "h": 51 - }, - "frame": { - "x": 192, - "y": 52, - "w": 48, - "h": 51 - } - }, - { - "filename": "0065.png", - "rotated": false, - "trimmed": true, - "sourceSize": { - "w": 49, - "h": 52 - }, - "spriteSourceSize": { - "x": 1, - "y": 1, - "w": 48, - "h": 51 - }, - "frame": { - "x": 192, - "y": 52, - "w": 48, - "h": 51 - } - }, - { - "filename": "0066.png", - "rotated": false, - "trimmed": true, - "sourceSize": { - "w": 49, - "h": 52 - }, - "spriteSourceSize": { - "x": 1, - "y": 1, - "w": 48, - "h": 51 - }, - "frame": { - "x": 192, - "y": 52, - "w": 48, - "h": 51 - } - }, - { - "filename": "0081.png", - "rotated": false, - "trimmed": true, - "sourceSize": { - "w": 49, - "h": 52 - }, - "spriteSourceSize": { - "x": 1, - "y": 1, - "w": 48, - "h": 51 - }, - "frame": { - "x": 192, - "y": 52, - "w": 48, - "h": 51 - } - }, - { - "filename": "0082.png", - "rotated": false, - "trimmed": true, - "sourceSize": { - "w": 49, - "h": 52 - }, - "spriteSourceSize": { - "x": 1, - "y": 1, - "w": 48, - "h": 51 - }, - "frame": { - "x": 192, - "y": 52, - "w": 48, - "h": 51 - } - }, - { - "filename": "0015.png", - "rotated": false, - "trimmed": true, - "sourceSize": { - "w": 49, - "h": 52 - }, - "spriteSourceSize": { - "x": 1, - "y": 1, - "w": 48, - "h": 51 - }, - "frame": { - "x": 192, - "y": 103, - "w": 48, - "h": 51 - } - }, - { - "filename": "0016.png", - "rotated": false, - "trimmed": true, - "sourceSize": { - "w": 49, - "h": 52 - }, - "spriteSourceSize": { - "x": 1, - "y": 1, - "w": 48, - "h": 51 - }, - "frame": { - "x": 192, - "y": 103, - "w": 48, - "h": 51 - } - }, - { - "filename": "0031.png", - "rotated": false, - "trimmed": true, - "sourceSize": { - "w": 49, - "h": 52 - }, - "spriteSourceSize": { - "x": 1, - "y": 1, - "w": 48, - "h": 51 - }, - "frame": { - "x": 192, - "y": 103, - "w": 48, - "h": 51 - } - }, - { - "filename": "0032.png", - "rotated": false, - "trimmed": true, - "sourceSize": { - "w": 49, - "h": 52 - }, - "spriteSourceSize": { - "x": 1, - "y": 1, - "w": 48, - "h": 51 - }, - "frame": { - "x": 192, - "y": 103, - "w": 48, - "h": 51 - } - }, - { - "filename": "0047.png", - "rotated": false, - "trimmed": true, - "sourceSize": { - "w": 49, - "h": 52 - }, - "spriteSourceSize": { - "x": 1, - "y": 1, - "w": 48, - "h": 51 - }, - "frame": { - "x": 192, - "y": 103, - "w": 48, - "h": 51 - } - }, - { - "filename": "0048.png", - "rotated": false, - "trimmed": true, - "sourceSize": { - "w": 49, - "h": 52 - }, - "spriteSourceSize": { - "x": 1, - "y": 1, - "w": 48, - "h": 51 - }, - "frame": { - "x": 192, - "y": 103, - "w": 48, - "h": 51 - } - }, - { - "filename": "0063.png", - "rotated": false, - "trimmed": true, - "sourceSize": { - "w": 49, - "h": 52 - }, - "spriteSourceSize": { - "x": 1, - "y": 1, - "w": 48, - "h": 51 - }, - "frame": { - "x": 192, - "y": 103, - "w": 48, - "h": 51 - } - }, - { - "filename": "0064.png", - "rotated": false, - "trimmed": true, - "sourceSize": { - "w": 49, - "h": 52 - }, - "spriteSourceSize": { - "x": 1, - "y": 1, - "w": 48, - "h": 51 - }, - "frame": { - "x": 192, - "y": 103, - "w": 48, - "h": 51 - } - }, - { - "filename": "0079.png", - "rotated": false, - "trimmed": true, - "sourceSize": { - "w": 49, - "h": 52 - }, - "spriteSourceSize": { - "x": 1, - "y": 1, - "w": 48, - "h": 51 - }, - "frame": { - "x": 192, - "y": 103, - "w": 48, - "h": 51 - } - }, - { - "filename": "0080.png", - "rotated": false, - "trimmed": true, - "sourceSize": { - "w": 49, - "h": 52 - }, - "spriteSourceSize": { - "x": 1, - "y": 1, - "w": 48, - "h": 51 - }, - "frame": { - "x": 192, - "y": 103, - "w": 48, - "h": 51 - } - }, - { - "filename": "0003.png", - "rotated": false, - "trimmed": true, - "sourceSize": { - "w": 49, - "h": 52 - }, - "spriteSourceSize": { - "x": 1, - "y": 1, - "w": 47, - "h": 51 - }, - "frame": { - "x": 96, - "y": 154, - "w": 47, - "h": 51 - } - }, - { - "filename": "0004.png", - "rotated": false, - "trimmed": true, - "sourceSize": { - "w": 49, - "h": 52 - }, - "spriteSourceSize": { - "x": 1, - "y": 1, - "w": 47, - "h": 51 - }, - "frame": { - "x": 96, - "y": 154, - "w": 47, - "h": 51 - } - }, - { - "filename": "0019.png", - "rotated": false, - "trimmed": true, - "sourceSize": { - "w": 49, - "h": 52 - }, - "spriteSourceSize": { - "x": 1, - "y": 1, - "w": 47, - "h": 51 - }, - "frame": { - "x": 96, - "y": 154, - "w": 47, - "h": 51 - } - }, - { - "filename": "0020.png", - "rotated": false, - "trimmed": true, - "sourceSize": { - "w": 49, - "h": 52 - }, - "spriteSourceSize": { - "x": 1, - "y": 1, - "w": 47, - "h": 51 - }, - "frame": { - "x": 96, - "y": 154, - "w": 47, - "h": 51 - } - }, - { - "filename": "0035.png", - "rotated": false, - "trimmed": true, - "sourceSize": { - "w": 49, - "h": 52 - }, - "spriteSourceSize": { - "x": 1, - "y": 1, - "w": 47, - "h": 51 - }, - "frame": { - "x": 96, - "y": 154, - "w": 47, - "h": 51 - } - }, - { - "filename": "0036.png", - "rotated": false, - "trimmed": true, - "sourceSize": { - "w": 49, - "h": 52 - }, - "spriteSourceSize": { - "x": 1, - "y": 1, - "w": 47, - "h": 51 - }, - "frame": { - "x": 96, - "y": 154, - "w": 47, - "h": 51 - } - }, - { - "filename": "0051.png", - "rotated": false, - "trimmed": true, - "sourceSize": { - "w": 49, - "h": 52 - }, - "spriteSourceSize": { - "x": 1, - "y": 1, - "w": 47, - "h": 51 - }, - "frame": { - "x": 96, - "y": 154, - "w": 47, - "h": 51 - } - }, - { - "filename": "0052.png", - "rotated": false, - "trimmed": true, - "sourceSize": { - "w": 49, - "h": 52 - }, - "spriteSourceSize": { - "x": 1, - "y": 1, - "w": 47, - "h": 51 - }, - "frame": { - "x": 96, - "y": 154, - "w": 47, - "h": 51 - } - }, - { - "filename": "0067.png", - "rotated": false, - "trimmed": true, - "sourceSize": { - "w": 49, - "h": 52 - }, - "spriteSourceSize": { - "x": 1, - "y": 1, - "w": 47, - "h": 51 - }, - "frame": { - "x": 96, - "y": 154, - "w": 47, - "h": 51 - } - }, - { - "filename": "0068.png", - "rotated": false, - "trimmed": true, - "sourceSize": { - "w": 49, - "h": 52 - }, - "spriteSourceSize": { - "x": 1, - "y": 1, - "w": 47, - "h": 51 - }, - "frame": { - "x": 96, - "y": 154, - "w": 47, - "h": 51 - } - }, - { - "filename": "0005.png", - "rotated": false, - "trimmed": true, - "sourceSize": { - "w": 49, - "h": 52 - }, - "spriteSourceSize": { - "x": 0, - "y": 2, - "w": 48, - "h": 50 - }, - "frame": { - "x": 96, - "y": 104, - "w": 48, - "h": 50 - } - }, - { - "filename": "0006.png", - "rotated": false, - "trimmed": true, - "sourceSize": { - "w": 49, - "h": 52 - }, - "spriteSourceSize": { - "x": 0, - "y": 2, - "w": 48, - "h": 50 - }, - "frame": { - "x": 96, - "y": 104, - "w": 48, - "h": 50 - } - }, - { - "filename": "0021.png", - "rotated": false, - "trimmed": true, - "sourceSize": { - "w": 49, - "h": 52 - }, - "spriteSourceSize": { - "x": 0, - "y": 2, - "w": 48, - "h": 50 - }, - "frame": { - "x": 96, - "y": 104, - "w": 48, - "h": 50 - } - }, - { - "filename": "0022.png", - "rotated": false, - "trimmed": true, - "sourceSize": { - "w": 49, - "h": 52 - }, - "spriteSourceSize": { - "x": 0, - "y": 2, - "w": 48, - "h": 50 - }, - "frame": { - "x": 96, - "y": 104, - "w": 48, - "h": 50 - } - }, - { - "filename": "0037.png", - "rotated": false, - "trimmed": true, - "sourceSize": { - "w": 49, - "h": 52 - }, - "spriteSourceSize": { - "x": 0, - "y": 2, - "w": 48, - "h": 50 - }, - "frame": { - "x": 96, - "y": 104, - "w": 48, - "h": 50 - } - }, - { - "filename": "0038.png", - "rotated": false, - "trimmed": true, - "sourceSize": { - "w": 49, - "h": 52 - }, - "spriteSourceSize": { - "x": 0, - "y": 2, - "w": 48, - "h": 50 - }, - "frame": { - "x": 96, - "y": 104, - "w": 48, - "h": 50 - } - }, - { - "filename": "0053.png", - "rotated": false, - "trimmed": true, - "sourceSize": { - "w": 49, - "h": 52 - }, - "spriteSourceSize": { - "x": 0, - "y": 2, - "w": 48, - "h": 50 - }, - "frame": { - "x": 96, - "y": 104, - "w": 48, - "h": 50 - } - }, - { - "filename": "0054.png", - "rotated": false, - "trimmed": true, - "sourceSize": { - "w": 49, - "h": 52 - }, - "spriteSourceSize": { - "x": 0, - "y": 2, - "w": 48, - "h": 50 - }, - "frame": { - "x": 96, - "y": 104, - "w": 48, - "h": 50 - } - }, - { - "filename": "0069.png", - "rotated": false, - "trimmed": true, - "sourceSize": { - "w": 49, - "h": 52 - }, - "spriteSourceSize": { - "x": 0, - "y": 2, - "w": 48, - "h": 50 - }, - "frame": { - "x": 96, - "y": 104, - "w": 48, - "h": 50 - } - }, - { - "filename": "0070.png", - "rotated": false, - "trimmed": true, - "sourceSize": { - "w": 49, - "h": 52 - }, - "spriteSourceSize": { - "x": 0, - "y": 2, - "w": 48, - "h": 50 - }, - "frame": { - "x": 96, - "y": 104, - "w": 48, - "h": 50 - } - }, - { - "filename": "0007.png", - "rotated": false, - "trimmed": true, - "sourceSize": { - "w": 49, - "h": 52 - }, - "spriteSourceSize": { - "x": 0, - "y": 4, - "w": 48, - "h": 48 - }, - "frame": { - "x": 144, - "y": 104, - "w": 48, - "h": 48 - } - }, - { - "filename": "0008.png", - "rotated": false, - "trimmed": true, - "sourceSize": { - "w": 49, - "h": 52 - }, - "spriteSourceSize": { - "x": 0, - "y": 4, - "w": 48, - "h": 48 - }, - "frame": { - "x": 144, - "y": 104, - "w": 48, - "h": 48 - } - }, - { - "filename": "0023.png", - "rotated": false, - "trimmed": true, - "sourceSize": { - "w": 49, - "h": 52 - }, - "spriteSourceSize": { - "x": 0, - "y": 4, - "w": 48, - "h": 48 - }, - "frame": { - "x": 144, - "y": 104, - "w": 48, - "h": 48 - } - }, - { - "filename": "0024.png", - "rotated": false, - "trimmed": true, - "sourceSize": { - "w": 49, - "h": 52 - }, - "spriteSourceSize": { - "x": 0, - "y": 4, - "w": 48, - "h": 48 - }, - "frame": { - "x": 144, - "y": 104, - "w": 48, - "h": 48 - } - }, - { - "filename": "0039.png", - "rotated": false, - "trimmed": true, - "sourceSize": { - "w": 49, - "h": 52 - }, - "spriteSourceSize": { - "x": 0, - "y": 4, - "w": 48, - "h": 48 - }, - "frame": { - "x": 144, - "y": 104, - "w": 48, - "h": 48 - } - }, - { - "filename": "0040.png", - "rotated": false, - "trimmed": true, - "sourceSize": { - "w": 49, - "h": 52 - }, - "spriteSourceSize": { - "x": 0, - "y": 4, - "w": 48, - "h": 48 - }, - "frame": { - "x": 144, - "y": 104, - "w": 48, - "h": 48 - } - }, - { - "filename": "0055.png", - "rotated": false, - "trimmed": true, - "sourceSize": { - "w": 49, - "h": 52 - }, - "spriteSourceSize": { - "x": 0, - "y": 4, - "w": 48, - "h": 48 - }, - "frame": { - "x": 144, - "y": 104, - "w": 48, - "h": 48 - } - }, - { - "filename": "0056.png", - "rotated": false, - "trimmed": true, - "sourceSize": { - "w": 49, - "h": 52 - }, - "spriteSourceSize": { - "x": 0, - "y": 4, - "w": 48, - "h": 48 - }, - "frame": { - "x": 144, - "y": 104, - "w": 48, - "h": 48 - } - }, - { - "filename": "0071.png", - "rotated": false, - "trimmed": true, - "sourceSize": { - "w": 49, - "h": 52 - }, - "spriteSourceSize": { - "x": 0, - "y": 4, - "w": 48, - "h": 48 - }, - "frame": { - "x": 144, - "y": 104, - "w": 48, - "h": 48 - } - }, - { - "filename": "0072.png", - "rotated": false, - "trimmed": true, - "sourceSize": { - "w": 49, - "h": 52 - }, - "spriteSourceSize": { - "x": 0, - "y": 4, - "w": 48, - "h": 48 - }, - "frame": { - "x": 144, - "y": 104, - "w": 48, - "h": 48 - } - }, - { - "filename": "0009.png", - "rotated": false, - "trimmed": true, - "sourceSize": { - "w": 49, - "h": 52 - }, - "spriteSourceSize": { - "x": 0, - "y": 4, - "w": 48, - "h": 48 - }, - "frame": { - "x": 144, - "y": 152, - "w": 48, - "h": 48 - } - }, - { - "filename": "0010.png", - "rotated": false, - "trimmed": true, - "sourceSize": { - "w": 49, - "h": 52 - }, - "spriteSourceSize": { - "x": 0, - "y": 4, - "w": 48, - "h": 48 - }, - "frame": { - "x": 144, - "y": 152, - "w": 48, - "h": 48 - } - }, - { - "filename": "0025.png", - "rotated": false, - "trimmed": true, - "sourceSize": { - "w": 49, - "h": 52 - }, - "spriteSourceSize": { - "x": 0, - "y": 4, - "w": 48, - "h": 48 - }, - "frame": { - "x": 144, - "y": 152, - "w": 48, - "h": 48 - } - }, - { - "filename": "0026.png", - "rotated": false, - "trimmed": true, - "sourceSize": { - "w": 49, - "h": 52 - }, - "spriteSourceSize": { - "x": 0, - "y": 4, - "w": 48, - "h": 48 - }, - "frame": { - "x": 144, - "y": 152, - "w": 48, - "h": 48 - } - }, - { - "filename": "0041.png", - "rotated": false, - "trimmed": true, - "sourceSize": { - "w": 49, - "h": 52 - }, - "spriteSourceSize": { - "x": 0, - "y": 4, - "w": 48, - "h": 48 - }, - "frame": { - "x": 144, - "y": 152, - "w": 48, - "h": 48 - } - }, - { - "filename": "0042.png", - "rotated": false, - "trimmed": true, - "sourceSize": { - "w": 49, - "h": 52 - }, - "spriteSourceSize": { - "x": 0, - "y": 4, - "w": 48, - "h": 48 - }, - "frame": { - "x": 144, - "y": 152, - "w": 48, - "h": 48 - } - }, - { - "filename": "0057.png", - "rotated": false, - "trimmed": true, - "sourceSize": { - "w": 49, - "h": 52 - }, - "spriteSourceSize": { - "x": 0, - "y": 4, - "w": 48, - "h": 48 - }, - "frame": { - "x": 144, - "y": 152, - "w": 48, - "h": 48 - } - }, - { - "filename": "0058.png", - "rotated": false, - "trimmed": true, - "sourceSize": { - "w": 49, - "h": 52 - }, - "spriteSourceSize": { - "x": 0, - "y": 4, - "w": 48, - "h": 48 - }, - "frame": { - "x": 144, - "y": 152, - "w": 48, - "h": 48 - } - }, - { - "filename": "0073.png", - "rotated": false, - "trimmed": true, - "sourceSize": { - "w": 49, - "h": 52 - }, - "spriteSourceSize": { - "x": 0, - "y": 4, - "w": 48, - "h": 48 - }, - "frame": { - "x": 144, - "y": 152, - "w": 48, - "h": 48 - } - }, - { - "filename": "0074.png", - "rotated": false, - "trimmed": true, - "sourceSize": { - "w": 49, - "h": 52 - }, - "spriteSourceSize": { - "x": 0, - "y": 4, - "w": 48, - "h": 48 - }, - "frame": { - "x": 144, - "y": 152, - "w": 48, - "h": 48 - } - }, - { - "filename": "0011.png", - "rotated": false, - "trimmed": true, - "sourceSize": { - "w": 49, - "h": 52 - }, - "spriteSourceSize": { - "x": 0, - "y": 4, - "w": 48, - "h": 48 - }, - "frame": { - "x": 192, - "y": 154, - "w": 48, - "h": 48 - } - }, - { - "filename": "0012.png", - "rotated": false, - "trimmed": true, - "sourceSize": { - "w": 49, - "h": 52 - }, - "spriteSourceSize": { - "x": 0, - "y": 4, - "w": 48, - "h": 48 - }, - "frame": { - "x": 192, - "y": 154, - "w": 48, - "h": 48 - } - }, - { - "filename": "0027.png", - "rotated": false, - "trimmed": true, - "sourceSize": { - "w": 49, - "h": 52 - }, - "spriteSourceSize": { - "x": 0, - "y": 4, - "w": 48, - "h": 48 - }, - "frame": { - "x": 192, - "y": 154, - "w": 48, - "h": 48 - } - }, - { - "filename": "0028.png", - "rotated": false, - "trimmed": true, - "sourceSize": { - "w": 49, - "h": 52 - }, - "spriteSourceSize": { - "x": 0, - "y": 4, - "w": 48, - "h": 48 - }, - "frame": { - "x": 192, - "y": 154, - "w": 48, - "h": 48 - } - }, - { - "filename": "0043.png", - "rotated": false, - "trimmed": true, - "sourceSize": { - "w": 49, - "h": 52 - }, - "spriteSourceSize": { - "x": 0, - "y": 4, - "w": 48, - "h": 48 - }, - "frame": { - "x": 192, - "y": 154, - "w": 48, - "h": 48 - } - }, - { - "filename": "0044.png", - "rotated": false, - "trimmed": true, - "sourceSize": { - "w": 49, - "h": 52 - }, - "spriteSourceSize": { - "x": 0, - "y": 4, - "w": 48, - "h": 48 - }, - "frame": { - "x": 192, - "y": 154, - "w": 48, - "h": 48 - } - }, - { - "filename": "0059.png", - "rotated": false, - "trimmed": true, - "sourceSize": { - "w": 49, - "h": 52 - }, - "spriteSourceSize": { - "x": 0, - "y": 4, - "w": 48, - "h": 48 - }, - "frame": { - "x": 192, - "y": 154, - "w": 48, - "h": 48 - } - }, - { - "filename": "0060.png", - "rotated": false, - "trimmed": true, - "sourceSize": { - "w": 49, - "h": 52 - }, - "spriteSourceSize": { - "x": 0, - "y": 4, - "w": 48, - "h": 48 - }, - "frame": { - "x": 192, - "y": 154, - "w": 48, - "h": 48 - } - }, - { - "filename": "0075.png", - "rotated": false, - "trimmed": true, - "sourceSize": { - "w": 49, - "h": 52 - }, - "spriteSourceSize": { - "x": 0, - "y": 4, - "w": 48, - "h": 48 - }, - "frame": { - "x": 192, - "y": 154, - "w": 48, - "h": 48 - } - }, - { - "filename": "0076.png", - "rotated": false, - "trimmed": true, - "sourceSize": { - "w": 49, - "h": 52 - }, - "spriteSourceSize": { - "x": 0, - "y": 4, - "w": 48, - "h": 48 - }, - "frame": { - "x": 192, - "y": 154, - "w": 48, - "h": 48 - } - } - ] - } - ], - "meta": { - "app": "https://www.codeandweb.com/texturepacker", - "version": "3.0", - "smartupdate": "$TexturePacker:SmartUpdate:9772e042208152c03f4677b5a37d739c:828b3c5d233c21ed5ab3c368a1cf1988:d07862436676aa228a148ee1f1d82a8f$" - } -} diff --git a/public/images/pokemon/exp/782.png b/public/images/pokemon/exp/782.png deleted file mode 100644 index 9ca666d0a74..00000000000 Binary files a/public/images/pokemon/exp/782.png and /dev/null differ diff --git a/public/images/pokemon/exp/783.json b/public/images/pokemon/exp/783.json deleted file mode 100644 index 71aeb29890a..00000000000 --- a/public/images/pokemon/exp/783.json +++ /dev/null @@ -1,1154 +0,0 @@ -{ - "textures": [ - { - "image": "783.png", - "format": "RGBA8888", - "size": { - "w": 335, - "h": 335 - }, - "scale": 1, - "frames": [ - { - "filename": "0005.png", - "rotated": false, - "trimmed": true, - "sourceSize": { - "w": 74, - "h": 69 - }, - "spriteSourceSize": { - "x": 0, - "y": 2, - "w": 74, - "h": 67 - }, - "frame": { - "x": 0, - "y": 0, - "w": 74, - "h": 67 - } - }, - { - "filename": "0016.png", - "rotated": false, - "trimmed": true, - "sourceSize": { - "w": 74, - "h": 69 - }, - "spriteSourceSize": { - "x": 0, - "y": 2, - "w": 74, - "h": 67 - }, - "frame": { - "x": 0, - "y": 0, - "w": 74, - "h": 67 - } - }, - { - "filename": "0027.png", - "rotated": false, - "trimmed": true, - "sourceSize": { - "w": 74, - "h": 69 - }, - "spriteSourceSize": { - "x": 0, - "y": 2, - "w": 74, - "h": 67 - }, - "frame": { - "x": 0, - "y": 0, - "w": 74, - "h": 67 - } - }, - { - "filename": "0038.png", - "rotated": false, - "trimmed": true, - "sourceSize": { - "w": 74, - "h": 69 - }, - "spriteSourceSize": { - "x": 0, - "y": 2, - "w": 74, - "h": 67 - }, - "frame": { - "x": 0, - "y": 0, - "w": 74, - "h": 67 - } - }, - { - "filename": "0004.png", - "rotated": false, - "trimmed": true, - "sourceSize": { - "w": 74, - "h": 69 - }, - "spriteSourceSize": { - "x": 1, - "y": 1, - "w": 71, - "h": 68 - }, - "frame": { - "x": 0, - "y": 67, - "w": 71, - "h": 68 - } - }, - { - "filename": "0026.png", - "rotated": false, - "trimmed": true, - "sourceSize": { - "w": 74, - "h": 69 - }, - "spriteSourceSize": { - "x": 1, - "y": 1, - "w": 71, - "h": 68 - }, - "frame": { - "x": 0, - "y": 67, - "w": 71, - "h": 68 - } - }, - { - "filename": "0037.png", - "rotated": false, - "trimmed": true, - "sourceSize": { - "w": 74, - "h": 69 - }, - "spriteSourceSize": { - "x": 1, - "y": 1, - "w": 71, - "h": 68 - }, - "frame": { - "x": 0, - "y": 67, - "w": 71, - "h": 68 - } - }, - { - "filename": "0015.png", - "rotated": false, - "trimmed": true, - "sourceSize": { - "w": 74, - "h": 69 - }, - "spriteSourceSize": { - "x": 1, - "y": 1, - "w": 71, - "h": 68 - }, - "frame": { - "x": 0, - "y": 135, - "w": 71, - "h": 68 - } - }, - { - "filename": "0003.png", - "rotated": false, - "trimmed": true, - "sourceSize": { - "w": 74, - "h": 69 - }, - "spriteSourceSize": { - "x": 0, - "y": 0, - "w": 67, - "h": 69 - }, - "frame": { - "x": 0, - "y": 203, - "w": 67, - "h": 69 - } - }, - { - "filename": "0025.png", - "rotated": false, - "trimmed": true, - "sourceSize": { - "w": 74, - "h": 69 - }, - "spriteSourceSize": { - "x": 0, - "y": 0, - "w": 67, - "h": 69 - }, - "frame": { - "x": 0, - "y": 203, - "w": 67, - "h": 69 - } - }, - { - "filename": "0036.png", - "rotated": false, - "trimmed": true, - "sourceSize": { - "w": 74, - "h": 69 - }, - "spriteSourceSize": { - "x": 0, - "y": 0, - "w": 67, - "h": 69 - }, - "frame": { - "x": 0, - "y": 203, - "w": 67, - "h": 69 - } - }, - { - "filename": "0040.png", - "rotated": false, - "trimmed": true, - "sourceSize": { - "w": 74, - "h": 69 - }, - "spriteSourceSize": { - "x": 3, - "y": 3, - "w": 70, - "h": 66 - }, - "frame": { - "x": 74, - "y": 0, - "w": 70, - "h": 66 - } - }, - { - "filename": "0042.png", - "rotated": false, - "trimmed": true, - "sourceSize": { - "w": 74, - "h": 69 - }, - "spriteSourceSize": { - "x": 3, - "y": 3, - "w": 70, - "h": 66 - }, - "frame": { - "x": 144, - "y": 0, - "w": 70, - "h": 66 - } - }, - { - "filename": "0044.png", - "rotated": false, - "trimmed": true, - "sourceSize": { - "w": 74, - "h": 69 - }, - "spriteSourceSize": { - "x": 3, - "y": 3, - "w": 70, - "h": 66 - }, - "frame": { - "x": 214, - "y": 0, - "w": 70, - "h": 66 - } - }, - { - "filename": "0001.png", - "rotated": false, - "trimmed": true, - "sourceSize": { - "w": 74, - "h": 69 - }, - "spriteSourceSize": { - "x": 0, - "y": 0, - "w": 62, - "h": 69 - }, - "frame": { - "x": 67, - "y": 203, - "w": 62, - "h": 69 - } - }, - { - "filename": "0012.png", - "rotated": false, - "trimmed": true, - "sourceSize": { - "w": 74, - "h": 69 - }, - "spriteSourceSize": { - "x": 0, - "y": 0, - "w": 62, - "h": 69 - }, - "frame": { - "x": 67, - "y": 203, - "w": 62, - "h": 69 - } - }, - { - "filename": "0023.png", - "rotated": false, - "trimmed": true, - "sourceSize": { - "w": 74, - "h": 69 - }, - "spriteSourceSize": { - "x": 0, - "y": 0, - "w": 62, - "h": 69 - }, - "frame": { - "x": 67, - "y": 203, - "w": 62, - "h": 69 - } - }, - { - "filename": "0034.png", - "rotated": false, - "trimmed": true, - "sourceSize": { - "w": 74, - "h": 69 - }, - "spriteSourceSize": { - "x": 0, - "y": 0, - "w": 62, - "h": 69 - }, - "frame": { - "x": 67, - "y": 203, - "w": 62, - "h": 69 - } - }, - { - "filename": "0002.png", - "rotated": false, - "trimmed": true, - "sourceSize": { - "w": 74, - "h": 69 - }, - "spriteSourceSize": { - "x": 0, - "y": 0, - "w": 64, - "h": 69 - }, - "frame": { - "x": 71, - "y": 67, - "w": 64, - "h": 69 - } - }, - { - "filename": "0013.png", - "rotated": false, - "trimmed": true, - "sourceSize": { - "w": 74, - "h": 69 - }, - "spriteSourceSize": { - "x": 0, - "y": 0, - "w": 64, - "h": 69 - }, - "frame": { - "x": 71, - "y": 67, - "w": 64, - "h": 69 - } - }, - { - "filename": "0024.png", - "rotated": false, - "trimmed": true, - "sourceSize": { - "w": 74, - "h": 69 - }, - "spriteSourceSize": { - "x": 0, - "y": 0, - "w": 64, - "h": 69 - }, - "frame": { - "x": 71, - "y": 67, - "w": 64, - "h": 69 - } - }, - { - "filename": "0035.png", - "rotated": false, - "trimmed": true, - "sourceSize": { - "w": 74, - "h": 69 - }, - "spriteSourceSize": { - "x": 0, - "y": 0, - "w": 64, - "h": 69 - }, - "frame": { - "x": 71, - "y": 67, - "w": 64, - "h": 69 - } - }, - { - "filename": "0007.png", - "rotated": false, - "trimmed": true, - "sourceSize": { - "w": 74, - "h": 69 - }, - "spriteSourceSize": { - "x": 3, - "y": 2, - "w": 64, - "h": 67 - }, - "frame": { - "x": 71, - "y": 136, - "w": 64, - "h": 67 - } - }, - { - "filename": "0018.png", - "rotated": false, - "trimmed": true, - "sourceSize": { - "w": 74, - "h": 69 - }, - "spriteSourceSize": { - "x": 3, - "y": 2, - "w": 64, - "h": 67 - }, - "frame": { - "x": 71, - "y": 136, - "w": 64, - "h": 67 - } - }, - { - "filename": "0029.png", - "rotated": false, - "trimmed": true, - "sourceSize": { - "w": 74, - "h": 69 - }, - "spriteSourceSize": { - "x": 3, - "y": 2, - "w": 64, - "h": 67 - }, - "frame": { - "x": 71, - "y": 136, - "w": 64, - "h": 67 - } - }, - { - "filename": "0050.png", - "rotated": false, - "trimmed": true, - "sourceSize": { - "w": 74, - "h": 69 - }, - "spriteSourceSize": { - "x": 3, - "y": 2, - "w": 64, - "h": 67 - }, - "frame": { - "x": 71, - "y": 136, - "w": 64, - "h": 67 - } - }, - { - "filename": "0014.png", - "rotated": false, - "trimmed": true, - "sourceSize": { - "w": 74, - "h": 69 - }, - "spriteSourceSize": { - "x": 0, - "y": 0, - "w": 67, - "h": 69 - }, - "frame": { - "x": 135, - "y": 66, - "w": 67, - "h": 69 - } - }, - { - "filename": "0046.png", - "rotated": false, - "trimmed": true, - "sourceSize": { - "w": 74, - "h": 69 - }, - "spriteSourceSize": { - "x": 3, - "y": 3, - "w": 70, - "h": 66 - }, - "frame": { - "x": 202, - "y": 66, - "w": 70, - "h": 66 - } - }, - { - "filename": "0006.png", - "rotated": false, - "trimmed": true, - "sourceSize": { - "w": 74, - "h": 69 - }, - "spriteSourceSize": { - "x": 3, - "y": 3, - "w": 69, - "h": 66 - }, - "frame": { - "x": 135, - "y": 135, - "w": 69, - "h": 66 - } - }, - { - "filename": "0017.png", - "rotated": false, - "trimmed": true, - "sourceSize": { - "w": 74, - "h": 69 - }, - "spriteSourceSize": { - "x": 3, - "y": 3, - "w": 69, - "h": 66 - }, - "frame": { - "x": 135, - "y": 135, - "w": 69, - "h": 66 - } - }, - { - "filename": "0028.png", - "rotated": false, - "trimmed": true, - "sourceSize": { - "w": 74, - "h": 69 - }, - "spriteSourceSize": { - "x": 3, - "y": 3, - "w": 69, - "h": 66 - }, - "frame": { - "x": 135, - "y": 135, - "w": 69, - "h": 66 - } - }, - { - "filename": "0039.png", - "rotated": false, - "trimmed": true, - "sourceSize": { - "w": 74, - "h": 69 - }, - "spriteSourceSize": { - "x": 3, - "y": 3, - "w": 69, - "h": 66 - }, - "frame": { - "x": 135, - "y": 135, - "w": 69, - "h": 66 - } - }, - { - "filename": "0049.png", - "rotated": false, - "trimmed": true, - "sourceSize": { - "w": 74, - "h": 69 - }, - "spriteSourceSize": { - "x": 3, - "y": 3, - "w": 69, - "h": 66 - }, - "frame": { - "x": 135, - "y": 135, - "w": 69, - "h": 66 - } - }, - { - "filename": "0041.png", - "rotated": false, - "trimmed": true, - "sourceSize": { - "w": 74, - "h": 69 - }, - "spriteSourceSize": { - "x": 3, - "y": 3, - "w": 69, - "h": 66 - }, - "frame": { - "x": 204, - "y": 132, - "w": 69, - "h": 66 - } - }, - { - "filename": "0010.png", - "rotated": false, - "trimmed": true, - "sourceSize": { - "w": 74, - "h": 69 - }, - "spriteSourceSize": { - "x": 0, - "y": 0, - "w": 62, - "h": 69 - }, - "frame": { - "x": 273, - "y": 66, - "w": 62, - "h": 69 - } - }, - { - "filename": "0021.png", - "rotated": false, - "trimmed": true, - "sourceSize": { - "w": 74, - "h": 69 - }, - "spriteSourceSize": { - "x": 0, - "y": 0, - "w": 62, - "h": 69 - }, - "frame": { - "x": 273, - "y": 66, - "w": 62, - "h": 69 - } - }, - { - "filename": "0032.png", - "rotated": false, - "trimmed": true, - "sourceSize": { - "w": 74, - "h": 69 - }, - "spriteSourceSize": { - "x": 0, - "y": 0, - "w": 62, - "h": 69 - }, - "frame": { - "x": 273, - "y": 66, - "w": 62, - "h": 69 - } - }, - { - "filename": "0053.png", - "rotated": false, - "trimmed": true, - "sourceSize": { - "w": 74, - "h": 69 - }, - "spriteSourceSize": { - "x": 0, - "y": 0, - "w": 62, - "h": 69 - }, - "frame": { - "x": 273, - "y": 66, - "w": 62, - "h": 69 - } - }, - { - "filename": "0011.png", - "rotated": false, - "trimmed": true, - "sourceSize": { - "w": 74, - "h": 69 - }, - "spriteSourceSize": { - "x": 0, - "y": 0, - "w": 62, - "h": 69 - }, - "frame": { - "x": 273, - "y": 135, - "w": 62, - "h": 69 - } - }, - { - "filename": "0022.png", - "rotated": false, - "trimmed": true, - "sourceSize": { - "w": 74, - "h": 69 - }, - "spriteSourceSize": { - "x": 0, - "y": 0, - "w": 62, - "h": 69 - }, - "frame": { - "x": 273, - "y": 135, - "w": 62, - "h": 69 - } - }, - { - "filename": "0033.png", - "rotated": false, - "trimmed": true, - "sourceSize": { - "w": 74, - "h": 69 - }, - "spriteSourceSize": { - "x": 0, - "y": 0, - "w": 62, - "h": 69 - }, - "frame": { - "x": 273, - "y": 135, - "w": 62, - "h": 69 - } - }, - { - "filename": "0054.png", - "rotated": false, - "trimmed": true, - "sourceSize": { - "w": 74, - "h": 69 - }, - "spriteSourceSize": { - "x": 0, - "y": 0, - "w": 62, - "h": 69 - }, - "frame": { - "x": 273, - "y": 135, - "w": 62, - "h": 69 - } - }, - { - "filename": "0043.png", - "rotated": false, - "trimmed": true, - "sourceSize": { - "w": 74, - "h": 69 - }, - "spriteSourceSize": { - "x": 3, - "y": 3, - "w": 69, - "h": 66 - }, - "frame": { - "x": 204, - "y": 198, - "w": 69, - "h": 66 - } - }, - { - "filename": "0045.png", - "rotated": false, - "trimmed": true, - "sourceSize": { - "w": 74, - "h": 69 - }, - "spriteSourceSize": { - "x": 3, - "y": 3, - "w": 69, - "h": 66 - }, - "frame": { - "x": 135, - "y": 201, - "w": 69, - "h": 66 - } - }, - { - "filename": "0047.png", - "rotated": false, - "trimmed": true, - "sourceSize": { - "w": 74, - "h": 69 - }, - "spriteSourceSize": { - "x": 3, - "y": 3, - "w": 69, - "h": 66 - }, - "frame": { - "x": 135, - "y": 201, - "w": 69, - "h": 66 - } - }, - { - "filename": "0009.png", - "rotated": false, - "trimmed": true, - "sourceSize": { - "w": 74, - "h": 69 - }, - "spriteSourceSize": { - "x": 1, - "y": 1, - "w": 61, - "h": 68 - }, - "frame": { - "x": 273, - "y": 204, - "w": 61, - "h": 68 - } - }, - { - "filename": "0020.png", - "rotated": false, - "trimmed": true, - "sourceSize": { - "w": 74, - "h": 69 - }, - "spriteSourceSize": { - "x": 1, - "y": 1, - "w": 61, - "h": 68 - }, - "frame": { - "x": 273, - "y": 204, - "w": 61, - "h": 68 - } - }, - { - "filename": "0031.png", - "rotated": false, - "trimmed": true, - "sourceSize": { - "w": 74, - "h": 69 - }, - "spriteSourceSize": { - "x": 1, - "y": 1, - "w": 61, - "h": 68 - }, - "frame": { - "x": 273, - "y": 204, - "w": 61, - "h": 68 - } - }, - { - "filename": "0052.png", - "rotated": false, - "trimmed": true, - "sourceSize": { - "w": 74, - "h": 69 - }, - "spriteSourceSize": { - "x": 1, - "y": 1, - "w": 61, - "h": 68 - }, - "frame": { - "x": 273, - "y": 204, - "w": 61, - "h": 68 - } - }, - { - "filename": "0048.png", - "rotated": false, - "trimmed": true, - "sourceSize": { - "w": 74, - "h": 69 - }, - "spriteSourceSize": { - "x": 3, - "y": 3, - "w": 70, - "h": 66 - }, - "frame": { - "x": 129, - "y": 267, - "w": 70, - "h": 66 - } - }, - { - "filename": "0008.png", - "rotated": false, - "trimmed": true, - "sourceSize": { - "w": 74, - "h": 69 - }, - "spriteSourceSize": { - "x": 0, - "y": 2, - "w": 64, - "h": 67 - }, - "frame": { - "x": 199, - "y": 267, - "w": 64, - "h": 67 - } - }, - { - "filename": "0019.png", - "rotated": false, - "trimmed": true, - "sourceSize": { - "w": 74, - "h": 69 - }, - "spriteSourceSize": { - "x": 0, - "y": 2, - "w": 64, - "h": 67 - }, - "frame": { - "x": 199, - "y": 267, - "w": 64, - "h": 67 - } - }, - { - "filename": "0030.png", - "rotated": false, - "trimmed": true, - "sourceSize": { - "w": 74, - "h": 69 - }, - "spriteSourceSize": { - "x": 0, - "y": 2, - "w": 64, - "h": 67 - }, - "frame": { - "x": 199, - "y": 267, - "w": 64, - "h": 67 - } - }, - { - "filename": "0051.png", - "rotated": false, - "trimmed": true, - "sourceSize": { - "w": 74, - "h": 69 - }, - "spriteSourceSize": { - "x": 0, - "y": 2, - "w": 64, - "h": 67 - }, - "frame": { - "x": 199, - "y": 267, - "w": 64, - "h": 67 - } - } - ] - } - ], - "meta": { - "app": "https://www.codeandweb.com/texturepacker", - "version": "3.0", - "smartupdate": "$TexturePacker:SmartUpdate:f33a08a20212ca30a4c442095b0effc2:91a27eccd7f819b29aa8e5f9bc790c41:aab166e28c744865a0296041224dd01b$" - } -} diff --git a/public/images/pokemon/exp/783.png b/public/images/pokemon/exp/783.png deleted file mode 100644 index 58372a977c6..00000000000 Binary files a/public/images/pokemon/exp/783.png and /dev/null differ diff --git a/public/images/pokemon/exp/784.json b/public/images/pokemon/exp/784.json deleted file mode 100644 index 4200616ecef..00000000000 --- a/public/images/pokemon/exp/784.json +++ /dev/null @@ -1,1826 +0,0 @@ -{ - "textures": [ - { - "image": "784.png", - "format": "RGBA8888", - "size": { - "w": 461, - "h": 461 - }, - "scale": 1, - "frames": [ - { - "filename": "0014.png", - "rotated": false, - "trimmed": true, - "sourceSize": { - "w": 96, - "h": 91 - }, - "spriteSourceSize": { - "x": 0, - "y": 0, - "w": 96, - "h": 88 - }, - "frame": { - "x": 0, - "y": 0, - "w": 96, - "h": 88 - } - }, - { - "filename": "0032.png", - "rotated": false, - "trimmed": true, - "sourceSize": { - "w": 96, - "h": 91 - }, - "spriteSourceSize": { - "x": 0, - "y": 0, - "w": 96, - "h": 88 - }, - "frame": { - "x": 0, - "y": 0, - "w": 96, - "h": 88 - } - }, - { - "filename": "0050.png", - "rotated": false, - "trimmed": true, - "sourceSize": { - "w": 96, - "h": 91 - }, - "spriteSourceSize": { - "x": 0, - "y": 0, - "w": 96, - "h": 88 - }, - "frame": { - "x": 0, - "y": 0, - "w": 96, - "h": 88 - } - }, - { - "filename": "0068.png", - "rotated": false, - "trimmed": true, - "sourceSize": { - "w": 96, - "h": 91 - }, - "spriteSourceSize": { - "x": 0, - "y": 0, - "w": 96, - "h": 88 - }, - "frame": { - "x": 0, - "y": 0, - "w": 96, - "h": 88 - } - }, - { - "filename": "0015.png", - "rotated": false, - "trimmed": true, - "sourceSize": { - "w": 96, - "h": 91 - }, - "spriteSourceSize": { - "x": 0, - "y": 0, - "w": 96, - "h": 88 - }, - "frame": { - "x": 0, - "y": 88, - "w": 96, - "h": 88 - } - }, - { - "filename": "0033.png", - "rotated": false, - "trimmed": true, - "sourceSize": { - "w": 96, - "h": 91 - }, - "spriteSourceSize": { - "x": 0, - "y": 0, - "w": 96, - "h": 88 - }, - "frame": { - "x": 0, - "y": 88, - "w": 96, - "h": 88 - } - }, - { - "filename": "0051.png", - "rotated": false, - "trimmed": true, - "sourceSize": { - "w": 96, - "h": 91 - }, - "spriteSourceSize": { - "x": 0, - "y": 0, - "w": 96, - "h": 88 - }, - "frame": { - "x": 0, - "y": 88, - "w": 96, - "h": 88 - } - }, - { - "filename": "0069.png", - "rotated": false, - "trimmed": true, - "sourceSize": { - "w": 96, - "h": 91 - }, - "spriteSourceSize": { - "x": 0, - "y": 0, - "w": 96, - "h": 88 - }, - "frame": { - "x": 0, - "y": 88, - "w": 96, - "h": 88 - } - }, - { - "filename": "0016.png", - "rotated": false, - "trimmed": true, - "sourceSize": { - "w": 96, - "h": 91 - }, - "spriteSourceSize": { - "x": 0, - "y": 0, - "w": 96, - "h": 88 - }, - "frame": { - "x": 96, - "y": 0, - "w": 96, - "h": 88 - } - }, - { - "filename": "0034.png", - "rotated": false, - "trimmed": true, - "sourceSize": { - "w": 96, - "h": 91 - }, - "spriteSourceSize": { - "x": 0, - "y": 0, - "w": 96, - "h": 88 - }, - "frame": { - "x": 96, - "y": 0, - "w": 96, - "h": 88 - } - }, - { - "filename": "0052.png", - "rotated": false, - "trimmed": true, - "sourceSize": { - "w": 96, - "h": 91 - }, - "spriteSourceSize": { - "x": 0, - "y": 0, - "w": 96, - "h": 88 - }, - "frame": { - "x": 96, - "y": 0, - "w": 96, - "h": 88 - } - }, - { - "filename": "0070.png", - "rotated": false, - "trimmed": true, - "sourceSize": { - "w": 96, - "h": 91 - }, - "spriteSourceSize": { - "x": 0, - "y": 0, - "w": 96, - "h": 88 - }, - "frame": { - "x": 96, - "y": 0, - "w": 96, - "h": 88 - } - }, - { - "filename": "0017.png", - "rotated": false, - "trimmed": true, - "sourceSize": { - "w": 96, - "h": 91 - }, - "spriteSourceSize": { - "x": 0, - "y": 0, - "w": 96, - "h": 88 - }, - "frame": { - "x": 0, - "y": 176, - "w": 96, - "h": 88 - } - }, - { - "filename": "0035.png", - "rotated": false, - "trimmed": true, - "sourceSize": { - "w": 96, - "h": 91 - }, - "spriteSourceSize": { - "x": 0, - "y": 0, - "w": 96, - "h": 88 - }, - "frame": { - "x": 0, - "y": 176, - "w": 96, - "h": 88 - } - }, - { - "filename": "0053.png", - "rotated": false, - "trimmed": true, - "sourceSize": { - "w": 96, - "h": 91 - }, - "spriteSourceSize": { - "x": 0, - "y": 0, - "w": 96, - "h": 88 - }, - "frame": { - "x": 0, - "y": 176, - "w": 96, - "h": 88 - } - }, - { - "filename": "0071.png", - "rotated": false, - "trimmed": true, - "sourceSize": { - "w": 96, - "h": 91 - }, - "spriteSourceSize": { - "x": 0, - "y": 0, - "w": 96, - "h": 88 - }, - "frame": { - "x": 0, - "y": 176, - "w": 96, - "h": 88 - } - }, - { - "filename": "0018.png", - "rotated": false, - "trimmed": true, - "sourceSize": { - "w": 96, - "h": 91 - }, - "spriteSourceSize": { - "x": 0, - "y": 0, - "w": 96, - "h": 88 - }, - "frame": { - "x": 96, - "y": 88, - "w": 96, - "h": 88 - } - }, - { - "filename": "0036.png", - "rotated": false, - "trimmed": true, - "sourceSize": { - "w": 96, - "h": 91 - }, - "spriteSourceSize": { - "x": 0, - "y": 0, - "w": 96, - "h": 88 - }, - "frame": { - "x": 96, - "y": 88, - "w": 96, - "h": 88 - } - }, - { - "filename": "0054.png", - "rotated": false, - "trimmed": true, - "sourceSize": { - "w": 96, - "h": 91 - }, - "spriteSourceSize": { - "x": 0, - "y": 0, - "w": 96, - "h": 88 - }, - "frame": { - "x": 96, - "y": 88, - "w": 96, - "h": 88 - } - }, - { - "filename": "0072.png", - "rotated": false, - "trimmed": true, - "sourceSize": { - "w": 96, - "h": 91 - }, - "spriteSourceSize": { - "x": 0, - "y": 0, - "w": 96, - "h": 88 - }, - "frame": { - "x": 96, - "y": 88, - "w": 96, - "h": 88 - } - }, - { - "filename": "0001.png", - "rotated": false, - "trimmed": true, - "sourceSize": { - "w": 96, - "h": 91 - }, - "spriteSourceSize": { - "x": 1, - "y": 0, - "w": 94, - "h": 88 - }, - "frame": { - "x": 192, - "y": 0, - "w": 94, - "h": 88 - } - }, - { - "filename": "0013.png", - "rotated": false, - "trimmed": true, - "sourceSize": { - "w": 96, - "h": 91 - }, - "spriteSourceSize": { - "x": 1, - "y": 0, - "w": 94, - "h": 88 - }, - "frame": { - "x": 192, - "y": 0, - "w": 94, - "h": 88 - } - }, - { - "filename": "0019.png", - "rotated": false, - "trimmed": true, - "sourceSize": { - "w": 96, - "h": 91 - }, - "spriteSourceSize": { - "x": 1, - "y": 0, - "w": 94, - "h": 88 - }, - "frame": { - "x": 192, - "y": 0, - "w": 94, - "h": 88 - } - }, - { - "filename": "0031.png", - "rotated": false, - "trimmed": true, - "sourceSize": { - "w": 96, - "h": 91 - }, - "spriteSourceSize": { - "x": 1, - "y": 0, - "w": 94, - "h": 88 - }, - "frame": { - "x": 192, - "y": 0, - "w": 94, - "h": 88 - } - }, - { - "filename": "0037.png", - "rotated": false, - "trimmed": true, - "sourceSize": { - "w": 96, - "h": 91 - }, - "spriteSourceSize": { - "x": 1, - "y": 0, - "w": 94, - "h": 88 - }, - "frame": { - "x": 192, - "y": 0, - "w": 94, - "h": 88 - } - }, - { - "filename": "0049.png", - "rotated": false, - "trimmed": true, - "sourceSize": { - "w": 96, - "h": 91 - }, - "spriteSourceSize": { - "x": 1, - "y": 0, - "w": 94, - "h": 88 - }, - "frame": { - "x": 192, - "y": 0, - "w": 94, - "h": 88 - } - }, - { - "filename": "0055.png", - "rotated": false, - "trimmed": true, - "sourceSize": { - "w": 96, - "h": 91 - }, - "spriteSourceSize": { - "x": 1, - "y": 0, - "w": 94, - "h": 88 - }, - "frame": { - "x": 192, - "y": 0, - "w": 94, - "h": 88 - } - }, - { - "filename": "0067.png", - "rotated": false, - "trimmed": true, - "sourceSize": { - "w": 96, - "h": 91 - }, - "spriteSourceSize": { - "x": 1, - "y": 0, - "w": 94, - "h": 88 - }, - "frame": { - "x": 192, - "y": 0, - "w": 94, - "h": 88 - } - }, - { - "filename": "0073.png", - "rotated": false, - "trimmed": true, - "sourceSize": { - "w": 96, - "h": 91 - }, - "spriteSourceSize": { - "x": 1, - "y": 0, - "w": 94, - "h": 88 - }, - "frame": { - "x": 192, - "y": 0, - "w": 94, - "h": 88 - } - }, - { - "filename": "0086.png", - "rotated": false, - "trimmed": true, - "sourceSize": { - "w": 96, - "h": 91 - }, - "spriteSourceSize": { - "x": 1, - "y": 0, - "w": 94, - "h": 88 - }, - "frame": { - "x": 192, - "y": 0, - "w": 94, - "h": 88 - } - }, - { - "filename": "0003.png", - "rotated": false, - "trimmed": true, - "sourceSize": { - "w": 96, - "h": 91 - }, - "spriteSourceSize": { - "x": 2, - "y": 1, - "w": 92, - "h": 89 - }, - "frame": { - "x": 0, - "y": 264, - "w": 92, - "h": 89 - } - }, - { - "filename": "0011.png", - "rotated": false, - "trimmed": true, - "sourceSize": { - "w": 96, - "h": 91 - }, - "spriteSourceSize": { - "x": 2, - "y": 1, - "w": 92, - "h": 89 - }, - "frame": { - "x": 0, - "y": 264, - "w": 92, - "h": 89 - } - }, - { - "filename": "0021.png", - "rotated": false, - "trimmed": true, - "sourceSize": { - "w": 96, - "h": 91 - }, - "spriteSourceSize": { - "x": 2, - "y": 1, - "w": 92, - "h": 89 - }, - "frame": { - "x": 0, - "y": 264, - "w": 92, - "h": 89 - } - }, - { - "filename": "0029.png", - "rotated": false, - "trimmed": true, - "sourceSize": { - "w": 96, - "h": 91 - }, - "spriteSourceSize": { - "x": 2, - "y": 1, - "w": 92, - "h": 89 - }, - "frame": { - "x": 0, - "y": 264, - "w": 92, - "h": 89 - } - }, - { - "filename": "0039.png", - "rotated": false, - "trimmed": true, - "sourceSize": { - "w": 96, - "h": 91 - }, - "spriteSourceSize": { - "x": 2, - "y": 1, - "w": 92, - "h": 89 - }, - "frame": { - "x": 0, - "y": 264, - "w": 92, - "h": 89 - } - }, - { - "filename": "0047.png", - "rotated": false, - "trimmed": true, - "sourceSize": { - "w": 96, - "h": 91 - }, - "spriteSourceSize": { - "x": 2, - "y": 1, - "w": 92, - "h": 89 - }, - "frame": { - "x": 0, - "y": 264, - "w": 92, - "h": 89 - } - }, - { - "filename": "0057.png", - "rotated": false, - "trimmed": true, - "sourceSize": { - "w": 96, - "h": 91 - }, - "spriteSourceSize": { - "x": 2, - "y": 1, - "w": 92, - "h": 89 - }, - "frame": { - "x": 0, - "y": 264, - "w": 92, - "h": 89 - } - }, - { - "filename": "0065.png", - "rotated": false, - "trimmed": true, - "sourceSize": { - "w": 96, - "h": 91 - }, - "spriteSourceSize": { - "x": 2, - "y": 1, - "w": 92, - "h": 89 - }, - "frame": { - "x": 0, - "y": 264, - "w": 92, - "h": 89 - } - }, - { - "filename": "0074.png", - "rotated": false, - "trimmed": true, - "sourceSize": { - "w": 96, - "h": 91 - }, - "spriteSourceSize": { - "x": 3, - "y": 0, - "w": 92, - "h": 89 - }, - "frame": { - "x": 0, - "y": 353, - "w": 92, - "h": 89 - } - }, - { - "filename": "0002.png", - "rotated": false, - "trimmed": true, - "sourceSize": { - "w": 96, - "h": 91 - }, - "spriteSourceSize": { - "x": 2, - "y": 0, - "w": 92, - "h": 88 - }, - "frame": { - "x": 96, - "y": 176, - "w": 92, - "h": 88 - } - }, - { - "filename": "0012.png", - "rotated": false, - "trimmed": true, - "sourceSize": { - "w": 96, - "h": 91 - }, - "spriteSourceSize": { - "x": 2, - "y": 0, - "w": 92, - "h": 88 - }, - "frame": { - "x": 96, - "y": 176, - "w": 92, - "h": 88 - } - }, - { - "filename": "0020.png", - "rotated": false, - "trimmed": true, - "sourceSize": { - "w": 96, - "h": 91 - }, - "spriteSourceSize": { - "x": 2, - "y": 0, - "w": 92, - "h": 88 - }, - "frame": { - "x": 96, - "y": 176, - "w": 92, - "h": 88 - } - }, - { - "filename": "0030.png", - "rotated": false, - "trimmed": true, - "sourceSize": { - "w": 96, - "h": 91 - }, - "spriteSourceSize": { - "x": 2, - "y": 0, - "w": 92, - "h": 88 - }, - "frame": { - "x": 96, - "y": 176, - "w": 92, - "h": 88 - } - }, - { - "filename": "0038.png", - "rotated": false, - "trimmed": true, - "sourceSize": { - "w": 96, - "h": 91 - }, - "spriteSourceSize": { - "x": 2, - "y": 0, - "w": 92, - "h": 88 - }, - "frame": { - "x": 96, - "y": 176, - "w": 92, - "h": 88 - } - }, - { - "filename": "0048.png", - "rotated": false, - "trimmed": true, - "sourceSize": { - "w": 96, - "h": 91 - }, - "spriteSourceSize": { - "x": 2, - "y": 0, - "w": 92, - "h": 88 - }, - "frame": { - "x": 96, - "y": 176, - "w": 92, - "h": 88 - } - }, - { - "filename": "0056.png", - "rotated": false, - "trimmed": true, - "sourceSize": { - "w": 96, - "h": 91 - }, - "spriteSourceSize": { - "x": 2, - "y": 0, - "w": 92, - "h": 88 - }, - "frame": { - "x": 96, - "y": 176, - "w": 92, - "h": 88 - } - }, - { - "filename": "0066.png", - "rotated": false, - "trimmed": true, - "sourceSize": { - "w": 96, - "h": 91 - }, - "spriteSourceSize": { - "x": 2, - "y": 0, - "w": 92, - "h": 88 - }, - "frame": { - "x": 96, - "y": 176, - "w": 92, - "h": 88 - } - }, - { - "filename": "0085.png", - "rotated": false, - "trimmed": true, - "sourceSize": { - "w": 96, - "h": 91 - }, - "spriteSourceSize": { - "x": 3, - "y": 0, - "w": 92, - "h": 89 - }, - "frame": { - "x": 92, - "y": 264, - "w": 92, - "h": 89 - } - }, - { - "filename": "0004.png", - "rotated": false, - "trimmed": true, - "sourceSize": { - "w": 96, - "h": 91 - }, - "spriteSourceSize": { - "x": 3, - "y": 1, - "w": 90, - "h": 90 - }, - "frame": { - "x": 92, - "y": 353, - "w": 90, - "h": 90 - } - }, - { - "filename": "0010.png", - "rotated": false, - "trimmed": true, - "sourceSize": { - "w": 96, - "h": 91 - }, - "spriteSourceSize": { - "x": 3, - "y": 1, - "w": 90, - "h": 90 - }, - "frame": { - "x": 92, - "y": 353, - "w": 90, - "h": 90 - } - }, - { - "filename": "0022.png", - "rotated": false, - "trimmed": true, - "sourceSize": { - "w": 96, - "h": 91 - }, - "spriteSourceSize": { - "x": 3, - "y": 1, - "w": 90, - "h": 90 - }, - "frame": { - "x": 92, - "y": 353, - "w": 90, - "h": 90 - } - }, - { - "filename": "0028.png", - "rotated": false, - "trimmed": true, - "sourceSize": { - "w": 96, - "h": 91 - }, - "spriteSourceSize": { - "x": 3, - "y": 1, - "w": 90, - "h": 90 - }, - "frame": { - "x": 92, - "y": 353, - "w": 90, - "h": 90 - } - }, - { - "filename": "0040.png", - "rotated": false, - "trimmed": true, - "sourceSize": { - "w": 96, - "h": 91 - }, - "spriteSourceSize": { - "x": 3, - "y": 1, - "w": 90, - "h": 90 - }, - "frame": { - "x": 92, - "y": 353, - "w": 90, - "h": 90 - } - }, - { - "filename": "0046.png", - "rotated": false, - "trimmed": true, - "sourceSize": { - "w": 96, - "h": 91 - }, - "spriteSourceSize": { - "x": 3, - "y": 1, - "w": 90, - "h": 90 - }, - "frame": { - "x": 92, - "y": 353, - "w": 90, - "h": 90 - } - }, - { - "filename": "0058.png", - "rotated": false, - "trimmed": true, - "sourceSize": { - "w": 96, - "h": 91 - }, - "spriteSourceSize": { - "x": 3, - "y": 1, - "w": 90, - "h": 90 - }, - "frame": { - "x": 92, - "y": 353, - "w": 90, - "h": 90 - } - }, - { - "filename": "0064.png", - "rotated": false, - "trimmed": true, - "sourceSize": { - "w": 96, - "h": 91 - }, - "spriteSourceSize": { - "x": 3, - "y": 1, - "w": 90, - "h": 90 - }, - "frame": { - "x": 92, - "y": 353, - "w": 90, - "h": 90 - } - }, - { - "filename": "0005.png", - "rotated": false, - "trimmed": true, - "sourceSize": { - "w": 96, - "h": 91 - }, - "spriteSourceSize": { - "x": 3, - "y": 2, - "w": 89, - "h": 89 - }, - "frame": { - "x": 192, - "y": 88, - "w": 89, - "h": 89 - } - }, - { - "filename": "0023.png", - "rotated": false, - "trimmed": true, - "sourceSize": { - "w": 96, - "h": 91 - }, - "spriteSourceSize": { - "x": 3, - "y": 2, - "w": 89, - "h": 89 - }, - "frame": { - "x": 192, - "y": 88, - "w": 89, - "h": 89 - } - }, - { - "filename": "0041.png", - "rotated": false, - "trimmed": true, - "sourceSize": { - "w": 96, - "h": 91 - }, - "spriteSourceSize": { - "x": 3, - "y": 2, - "w": 89, - "h": 89 - }, - "frame": { - "x": 192, - "y": 88, - "w": 89, - "h": 89 - } - }, - { - "filename": "0059.png", - "rotated": false, - "trimmed": true, - "sourceSize": { - "w": 96, - "h": 91 - }, - "spriteSourceSize": { - "x": 3, - "y": 2, - "w": 89, - "h": 89 - }, - "frame": { - "x": 192, - "y": 88, - "w": 89, - "h": 89 - } - }, - { - "filename": "0009.png", - "rotated": false, - "trimmed": true, - "sourceSize": { - "w": 96, - "h": 91 - }, - "spriteSourceSize": { - "x": 3, - "y": 2, - "w": 89, - "h": 89 - }, - "frame": { - "x": 286, - "y": 0, - "w": 89, - "h": 89 - } - }, - { - "filename": "0027.png", - "rotated": false, - "trimmed": true, - "sourceSize": { - "w": 96, - "h": 91 - }, - "spriteSourceSize": { - "x": 3, - "y": 2, - "w": 89, - "h": 89 - }, - "frame": { - "x": 286, - "y": 0, - "w": 89, - "h": 89 - } - }, - { - "filename": "0045.png", - "rotated": false, - "trimmed": true, - "sourceSize": { - "w": 96, - "h": 91 - }, - "spriteSourceSize": { - "x": 3, - "y": 2, - "w": 89, - "h": 89 - }, - "frame": { - "x": 286, - "y": 0, - "w": 89, - "h": 89 - } - }, - { - "filename": "0063.png", - "rotated": false, - "trimmed": true, - "sourceSize": { - "w": 96, - "h": 91 - }, - "spriteSourceSize": { - "x": 3, - "y": 2, - "w": 89, - "h": 89 - }, - "frame": { - "x": 286, - "y": 0, - "w": 89, - "h": 89 - } - }, - { - "filename": "0079.png", - "rotated": false, - "trimmed": true, - "sourceSize": { - "w": 96, - "h": 91 - }, - "spriteSourceSize": { - "x": 3, - "y": 4, - "w": 86, - "h": 87 - }, - "frame": { - "x": 375, - "y": 0, - "w": 86, - "h": 87 - } - }, - { - "filename": "0081.png", - "rotated": false, - "trimmed": true, - "sourceSize": { - "w": 96, - "h": 91 - }, - "spriteSourceSize": { - "x": 3, - "y": 4, - "w": 86, - "h": 87 - }, - "frame": { - "x": 375, - "y": 87, - "w": 86, - "h": 87 - } - }, - { - "filename": "0075.png", - "rotated": false, - "trimmed": true, - "sourceSize": { - "w": 96, - "h": 91 - }, - "spriteSourceSize": { - "x": 3, - "y": 2, - "w": 89, - "h": 89 - }, - "frame": { - "x": 188, - "y": 177, - "w": 89, - "h": 89 - } - }, - { - "filename": "0084.png", - "rotated": false, - "trimmed": true, - "sourceSize": { - "w": 96, - "h": 91 - }, - "spriteSourceSize": { - "x": 3, - "y": 2, - "w": 89, - "h": 89 - }, - "frame": { - "x": 281, - "y": 89, - "w": 89, - "h": 89 - } - }, - { - "filename": "0006.png", - "rotated": false, - "trimmed": true, - "sourceSize": { - "w": 96, - "h": 91 - }, - "spriteSourceSize": { - "x": 4, - "y": 2, - "w": 88, - "h": 89 - }, - "frame": { - "x": 277, - "y": 178, - "w": 88, - "h": 89 - } - }, - { - "filename": "0024.png", - "rotated": false, - "trimmed": true, - "sourceSize": { - "w": 96, - "h": 91 - }, - "spriteSourceSize": { - "x": 4, - "y": 2, - "w": 88, - "h": 89 - }, - "frame": { - "x": 277, - "y": 178, - "w": 88, - "h": 89 - } - }, - { - "filename": "0042.png", - "rotated": false, - "trimmed": true, - "sourceSize": { - "w": 96, - "h": 91 - }, - "spriteSourceSize": { - "x": 4, - "y": 2, - "w": 88, - "h": 89 - }, - "frame": { - "x": 277, - "y": 178, - "w": 88, - "h": 89 - } - }, - { - "filename": "0060.png", - "rotated": false, - "trimmed": true, - "sourceSize": { - "w": 96, - "h": 91 - }, - "spriteSourceSize": { - "x": 4, - "y": 2, - "w": 88, - "h": 89 - }, - "frame": { - "x": 277, - "y": 178, - "w": 88, - "h": 89 - } - }, - { - "filename": "0007.png", - "rotated": false, - "trimmed": true, - "sourceSize": { - "w": 96, - "h": 91 - }, - "spriteSourceSize": { - "x": 4, - "y": 2, - "w": 88, - "h": 89 - }, - "frame": { - "x": 184, - "y": 266, - "w": 88, - "h": 89 - } - }, - { - "filename": "0025.png", - "rotated": false, - "trimmed": true, - "sourceSize": { - "w": 96, - "h": 91 - }, - "spriteSourceSize": { - "x": 4, - "y": 2, - "w": 88, - "h": 89 - }, - "frame": { - "x": 184, - "y": 266, - "w": 88, - "h": 89 - } - }, - { - "filename": "0043.png", - "rotated": false, - "trimmed": true, - "sourceSize": { - "w": 96, - "h": 91 - }, - "spriteSourceSize": { - "x": 4, - "y": 2, - "w": 88, - "h": 89 - }, - "frame": { - "x": 184, - "y": 266, - "w": 88, - "h": 89 - } - }, - { - "filename": "0061.png", - "rotated": false, - "trimmed": true, - "sourceSize": { - "w": 96, - "h": 91 - }, - "spriteSourceSize": { - "x": 4, - "y": 2, - "w": 88, - "h": 89 - }, - "frame": { - "x": 184, - "y": 266, - "w": 88, - "h": 89 - } - }, - { - "filename": "0008.png", - "rotated": false, - "trimmed": true, - "sourceSize": { - "w": 96, - "h": 91 - }, - "spriteSourceSize": { - "x": 4, - "y": 2, - "w": 88, - "h": 89 - }, - "frame": { - "x": 182, - "y": 355, - "w": 88, - "h": 89 - } - }, - { - "filename": "0026.png", - "rotated": false, - "trimmed": true, - "sourceSize": { - "w": 96, - "h": 91 - }, - "spriteSourceSize": { - "x": 4, - "y": 2, - "w": 88, - "h": 89 - }, - "frame": { - "x": 182, - "y": 355, - "w": 88, - "h": 89 - } - }, - { - "filename": "0044.png", - "rotated": false, - "trimmed": true, - "sourceSize": { - "w": 96, - "h": 91 - }, - "spriteSourceSize": { - "x": 4, - "y": 2, - "w": 88, - "h": 89 - }, - "frame": { - "x": 182, - "y": 355, - "w": 88, - "h": 89 - } - }, - { - "filename": "0062.png", - "rotated": false, - "trimmed": true, - "sourceSize": { - "w": 96, - "h": 91 - }, - "spriteSourceSize": { - "x": 4, - "y": 2, - "w": 88, - "h": 89 - }, - "frame": { - "x": 182, - "y": 355, - "w": 88, - "h": 89 - } - }, - { - "filename": "0076.png", - "rotated": false, - "trimmed": true, - "sourceSize": { - "w": 96, - "h": 91 - }, - "spriteSourceSize": { - "x": 5, - "y": 2, - "w": 87, - "h": 89 - }, - "frame": { - "x": 272, - "y": 267, - "w": 87, - "h": 89 - } - }, - { - "filename": "0083.png", - "rotated": false, - "trimmed": true, - "sourceSize": { - "w": 96, - "h": 91 - }, - "spriteSourceSize": { - "x": 5, - "y": 2, - "w": 87, - "h": 89 - }, - "frame": { - "x": 270, - "y": 356, - "w": 87, - "h": 89 - } - }, - { - "filename": "0077.png", - "rotated": false, - "trimmed": true, - "sourceSize": { - "w": 96, - "h": 91 - }, - "spriteSourceSize": { - "x": 3, - "y": 4, - "w": 87, - "h": 87 - }, - "frame": { - "x": 359, - "y": 267, - "w": 87, - "h": 87 - } - }, - { - "filename": "0078.png", - "rotated": false, - "trimmed": true, - "sourceSize": { - "w": 96, - "h": 91 - }, - "spriteSourceSize": { - "x": 3, - "y": 4, - "w": 87, - "h": 87 - }, - "frame": { - "x": 365, - "y": 178, - "w": 87, - "h": 87 - } - }, - { - "filename": "0080.png", - "rotated": false, - "trimmed": true, - "sourceSize": { - "w": 96, - "h": 91 - }, - "spriteSourceSize": { - "x": 3, - "y": 4, - "w": 87, - "h": 87 - }, - "frame": { - "x": 357, - "y": 356, - "w": 87, - "h": 87 - } - }, - { - "filename": "0082.png", - "rotated": false, - "trimmed": true, - "sourceSize": { - "w": 96, - "h": 91 - }, - "spriteSourceSize": { - "x": 3, - "y": 4, - "w": 87, - "h": 87 - }, - "frame": { - "x": 357, - "y": 356, - "w": 87, - "h": 87 - } - } - ] - } - ], - "meta": { - "app": "https://www.codeandweb.com/texturepacker", - "version": "3.0", - "smartupdate": "$TexturePacker:SmartUpdate:fd28dfd35a375d4d0d568c72bbbe079f:b186d9a5868eaf1d0a3bd9bcddd90d79:c2f7ca3ab1075b8c824730653d891244$" - } -} diff --git a/public/images/pokemon/exp/784.png b/public/images/pokemon/exp/784.png deleted file mode 100644 index e3e384d4699..00000000000 Binary files a/public/images/pokemon/exp/784.png and /dev/null differ diff --git a/public/images/pokemon/exp/840.png b/public/images/pokemon/exp/840.png index 3e76cd5fff8..86b701fa0d7 100644 Binary files a/public/images/pokemon/exp/840.png and b/public/images/pokemon/exp/840.png differ diff --git a/public/images/pokemon/exp/841.png b/public/images/pokemon/exp/841.png index 2bf0ad3b138..564ffaa0f27 100644 Binary files a/public/images/pokemon/exp/841.png and b/public/images/pokemon/exp/841.png differ diff --git a/public/images/pokemon/exp/842.png b/public/images/pokemon/exp/842.png index 85b9ae30fe0..41c2ebcf7d4 100644 Binary files a/public/images/pokemon/exp/842.png and b/public/images/pokemon/exp/842.png differ diff --git a/public/images/pokemon/exp/871.png b/public/images/pokemon/exp/871.png index d4ffceea07a..8f03d72f0b3 100644 Binary files a/public/images/pokemon/exp/871.png and b/public/images/pokemon/exp/871.png differ diff --git a/public/images/pokemon/exp/935.json b/public/images/pokemon/exp/935.json deleted file mode 100644 index 95df77f9c54..00000000000 --- a/public/images/pokemon/exp/935.json +++ /dev/null @@ -1,440 +0,0 @@ -{ - "textures": [ - { - "image": "935.png", - "format": "RGBA8888", - "size": { - "w": 165, - "h": 165 - }, - "scale": 1, - "frames": [ - { - "filename": "0001.png", - "rotated": false, - "trimmed": false, - "sourceSize": { - "w": 35, - "h": 55 - }, - "spriteSourceSize": { - "x": 0, - "y": 0, - "w": 35, - "h": 55 - }, - "frame": { - "x": 0, - "y": 0, - "w": 35, - "h": 55 - } - }, - { - "filename": "0005.png", - "rotated": false, - "trimmed": false, - "sourceSize": { - "w": 35, - "h": 55 - }, - "spriteSourceSize": { - "x": 0, - "y": 0, - "w": 35, - "h": 55 - }, - "frame": { - "x": 0, - "y": 0, - "w": 35, - "h": 55 - } - }, - { - "filename": "0009.png", - "rotated": false, - "trimmed": false, - "sourceSize": { - "w": 35, - "h": 55 - }, - "spriteSourceSize": { - "x": 0, - "y": 0, - "w": 35, - "h": 55 - }, - "frame": { - "x": 0, - "y": 0, - "w": 35, - "h": 55 - } - }, - { - "filename": "0002.png", - "rotated": false, - "trimmed": false, - "sourceSize": { - "w": 35, - "h": 55 - }, - "spriteSourceSize": { - "x": 0, - "y": 0, - "w": 35, - "h": 55 - }, - "frame": { - "x": 0, - "y": 55, - "w": 35, - "h": 55 - } - }, - { - "filename": "0006.png", - "rotated": false, - "trimmed": false, - "sourceSize": { - "w": 35, - "h": 55 - }, - "spriteSourceSize": { - "x": 0, - "y": 0, - "w": 35, - "h": 55 - }, - "frame": { - "x": 0, - "y": 55, - "w": 35, - "h": 55 - } - }, - { - "filename": "0010.png", - "rotated": false, - "trimmed": false, - "sourceSize": { - "w": 35, - "h": 55 - }, - "spriteSourceSize": { - "x": 0, - "y": 0, - "w": 35, - "h": 55 - }, - "frame": { - "x": 0, - "y": 55, - "w": 35, - "h": 55 - } - }, - { - "filename": "0003.png", - "rotated": false, - "trimmed": false, - "sourceSize": { - "w": 35, - "h": 55 - }, - "spriteSourceSize": { - "x": 0, - "y": 0, - "w": 35, - "h": 55 - }, - "frame": { - "x": 0, - "y": 110, - "w": 35, - "h": 55 - } - }, - { - "filename": "0007.png", - "rotated": false, - "trimmed": false, - "sourceSize": { - "w": 35, - "h": 55 - }, - "spriteSourceSize": { - "x": 0, - "y": 0, - "w": 35, - "h": 55 - }, - "frame": { - "x": 0, - "y": 110, - "w": 35, - "h": 55 - } - }, - { - "filename": "0011.png", - "rotated": false, - "trimmed": false, - "sourceSize": { - "w": 35, - "h": 55 - }, - "spriteSourceSize": { - "x": 0, - "y": 0, - "w": 35, - "h": 55 - }, - "frame": { - "x": 0, - "y": 110, - "w": 35, - "h": 55 - } - }, - { - "filename": "0004.png", - "rotated": false, - "trimmed": false, - "sourceSize": { - "w": 35, - "h": 55 - }, - "spriteSourceSize": { - "x": 0, - "y": 0, - "w": 35, - "h": 55 - }, - "frame": { - "x": 35, - "y": 0, - "w": 35, - "h": 55 - } - }, - { - "filename": "0008.png", - "rotated": false, - "trimmed": false, - "sourceSize": { - "w": 35, - "h": 55 - }, - "spriteSourceSize": { - "x": 0, - "y": 0, - "w": 35, - "h": 55 - }, - "frame": { - "x": 35, - "y": 0, - "w": 35, - "h": 55 - } - }, - { - "filename": "0012.png", - "rotated": false, - "trimmed": false, - "sourceSize": { - "w": 35, - "h": 55 - }, - "spriteSourceSize": { - "x": 0, - "y": 0, - "w": 35, - "h": 55 - }, - "frame": { - "x": 35, - "y": 0, - "w": 35, - "h": 55 - } - }, - { - "filename": "0013.png", - "rotated": false, - "trimmed": false, - "sourceSize": { - "w": 35, - "h": 55 - }, - "spriteSourceSize": { - "x": 0, - "y": 0, - "w": 35, - "h": 55 - }, - "frame": { - "x": 35, - "y": 55, - "w": 35, - "h": 55 - } - }, - { - "filename": "0014.png", - "rotated": false, - "trimmed": false, - "sourceSize": { - "w": 35, - "h": 55 - }, - "spriteSourceSize": { - "x": 0, - "y": 0, - "w": 35, - "h": 55 - }, - "frame": { - "x": 35, - "y": 110, - "w": 35, - "h": 55 - } - }, - { - "filename": "0015.png", - "rotated": false, - "trimmed": false, - "sourceSize": { - "w": 35, - "h": 55 - }, - "spriteSourceSize": { - "x": 0, - "y": 0, - "w": 35, - "h": 55 - }, - "frame": { - "x": 70, - "y": 0, - "w": 35, - "h": 55 - } - }, - { - "filename": "0016.png", - "rotated": false, - "trimmed": false, - "sourceSize": { - "w": 35, - "h": 55 - }, - "spriteSourceSize": { - "x": 0, - "y": 0, - "w": 35, - "h": 55 - }, - "frame": { - "x": 105, - "y": 0, - "w": 35, - "h": 55 - } - }, - { - "filename": "0017.png", - "rotated": false, - "trimmed": false, - "sourceSize": { - "w": 35, - "h": 55 - }, - "spriteSourceSize": { - "x": 0, - "y": 0, - "w": 35, - "h": 55 - }, - "frame": { - "x": 70, - "y": 55, - "w": 35, - "h": 55 - } - }, - { - "filename": "0018.png", - "rotated": false, - "trimmed": false, - "sourceSize": { - "w": 35, - "h": 55 - }, - "spriteSourceSize": { - "x": 0, - "y": 0, - "w": 35, - "h": 55 - }, - "frame": { - "x": 70, - "y": 110, - "w": 35, - "h": 55 - } - }, - { - "filename": "0019.png", - "rotated": false, - "trimmed": false, - "sourceSize": { - "w": 35, - "h": 55 - }, - "spriteSourceSize": { - "x": 0, - "y": 0, - "w": 35, - "h": 55 - }, - "frame": { - "x": 105, - "y": 55, - "w": 35, - "h": 55 - } - }, - { - "filename": "0020.png", - "rotated": false, - "trimmed": false, - "sourceSize": { - "w": 35, - "h": 55 - }, - "spriteSourceSize": { - "x": 0, - "y": 0, - "w": 35, - "h": 55 - }, - "frame": { - "x": 105, - "y": 110, - "w": 35, - "h": 55 - } - } - ] - } - ], - "meta": { - "app": "https://www.codeandweb.com/texturepacker", - "version": "3.0", - "smartupdate": "$TexturePacker:SmartUpdate:06750fe617b2ad66c1af576e0074e016:b59cf22eea90e9839062adc1f728c00a:077dcf06dc5fc347497b59afe6126a5e$" - } -} diff --git a/public/images/pokemon/exp/935.png b/public/images/pokemon/exp/935.png deleted file mode 100644 index 1ca019f8c11..00000000000 Binary files a/public/images/pokemon/exp/935.png and /dev/null differ diff --git a/public/images/pokemon/exp/936.json b/public/images/pokemon/exp/936.json deleted file mode 100644 index b7dff5e8393..00000000000 --- a/public/images/pokemon/exp/936.json +++ /dev/null @@ -1,524 +0,0 @@ -{ - "textures": [ - { - "image": "936.png", - "format": "RGBA8888", - "size": { - "w": 323, - "h": 323 - }, - "scale": 1, - "frames": [ - { - "filename": "0016.png", - "rotated": false, - "trimmed": false, - "sourceSize": { - "w": 76, - "h": 99 - }, - "spriteSourceSize": { - "x": 0, - "y": 0, - "w": 76, - "h": 99 - }, - "frame": { - "x": 0, - "y": 0, - "w": 76, - "h": 99 - } - }, - { - "filename": "0017.png", - "rotated": false, - "trimmed": false, - "sourceSize": { - "w": 76, - "h": 99 - }, - "spriteSourceSize": { - "x": 0, - "y": 0, - "w": 76, - "h": 99 - }, - "frame": { - "x": 0, - "y": 99, - "w": 76, - "h": 99 - } - }, - { - "filename": "0018.png", - "rotated": false, - "trimmed": false, - "sourceSize": { - "w": 76, - "h": 99 - }, - "spriteSourceSize": { - "x": 0, - "y": 0, - "w": 76, - "h": 99 - }, - "frame": { - "x": 0, - "y": 198, - "w": 76, - "h": 99 - } - }, - { - "filename": "0015.png", - "rotated": false, - "trimmed": true, - "sourceSize": { - "w": 76, - "h": 99 - }, - "spriteSourceSize": { - "x": 0, - "y": 1, - "w": 76, - "h": 98 - }, - "frame": { - "x": 76, - "y": 0, - "w": 76, - "h": 98 - } - }, - { - "filename": "0019.png", - "rotated": false, - "trimmed": true, - "sourceSize": { - "w": 76, - "h": 99 - }, - "spriteSourceSize": { - "x": 0, - "y": 1, - "w": 76, - "h": 98 - }, - "frame": { - "x": 152, - "y": 0, - "w": 76, - "h": 98 - } - }, - { - "filename": "0014.png", - "rotated": false, - "trimmed": true, - "sourceSize": { - "w": 76, - "h": 99 - }, - "spriteSourceSize": { - "x": 2, - "y": 0, - "w": 70, - "h": 99 - }, - "frame": { - "x": 228, - "y": 0, - "w": 70, - "h": 99 - } - }, - { - "filename": "0020.png", - "rotated": false, - "trimmed": true, - "sourceSize": { - "w": 76, - "h": 99 - }, - "spriteSourceSize": { - "x": 2, - "y": 0, - "w": 70, - "h": 99 - }, - "frame": { - "x": 76, - "y": 98, - "w": 70, - "h": 99 - } - }, - { - "filename": "0001.png", - "rotated": false, - "trimmed": true, - "sourceSize": { - "w": 76, - "h": 99 - }, - "spriteSourceSize": { - "x": 9, - "y": 0, - "w": 59, - "h": 99 - }, - "frame": { - "x": 146, - "y": 98, - "w": 59, - "h": 99 - } - }, - { - "filename": "0005.png", - "rotated": false, - "trimmed": true, - "sourceSize": { - "w": 76, - "h": 99 - }, - "spriteSourceSize": { - "x": 9, - "y": 0, - "w": 59, - "h": 99 - }, - "frame": { - "x": 146, - "y": 98, - "w": 59, - "h": 99 - } - }, - { - "filename": "0021.png", - "rotated": false, - "trimmed": true, - "sourceSize": { - "w": 76, - "h": 99 - }, - "spriteSourceSize": { - "x": 9, - "y": 0, - "w": 59, - "h": 99 - }, - "frame": { - "x": 146, - "y": 98, - "w": 59, - "h": 99 - } - }, - { - "filename": "0002.png", - "rotated": false, - "trimmed": true, - "sourceSize": { - "w": 76, - "h": 99 - }, - "spriteSourceSize": { - "x": 9, - "y": 0, - "w": 59, - "h": 99 - }, - "frame": { - "x": 76, - "y": 197, - "w": 59, - "h": 99 - } - }, - { - "filename": "0006.png", - "rotated": false, - "trimmed": true, - "sourceSize": { - "w": 76, - "h": 99 - }, - "spriteSourceSize": { - "x": 9, - "y": 0, - "w": 59, - "h": 99 - }, - "frame": { - "x": 76, - "y": 197, - "w": 59, - "h": 99 - } - }, - { - "filename": "0010.png", - "rotated": false, - "trimmed": true, - "sourceSize": { - "w": 76, - "h": 99 - }, - "spriteSourceSize": { - "x": 9, - "y": 0, - "w": 59, - "h": 99 - }, - "frame": { - "x": 76, - "y": 197, - "w": 59, - "h": 99 - } - }, - { - "filename": "0022.png", - "rotated": false, - "trimmed": true, - "sourceSize": { - "w": 76, - "h": 99 - }, - "spriteSourceSize": { - "x": 9, - "y": 0, - "w": 59, - "h": 99 - }, - "frame": { - "x": 76, - "y": 197, - "w": 59, - "h": 99 - } - }, - { - "filename": "0004.png", - "rotated": false, - "trimmed": true, - "sourceSize": { - "w": 76, - "h": 99 - }, - "spriteSourceSize": { - "x": 9, - "y": 0, - "w": 59, - "h": 99 - }, - "frame": { - "x": 135, - "y": 197, - "w": 59, - "h": 99 - } - }, - { - "filename": "0012.png", - "rotated": false, - "trimmed": true, - "sourceSize": { - "w": 76, - "h": 99 - }, - "spriteSourceSize": { - "x": 9, - "y": 0, - "w": 59, - "h": 99 - }, - "frame": { - "x": 135, - "y": 197, - "w": 59, - "h": 99 - } - }, - { - "filename": "0024.png", - "rotated": false, - "trimmed": true, - "sourceSize": { - "w": 76, - "h": 99 - }, - "spriteSourceSize": { - "x": 9, - "y": 0, - "w": 59, - "h": 99 - }, - "frame": { - "x": 135, - "y": 197, - "w": 59, - "h": 99 - } - }, - { - "filename": "0008.png", - "rotated": false, - "trimmed": true, - "sourceSize": { - "w": 76, - "h": 99 - }, - "spriteSourceSize": { - "x": 9, - "y": 0, - "w": 59, - "h": 99 - }, - "frame": { - "x": 194, - "y": 197, - "w": 59, - "h": 99 - } - }, - { - "filename": "0003.png", - "rotated": false, - "trimmed": true, - "sourceSize": { - "w": 76, - "h": 99 - }, - "spriteSourceSize": { - "x": 9, - "y": 1, - "w": 59, - "h": 98 - }, - "frame": { - "x": 205, - "y": 99, - "w": 59, - "h": 98 - } - }, - { - "filename": "0007.png", - "rotated": false, - "trimmed": true, - "sourceSize": { - "w": 76, - "h": 99 - }, - "spriteSourceSize": { - "x": 9, - "y": 1, - "w": 59, - "h": 98 - }, - "frame": { - "x": 205, - "y": 99, - "w": 59, - "h": 98 - } - }, - { - "filename": "0011.png", - "rotated": false, - "trimmed": true, - "sourceSize": { - "w": 76, - "h": 99 - }, - "spriteSourceSize": { - "x": 9, - "y": 1, - "w": 59, - "h": 98 - }, - "frame": { - "x": 205, - "y": 99, - "w": 59, - "h": 98 - } - }, - { - "filename": "0023.png", - "rotated": false, - "trimmed": true, - "sourceSize": { - "w": 76, - "h": 99 - }, - "spriteSourceSize": { - "x": 9, - "y": 1, - "w": 59, - "h": 98 - }, - "frame": { - "x": 205, - "y": 99, - "w": 59, - "h": 98 - } - }, - { - "filename": "0013.png", - "rotated": false, - "trimmed": true, - "sourceSize": { - "w": 76, - "h": 99 - }, - "spriteSourceSize": { - "x": 9, - "y": 0, - "w": 59, - "h": 99 - }, - "frame": { - "x": 264, - "y": 99, - "w": 59, - "h": 99 - } - }, - { - "filename": "0009.png", - "rotated": false, - "trimmed": true, - "sourceSize": { - "w": 76, - "h": 99 - }, - "spriteSourceSize": { - "x": 9, - "y": 1, - "w": 59, - "h": 98 - }, - "frame": { - "x": 253, - "y": 198, - "w": 59, - "h": 98 - } - } - ] - } - ], - "meta": { - "app": "https://www.codeandweb.com/texturepacker", - "version": "3.0", - "smartupdate": "$TexturePacker:SmartUpdate:2943281264e8142bbdb55f3a34167d72:322e92870c690e237c7a5e4a4a5f8e84:1a0490303f9626f92e787c567cd10feb$" - } -} diff --git a/public/images/pokemon/exp/936.png b/public/images/pokemon/exp/936.png deleted file mode 100644 index dce770dca44..00000000000 Binary files a/public/images/pokemon/exp/936.png and /dev/null differ diff --git a/public/images/pokemon/exp/937.json b/public/images/pokemon/exp/937.json deleted file mode 100644 index 9eba0e32900..00000000000 --- a/public/images/pokemon/exp/937.json +++ /dev/null @@ -1,125 +0,0 @@ -{ - "textures": [ - { - "image": "937.png", - "format": "RGBA8888", - "size": { - "w": 247, - "h": 247 - }, - "scale": 1, - "frames": [ - { - "filename": "0002.png", - "rotated": false, - "trimmed": true, - "sourceSize": { - "w": 86, - "h": 99 - }, - "spriteSourceSize": { - "x": 1, - "y": 1, - "w": 83, - "h": 98 - }, - "frame": { - "x": 0, - "y": 0, - "w": 83, - "h": 98 - } - }, - { - "filename": "0001.png", - "rotated": false, - "trimmed": true, - "sourceSize": { - "w": 86, - "h": 99 - }, - "spriteSourceSize": { - "x": 2, - "y": 0, - "w": 81, - "h": 99 - }, - "frame": { - "x": 83, - "y": 0, - "w": 81, - "h": 99 - } - }, - { - "filename": "0003.png", - "rotated": false, - "trimmed": true, - "sourceSize": { - "w": 86, - "h": 99 - }, - "spriteSourceSize": { - "x": 1, - "y": 0, - "w": 83, - "h": 99 - }, - "frame": { - "x": 164, - "y": 0, - "w": 83, - "h": 99 - } - }, - { - "filename": "0004.png", - "rotated": false, - "trimmed": false, - "sourceSize": { - "w": 86, - "h": 99 - }, - "spriteSourceSize": { - "x": 0, - "y": 0, - "w": 86, - "h": 99 - }, - "frame": { - "x": 0, - "y": 99, - "w": 86, - "h": 99 - } - }, - { - "filename": "0005.png", - "rotated": false, - "trimmed": false, - "sourceSize": { - "w": 86, - "h": 99 - }, - "spriteSourceSize": { - "x": 0, - "y": 0, - "w": 86, - "h": 99 - }, - "frame": { - "x": 86, - "y": 99, - "w": 86, - "h": 99 - } - } - ] - } - ], - "meta": { - "app": "https://www.codeandweb.com/texturepacker", - "version": "3.0", - "smartupdate": "$TexturePacker:SmartUpdate:492182e4e32e5cddaa9dfc2c2c08b684:084d0317f824a0d082ba0ffcfebc407b:1d4b4f8d62307c37457ba974879b47d0$" - } -} diff --git a/public/images/pokemon/exp/937.png b/public/images/pokemon/exp/937.png deleted file mode 100644 index 6e8b5b34268..00000000000 Binary files a/public/images/pokemon/exp/937.png and /dev/null differ diff --git a/public/images/pokemon/exp/back/2038.png b/public/images/pokemon/exp/back/2038.png index 9ad8025933a..f4a022692a1 100644 Binary files a/public/images/pokemon/exp/back/2038.png and b/public/images/pokemon/exp/back/2038.png differ diff --git a/public/images/pokemon/exp/back/692.png b/public/images/pokemon/exp/back/692.png index e3eb957a624..33059d53c05 100644 Binary files a/public/images/pokemon/exp/back/692.png and b/public/images/pokemon/exp/back/692.png differ diff --git a/public/images/pokemon/exp/back/750.png b/public/images/pokemon/exp/back/750.png index 1c9391b5f7a..5ecd848832e 100644 Binary files a/public/images/pokemon/exp/back/750.png and b/public/images/pokemon/exp/back/750.png differ diff --git a/public/images/pokemon/exp/back/782.json b/public/images/pokemon/exp/back/782.json deleted file mode 100644 index aa9698c6554..00000000000 --- a/public/images/pokemon/exp/back/782.json +++ /dev/null @@ -1,2351 +0,0 @@ -{ - "textures": [ - { - "image": "782.png", - "format": "RGBA8888", - "size": { - "w": 239, - "h": 239 - }, - "scale": 1, - "frames": [ - { - "filename": "0083.png", - "rotated": false, - "trimmed": true, - "sourceSize": { - "w": 49, - "h": 52 - }, - "spriteSourceSize": { - "x": 0, - "y": 0, - "w": 48, - "h": 52 - }, - "frame": { - "x": 0, - "y": 0, - "w": 48, - "h": 52 - } - }, - { - "filename": "0111.png", - "rotated": false, - "trimmed": true, - "sourceSize": { - "w": 49, - "h": 52 - }, - "spriteSourceSize": { - "x": 0, - "y": 0, - "w": 48, - "h": 52 - }, - "frame": { - "x": 0, - "y": 0, - "w": 48, - "h": 52 - } - }, - { - "filename": "0084.png", - "rotated": false, - "trimmed": true, - "sourceSize": { - "w": 49, - "h": 52 - }, - "spriteSourceSize": { - "x": 0, - "y": 0, - "w": 48, - "h": 52 - }, - "frame": { - "x": 0, - "y": 52, - "w": 48, - "h": 52 - } - }, - { - "filename": "0110.png", - "rotated": false, - "trimmed": true, - "sourceSize": { - "w": 49, - "h": 52 - }, - "spriteSourceSize": { - "x": 0, - "y": 0, - "w": 48, - "h": 52 - }, - "frame": { - "x": 0, - "y": 52, - "w": 48, - "h": 52 - } - }, - { - "filename": "0085.png", - "rotated": false, - "trimmed": true, - "sourceSize": { - "w": 49, - "h": 52 - }, - "spriteSourceSize": { - "x": 0, - "y": 0, - "w": 48, - "h": 52 - }, - "frame": { - "x": 48, - "y": 0, - "w": 48, - "h": 52 - } - }, - { - "filename": "0086.png", - "rotated": false, - "trimmed": true, - "sourceSize": { - "w": 49, - "h": 52 - }, - "spriteSourceSize": { - "x": 0, - "y": 0, - "w": 48, - "h": 52 - }, - "frame": { - "x": 0, - "y": 104, - "w": 48, - "h": 52 - } - }, - { - "filename": "0087.png", - "rotated": false, - "trimmed": true, - "sourceSize": { - "w": 49, - "h": 52 - }, - "spriteSourceSize": { - "x": 0, - "y": 0, - "w": 48, - "h": 52 - }, - "frame": { - "x": 48, - "y": 52, - "w": 48, - "h": 52 - } - }, - { - "filename": "0088.png", - "rotated": false, - "trimmed": true, - "sourceSize": { - "w": 49, - "h": 52 - }, - "spriteSourceSize": { - "x": 0, - "y": 0, - "w": 48, - "h": 52 - }, - "frame": { - "x": 48, - "y": 52, - "w": 48, - "h": 52 - } - }, - { - "filename": "0095.png", - "rotated": false, - "trimmed": true, - "sourceSize": { - "w": 49, - "h": 52 - }, - "spriteSourceSize": { - "x": 0, - "y": 0, - "w": 48, - "h": 52 - }, - "frame": { - "x": 48, - "y": 52, - "w": 48, - "h": 52 - } - }, - { - "filename": "0096.png", - "rotated": false, - "trimmed": true, - "sourceSize": { - "w": 49, - "h": 52 - }, - "spriteSourceSize": { - "x": 0, - "y": 0, - "w": 48, - "h": 52 - }, - "frame": { - "x": 48, - "y": 52, - "w": 48, - "h": 52 - } - }, - { - "filename": "0104.png", - "rotated": false, - "trimmed": true, - "sourceSize": { - "w": 49, - "h": 52 - }, - "spriteSourceSize": { - "x": 0, - "y": 0, - "w": 48, - "h": 52 - }, - "frame": { - "x": 48, - "y": 52, - "w": 48, - "h": 52 - } - }, - { - "filename": "0105.png", - "rotated": false, - "trimmed": true, - "sourceSize": { - "w": 49, - "h": 52 - }, - "spriteSourceSize": { - "x": 0, - "y": 0, - "w": 48, - "h": 52 - }, - "frame": { - "x": 48, - "y": 52, - "w": 48, - "h": 52 - } - }, - { - "filename": "0089.png", - "rotated": false, - "trimmed": true, - "sourceSize": { - "w": 49, - "h": 52 - }, - "spriteSourceSize": { - "x": 0, - "y": 0, - "w": 48, - "h": 52 - }, - "frame": { - "x": 96, - "y": 0, - "w": 48, - "h": 52 - } - }, - { - "filename": "0090.png", - "rotated": false, - "trimmed": true, - "sourceSize": { - "w": 49, - "h": 52 - }, - "spriteSourceSize": { - "x": 0, - "y": 0, - "w": 48, - "h": 52 - }, - "frame": { - "x": 0, - "y": 156, - "w": 48, - "h": 52 - } - }, - { - "filename": "0091.png", - "rotated": false, - "trimmed": true, - "sourceSize": { - "w": 49, - "h": 52 - }, - "spriteSourceSize": { - "x": 0, - "y": 0, - "w": 48, - "h": 52 - }, - "frame": { - "x": 48, - "y": 104, - "w": 48, - "h": 52 - } - }, - { - "filename": "0108.png", - "rotated": false, - "trimmed": true, - "sourceSize": { - "w": 49, - "h": 52 - }, - "spriteSourceSize": { - "x": 0, - "y": 0, - "w": 48, - "h": 52 - }, - "frame": { - "x": 48, - "y": 104, - "w": 48, - "h": 52 - } - }, - { - "filename": "0092.png", - "rotated": false, - "trimmed": true, - "sourceSize": { - "w": 49, - "h": 52 - }, - "spriteSourceSize": { - "x": 0, - "y": 0, - "w": 48, - "h": 52 - }, - "frame": { - "x": 96, - "y": 52, - "w": 48, - "h": 52 - } - }, - { - "filename": "0099.png", - "rotated": false, - "trimmed": true, - "sourceSize": { - "w": 49, - "h": 52 - }, - "spriteSourceSize": { - "x": 0, - "y": 0, - "w": 48, - "h": 52 - }, - "frame": { - "x": 96, - "y": 52, - "w": 48, - "h": 52 - } - }, - { - "filename": "0100.png", - "rotated": false, - "trimmed": true, - "sourceSize": { - "w": 49, - "h": 52 - }, - "spriteSourceSize": { - "x": 0, - "y": 0, - "w": 48, - "h": 52 - }, - "frame": { - "x": 96, - "y": 52, - "w": 48, - "h": 52 - } - }, - { - "filename": "0093.png", - "rotated": false, - "trimmed": true, - "sourceSize": { - "w": 49, - "h": 52 - }, - "spriteSourceSize": { - "x": 0, - "y": 0, - "w": 48, - "h": 52 - }, - "frame": { - "x": 144, - "y": 0, - "w": 48, - "h": 52 - } - }, - { - "filename": "0094.png", - "rotated": false, - "trimmed": true, - "sourceSize": { - "w": 49, - "h": 52 - }, - "spriteSourceSize": { - "x": 0, - "y": 0, - "w": 48, - "h": 52 - }, - "frame": { - "x": 144, - "y": 0, - "w": 48, - "h": 52 - } - }, - { - "filename": "0101.png", - "rotated": false, - "trimmed": true, - "sourceSize": { - "w": 49, - "h": 52 - }, - "spriteSourceSize": { - "x": 0, - "y": 0, - "w": 48, - "h": 52 - }, - "frame": { - "x": 144, - "y": 0, - "w": 48, - "h": 52 - } - }, - { - "filename": "0102.png", - "rotated": false, - "trimmed": true, - "sourceSize": { - "w": 49, - "h": 52 - }, - "spriteSourceSize": { - "x": 0, - "y": 0, - "w": 48, - "h": 52 - }, - "frame": { - "x": 144, - "y": 0, - "w": 48, - "h": 52 - } - }, - { - "filename": "0103.png", - "rotated": false, - "trimmed": true, - "sourceSize": { - "w": 49, - "h": 52 - }, - "spriteSourceSize": { - "x": 0, - "y": 0, - "w": 48, - "h": 52 - }, - "frame": { - "x": 144, - "y": 0, - "w": 48, - "h": 52 - } - }, - { - "filename": "0013.png", - "rotated": false, - "trimmed": true, - "sourceSize": { - "w": 49, - "h": 52 - }, - "spriteSourceSize": { - "x": 2, - "y": 1, - "w": 47, - "h": 51 - }, - "frame": { - "x": 192, - "y": 0, - "w": 47, - "h": 51 - } - }, - { - "filename": "0014.png", - "rotated": false, - "trimmed": true, - "sourceSize": { - "w": 49, - "h": 52 - }, - "spriteSourceSize": { - "x": 2, - "y": 1, - "w": 47, - "h": 51 - }, - "frame": { - "x": 192, - "y": 0, - "w": 47, - "h": 51 - } - }, - { - "filename": "0029.png", - "rotated": false, - "trimmed": true, - "sourceSize": { - "w": 49, - "h": 52 - }, - "spriteSourceSize": { - "x": 2, - "y": 1, - "w": 47, - "h": 51 - }, - "frame": { - "x": 192, - "y": 0, - "w": 47, - "h": 51 - } - }, - { - "filename": "0030.png", - "rotated": false, - "trimmed": true, - "sourceSize": { - "w": 49, - "h": 52 - }, - "spriteSourceSize": { - "x": 2, - "y": 1, - "w": 47, - "h": 51 - }, - "frame": { - "x": 192, - "y": 0, - "w": 47, - "h": 51 - } - }, - { - "filename": "0045.png", - "rotated": false, - "trimmed": true, - "sourceSize": { - "w": 49, - "h": 52 - }, - "spriteSourceSize": { - "x": 2, - "y": 1, - "w": 47, - "h": 51 - }, - "frame": { - "x": 192, - "y": 0, - "w": 47, - "h": 51 - } - }, - { - "filename": "0046.png", - "rotated": false, - "trimmed": true, - "sourceSize": { - "w": 49, - "h": 52 - }, - "spriteSourceSize": { - "x": 2, - "y": 1, - "w": 47, - "h": 51 - }, - "frame": { - "x": 192, - "y": 0, - "w": 47, - "h": 51 - } - }, - { - "filename": "0061.png", - "rotated": false, - "trimmed": true, - "sourceSize": { - "w": 49, - "h": 52 - }, - "spriteSourceSize": { - "x": 2, - "y": 1, - "w": 47, - "h": 51 - }, - "frame": { - "x": 192, - "y": 0, - "w": 47, - "h": 51 - } - }, - { - "filename": "0062.png", - "rotated": false, - "trimmed": true, - "sourceSize": { - "w": 49, - "h": 52 - }, - "spriteSourceSize": { - "x": 2, - "y": 1, - "w": 47, - "h": 51 - }, - "frame": { - "x": 192, - "y": 0, - "w": 47, - "h": 51 - } - }, - { - "filename": "0077.png", - "rotated": false, - "trimmed": true, - "sourceSize": { - "w": 49, - "h": 52 - }, - "spriteSourceSize": { - "x": 2, - "y": 1, - "w": 47, - "h": 51 - }, - "frame": { - "x": 192, - "y": 0, - "w": 47, - "h": 51 - } - }, - { - "filename": "0078.png", - "rotated": false, - "trimmed": true, - "sourceSize": { - "w": 49, - "h": 52 - }, - "spriteSourceSize": { - "x": 2, - "y": 1, - "w": 47, - "h": 51 - }, - "frame": { - "x": 192, - "y": 0, - "w": 47, - "h": 51 - } - }, - { - "filename": "0097.png", - "rotated": false, - "trimmed": true, - "sourceSize": { - "w": 49, - "h": 52 - }, - "spriteSourceSize": { - "x": 0, - "y": 0, - "w": 48, - "h": 52 - }, - "frame": { - "x": 48, - "y": 156, - "w": 48, - "h": 52 - } - }, - { - "filename": "0098.png", - "rotated": false, - "trimmed": true, - "sourceSize": { - "w": 49, - "h": 52 - }, - "spriteSourceSize": { - "x": 0, - "y": 0, - "w": 48, - "h": 52 - }, - "frame": { - "x": 48, - "y": 156, - "w": 48, - "h": 52 - } - }, - { - "filename": "0106.png", - "rotated": false, - "trimmed": true, - "sourceSize": { - "w": 49, - "h": 52 - }, - "spriteSourceSize": { - "x": 0, - "y": 0, - "w": 48, - "h": 52 - }, - "frame": { - "x": 48, - "y": 156, - "w": 48, - "h": 52 - } - }, - { - "filename": "0107.png", - "rotated": false, - "trimmed": true, - "sourceSize": { - "w": 49, - "h": 52 - }, - "spriteSourceSize": { - "x": 0, - "y": 0, - "w": 48, - "h": 52 - }, - "frame": { - "x": 48, - "y": 156, - "w": 48, - "h": 52 - } - }, - { - "filename": "0109.png", - "rotated": false, - "trimmed": true, - "sourceSize": { - "w": 49, - "h": 52 - }, - "spriteSourceSize": { - "x": 0, - "y": 0, - "w": 48, - "h": 52 - }, - "frame": { - "x": 96, - "y": 104, - "w": 48, - "h": 52 - } - }, - { - "filename": "0001.png", - "rotated": false, - "trimmed": true, - "sourceSize": { - "w": 49, - "h": 52 - }, - "spriteSourceSize": { - "x": 0, - "y": 1, - "w": 48, - "h": 51 - }, - "frame": { - "x": 144, - "y": 52, - "w": 48, - "h": 51 - } - }, - { - "filename": "0002.png", - "rotated": false, - "trimmed": true, - "sourceSize": { - "w": 49, - "h": 52 - }, - "spriteSourceSize": { - "x": 0, - "y": 1, - "w": 48, - "h": 51 - }, - "frame": { - "x": 144, - "y": 52, - "w": 48, - "h": 51 - } - }, - { - "filename": "0017.png", - "rotated": false, - "trimmed": true, - "sourceSize": { - "w": 49, - "h": 52 - }, - "spriteSourceSize": { - "x": 0, - "y": 1, - "w": 48, - "h": 51 - }, - "frame": { - "x": 144, - "y": 52, - "w": 48, - "h": 51 - } - }, - { - "filename": "0018.png", - "rotated": false, - "trimmed": true, - "sourceSize": { - "w": 49, - "h": 52 - }, - "spriteSourceSize": { - "x": 0, - "y": 1, - "w": 48, - "h": 51 - }, - "frame": { - "x": 144, - "y": 52, - "w": 48, - "h": 51 - } - }, - { - "filename": "0033.png", - "rotated": false, - "trimmed": true, - "sourceSize": { - "w": 49, - "h": 52 - }, - "spriteSourceSize": { - "x": 0, - "y": 1, - "w": 48, - "h": 51 - }, - "frame": { - "x": 144, - "y": 52, - "w": 48, - "h": 51 - } - }, - { - "filename": "0034.png", - "rotated": false, - "trimmed": true, - "sourceSize": { - "w": 49, - "h": 52 - }, - "spriteSourceSize": { - "x": 0, - "y": 1, - "w": 48, - "h": 51 - }, - "frame": { - "x": 144, - "y": 52, - "w": 48, - "h": 51 - } - }, - { - "filename": "0049.png", - "rotated": false, - "trimmed": true, - "sourceSize": { - "w": 49, - "h": 52 - }, - "spriteSourceSize": { - "x": 0, - "y": 1, - "w": 48, - "h": 51 - }, - "frame": { - "x": 144, - "y": 52, - "w": 48, - "h": 51 - } - }, - { - "filename": "0050.png", - "rotated": false, - "trimmed": true, - "sourceSize": { - "w": 49, - "h": 52 - }, - "spriteSourceSize": { - "x": 0, - "y": 1, - "w": 48, - "h": 51 - }, - "frame": { - "x": 144, - "y": 52, - "w": 48, - "h": 51 - } - }, - { - "filename": "0065.png", - "rotated": false, - "trimmed": true, - "sourceSize": { - "w": 49, - "h": 52 - }, - "spriteSourceSize": { - "x": 0, - "y": 1, - "w": 48, - "h": 51 - }, - "frame": { - "x": 144, - "y": 52, - "w": 48, - "h": 51 - } - }, - { - "filename": "0066.png", - "rotated": false, - "trimmed": true, - "sourceSize": { - "w": 49, - "h": 52 - }, - "spriteSourceSize": { - "x": 0, - "y": 1, - "w": 48, - "h": 51 - }, - "frame": { - "x": 144, - "y": 52, - "w": 48, - "h": 51 - } - }, - { - "filename": "0081.png", - "rotated": false, - "trimmed": true, - "sourceSize": { - "w": 49, - "h": 52 - }, - "spriteSourceSize": { - "x": 0, - "y": 1, - "w": 48, - "h": 51 - }, - "frame": { - "x": 144, - "y": 52, - "w": 48, - "h": 51 - } - }, - { - "filename": "0082.png", - "rotated": false, - "trimmed": true, - "sourceSize": { - "w": 49, - "h": 52 - }, - "spriteSourceSize": { - "x": 0, - "y": 1, - "w": 48, - "h": 51 - }, - "frame": { - "x": 144, - "y": 52, - "w": 48, - "h": 51 - } - }, - { - "filename": "0015.png", - "rotated": false, - "trimmed": true, - "sourceSize": { - "w": 49, - "h": 52 - }, - "spriteSourceSize": { - "x": 1, - "y": 1, - "w": 47, - "h": 51 - }, - "frame": { - "x": 192, - "y": 51, - "w": 47, - "h": 51 - } - }, - { - "filename": "0016.png", - "rotated": false, - "trimmed": true, - "sourceSize": { - "w": 49, - "h": 52 - }, - "spriteSourceSize": { - "x": 1, - "y": 1, - "w": 47, - "h": 51 - }, - "frame": { - "x": 192, - "y": 51, - "w": 47, - "h": 51 - } - }, - { - "filename": "0031.png", - "rotated": false, - "trimmed": true, - "sourceSize": { - "w": 49, - "h": 52 - }, - "spriteSourceSize": { - "x": 1, - "y": 1, - "w": 47, - "h": 51 - }, - "frame": { - "x": 192, - "y": 51, - "w": 47, - "h": 51 - } - }, - { - "filename": "0032.png", - "rotated": false, - "trimmed": true, - "sourceSize": { - "w": 49, - "h": 52 - }, - "spriteSourceSize": { - "x": 1, - "y": 1, - "w": 47, - "h": 51 - }, - "frame": { - "x": 192, - "y": 51, - "w": 47, - "h": 51 - } - }, - { - "filename": "0047.png", - "rotated": false, - "trimmed": true, - "sourceSize": { - "w": 49, - "h": 52 - }, - "spriteSourceSize": { - "x": 1, - "y": 1, - "w": 47, - "h": 51 - }, - "frame": { - "x": 192, - "y": 51, - "w": 47, - "h": 51 - } - }, - { - "filename": "0048.png", - "rotated": false, - "trimmed": true, - "sourceSize": { - "w": 49, - "h": 52 - }, - "spriteSourceSize": { - "x": 1, - "y": 1, - "w": 47, - "h": 51 - }, - "frame": { - "x": 192, - "y": 51, - "w": 47, - "h": 51 - } - }, - { - "filename": "0063.png", - "rotated": false, - "trimmed": true, - "sourceSize": { - "w": 49, - "h": 52 - }, - "spriteSourceSize": { - "x": 1, - "y": 1, - "w": 47, - "h": 51 - }, - "frame": { - "x": 192, - "y": 51, - "w": 47, - "h": 51 - } - }, - { - "filename": "0064.png", - "rotated": false, - "trimmed": true, - "sourceSize": { - "w": 49, - "h": 52 - }, - "spriteSourceSize": { - "x": 1, - "y": 1, - "w": 47, - "h": 51 - }, - "frame": { - "x": 192, - "y": 51, - "w": 47, - "h": 51 - } - }, - { - "filename": "0079.png", - "rotated": false, - "trimmed": true, - "sourceSize": { - "w": 49, - "h": 52 - }, - "spriteSourceSize": { - "x": 1, - "y": 1, - "w": 47, - "h": 51 - }, - "frame": { - "x": 192, - "y": 51, - "w": 47, - "h": 51 - } - }, - { - "filename": "0080.png", - "rotated": false, - "trimmed": true, - "sourceSize": { - "w": 49, - "h": 52 - }, - "spriteSourceSize": { - "x": 1, - "y": 1, - "w": 47, - "h": 51 - }, - "frame": { - "x": 192, - "y": 51, - "w": 47, - "h": 51 - } - }, - { - "filename": "0003.png", - "rotated": false, - "trimmed": true, - "sourceSize": { - "w": 49, - "h": 52 - }, - "spriteSourceSize": { - "x": 0, - "y": 1, - "w": 48, - "h": 51 - }, - "frame": { - "x": 96, - "y": 156, - "w": 48, - "h": 51 - } - }, - { - "filename": "0004.png", - "rotated": false, - "trimmed": true, - "sourceSize": { - "w": 49, - "h": 52 - }, - "spriteSourceSize": { - "x": 0, - "y": 1, - "w": 48, - "h": 51 - }, - "frame": { - "x": 96, - "y": 156, - "w": 48, - "h": 51 - } - }, - { - "filename": "0019.png", - "rotated": false, - "trimmed": true, - "sourceSize": { - "w": 49, - "h": 52 - }, - "spriteSourceSize": { - "x": 0, - "y": 1, - "w": 48, - "h": 51 - }, - "frame": { - "x": 96, - "y": 156, - "w": 48, - "h": 51 - } - }, - { - "filename": "0020.png", - "rotated": false, - "trimmed": true, - "sourceSize": { - "w": 49, - "h": 52 - }, - "spriteSourceSize": { - "x": 0, - "y": 1, - "w": 48, - "h": 51 - }, - "frame": { - "x": 96, - "y": 156, - "w": 48, - "h": 51 - } - }, - { - "filename": "0035.png", - "rotated": false, - "trimmed": true, - "sourceSize": { - "w": 49, - "h": 52 - }, - "spriteSourceSize": { - "x": 0, - "y": 1, - "w": 48, - "h": 51 - }, - "frame": { - "x": 96, - "y": 156, - "w": 48, - "h": 51 - } - }, - { - "filename": "0036.png", - "rotated": false, - "trimmed": true, - "sourceSize": { - "w": 49, - "h": 52 - }, - "spriteSourceSize": { - "x": 0, - "y": 1, - "w": 48, - "h": 51 - }, - "frame": { - "x": 96, - "y": 156, - "w": 48, - "h": 51 - } - }, - { - "filename": "0051.png", - "rotated": false, - "trimmed": true, - "sourceSize": { - "w": 49, - "h": 52 - }, - "spriteSourceSize": { - "x": 0, - "y": 1, - "w": 48, - "h": 51 - }, - "frame": { - "x": 96, - "y": 156, - "w": 48, - "h": 51 - } - }, - { - "filename": "0052.png", - "rotated": false, - "trimmed": true, - "sourceSize": { - "w": 49, - "h": 52 - }, - "spriteSourceSize": { - "x": 0, - "y": 1, - "w": 48, - "h": 51 - }, - "frame": { - "x": 96, - "y": 156, - "w": 48, - "h": 51 - } - }, - { - "filename": "0067.png", - "rotated": false, - "trimmed": true, - "sourceSize": { - "w": 49, - "h": 52 - }, - "spriteSourceSize": { - "x": 0, - "y": 1, - "w": 48, - "h": 51 - }, - "frame": { - "x": 96, - "y": 156, - "w": 48, - "h": 51 - } - }, - { - "filename": "0068.png", - "rotated": false, - "trimmed": true, - "sourceSize": { - "w": 49, - "h": 52 - }, - "spriteSourceSize": { - "x": 0, - "y": 1, - "w": 48, - "h": 51 - }, - "frame": { - "x": 96, - "y": 156, - "w": 48, - "h": 51 - } - }, - { - "filename": "0005.png", - "rotated": false, - "trimmed": true, - "sourceSize": { - "w": 49, - "h": 52 - }, - "spriteSourceSize": { - "x": 1, - "y": 1, - "w": 48, - "h": 51 - }, - "frame": { - "x": 144, - "y": 103, - "w": 48, - "h": 51 - } - }, - { - "filename": "0006.png", - "rotated": false, - "trimmed": true, - "sourceSize": { - "w": 49, - "h": 52 - }, - "spriteSourceSize": { - "x": 1, - "y": 1, - "w": 48, - "h": 51 - }, - "frame": { - "x": 144, - "y": 103, - "w": 48, - "h": 51 - } - }, - { - "filename": "0021.png", - "rotated": false, - "trimmed": true, - "sourceSize": { - "w": 49, - "h": 52 - }, - "spriteSourceSize": { - "x": 1, - "y": 1, - "w": 48, - "h": 51 - }, - "frame": { - "x": 144, - "y": 103, - "w": 48, - "h": 51 - } - }, - { - "filename": "0022.png", - "rotated": false, - "trimmed": true, - "sourceSize": { - "w": 49, - "h": 52 - }, - "spriteSourceSize": { - "x": 1, - "y": 1, - "w": 48, - "h": 51 - }, - "frame": { - "x": 144, - "y": 103, - "w": 48, - "h": 51 - } - }, - { - "filename": "0037.png", - "rotated": false, - "trimmed": true, - "sourceSize": { - "w": 49, - "h": 52 - }, - "spriteSourceSize": { - "x": 1, - "y": 1, - "w": 48, - "h": 51 - }, - "frame": { - "x": 144, - "y": 103, - "w": 48, - "h": 51 - } - }, - { - "filename": "0038.png", - "rotated": false, - "trimmed": true, - "sourceSize": { - "w": 49, - "h": 52 - }, - "spriteSourceSize": { - "x": 1, - "y": 1, - "w": 48, - "h": 51 - }, - "frame": { - "x": 144, - "y": 103, - "w": 48, - "h": 51 - } - }, - { - "filename": "0053.png", - "rotated": false, - "trimmed": true, - "sourceSize": { - "w": 49, - "h": 52 - }, - "spriteSourceSize": { - "x": 1, - "y": 1, - "w": 48, - "h": 51 - }, - "frame": { - "x": 144, - "y": 103, - "w": 48, - "h": 51 - } - }, - { - "filename": "0054.png", - "rotated": false, - "trimmed": true, - "sourceSize": { - "w": 49, - "h": 52 - }, - "spriteSourceSize": { - "x": 1, - "y": 1, - "w": 48, - "h": 51 - }, - "frame": { - "x": 144, - "y": 103, - "w": 48, - "h": 51 - } - }, - { - "filename": "0069.png", - "rotated": false, - "trimmed": true, - "sourceSize": { - "w": 49, - "h": 52 - }, - "spriteSourceSize": { - "x": 1, - "y": 1, - "w": 48, - "h": 51 - }, - "frame": { - "x": 144, - "y": 103, - "w": 48, - "h": 51 - } - }, - { - "filename": "0070.png", - "rotated": false, - "trimmed": true, - "sourceSize": { - "w": 49, - "h": 52 - }, - "spriteSourceSize": { - "x": 1, - "y": 1, - "w": 48, - "h": 51 - }, - "frame": { - "x": 144, - "y": 103, - "w": 48, - "h": 51 - } - }, - { - "filename": "0007.png", - "rotated": false, - "trimmed": true, - "sourceSize": { - "w": 49, - "h": 52 - }, - "spriteSourceSize": { - "x": 2, - "y": 2, - "w": 47, - "h": 50 - }, - "frame": { - "x": 192, - "y": 102, - "w": 47, - "h": 50 - } - }, - { - "filename": "0008.png", - "rotated": false, - "trimmed": true, - "sourceSize": { - "w": 49, - "h": 52 - }, - "spriteSourceSize": { - "x": 2, - "y": 2, - "w": 47, - "h": 50 - }, - "frame": { - "x": 192, - "y": 102, - "w": 47, - "h": 50 - } - }, - { - "filename": "0023.png", - "rotated": false, - "trimmed": true, - "sourceSize": { - "w": 49, - "h": 52 - }, - "spriteSourceSize": { - "x": 2, - "y": 2, - "w": 47, - "h": 50 - }, - "frame": { - "x": 192, - "y": 102, - "w": 47, - "h": 50 - } - }, - { - "filename": "0024.png", - "rotated": false, - "trimmed": true, - "sourceSize": { - "w": 49, - "h": 52 - }, - "spriteSourceSize": { - "x": 2, - "y": 2, - "w": 47, - "h": 50 - }, - "frame": { - "x": 192, - "y": 102, - "w": 47, - "h": 50 - } - }, - { - "filename": "0039.png", - "rotated": false, - "trimmed": true, - "sourceSize": { - "w": 49, - "h": 52 - }, - "spriteSourceSize": { - "x": 2, - "y": 2, - "w": 47, - "h": 50 - }, - "frame": { - "x": 192, - "y": 102, - "w": 47, - "h": 50 - } - }, - { - "filename": "0040.png", - "rotated": false, - "trimmed": true, - "sourceSize": { - "w": 49, - "h": 52 - }, - "spriteSourceSize": { - "x": 2, - "y": 2, - "w": 47, - "h": 50 - }, - "frame": { - "x": 192, - "y": 102, - "w": 47, - "h": 50 - } - }, - { - "filename": "0055.png", - "rotated": false, - "trimmed": true, - "sourceSize": { - "w": 49, - "h": 52 - }, - "spriteSourceSize": { - "x": 2, - "y": 2, - "w": 47, - "h": 50 - }, - "frame": { - "x": 192, - "y": 102, - "w": 47, - "h": 50 - } - }, - { - "filename": "0056.png", - "rotated": false, - "trimmed": true, - "sourceSize": { - "w": 49, - "h": 52 - }, - "spriteSourceSize": { - "x": 2, - "y": 2, - "w": 47, - "h": 50 - }, - "frame": { - "x": 192, - "y": 102, - "w": 47, - "h": 50 - } - }, - { - "filename": "0071.png", - "rotated": false, - "trimmed": true, - "sourceSize": { - "w": 49, - "h": 52 - }, - "spriteSourceSize": { - "x": 2, - "y": 2, - "w": 47, - "h": 50 - }, - "frame": { - "x": 192, - "y": 102, - "w": 47, - "h": 50 - } - }, - { - "filename": "0072.png", - "rotated": false, - "trimmed": true, - "sourceSize": { - "w": 49, - "h": 52 - }, - "spriteSourceSize": { - "x": 2, - "y": 2, - "w": 47, - "h": 50 - }, - "frame": { - "x": 192, - "y": 102, - "w": 47, - "h": 50 - } - }, - { - "filename": "0011.png", - "rotated": false, - "trimmed": true, - "sourceSize": { - "w": 49, - "h": 52 - }, - "spriteSourceSize": { - "x": 2, - "y": 2, - "w": 47, - "h": 50 - }, - "frame": { - "x": 192, - "y": 152, - "w": 47, - "h": 50 - } - }, - { - "filename": "0012.png", - "rotated": false, - "trimmed": true, - "sourceSize": { - "w": 49, - "h": 52 - }, - "spriteSourceSize": { - "x": 2, - "y": 2, - "w": 47, - "h": 50 - }, - "frame": { - "x": 192, - "y": 152, - "w": 47, - "h": 50 - } - }, - { - "filename": "0027.png", - "rotated": false, - "trimmed": true, - "sourceSize": { - "w": 49, - "h": 52 - }, - "spriteSourceSize": { - "x": 2, - "y": 2, - "w": 47, - "h": 50 - }, - "frame": { - "x": 192, - "y": 152, - "w": 47, - "h": 50 - } - }, - { - "filename": "0028.png", - "rotated": false, - "trimmed": true, - "sourceSize": { - "w": 49, - "h": 52 - }, - "spriteSourceSize": { - "x": 2, - "y": 2, - "w": 47, - "h": 50 - }, - "frame": { - "x": 192, - "y": 152, - "w": 47, - "h": 50 - } - }, - { - "filename": "0043.png", - "rotated": false, - "trimmed": true, - "sourceSize": { - "w": 49, - "h": 52 - }, - "spriteSourceSize": { - "x": 2, - "y": 2, - "w": 47, - "h": 50 - }, - "frame": { - "x": 192, - "y": 152, - "w": 47, - "h": 50 - } - }, - { - "filename": "0044.png", - "rotated": false, - "trimmed": true, - "sourceSize": { - "w": 49, - "h": 52 - }, - "spriteSourceSize": { - "x": 2, - "y": 2, - "w": 47, - "h": 50 - }, - "frame": { - "x": 192, - "y": 152, - "w": 47, - "h": 50 - } - }, - { - "filename": "0059.png", - "rotated": false, - "trimmed": true, - "sourceSize": { - "w": 49, - "h": 52 - }, - "spriteSourceSize": { - "x": 2, - "y": 2, - "w": 47, - "h": 50 - }, - "frame": { - "x": 192, - "y": 152, - "w": 47, - "h": 50 - } - }, - { - "filename": "0060.png", - "rotated": false, - "trimmed": true, - "sourceSize": { - "w": 49, - "h": 52 - }, - "spriteSourceSize": { - "x": 2, - "y": 2, - "w": 47, - "h": 50 - }, - "frame": { - "x": 192, - "y": 152, - "w": 47, - "h": 50 - } - }, - { - "filename": "0075.png", - "rotated": false, - "trimmed": true, - "sourceSize": { - "w": 49, - "h": 52 - }, - "spriteSourceSize": { - "x": 2, - "y": 2, - "w": 47, - "h": 50 - }, - "frame": { - "x": 192, - "y": 152, - "w": 47, - "h": 50 - } - }, - { - "filename": "0076.png", - "rotated": false, - "trimmed": true, - "sourceSize": { - "w": 49, - "h": 52 - }, - "spriteSourceSize": { - "x": 2, - "y": 2, - "w": 47, - "h": 50 - }, - "frame": { - "x": 192, - "y": 152, - "w": 47, - "h": 50 - } - }, - { - "filename": "0009.png", - "rotated": false, - "trimmed": true, - "sourceSize": { - "w": 49, - "h": 52 - }, - "spriteSourceSize": { - "x": 2, - "y": 3, - "w": 47, - "h": 49 - }, - "frame": { - "x": 144, - "y": 154, - "w": 47, - "h": 49 - } - }, - { - "filename": "0010.png", - "rotated": false, - "trimmed": true, - "sourceSize": { - "w": 49, - "h": 52 - }, - "spriteSourceSize": { - "x": 2, - "y": 3, - "w": 47, - "h": 49 - }, - "frame": { - "x": 144, - "y": 154, - "w": 47, - "h": 49 - } - }, - { - "filename": "0025.png", - "rotated": false, - "trimmed": true, - "sourceSize": { - "w": 49, - "h": 52 - }, - "spriteSourceSize": { - "x": 2, - "y": 3, - "w": 47, - "h": 49 - }, - "frame": { - "x": 144, - "y": 154, - "w": 47, - "h": 49 - } - }, - { - "filename": "0026.png", - "rotated": false, - "trimmed": true, - "sourceSize": { - "w": 49, - "h": 52 - }, - "spriteSourceSize": { - "x": 2, - "y": 3, - "w": 47, - "h": 49 - }, - "frame": { - "x": 144, - "y": 154, - "w": 47, - "h": 49 - } - }, - { - "filename": "0041.png", - "rotated": false, - "trimmed": true, - "sourceSize": { - "w": 49, - "h": 52 - }, - "spriteSourceSize": { - "x": 2, - "y": 3, - "w": 47, - "h": 49 - }, - "frame": { - "x": 144, - "y": 154, - "w": 47, - "h": 49 - } - }, - { - "filename": "0042.png", - "rotated": false, - "trimmed": true, - "sourceSize": { - "w": 49, - "h": 52 - }, - "spriteSourceSize": { - "x": 2, - "y": 3, - "w": 47, - "h": 49 - }, - "frame": { - "x": 144, - "y": 154, - "w": 47, - "h": 49 - } - }, - { - "filename": "0057.png", - "rotated": false, - "trimmed": true, - "sourceSize": { - "w": 49, - "h": 52 - }, - "spriteSourceSize": { - "x": 2, - "y": 3, - "w": 47, - "h": 49 - }, - "frame": { - "x": 144, - "y": 154, - "w": 47, - "h": 49 - } - }, - { - "filename": "0058.png", - "rotated": false, - "trimmed": true, - "sourceSize": { - "w": 49, - "h": 52 - }, - "spriteSourceSize": { - "x": 2, - "y": 3, - "w": 47, - "h": 49 - }, - "frame": { - "x": 144, - "y": 154, - "w": 47, - "h": 49 - } - }, - { - "filename": "0073.png", - "rotated": false, - "trimmed": true, - "sourceSize": { - "w": 49, - "h": 52 - }, - "spriteSourceSize": { - "x": 2, - "y": 3, - "w": 47, - "h": 49 - }, - "frame": { - "x": 144, - "y": 154, - "w": 47, - "h": 49 - } - }, - { - "filename": "0074.png", - "rotated": false, - "trimmed": true, - "sourceSize": { - "w": 49, - "h": 52 - }, - "spriteSourceSize": { - "x": 2, - "y": 3, - "w": 47, - "h": 49 - }, - "frame": { - "x": 144, - "y": 154, - "w": 47, - "h": 49 - } - } - ] - } - ], - "meta": { - "app": "https://www.codeandweb.com/texturepacker", - "version": "3.0", - "smartupdate": "$TexturePacker:SmartUpdate:48f53f968d06c5de2d5b76e15505b755:5d901e7ac581518a4fe6730bcf366c83:d07862436676aa228a148ee1f1d82a8f$" - } -} diff --git a/public/images/pokemon/exp/back/782.png b/public/images/pokemon/exp/back/782.png deleted file mode 100644 index 402ac12f53a..00000000000 Binary files a/public/images/pokemon/exp/back/782.png and /dev/null differ diff --git a/public/images/pokemon/exp/back/783.json b/public/images/pokemon/exp/back/783.json deleted file mode 100644 index ea0bcf61b16..00000000000 --- a/public/images/pokemon/exp/back/783.json +++ /dev/null @@ -1,230 +0,0 @@ -{ - "textures": [ - { - "image": "783.png", - "format": "RGBA8888", - "size": { - "w": 170, - "h": 170 - }, - "scale": 1, - "frames": [ - { - "filename": "0001.png", - "rotated": false, - "trimmed": true, - "sourceSize": { - "w": 60, - "h": 70 - }, - "spriteSourceSize": { - "x": 0, - "y": 1, - "w": 60, - "h": 69 - }, - "frame": { - "x": 0, - "y": 0, - "w": 60, - "h": 69 - } - }, - { - "filename": "0002.png", - "rotated": false, - "trimmed": true, - "sourceSize": { - "w": 60, - "h": 70 - }, - "spriteSourceSize": { - "x": 0, - "y": 0, - "w": 59, - "h": 70 - }, - "frame": { - "x": 0, - "y": 69, - "w": 59, - "h": 70 - } - }, - { - "filename": "0010.png", - "rotated": false, - "trimmed": true, - "sourceSize": { - "w": 60, - "h": 70 - }, - "spriteSourceSize": { - "x": 0, - "y": 0, - "w": 59, - "h": 70 - }, - "frame": { - "x": 0, - "y": 69, - "w": 59, - "h": 70 - } - }, - { - "filename": "0003.png", - "rotated": false, - "trimmed": true, - "sourceSize": { - "w": 60, - "h": 70 - }, - "spriteSourceSize": { - "x": 0, - "y": 0, - "w": 57, - "h": 70 - }, - "frame": { - "x": 60, - "y": 0, - "w": 57, - "h": 70 - } - }, - { - "filename": "0009.png", - "rotated": false, - "trimmed": true, - "sourceSize": { - "w": 60, - "h": 70 - }, - "spriteSourceSize": { - "x": 0, - "y": 0, - "w": 57, - "h": 70 - }, - "frame": { - "x": 60, - "y": 0, - "w": 57, - "h": 70 - } - }, - { - "filename": "0006.png", - "rotated": false, - "trimmed": true, - "sourceSize": { - "w": 60, - "h": 70 - }, - "spriteSourceSize": { - "x": 3, - "y": 0, - "w": 53, - "h": 70 - }, - "frame": { - "x": 117, - "y": 0, - "w": 53, - "h": 70 - } - }, - { - "filename": "0004.png", - "rotated": false, - "trimmed": true, - "sourceSize": { - "w": 60, - "h": 70 - }, - "spriteSourceSize": { - "x": 2, - "y": 0, - "w": 55, - "h": 70 - }, - "frame": { - "x": 59, - "y": 70, - "w": 55, - "h": 70 - } - }, - { - "filename": "0008.png", - "rotated": false, - "trimmed": true, - "sourceSize": { - "w": 60, - "h": 70 - }, - "spriteSourceSize": { - "x": 2, - "y": 0, - "w": 55, - "h": 70 - }, - "frame": { - "x": 59, - "y": 70, - "w": 55, - "h": 70 - } - }, - { - "filename": "0005.png", - "rotated": false, - "trimmed": true, - "sourceSize": { - "w": 60, - "h": 70 - }, - "spriteSourceSize": { - "x": 2, - "y": 0, - "w": 55, - "h": 70 - }, - "frame": { - "x": 114, - "y": 70, - "w": 55, - "h": 70 - } - }, - { - "filename": "0007.png", - "rotated": false, - "trimmed": true, - "sourceSize": { - "w": 60, - "h": 70 - }, - "spriteSourceSize": { - "x": 2, - "y": 0, - "w": 55, - "h": 70 - }, - "frame": { - "x": 114, - "y": 70, - "w": 55, - "h": 70 - } - } - ] - } - ], - "meta": { - "app": "https://www.codeandweb.com/texturepacker", - "version": "3.0", - "smartupdate": "$TexturePacker:SmartUpdate:20660c9e03072cd65380bda5628411e8:a05376d2ce003dccda577a6cc48e817b:aab166e28c744865a0296041224dd01b$" - } -} diff --git a/public/images/pokemon/exp/back/783.png b/public/images/pokemon/exp/back/783.png deleted file mode 100644 index ea3deeb1a40..00000000000 Binary files a/public/images/pokemon/exp/back/783.png and /dev/null differ diff --git a/public/images/pokemon/exp/back/784.json b/public/images/pokemon/exp/back/784.json deleted file mode 100644 index 7ff49909f1a..00000000000 --- a/public/images/pokemon/exp/back/784.json +++ /dev/null @@ -1,230 +0,0 @@ -{ - "textures": [ - { - "image": "784.png", - "format": "RGBA8888", - "size": { - "w": 240, - "h": 240 - }, - "scale": 1, - "frames": [ - { - "filename": "0001.png", - "rotated": false, - "trimmed": false, - "sourceSize": { - "w": 87, - "h": 81 - }, - "spriteSourceSize": { - "x": 0, - "y": 0, - "w": 87, - "h": 81 - }, - "frame": { - "x": 0, - "y": 0, - "w": 87, - "h": 81 - } - }, - { - "filename": "0002.png", - "rotated": false, - "trimmed": true, - "sourceSize": { - "w": 87, - "h": 81 - }, - "spriteSourceSize": { - "x": 1, - "y": 0, - "w": 84, - "h": 81 - }, - "frame": { - "x": 87, - "y": 0, - "w": 84, - "h": 81 - } - }, - { - "filename": "0010.png", - "rotated": false, - "trimmed": true, - "sourceSize": { - "w": 87, - "h": 81 - }, - "spriteSourceSize": { - "x": 1, - "y": 0, - "w": 84, - "h": 81 - }, - "frame": { - "x": 87, - "y": 0, - "w": 84, - "h": 81 - } - }, - { - "filename": "0003.png", - "rotated": false, - "trimmed": true, - "sourceSize": { - "w": 87, - "h": 81 - }, - "spriteSourceSize": { - "x": 2, - "y": 0, - "w": 81, - "h": 81 - }, - "frame": { - "x": 0, - "y": 81, - "w": 81, - "h": 81 - } - }, - { - "filename": "0009.png", - "rotated": false, - "trimmed": true, - "sourceSize": { - "w": 87, - "h": 81 - }, - "spriteSourceSize": { - "x": 2, - "y": 0, - "w": 81, - "h": 81 - }, - "frame": { - "x": 0, - "y": 81, - "w": 81, - "h": 81 - } - }, - { - "filename": "0004.png", - "rotated": false, - "trimmed": true, - "sourceSize": { - "w": 87, - "h": 81 - }, - "spriteSourceSize": { - "x": 4, - "y": 0, - "w": 78, - "h": 81 - }, - "frame": { - "x": 81, - "y": 81, - "w": 78, - "h": 81 - } - }, - { - "filename": "0008.png", - "rotated": false, - "trimmed": true, - "sourceSize": { - "w": 87, - "h": 81 - }, - "spriteSourceSize": { - "x": 4, - "y": 0, - "w": 78, - "h": 81 - }, - "frame": { - "x": 81, - "y": 81, - "w": 78, - "h": 81 - } - }, - { - "filename": "0006.png", - "rotated": false, - "trimmed": true, - "sourceSize": { - "w": 87, - "h": 81 - }, - "spriteSourceSize": { - "x": 4, - "y": 2, - "w": 79, - "h": 79 - }, - "frame": { - "x": 159, - "y": 81, - "w": 79, - "h": 79 - } - }, - { - "filename": "0005.png", - "rotated": false, - "trimmed": true, - "sourceSize": { - "w": 87, - "h": 81 - }, - "spriteSourceSize": { - "x": 4, - "y": 1, - "w": 78, - "h": 80 - }, - "frame": { - "x": 159, - "y": 160, - "w": 78, - "h": 80 - } - }, - { - "filename": "0007.png", - "rotated": false, - "trimmed": true, - "sourceSize": { - "w": 87, - "h": 81 - }, - "spriteSourceSize": { - "x": 4, - "y": 1, - "w": 78, - "h": 80 - }, - "frame": { - "x": 159, - "y": 160, - "w": 78, - "h": 80 - } - } - ] - } - ], - "meta": { - "app": "https://www.codeandweb.com/texturepacker", - "version": "3.0", - "smartupdate": "$TexturePacker:SmartUpdate:e1718793cec57b03b57147eb8c643dea:df6891980c354d7d34cd79ab41de7d58:c2f7ca3ab1075b8c824730653d891244$" - } -} diff --git a/public/images/pokemon/exp/back/784.png b/public/images/pokemon/exp/back/784.png deleted file mode 100644 index 54522e52998..00000000000 Binary files a/public/images/pokemon/exp/back/784.png and /dev/null differ diff --git a/public/images/pokemon/exp/back/840.json b/public/images/pokemon/exp/back/840.json index 4e49422dab7..eb5a925c565 100644 --- a/public/images/pokemon/exp/back/840.json +++ b/public/images/pokemon/exp/back/840.json @@ -1,230 +1,1145 @@ -{ - "textures": [ - { - "image": "840.png", - "format": "RGBA8888", - "size": { - "w": 95, - "h": 95 - }, - "scale": 1, - "frames": [ - { - "filename": "0004.png", - "rotated": false, - "trimmed": false, - "sourceSize": { - "w": 32, - "h": 42 - }, - "spriteSourceSize": { - "x": 0, - "y": 0, - "w": 32, - "h": 42 - }, - "frame": { - "x": 0, - "y": 0, - "w": 32, - "h": 42 - } - }, - { - "filename": "0008.png", - "rotated": false, - "trimmed": false, - "sourceSize": { - "w": 32, - "h": 42 - }, - "spriteSourceSize": { - "x": 0, - "y": 0, - "w": 32, - "h": 42 - }, - "frame": { - "x": 0, - "y": 0, - "w": 32, - "h": 42 - } - }, - { - "filename": "0005.png", - "rotated": false, - "trimmed": false, - "sourceSize": { - "w": 32, - "h": 42 - }, - "spriteSourceSize": { - "x": 0, - "y": 0, - "w": 32, - "h": 42 - }, - "frame": { - "x": 0, - "y": 42, - "w": 32, - "h": 42 - } - }, - { - "filename": "0007.png", - "rotated": false, - "trimmed": false, - "sourceSize": { - "w": 32, - "h": 42 - }, - "spriteSourceSize": { - "x": 0, - "y": 0, - "w": 32, - "h": 42 - }, - "frame": { - "x": 0, - "y": 42, - "w": 32, - "h": 42 - } - }, - { - "filename": "0003.png", - "rotated": false, - "trimmed": true, - "sourceSize": { - "w": 32, - "h": 42 - }, - "spriteSourceSize": { - "x": 0, - "y": 1, - "w": 32, - "h": 41 - }, - "frame": { - "x": 32, - "y": 0, - "w": 32, - "h": 41 - } - }, - { - "filename": "0009.png", - "rotated": false, - "trimmed": true, - "sourceSize": { - "w": 32, - "h": 42 - }, - "spriteSourceSize": { - "x": 0, - "y": 1, - "w": 32, - "h": 41 - }, - "frame": { - "x": 32, - "y": 0, - "w": 32, - "h": 41 - } - }, - { - "filename": "0001.png", - "rotated": false, - "trimmed": true, - "sourceSize": { - "w": 32, - "h": 42 - }, - "spriteSourceSize": { - "x": 0, - "y": 0, - "w": 31, - "h": 42 - }, - "frame": { - "x": 64, - "y": 0, - "w": 31, - "h": 42 - } - }, - { - "filename": "0006.png", - "rotated": false, - "trimmed": true, - "sourceSize": { - "w": 32, - "h": 42 - }, - "spriteSourceSize": { - "x": 1, - "y": 0, - "w": 31, - "h": 42 - }, - "frame": { - "x": 32, - "y": 41, - "w": 31, - "h": 42 - } - }, - { - "filename": "0002.png", - "rotated": false, - "trimmed": true, - "sourceSize": { - "w": 32, - "h": 42 - }, - "spriteSourceSize": { - "x": 0, - "y": 1, - "w": 31, - "h": 41 - }, - "frame": { - "x": 63, - "y": 42, - "w": 31, - "h": 41 - } - }, - { - "filename": "0010.png", - "rotated": false, - "trimmed": true, - "sourceSize": { - "w": 32, - "h": 42 - }, - "spriteSourceSize": { - "x": 0, - "y": 1, - "w": 31, - "h": 41 - }, - "frame": { - "x": 63, - "y": 42, - "w": 31, - "h": 41 - } - } - ] - } - ], - "meta": { - "app": "https://www.codeandweb.com/texturepacker", - "version": "3.0", - "smartupdate": "$TexturePacker:SmartUpdate:b5d6af055845f0bb50dedd55de251612:02858b561d730304d719627e15bc2130:c6a93eb4343acba47be6c18cd2c93ef1$" - } +{ "frames": [ + { + "filename": "0001.png", + "frame": { "x": 73, "y": 44, "w": 33, "h": 41 }, + "rotated": false, + "trimmed": true, + "spriteSourceSize": { "x": 0, "y": 2, "w": 33, "h": 41 }, + "sourceSize": { "w": 37, "h": 44 }, + "duration": 80 + }, + { + "filename": "0002.png", + "frame": { "x": 136, "y": 90, "w": 33, "h": 40 }, + "rotated": false, + "trimmed": true, + "spriteSourceSize": { "x": 0, "y": 3, "w": 33, "h": 40 }, + "sourceSize": { "w": 37, "h": 44 }, + "duration": 80 + }, + { + "filename": "0003.png", + "frame": { "x": 171, "y": 91, "w": 33, "h": 40 }, + "rotated": false, + "trimmed": true, + "spriteSourceSize": { "x": 0, "y": 3, "w": 33, "h": 40 }, + "sourceSize": { "w": 37, "h": 44 }, + "duration": 80 + }, + { + "filename": "0004.png", + "frame": { "x": 37, "y": 44, "w": 34, "h": 40 }, + "rotated": false, + "trimmed": true, + "spriteSourceSize": { "x": 0, "y": 3, "w": 34, "h": 40 }, + "sourceSize": { "w": 37, "h": 44 }, + "duration": 80 + }, + { + "filename": "0005.png", + "frame": { "x": 79, "y": 2, "w": 35, "h": 40 }, + "rotated": false, + "trimmed": true, + "spriteSourceSize": { "x": 0, "y": 4, "w": 35, "h": 40 }, + "sourceSize": { "w": 37, "h": 44 }, + "duration": 80 + }, + { + "filename": "0006.png", + "frame": { "x": 41, "y": 2, "w": 36, "h": 40 }, + "rotated": false, + "trimmed": true, + "spriteSourceSize": { "x": 0, "y": 4, "w": 36, "h": 40 }, + "sourceSize": { "w": 37, "h": 44 }, + "duration": 80 + }, + { + "filename": "0007.png", + "frame": { "x": 2, "y": 2, "w": 37, "h": 40 }, + "rotated": false, + "trimmed": true, + "spriteSourceSize": { "x": 0, "y": 4, "w": 37, "h": 40 }, + "sourceSize": { "w": 37, "h": 44 }, + "duration": 80 + }, + { + "filename": "0008.png", + "frame": { "x": 2, "y": 2, "w": 37, "h": 40 }, + "rotated": false, + "trimmed": true, + "spriteSourceSize": { "x": 0, "y": 4, "w": 37, "h": 40 }, + "sourceSize": { "w": 37, "h": 44 }, + "duration": 80 + }, + { + "filename": "0009.png", + "frame": { "x": 2, "y": 2, "w": 37, "h": 40 }, + "rotated": false, + "trimmed": true, + "spriteSourceSize": { "x": 0, "y": 4, "w": 37, "h": 40 }, + "sourceSize": { "w": 37, "h": 44 }, + "duration": 80 + }, + { + "filename": "0010.png", + "frame": { "x": 116, "y": 2, "w": 34, "h": 41 }, + "rotated": false, + "trimmed": true, + "spriteSourceSize": { "x": 0, "y": 2, "w": 34, "h": 41 }, + "sourceSize": { "w": 37, "h": 44 }, + "duration": 80 + }, + { + "filename": "0011.png", + "frame": { "x": 35, "y": 131, "w": 33, "h": 40 }, + "rotated": false, + "trimmed": true, + "spriteSourceSize": { "x": 0, "y": 3, "w": 33, "h": 40 }, + "sourceSize": { "w": 37, "h": 44 }, + "duration": 80 + }, + { + "filename": "0012.png", + "frame": { "x": 136, "y": 132, "w": 33, "h": 40 }, + "rotated": false, + "trimmed": true, + "spriteSourceSize": { "x": 0, "y": 3, "w": 33, "h": 40 }, + "sourceSize": { "w": 37, "h": 44 }, + "duration": 80 + }, + { + "filename": "0013.png", + "frame": { "x": 171, "y": 133, "w": 33, "h": 40 }, + "rotated": false, + "trimmed": true, + "spriteSourceSize": { "x": 0, "y": 3, "w": 33, "h": 40 }, + "sourceSize": { "w": 37, "h": 44 }, + "duration": 80 + }, + { + "filename": "0014.png", + "frame": { "x": 73, "y": 44, "w": 33, "h": 41 }, + "rotated": false, + "trimmed": true, + "spriteSourceSize": { "x": 0, "y": 2, "w": 33, "h": 41 }, + "sourceSize": { "w": 37, "h": 44 }, + "duration": 80 + }, + { + "filename": "0015.png", + "frame": { "x": 73, "y": 44, "w": 33, "h": 41 }, + "rotated": false, + "trimmed": true, + "spriteSourceSize": { "x": 0, "y": 2, "w": 33, "h": 41 }, + "sourceSize": { "w": 37, "h": 44 }, + "duration": 80 + }, + { + "filename": "0016.png", + "frame": { "x": 152, "y": 2, "w": 33, "h": 42 }, + "rotated": false, + "trimmed": true, + "spriteSourceSize": { "x": 0, "y": 1, "w": 33, "h": 42 }, + "sourceSize": { "w": 37, "h": 44 }, + "duration": 80 + }, + { + "filename": "0017.png", + "frame": { "x": 108, "y": 45, "w": 32, "h": 42 }, + "rotated": false, + "trimmed": true, + "spriteSourceSize": { "x": 0, "y": 1, "w": 32, "h": 42 }, + "sourceSize": { "w": 37, "h": 44 }, + "duration": 80 + }, + { + "filename": "0018.png", + "frame": { "x": 176, "y": 46, "w": 31, "h": 43 }, + "rotated": false, + "trimmed": true, + "spriteSourceSize": { "x": 0, "y": 0, "w": 31, "h": 43 }, + "sourceSize": { "w": 37, "h": 44 }, + "duration": 80 + }, + { + "filename": "0019.png", + "frame": { "x": 37, "y": 86, "w": 31, "h": 43 }, + "rotated": false, + "trimmed": true, + "spriteSourceSize": { "x": 0, "y": 0, "w": 31, "h": 43 }, + "sourceSize": { "w": 37, "h": 44 }, + "duration": 80 + }, + { + "filename": "0020.png", + "frame": { "x": 70, "y": 87, "w": 31, "h": 43 }, + "rotated": false, + "trimmed": true, + "spriteSourceSize": { "x": 0, "y": 0, "w": 31, "h": 43 }, + "sourceSize": { "w": 37, "h": 44 }, + "duration": 80 + }, + { + "filename": "0021.png", + "frame": { "x": 2, "y": 88, "w": 31, "h": 43 }, + "rotated": false, + "trimmed": true, + "spriteSourceSize": { "x": 0, "y": 0, "w": 31, "h": 43 }, + "sourceSize": { "w": 37, "h": 44 }, + "duration": 80 + }, + { + "filename": "0022.png", + "frame": { "x": 2, "y": 88, "w": 31, "h": 43 }, + "rotated": false, + "trimmed": true, + "spriteSourceSize": { "x": 0, "y": 0, "w": 31, "h": 43 }, + "sourceSize": { "w": 37, "h": 44 }, + "duration": 80 + }, + { + "filename": "0023.png", + "frame": { "x": 2, "y": 88, "w": 31, "h": 43 }, + "rotated": false, + "trimmed": true, + "spriteSourceSize": { "x": 0, "y": 0, "w": 31, "h": 43 }, + "sourceSize": { "w": 37, "h": 44 }, + "duration": 80 + }, + { + "filename": "0024.png", + "frame": { "x": 70, "y": 132, "w": 30, "h": 43 }, + "rotated": false, + "trimmed": true, + "spriteSourceSize": { "x": 0, "y": 0, "w": 30, "h": 43 }, + "sourceSize": { "w": 37, "h": 44 }, + "duration": 80 + }, + { + "filename": "0025.png", + "frame": { "x": 103, "y": 89, "w": 31, "h": 43 }, + "rotated": false, + "trimmed": true, + "spriteSourceSize": { "x": 0, "y": 0, "w": 31, "h": 43 }, + "sourceSize": { "w": 37, "h": 44 }, + "duration": 80 + }, + { + "filename": "0026.png", + "frame": { "x": 142, "y": 46, "w": 32, "h": 42 }, + "rotated": false, + "trimmed": true, + "spriteSourceSize": { "x": 0, "y": 1, "w": 32, "h": 42 }, + "sourceSize": { "w": 37, "h": 44 }, + "duration": 80 + }, + { + "filename": "0027.png", + "frame": { "x": 187, "y": 2, "w": 33, "h": 42 }, + "rotated": false, + "trimmed": true, + "spriteSourceSize": { "x": 0, "y": 1, "w": 33, "h": 42 }, + "sourceSize": { "w": 37, "h": 44 }, + "duration": 80 + }, + { + "filename": "0028.png", + "frame": { "x": 2, "y": 44, "w": 33, "h": 42 }, + "rotated": false, + "trimmed": true, + "spriteSourceSize": { "x": 0, "y": 1, "w": 33, "h": 42 }, + "sourceSize": { "w": 37, "h": 44 }, + "duration": 80 + }, + { + "filename": "0029.png", + "frame": { "x": 73, "y": 44, "w": 33, "h": 41 }, + "rotated": false, + "trimmed": true, + "spriteSourceSize": { "x": 0, "y": 2, "w": 33, "h": 41 }, + "sourceSize": { "w": 37, "h": 44 }, + "duration": 80 + }, + { + "filename": "0030.png", + "frame": { "x": 73, "y": 44, "w": 33, "h": 41 }, + "rotated": false, + "trimmed": true, + "spriteSourceSize": { "x": 0, "y": 2, "w": 33, "h": 41 }, + "sourceSize": { "w": 37, "h": 44 }, + "duration": 80 + }, + { + "filename": "0031.png", + "frame": { "x": 73, "y": 44, "w": 33, "h": 41 }, + "rotated": false, + "trimmed": true, + "spriteSourceSize": { "x": 0, "y": 2, "w": 33, "h": 41 }, + "sourceSize": { "w": 37, "h": 44 }, + "duration": 80 + }, + { + "filename": "0032.png", + "frame": { "x": 73, "y": 44, "w": 33, "h": 41 }, + "rotated": false, + "trimmed": true, + "spriteSourceSize": { "x": 0, "y": 2, "w": 33, "h": 41 }, + "sourceSize": { "w": 37, "h": 44 }, + "duration": 80 + }, + { + "filename": "0033.png", + "frame": { "x": 73, "y": 44, "w": 33, "h": 41 }, + "rotated": false, + "trimmed": true, + "spriteSourceSize": { "x": 0, "y": 2, "w": 33, "h": 41 }, + "sourceSize": { "w": 37, "h": 44 }, + "duration": 80 + }, + { + "filename": "0034.png", + "frame": { "x": 136, "y": 90, "w": 33, "h": 40 }, + "rotated": false, + "trimmed": true, + "spriteSourceSize": { "x": 0, "y": 3, "w": 33, "h": 40 }, + "sourceSize": { "w": 37, "h": 44 }, + "duration": 80 + }, + { + "filename": "0035.png", + "frame": { "x": 171, "y": 91, "w": 33, "h": 40 }, + "rotated": false, + "trimmed": true, + "spriteSourceSize": { "x": 0, "y": 3, "w": 33, "h": 40 }, + "sourceSize": { "w": 37, "h": 44 }, + "duration": 80 + }, + { + "filename": "0036.png", + "frame": { "x": 37, "y": 44, "w": 34, "h": 40 }, + "rotated": false, + "trimmed": true, + "spriteSourceSize": { "x": 0, "y": 3, "w": 34, "h": 40 }, + "sourceSize": { "w": 37, "h": 44 }, + "duration": 80 + }, + { + "filename": "0037.png", + "frame": { "x": 79, "y": 2, "w": 35, "h": 40 }, + "rotated": false, + "trimmed": true, + "spriteSourceSize": { "x": 0, "y": 4, "w": 35, "h": 40 }, + "sourceSize": { "w": 37, "h": 44 }, + "duration": 80 + }, + { + "filename": "0038.png", + "frame": { "x": 41, "y": 2, "w": 36, "h": 40 }, + "rotated": false, + "trimmed": true, + "spriteSourceSize": { "x": 0, "y": 4, "w": 36, "h": 40 }, + "sourceSize": { "w": 37, "h": 44 }, + "duration": 80 + }, + { + "filename": "0039.png", + "frame": { "x": 2, "y": 2, "w": 37, "h": 40 }, + "rotated": false, + "trimmed": true, + "spriteSourceSize": { "x": 0, "y": 4, "w": 37, "h": 40 }, + "sourceSize": { "w": 37, "h": 44 }, + "duration": 80 + }, + { + "filename": "0040.png", + "frame": { "x": 2, "y": 2, "w": 37, "h": 40 }, + "rotated": false, + "trimmed": true, + "spriteSourceSize": { "x": 0, "y": 4, "w": 37, "h": 40 }, + "sourceSize": { "w": 37, "h": 44 }, + "duration": 80 + }, + { + "filename": "0041.png", + "frame": { "x": 2, "y": 2, "w": 37, "h": 40 }, + "rotated": false, + "trimmed": true, + "spriteSourceSize": { "x": 0, "y": 4, "w": 37, "h": 40 }, + "sourceSize": { "w": 37, "h": 44 }, + "duration": 80 + }, + { + "filename": "0042.png", + "frame": { "x": 116, "y": 2, "w": 34, "h": 41 }, + "rotated": false, + "trimmed": true, + "spriteSourceSize": { "x": 0, "y": 2, "w": 34, "h": 41 }, + "sourceSize": { "w": 37, "h": 44 }, + "duration": 80 + }, + { + "filename": "0043.png", + "frame": { "x": 35, "y": 131, "w": 33, "h": 40 }, + "rotated": false, + "trimmed": true, + "spriteSourceSize": { "x": 0, "y": 3, "w": 33, "h": 40 }, + "sourceSize": { "w": 37, "h": 44 }, + "duration": 80 + }, + { + "filename": "0044.png", + "frame": { "x": 136, "y": 132, "w": 33, "h": 40 }, + "rotated": false, + "trimmed": true, + "spriteSourceSize": { "x": 0, "y": 3, "w": 33, "h": 40 }, + "sourceSize": { "w": 37, "h": 44 }, + "duration": 80 + }, + { + "filename": "0045.png", + "frame": { "x": 171, "y": 133, "w": 33, "h": 40 }, + "rotated": false, + "trimmed": true, + "spriteSourceSize": { "x": 0, "y": 3, "w": 33, "h": 40 }, + "sourceSize": { "w": 37, "h": 44 }, + "duration": 80 + }, + { + "filename": "0046.png", + "frame": { "x": 73, "y": 44, "w": 33, "h": 41 }, + "rotated": false, + "trimmed": true, + "spriteSourceSize": { "x": 0, "y": 2, "w": 33, "h": 41 }, + "sourceSize": { "w": 37, "h": 44 }, + "duration": 80 + }, + { + "filename": "0047.png", + "frame": { "x": 73, "y": 44, "w": 33, "h": 41 }, + "rotated": false, + "trimmed": true, + "spriteSourceSize": { "x": 0, "y": 2, "w": 33, "h": 41 }, + "sourceSize": { "w": 37, "h": 44 }, + "duration": 80 + }, + { + "filename": "0048.png", + "frame": { "x": 152, "y": 2, "w": 33, "h": 42 }, + "rotated": false, + "trimmed": true, + "spriteSourceSize": { "x": 0, "y": 1, "w": 33, "h": 42 }, + "sourceSize": { "w": 37, "h": 44 }, + "duration": 80 + }, + { + "filename": "0049.png", + "frame": { "x": 108, "y": 45, "w": 32, "h": 42 }, + "rotated": false, + "trimmed": true, + "spriteSourceSize": { "x": 0, "y": 1, "w": 32, "h": 42 }, + "sourceSize": { "w": 37, "h": 44 }, + "duration": 80 + }, + { + "filename": "0050.png", + "frame": { "x": 176, "y": 46, "w": 31, "h": 43 }, + "rotated": false, + "trimmed": true, + "spriteSourceSize": { "x": 0, "y": 0, "w": 31, "h": 43 }, + "sourceSize": { "w": 37, "h": 44 }, + "duration": 80 + }, + { + "filename": "0051.png", + "frame": { "x": 37, "y": 86, "w": 31, "h": 43 }, + "rotated": false, + "trimmed": true, + "spriteSourceSize": { "x": 0, "y": 0, "w": 31, "h": 43 }, + "sourceSize": { "w": 37, "h": 44 }, + "duration": 80 + }, + { + "filename": "0052.png", + "frame": { "x": 70, "y": 87, "w": 31, "h": 43 }, + "rotated": false, + "trimmed": true, + "spriteSourceSize": { "x": 0, "y": 0, "w": 31, "h": 43 }, + "sourceSize": { "w": 37, "h": 44 }, + "duration": 80 + }, + { + "filename": "0053.png", + "frame": { "x": 2, "y": 88, "w": 31, "h": 43 }, + "rotated": false, + "trimmed": true, + "spriteSourceSize": { "x": 0, "y": 0, "w": 31, "h": 43 }, + "sourceSize": { "w": 37, "h": 44 }, + "duration": 80 + }, + { + "filename": "0054.png", + "frame": { "x": 2, "y": 88, "w": 31, "h": 43 }, + "rotated": false, + "trimmed": true, + "spriteSourceSize": { "x": 0, "y": 0, "w": 31, "h": 43 }, + "sourceSize": { "w": 37, "h": 44 }, + "duration": 80 + }, + { + "filename": "0055.png", + "frame": { "x": 2, "y": 88, "w": 31, "h": 43 }, + "rotated": false, + "trimmed": true, + "spriteSourceSize": { "x": 0, "y": 0, "w": 31, "h": 43 }, + "sourceSize": { "w": 37, "h": 44 }, + "duration": 80 + }, + { + "filename": "0056.png", + "frame": { "x": 70, "y": 132, "w": 30, "h": 43 }, + "rotated": false, + "trimmed": true, + "spriteSourceSize": { "x": 0, "y": 0, "w": 30, "h": 43 }, + "sourceSize": { "w": 37, "h": 44 }, + "duration": 80 + }, + { + "filename": "0057.png", + "frame": { "x": 103, "y": 89, "w": 31, "h": 43 }, + "rotated": false, + "trimmed": true, + "spriteSourceSize": { "x": 0, "y": 0, "w": 31, "h": 43 }, + "sourceSize": { "w": 37, "h": 44 }, + "duration": 80 + }, + { + "filename": "0058.png", + "frame": { "x": 142, "y": 46, "w": 32, "h": 42 }, + "rotated": false, + "trimmed": true, + "spriteSourceSize": { "x": 0, "y": 1, "w": 32, "h": 42 }, + "sourceSize": { "w": 37, "h": 44 }, + "duration": 80 + }, + { + "filename": "0059.png", + "frame": { "x": 187, "y": 2, "w": 33, "h": 42 }, + "rotated": false, + "trimmed": true, + "spriteSourceSize": { "x": 0, "y": 1, "w": 33, "h": 42 }, + "sourceSize": { "w": 37, "h": 44 }, + "duration": 80 + }, + { + "filename": "0060.png", + "frame": { "x": 2, "y": 44, "w": 33, "h": 42 }, + "rotated": false, + "trimmed": true, + "spriteSourceSize": { "x": 0, "y": 1, "w": 33, "h": 42 }, + "sourceSize": { "w": 37, "h": 44 }, + "duration": 80 + }, + { + "filename": "0061.png", + "frame": { "x": 73, "y": 44, "w": 33, "h": 41 }, + "rotated": false, + "trimmed": true, + "spriteSourceSize": { "x": 0, "y": 2, "w": 33, "h": 41 }, + "sourceSize": { "w": 37, "h": 44 }, + "duration": 80 + }, + { + "filename": "0062.png", + "frame": { "x": 73, "y": 44, "w": 33, "h": 41 }, + "rotated": false, + "trimmed": true, + "spriteSourceSize": { "x": 0, "y": 2, "w": 33, "h": 41 }, + "sourceSize": { "w": 37, "h": 44 }, + "duration": 80 + }, + { + "filename": "0063.png", + "frame": { "x": 73, "y": 44, "w": 33, "h": 41 }, + "rotated": false, + "trimmed": true, + "spriteSourceSize": { "x": 0, "y": 2, "w": 33, "h": 41 }, + "sourceSize": { "w": 37, "h": 44 }, + "duration": 80 + }, + { + "filename": "0064.png", + "frame": { "x": 73, "y": 44, "w": 33, "h": 41 }, + "rotated": false, + "trimmed": true, + "spriteSourceSize": { "x": 0, "y": 2, "w": 33, "h": 41 }, + "sourceSize": { "w": 37, "h": 44 }, + "duration": 80 + }, + { + "filename": "0065.png", + "frame": { "x": 73, "y": 44, "w": 33, "h": 41 }, + "rotated": false, + "trimmed": true, + "spriteSourceSize": { "x": 0, "y": 2, "w": 33, "h": 41 }, + "sourceSize": { "w": 37, "h": 44 }, + "duration": 80 + }, + { + "filename": "0066.png", + "frame": { "x": 136, "y": 90, "w": 33, "h": 40 }, + "rotated": false, + "trimmed": true, + "spriteSourceSize": { "x": 0, "y": 3, "w": 33, "h": 40 }, + "sourceSize": { "w": 37, "h": 44 }, + "duration": 80 + }, + { + "filename": "0067.png", + "frame": { "x": 171, "y": 91, "w": 33, "h": 40 }, + "rotated": false, + "trimmed": true, + "spriteSourceSize": { "x": 0, "y": 3, "w": 33, "h": 40 }, + "sourceSize": { "w": 37, "h": 44 }, + "duration": 80 + }, + { + "filename": "0068.png", + "frame": { "x": 37, "y": 44, "w": 34, "h": 40 }, + "rotated": false, + "trimmed": true, + "spriteSourceSize": { "x": 0, "y": 3, "w": 34, "h": 40 }, + "sourceSize": { "w": 37, "h": 44 }, + "duration": 80 + }, + { + "filename": "0069.png", + "frame": { "x": 79, "y": 2, "w": 35, "h": 40 }, + "rotated": false, + "trimmed": true, + "spriteSourceSize": { "x": 0, "y": 4, "w": 35, "h": 40 }, + "sourceSize": { "w": 37, "h": 44 }, + "duration": 80 + }, + { + "filename": "0070.png", + "frame": { "x": 41, "y": 2, "w": 36, "h": 40 }, + "rotated": false, + "trimmed": true, + "spriteSourceSize": { "x": 0, "y": 4, "w": 36, "h": 40 }, + "sourceSize": { "w": 37, "h": 44 }, + "duration": 80 + }, + { + "filename": "0071.png", + "frame": { "x": 2, "y": 2, "w": 37, "h": 40 }, + "rotated": false, + "trimmed": true, + "spriteSourceSize": { "x": 0, "y": 4, "w": 37, "h": 40 }, + "sourceSize": { "w": 37, "h": 44 }, + "duration": 80 + }, + { + "filename": "0072.png", + "frame": { "x": 2, "y": 2, "w": 37, "h": 40 }, + "rotated": false, + "trimmed": true, + "spriteSourceSize": { "x": 0, "y": 4, "w": 37, "h": 40 }, + "sourceSize": { "w": 37, "h": 44 }, + "duration": 80 + }, + { + "filename": "0073.png", + "frame": { "x": 2, "y": 2, "w": 37, "h": 40 }, + "rotated": false, + "trimmed": true, + "spriteSourceSize": { "x": 0, "y": 4, "w": 37, "h": 40 }, + "sourceSize": { "w": 37, "h": 44 }, + "duration": 80 + }, + { + "filename": "0074.png", + "frame": { "x": 116, "y": 2, "w": 34, "h": 41 }, + "rotated": false, + "trimmed": true, + "spriteSourceSize": { "x": 0, "y": 2, "w": 34, "h": 41 }, + "sourceSize": { "w": 37, "h": 44 }, + "duration": 80 + }, + { + "filename": "0075.png", + "frame": { "x": 35, "y": 131, "w": 33, "h": 40 }, + "rotated": false, + "trimmed": true, + "spriteSourceSize": { "x": 0, "y": 3, "w": 33, "h": 40 }, + "sourceSize": { "w": 37, "h": 44 }, + "duration": 80 + }, + { + "filename": "0076.png", + "frame": { "x": 136, "y": 132, "w": 33, "h": 40 }, + "rotated": false, + "trimmed": true, + "spriteSourceSize": { "x": 0, "y": 3, "w": 33, "h": 40 }, + "sourceSize": { "w": 37, "h": 44 }, + "duration": 80 + }, + { + "filename": "0077.png", + "frame": { "x": 171, "y": 133, "w": 33, "h": 40 }, + "rotated": false, + "trimmed": true, + "spriteSourceSize": { "x": 0, "y": 3, "w": 33, "h": 40 }, + "sourceSize": { "w": 37, "h": 44 }, + "duration": 80 + }, + { + "filename": "0078.png", + "frame": { "x": 73, "y": 44, "w": 33, "h": 41 }, + "rotated": false, + "trimmed": true, + "spriteSourceSize": { "x": 0, "y": 2, "w": 33, "h": 41 }, + "sourceSize": { "w": 37, "h": 44 }, + "duration": 80 + }, + { + "filename": "0079.png", + "frame": { "x": 73, "y": 44, "w": 33, "h": 41 }, + "rotated": false, + "trimmed": true, + "spriteSourceSize": { "x": 0, "y": 2, "w": 33, "h": 41 }, + "sourceSize": { "w": 37, "h": 44 }, + "duration": 80 + }, + { + "filename": "0080.png", + "frame": { "x": 152, "y": 2, "w": 33, "h": 42 }, + "rotated": false, + "trimmed": true, + "spriteSourceSize": { "x": 0, "y": 1, "w": 33, "h": 42 }, + "sourceSize": { "w": 37, "h": 44 }, + "duration": 80 + }, + { + "filename": "0081.png", + "frame": { "x": 108, "y": 45, "w": 32, "h": 42 }, + "rotated": false, + "trimmed": true, + "spriteSourceSize": { "x": 0, "y": 1, "w": 32, "h": 42 }, + "sourceSize": { "w": 37, "h": 44 }, + "duration": 80 + }, + { + "filename": "0082.png", + "frame": { "x": 176, "y": 46, "w": 31, "h": 43 }, + "rotated": false, + "trimmed": true, + "spriteSourceSize": { "x": 0, "y": 0, "w": 31, "h": 43 }, + "sourceSize": { "w": 37, "h": 44 }, + "duration": 80 + }, + { + "filename": "0083.png", + "frame": { "x": 37, "y": 86, "w": 31, "h": 43 }, + "rotated": false, + "trimmed": true, + "spriteSourceSize": { "x": 0, "y": 0, "w": 31, "h": 43 }, + "sourceSize": { "w": 37, "h": 44 }, + "duration": 80 + }, + { + "filename": "0084.png", + "frame": { "x": 70, "y": 87, "w": 31, "h": 43 }, + "rotated": false, + "trimmed": true, + "spriteSourceSize": { "x": 0, "y": 0, "w": 31, "h": 43 }, + "sourceSize": { "w": 37, "h": 44 }, + "duration": 80 + }, + { + "filename": "0085.png", + "frame": { "x": 2, "y": 88, "w": 31, "h": 43 }, + "rotated": false, + "trimmed": true, + "spriteSourceSize": { "x": 0, "y": 0, "w": 31, "h": 43 }, + "sourceSize": { "w": 37, "h": 44 }, + "duration": 80 + }, + { + "filename": "0086.png", + "frame": { "x": 2, "y": 88, "w": 31, "h": 43 }, + "rotated": false, + "trimmed": true, + "spriteSourceSize": { "x": 0, "y": 0, "w": 31, "h": 43 }, + "sourceSize": { "w": 37, "h": 44 }, + "duration": 80 + }, + { + "filename": "0087.png", + "frame": { "x": 2, "y": 88, "w": 31, "h": 43 }, + "rotated": false, + "trimmed": true, + "spriteSourceSize": { "x": 0, "y": 0, "w": 31, "h": 43 }, + "sourceSize": { "w": 37, "h": 44 }, + "duration": 80 + }, + { + "filename": "0088.png", + "frame": { "x": 70, "y": 132, "w": 30, "h": 43 }, + "rotated": false, + "trimmed": true, + "spriteSourceSize": { "x": 0, "y": 0, "w": 30, "h": 43 }, + "sourceSize": { "w": 37, "h": 44 }, + "duration": 80 + }, + { + "filename": "0089.png", + "frame": { "x": 103, "y": 89, "w": 31, "h": 43 }, + "rotated": false, + "trimmed": true, + "spriteSourceSize": { "x": 0, "y": 0, "w": 31, "h": 43 }, + "sourceSize": { "w": 37, "h": 44 }, + "duration": 80 + }, + { + "filename": "0090.png", + "frame": { "x": 142, "y": 46, "w": 32, "h": 42 }, + "rotated": false, + "trimmed": true, + "spriteSourceSize": { "x": 0, "y": 1, "w": 32, "h": 42 }, + "sourceSize": { "w": 37, "h": 44 }, + "duration": 80 + }, + { + "filename": "0091.png", + "frame": { "x": 187, "y": 2, "w": 33, "h": 42 }, + "rotated": false, + "trimmed": true, + "spriteSourceSize": { "x": 0, "y": 1, "w": 33, "h": 42 }, + "sourceSize": { "w": 37, "h": 44 }, + "duration": 80 + }, + { + "filename": "0092.png", + "frame": { "x": 2, "y": 44, "w": 33, "h": 42 }, + "rotated": false, + "trimmed": true, + "spriteSourceSize": { "x": 0, "y": 1, "w": 33, "h": 42 }, + "sourceSize": { "w": 37, "h": 44 }, + "duration": 80 + }, + { + "filename": "0093.png", + "frame": { "x": 73, "y": 44, "w": 33, "h": 41 }, + "rotated": false, + "trimmed": true, + "spriteSourceSize": { "x": 0, "y": 2, "w": 33, "h": 41 }, + "sourceSize": { "w": 37, "h": 44 }, + "duration": 80 + }, + { + "filename": "0094.png", + "frame": { "x": 73, "y": 44, "w": 33, "h": 41 }, + "rotated": false, + "trimmed": true, + "spriteSourceSize": { "x": 0, "y": 2, "w": 33, "h": 41 }, + "sourceSize": { "w": 37, "h": 44 }, + "duration": 80 + }, + { + "filename": "0095.png", + "frame": { "x": 73, "y": 44, "w": 33, "h": 41 }, + "rotated": false, + "trimmed": true, + "spriteSourceSize": { "x": 0, "y": 2, "w": 33, "h": 41 }, + "sourceSize": { "w": 37, "h": 44 }, + "duration": 80 + }, + { + "filename": "0096.png", + "frame": { "x": 73, "y": 44, "w": 33, "h": 41 }, + "rotated": false, + "trimmed": true, + "spriteSourceSize": { "x": 0, "y": 2, "w": 33, "h": 41 }, + "sourceSize": { "w": 37, "h": 44 }, + "duration": 80 + }, + { + "filename": "0097.png", + "frame": { "x": 73, "y": 44, "w": 33, "h": 41 }, + "rotated": false, + "trimmed": true, + "spriteSourceSize": { "x": 0, "y": 2, "w": 33, "h": 41 }, + "sourceSize": { "w": 37, "h": 44 }, + "duration": 80 + }, + { + "filename": "0098.png", + "frame": { "x": 2, "y": 173, "w": 33, "h": 39 }, + "rotated": false, + "trimmed": true, + "spriteSourceSize": { "x": 0, "y": 4, "w": 33, "h": 39 }, + "sourceSize": { "w": 37, "h": 44 }, + "duration": 80 + }, + { + "filename": "0099.png", + "frame": { "x": 2, "y": 133, "w": 30, "h": 34 }, + "rotated": false, + "trimmed": true, + "spriteSourceSize": { "x": 3, "y": 9, "w": 30, "h": 34 }, + "sourceSize": { "w": 37, "h": 44 }, + "duration": 80 + }, + { + "filename": "0100.png", + "frame": { "x": 102, "y": 134, "w": 28, "h": 30 }, + "rotated": false, + "trimmed": true, + "spriteSourceSize": { "x": 5, "y": 12, "w": 28, "h": 30 }, + "sourceSize": { "w": 37, "h": 44 }, + "duration": 80 + }, + { + "filename": "0101.png", + "frame": { "x": 102, "y": 166, "w": 27, "h": 25 }, + "rotated": false, + "trimmed": true, + "spriteSourceSize": { "x": 6, "y": 17, "w": 27, "h": 25 }, + "sourceSize": { "w": 37, "h": 44 }, + "duration": 80 + }, + { + "filename": "0102.png", + "frame": { "x": 102, "y": 166, "w": 27, "h": 25 }, + "rotated": false, + "trimmed": true, + "spriteSourceSize": { "x": 6, "y": 17, "w": 27, "h": 25 }, + "sourceSize": { "w": 37, "h": 44 }, + "duration": 80 + }, + { + "filename": "0103.png", + "frame": { "x": 102, "y": 166, "w": 27, "h": 25 }, + "rotated": false, + "trimmed": true, + "spriteSourceSize": { "x": 6, "y": 17, "w": 27, "h": 25 }, + "sourceSize": { "w": 37, "h": 44 }, + "duration": 80 + }, + { + "filename": "0104.png", + "frame": { "x": 102, "y": 166, "w": 27, "h": 25 }, + "rotated": false, + "trimmed": true, + "spriteSourceSize": { "x": 6, "y": 15, "w": 27, "h": 25 }, + "sourceSize": { "w": 37, "h": 44 }, + "duration": 80 + }, + { + "filename": "0105.png", + "frame": { "x": 102, "y": 166, "w": 27, "h": 25 }, + "rotated": false, + "trimmed": true, + "spriteSourceSize": { "x": 6, "y": 13, "w": 27, "h": 25 }, + "sourceSize": { "w": 37, "h": 44 }, + "duration": 80 + }, + { + "filename": "0106.png", + "frame": { "x": 102, "y": 166, "w": 27, "h": 25 }, + "rotated": false, + "trimmed": true, + "spriteSourceSize": { "x": 6, "y": 12, "w": 27, "h": 25 }, + "sourceSize": { "w": 37, "h": 44 }, + "duration": 80 + }, + { + "filename": "0107.png", + "frame": { "x": 102, "y": 166, "w": 27, "h": 25 }, + "rotated": false, + "trimmed": true, + "spriteSourceSize": { "x": 6, "y": 11, "w": 27, "h": 25 }, + "sourceSize": { "w": 37, "h": 44 }, + "duration": 80 + }, + { + "filename": "0108.png", + "frame": { "x": 102, "y": 166, "w": 27, "h": 25 }, + "rotated": false, + "trimmed": true, + "spriteSourceSize": { "x": 6, "y": 11, "w": 27, "h": 25 }, + "sourceSize": { "w": 37, "h": 44 }, + "duration": 80 + }, + { + "filename": "0109.png", + "frame": { "x": 102, "y": 166, "w": 27, "h": 25 }, + "rotated": false, + "trimmed": true, + "spriteSourceSize": { "x": 6, "y": 12, "w": 27, "h": 25 }, + "sourceSize": { "w": 37, "h": 44 }, + "duration": 80 + }, + { + "filename": "0110.png", + "frame": { "x": 102, "y": 166, "w": 27, "h": 25 }, + "rotated": false, + "trimmed": true, + "spriteSourceSize": { "x": 6, "y": 14, "w": 27, "h": 25 }, + "sourceSize": { "w": 37, "h": 44 }, + "duration": 80 + }, + { + "filename": "0111.png", + "frame": { "x": 102, "y": 166, "w": 27, "h": 25 }, + "rotated": false, + "trimmed": true, + "spriteSourceSize": { "x": 6, "y": 17, "w": 27, "h": 25 }, + "sourceSize": { "w": 37, "h": 44 }, + "duration": 80 + }, + { + "filename": "0112.png", + "frame": { "x": 102, "y": 166, "w": 27, "h": 25 }, + "rotated": false, + "trimmed": true, + "spriteSourceSize": { "x": 6, "y": 17, "w": 27, "h": 25 }, + "sourceSize": { "w": 37, "h": 44 }, + "duration": 80 + }, + { + "filename": "0113.png", + "frame": { "x": 102, "y": 166, "w": 27, "h": 25 }, + "rotated": false, + "trimmed": true, + "spriteSourceSize": { "x": 6, "y": 15, "w": 27, "h": 25 }, + "sourceSize": { "w": 37, "h": 44 }, + "duration": 80 + }, + { + "filename": "0114.png", + "frame": { "x": 102, "y": 166, "w": 27, "h": 25 }, + "rotated": false, + "trimmed": true, + "spriteSourceSize": { "x": 6, "y": 13, "w": 27, "h": 25 }, + "sourceSize": { "w": 37, "h": 44 }, + "duration": 80 + }, + { + "filename": "0115.png", + "frame": { "x": 102, "y": 166, "w": 27, "h": 25 }, + "rotated": false, + "trimmed": true, + "spriteSourceSize": { "x": 6, "y": 12, "w": 27, "h": 25 }, + "sourceSize": { "w": 37, "h": 44 }, + "duration": 80 + }, + { + "filename": "0116.png", + "frame": { "x": 102, "y": 166, "w": 27, "h": 25 }, + "rotated": false, + "trimmed": true, + "spriteSourceSize": { "x": 6, "y": 11, "w": 27, "h": 25 }, + "sourceSize": { "w": 37, "h": 44 }, + "duration": 80 + }, + { + "filename": "0117.png", + "frame": { "x": 102, "y": 166, "w": 27, "h": 25 }, + "rotated": false, + "trimmed": true, + "spriteSourceSize": { "x": 6, "y": 11, "w": 27, "h": 25 }, + "sourceSize": { "w": 37, "h": 44 }, + "duration": 80 + }, + { + "filename": "0118.png", + "frame": { "x": 102, "y": 166, "w": 27, "h": 25 }, + "rotated": false, + "trimmed": true, + "spriteSourceSize": { "x": 6, "y": 12, "w": 27, "h": 25 }, + "sourceSize": { "w": 37, "h": 44 }, + "duration": 80 + }, + { + "filename": "0119.png", + "frame": { "x": 102, "y": 166, "w": 27, "h": 25 }, + "rotated": false, + "trimmed": true, + "spriteSourceSize": { "x": 6, "y": 14, "w": 27, "h": 25 }, + "sourceSize": { "w": 37, "h": 44 }, + "duration": 80 + }, + { + "filename": "0120.png", + "frame": { "x": 102, "y": 166, "w": 27, "h": 25 }, + "rotated": false, + "trimmed": true, + "spriteSourceSize": { "x": 6, "y": 17, "w": 27, "h": 25 }, + "sourceSize": { "w": 37, "h": 44 }, + "duration": 80 + }, + { + "filename": "0121.png", + "frame": { "x": 102, "y": 166, "w": 27, "h": 25 }, + "rotated": false, + "trimmed": true, + "spriteSourceSize": { "x": 6, "y": 17, "w": 27, "h": 25 }, + "sourceSize": { "w": 37, "h": 44 }, + "duration": 80 + }, + { + "filename": "0122.png", + "frame": { "x": 102, "y": 134, "w": 28, "h": 30 }, + "rotated": false, + "trimmed": true, + "spriteSourceSize": { "x": 5, "y": 12, "w": 28, "h": 30 }, + "sourceSize": { "w": 37, "h": 44 }, + "duration": 80 + }, + { + "filename": "0123.png", + "frame": { "x": 2, "y": 133, "w": 30, "h": 34 }, + "rotated": false, + "trimmed": true, + "spriteSourceSize": { "x": 3, "y": 9, "w": 30, "h": 34 }, + "sourceSize": { "w": 37, "h": 44 }, + "duration": 80 + }, + { + "filename": "0124.png", + "frame": { "x": 2, "y": 173, "w": 33, "h": 39 }, + "rotated": false, + "trimmed": true, + "spriteSourceSize": { "x": 0, "y": 4, "w": 33, "h": 39 }, + "sourceSize": { "w": 37, "h": 44 }, + "duration": 80 + }, + { + "filename": "0125.png", + "frame": { "x": 73, "y": 44, "w": 33, "h": 41 }, + "rotated": false, + "trimmed": true, + "spriteSourceSize": { "x": 0, "y": 2, "w": 33, "h": 41 }, + "sourceSize": { "w": 37, "h": 44 }, + "duration": 80 + }, + { + "filename": "0126.png", + "frame": { "x": 73, "y": 44, "w": 33, "h": 41 }, + "rotated": false, + "trimmed": true, + "spriteSourceSize": { "x": 0, "y": 2, "w": 33, "h": 41 }, + "sourceSize": { "w": 37, "h": 44 }, + "duration": 80 + } + ], + "meta": { + "app": "https://www.aseprite.org/", + "version": "1.3.13-x64", + "image": "840.png", + "format": "I8", + "size": { "w": 222, "h": 214 }, + "scale": "1" + } } diff --git a/public/images/pokemon/exp/back/840.png b/public/images/pokemon/exp/back/840.png index ac6aa240888..29336b622e3 100644 Binary files a/public/images/pokemon/exp/back/840.png and b/public/images/pokemon/exp/back/840.png differ diff --git a/public/images/pokemon/exp/back/841.png b/public/images/pokemon/exp/back/841.png index 9e6ec5effb1..ecf344211ef 100644 Binary files a/public/images/pokemon/exp/back/841.png and b/public/images/pokemon/exp/back/841.png differ diff --git a/public/images/pokemon/exp/back/842.png b/public/images/pokemon/exp/back/842.png index e38feeb0b42..9258c511d25 100644 Binary files a/public/images/pokemon/exp/back/842.png and b/public/images/pokemon/exp/back/842.png differ diff --git a/public/images/pokemon/exp/back/871.png b/public/images/pokemon/exp/back/871.png index faf12b7d4a2..e20040e8a6a 100644 Binary files a/public/images/pokemon/exp/back/871.png and b/public/images/pokemon/exp/back/871.png differ diff --git a/public/images/pokemon/exp/back/935.json b/public/images/pokemon/exp/back/935.json deleted file mode 100644 index 26aa6c572c3..00000000000 --- a/public/images/pokemon/exp/back/935.json +++ /dev/null @@ -1,356 +0,0 @@ -{ - "textures": [ - { - "image": "935.png", - "format": "RGBA8888", - "size": { - "w": 133, - "h": 133 - }, - "scale": 1, - "frames": [ - { - "filename": "0006.png", - "rotated": false, - "trimmed": true, - "sourceSize": { - "w": 32, - "h": 49 - }, - "spriteSourceSize": { - "x": 1, - "y": 0, - "w": 29, - "h": 49 - }, - "frame": { - "x": 0, - "y": 0, - "w": 29, - "h": 49 - } - }, - { - "filename": "0012.png", - "rotated": false, - "trimmed": true, - "sourceSize": { - "w": 32, - "h": 49 - }, - "spriteSourceSize": { - "x": 1, - "y": 0, - "w": 29, - "h": 49 - }, - "frame": { - "x": 0, - "y": 0, - "w": 29, - "h": 49 - } - }, - { - "filename": "0007.png", - "rotated": false, - "trimmed": true, - "sourceSize": { - "w": 32, - "h": 49 - }, - "spriteSourceSize": { - "x": 0, - "y": 0, - "w": 29, - "h": 49 - }, - "frame": { - "x": 29, - "y": 0, - "w": 29, - "h": 49 - } - }, - { - "filename": "0011.png", - "rotated": false, - "trimmed": true, - "sourceSize": { - "w": 32, - "h": 49 - }, - "spriteSourceSize": { - "x": 0, - "y": 0, - "w": 29, - "h": 49 - }, - "frame": { - "x": 29, - "y": 0, - "w": 29, - "h": 49 - } - }, - { - "filename": "0005.png", - "rotated": false, - "trimmed": true, - "sourceSize": { - "w": 32, - "h": 49 - }, - "spriteSourceSize": { - "x": 2, - "y": 0, - "w": 28, - "h": 49 - }, - "frame": { - "x": 58, - "y": 0, - "w": 28, - "h": 49 - } - }, - { - "filename": "0013.png", - "rotated": false, - "trimmed": true, - "sourceSize": { - "w": 32, - "h": 49 - }, - "spriteSourceSize": { - "x": 2, - "y": 0, - "w": 28, - "h": 49 - }, - "frame": { - "x": 58, - "y": 0, - "w": 28, - "h": 49 - } - }, - { - "filename": "0008.png", - "rotated": false, - "trimmed": true, - "sourceSize": { - "w": 32, - "h": 49 - }, - "spriteSourceSize": { - "x": 0, - "y": 0, - "w": 28, - "h": 49 - }, - "frame": { - "x": 86, - "y": 0, - "w": 28, - "h": 49 - } - }, - { - "filename": "0010.png", - "rotated": false, - "trimmed": true, - "sourceSize": { - "w": 32, - "h": 49 - }, - "spriteSourceSize": { - "x": 0, - "y": 0, - "w": 28, - "h": 49 - }, - "frame": { - "x": 86, - "y": 0, - "w": 28, - "h": 49 - } - }, - { - "filename": "0004.png", - "rotated": false, - "trimmed": true, - "sourceSize": { - "w": 32, - "h": 49 - }, - "spriteSourceSize": { - "x": 3, - "y": 1, - "w": 28, - "h": 48 - }, - "frame": { - "x": 0, - "y": 49, - "w": 28, - "h": 48 - } - }, - { - "filename": "0014.png", - "rotated": false, - "trimmed": true, - "sourceSize": { - "w": 32, - "h": 49 - }, - "spriteSourceSize": { - "x": 3, - "y": 1, - "w": 28, - "h": 48 - }, - "frame": { - "x": 0, - "y": 49, - "w": 28, - "h": 48 - } - }, - { - "filename": "0009.png", - "rotated": false, - "trimmed": true, - "sourceSize": { - "w": 32, - "h": 49 - }, - "spriteSourceSize": { - "x": 0, - "y": 1, - "w": 27, - "h": 48 - }, - "frame": { - "x": 28, - "y": 49, - "w": 27, - "h": 48 - } - }, - { - "filename": "0003.png", - "rotated": false, - "trimmed": true, - "sourceSize": { - "w": 32, - "h": 49 - }, - "spriteSourceSize": { - "x": 5, - "y": 2, - "w": 27, - "h": 47 - }, - "frame": { - "x": 55, - "y": 49, - "w": 27, - "h": 47 - } - }, - { - "filename": "0015.png", - "rotated": false, - "trimmed": true, - "sourceSize": { - "w": 32, - "h": 49 - }, - "spriteSourceSize": { - "x": 5, - "y": 2, - "w": 27, - "h": 47 - }, - "frame": { - "x": 55, - "y": 49, - "w": 27, - "h": 47 - } - }, - { - "filename": "0002.png", - "rotated": false, - "trimmed": true, - "sourceSize": { - "w": 32, - "h": 49 - }, - "spriteSourceSize": { - "x": 6, - "y": 3, - "w": 26, - "h": 46 - }, - "frame": { - "x": 82, - "y": 49, - "w": 26, - "h": 46 - } - }, - { - "filename": "0016.png", - "rotated": false, - "trimmed": true, - "sourceSize": { - "w": 32, - "h": 49 - }, - "spriteSourceSize": { - "x": 6, - "y": 3, - "w": 26, - "h": 46 - }, - "frame": { - "x": 82, - "y": 49, - "w": 26, - "h": 46 - } - }, - { - "filename": "0001.png", - "rotated": false, - "trimmed": true, - "sourceSize": { - "w": 32, - "h": 49 - }, - "spriteSourceSize": { - "x": 7, - "y": 4, - "w": 25, - "h": 45 - }, - "frame": { - "x": 108, - "y": 49, - "w": 25, - "h": 45 - } - } - ] - } - ], - "meta": { - "app": "https://www.codeandweb.com/texturepacker", - "version": "3.0", - "smartupdate": "$TexturePacker:SmartUpdate:2880dad5e3c550bb25e02ab0ab8d58c8:9dc0340440df25f20b3f006422b7a238:077dcf06dc5fc347497b59afe6126a5e$" - } -} diff --git a/public/images/pokemon/exp/back/935.png b/public/images/pokemon/exp/back/935.png deleted file mode 100644 index 64fc37a4a33..00000000000 Binary files a/public/images/pokemon/exp/back/935.png and /dev/null differ diff --git a/public/images/pokemon/exp/back/936.json b/public/images/pokemon/exp/back/936.json deleted file mode 100644 index 79ff3ce5c33..00000000000 --- a/public/images/pokemon/exp/back/936.json +++ /dev/null @@ -1,356 +0,0 @@ -{ - "textures": [ - { - "image": "936.png", - "format": "RGBA8888", - "size": { - "w": 283, - "h": 283 - }, - "scale": 1, - "frames": [ - { - "filename": "0004.png", - "rotated": false, - "trimmed": true, - "sourceSize": { - "w": 67, - "h": 97 - }, - "spriteSourceSize": { - "x": 5, - "y": 0, - "w": 59, - "h": 97 - }, - "frame": { - "x": 0, - "y": 0, - "w": 59, - "h": 97 - } - }, - { - "filename": "0014.png", - "rotated": false, - "trimmed": true, - "sourceSize": { - "w": 67, - "h": 97 - }, - "spriteSourceSize": { - "x": 5, - "y": 0, - "w": 59, - "h": 97 - }, - "frame": { - "x": 0, - "y": 0, - "w": 59, - "h": 97 - } - }, - { - "filename": "0005.png", - "rotated": false, - "trimmed": true, - "sourceSize": { - "w": 67, - "h": 97 - }, - "spriteSourceSize": { - "x": 3, - "y": 0, - "w": 59, - "h": 97 - }, - "frame": { - "x": 0, - "y": 97, - "w": 59, - "h": 97 - } - }, - { - "filename": "0013.png", - "rotated": false, - "trimmed": true, - "sourceSize": { - "w": 67, - "h": 97 - }, - "spriteSourceSize": { - "x": 3, - "y": 0, - "w": 59, - "h": 97 - }, - "frame": { - "x": 0, - "y": 97, - "w": 59, - "h": 97 - } - }, - { - "filename": "0006.png", - "rotated": false, - "trimmed": true, - "sourceSize": { - "w": 67, - "h": 97 - }, - "spriteSourceSize": { - "x": 2, - "y": 0, - "w": 59, - "h": 97 - }, - "frame": { - "x": 59, - "y": 0, - "w": 59, - "h": 97 - } - }, - { - "filename": "0012.png", - "rotated": false, - "trimmed": true, - "sourceSize": { - "w": 67, - "h": 97 - }, - "spriteSourceSize": { - "x": 2, - "y": 0, - "w": 59, - "h": 97 - }, - "frame": { - "x": 59, - "y": 0, - "w": 59, - "h": 97 - } - }, - { - "filename": "0002.png", - "rotated": false, - "trimmed": true, - "sourceSize": { - "w": 67, - "h": 97 - }, - "spriteSourceSize": { - "x": 8, - "y": 0, - "w": 58, - "h": 97 - }, - "frame": { - "x": 59, - "y": 97, - "w": 58, - "h": 97 - } - }, - { - "filename": "0016.png", - "rotated": false, - "trimmed": true, - "sourceSize": { - "w": 67, - "h": 97 - }, - "spriteSourceSize": { - "x": 8, - "y": 0, - "w": 58, - "h": 97 - }, - "frame": { - "x": 59, - "y": 97, - "w": 58, - "h": 97 - } - }, - { - "filename": "0007.png", - "rotated": false, - "trimmed": true, - "sourceSize": { - "w": 67, - "h": 97 - }, - "spriteSourceSize": { - "x": 2, - "y": 0, - "w": 58, - "h": 97 - }, - "frame": { - "x": 117, - "y": 97, - "w": 58, - "h": 97 - } - }, - { - "filename": "0011.png", - "rotated": false, - "trimmed": true, - "sourceSize": { - "w": 67, - "h": 97 - }, - "spriteSourceSize": { - "x": 2, - "y": 0, - "w": 58, - "h": 97 - }, - "frame": { - "x": 117, - "y": 97, - "w": 58, - "h": 97 - } - }, - { - "filename": "0003.png", - "rotated": false, - "trimmed": true, - "sourceSize": { - "w": 67, - "h": 97 - }, - "spriteSourceSize": { - "x": 7, - "y": 1, - "w": 57, - "h": 96 - }, - "frame": { - "x": 118, - "y": 0, - "w": 57, - "h": 96 - } - }, - { - "filename": "0015.png", - "rotated": false, - "trimmed": true, - "sourceSize": { - "w": 67, - "h": 97 - }, - "spriteSourceSize": { - "x": 7, - "y": 1, - "w": 57, - "h": 96 - }, - "frame": { - "x": 118, - "y": 0, - "w": 57, - "h": 96 - } - }, - { - "filename": "0008.png", - "rotated": false, - "trimmed": true, - "sourceSize": { - "w": 67, - "h": 97 - }, - "spriteSourceSize": { - "x": 1, - "y": 2, - "w": 58, - "h": 95 - }, - "frame": { - "x": 175, - "y": 0, - "w": 58, - "h": 95 - } - }, - { - "filename": "0010.png", - "rotated": false, - "trimmed": true, - "sourceSize": { - "w": 67, - "h": 97 - }, - "spriteSourceSize": { - "x": 1, - "y": 2, - "w": 58, - "h": 95 - }, - "frame": { - "x": 175, - "y": 0, - "w": 58, - "h": 95 - } - }, - { - "filename": "0009.png", - "rotated": false, - "trimmed": true, - "sourceSize": { - "w": 67, - "h": 97 - }, - "spriteSourceSize": { - "x": 0, - "y": 3, - "w": 58, - "h": 94 - }, - "frame": { - "x": 175, - "y": 95, - "w": 58, - "h": 94 - } - }, - { - "filename": "0001.png", - "rotated": false, - "trimmed": true, - "sourceSize": { - "w": 67, - "h": 97 - }, - "spriteSourceSize": { - "x": 10, - "y": 3, - "w": 57, - "h": 94 - }, - "frame": { - "x": 175, - "y": 189, - "w": 57, - "h": 94 - } - } - ] - } - ], - "meta": { - "app": "https://www.codeandweb.com/texturepacker", - "version": "3.0", - "smartupdate": "$TexturePacker:SmartUpdate:973448a7633a4dceb9828d95556ed3c2:09d8ad02433d8015e4665464587b1259:1a0490303f9626f92e787c567cd10feb$" - } -} diff --git a/public/images/pokemon/exp/back/936.png b/public/images/pokemon/exp/back/936.png deleted file mode 100644 index 14b0c1c7bf2..00000000000 Binary files a/public/images/pokemon/exp/back/936.png and /dev/null differ diff --git a/public/images/pokemon/exp/back/937.json b/public/images/pokemon/exp/back/937.json deleted file mode 100644 index 9cdf9b93093..00000000000 --- a/public/images/pokemon/exp/back/937.json +++ /dev/null @@ -1,650 +0,0 @@ -{ - "textures": [ - { - "image": "937.png", - "format": "RGBA8888", - "size": { - "w": 382, - "h": 382 - }, - "scale": 1, - "frames": [ - { - "filename": "0013.png", - "rotated": false, - "trimmed": true, - "sourceSize": { - "w": 95, - "h": 97 - }, - "spriteSourceSize": { - "x": 0, - "y": 0, - "w": 91, - "h": 96 - }, - "frame": { - "x": 0, - "y": 0, - "w": 91, - "h": 96 - } - }, - { - "filename": "0028.png", - "rotated": false, - "trimmed": true, - "sourceSize": { - "w": 95, - "h": 97 - }, - "spriteSourceSize": { - "x": 0, - "y": 0, - "w": 91, - "h": 96 - }, - "frame": { - "x": 91, - "y": 0, - "w": 91, - "h": 96 - } - }, - { - "filename": "0012.png", - "rotated": false, - "trimmed": true, - "sourceSize": { - "w": 95, - "h": 97 - }, - "spriteSourceSize": { - "x": 2, - "y": 0, - "w": 90, - "h": 96 - }, - "frame": { - "x": 182, - "y": 0, - "w": 90, - "h": 96 - } - }, - { - "filename": "0027.png", - "rotated": false, - "trimmed": true, - "sourceSize": { - "w": 95, - "h": 97 - }, - "spriteSourceSize": { - "x": 2, - "y": 0, - "w": 90, - "h": 96 - }, - "frame": { - "x": 182, - "y": 0, - "w": 90, - "h": 96 - } - }, - { - "filename": "0006.png", - "rotated": false, - "trimmed": true, - "sourceSize": { - "w": 95, - "h": 97 - }, - "spriteSourceSize": { - "x": 2, - "y": 0, - "w": 89, - "h": 96 - }, - "frame": { - "x": 272, - "y": 0, - "w": 89, - "h": 96 - } - }, - { - "filename": "0021.png", - "rotated": false, - "trimmed": true, - "sourceSize": { - "w": 95, - "h": 97 - }, - "spriteSourceSize": { - "x": 2, - "y": 0, - "w": 89, - "h": 96 - }, - "frame": { - "x": 272, - "y": 0, - "w": 89, - "h": 96 - } - }, - { - "filename": "0007.png", - "rotated": false, - "trimmed": true, - "sourceSize": { - "w": 95, - "h": 97 - }, - "spriteSourceSize": { - "x": 4, - "y": 1, - "w": 91, - "h": 95 - }, - "frame": { - "x": 0, - "y": 96, - "w": 91, - "h": 95 - } - }, - { - "filename": "0022.png", - "rotated": false, - "trimmed": true, - "sourceSize": { - "w": 95, - "h": 97 - }, - "spriteSourceSize": { - "x": 4, - "y": 1, - "w": 91, - "h": 95 - }, - "frame": { - "x": 0, - "y": 96, - "w": 91, - "h": 95 - } - }, - { - "filename": "0011.png", - "rotated": false, - "trimmed": true, - "sourceSize": { - "w": 95, - "h": 97 - }, - "spriteSourceSize": { - "x": 4, - "y": 1, - "w": 89, - "h": 95 - }, - "frame": { - "x": 91, - "y": 96, - "w": 89, - "h": 95 - } - }, - { - "filename": "0026.png", - "rotated": false, - "trimmed": true, - "sourceSize": { - "w": 95, - "h": 97 - }, - "spriteSourceSize": { - "x": 4, - "y": 1, - "w": 89, - "h": 95 - }, - "frame": { - "x": 91, - "y": 96, - "w": 89, - "h": 95 - } - }, - { - "filename": "0004.png", - "rotated": false, - "trimmed": true, - "sourceSize": { - "w": 95, - "h": 97 - }, - "spriteSourceSize": { - "x": 0, - "y": 0, - "w": 88, - "h": 96 - }, - "frame": { - "x": 180, - "y": 96, - "w": 88, - "h": 96 - } - }, - { - "filename": "0019.png", - "rotated": false, - "trimmed": true, - "sourceSize": { - "w": 95, - "h": 97 - }, - "spriteSourceSize": { - "x": 0, - "y": 0, - "w": 88, - "h": 96 - }, - "frame": { - "x": 180, - "y": 96, - "w": 88, - "h": 96 - } - }, - { - "filename": "0005.png", - "rotated": false, - "trimmed": true, - "sourceSize": { - "w": 95, - "h": 97 - }, - "spriteSourceSize": { - "x": 0, - "y": 0, - "w": 88, - "h": 96 - }, - "frame": { - "x": 0, - "y": 191, - "w": 88, - "h": 96 - } - }, - { - "filename": "0020.png", - "rotated": false, - "trimmed": true, - "sourceSize": { - "w": 95, - "h": 97 - }, - "spriteSourceSize": { - "x": 0, - "y": 0, - "w": 88, - "h": 96 - }, - "frame": { - "x": 0, - "y": 191, - "w": 88, - "h": 96 - } - }, - { - "filename": "0008.png", - "rotated": false, - "trimmed": true, - "sourceSize": { - "w": 95, - "h": 97 - }, - "spriteSourceSize": { - "x": 7, - "y": 0, - "w": 88, - "h": 96 - }, - "frame": { - "x": 88, - "y": 191, - "w": 88, - "h": 96 - } - }, - { - "filename": "0023.png", - "rotated": false, - "trimmed": true, - "sourceSize": { - "w": 95, - "h": 97 - }, - "spriteSourceSize": { - "x": 7, - "y": 0, - "w": 88, - "h": 96 - }, - "frame": { - "x": 88, - "y": 191, - "w": 88, - "h": 96 - } - }, - { - "filename": "0010.png", - "rotated": false, - "trimmed": true, - "sourceSize": { - "w": 95, - "h": 97 - }, - "spriteSourceSize": { - "x": 7, - "y": 0, - "w": 87, - "h": 96 - }, - "frame": { - "x": 176, - "y": 192, - "w": 87, - "h": 96 - } - }, - { - "filename": "0025.png", - "rotated": false, - "trimmed": true, - "sourceSize": { - "w": 95, - "h": 97 - }, - "spriteSourceSize": { - "x": 7, - "y": 0, - "w": 87, - "h": 96 - }, - "frame": { - "x": 176, - "y": 192, - "w": 87, - "h": 96 - } - }, - { - "filename": "0014.png", - "rotated": false, - "trimmed": true, - "sourceSize": { - "w": 95, - "h": 97 - }, - "spriteSourceSize": { - "x": 3, - "y": 1, - "w": 85, - "h": 95 - }, - "frame": { - "x": 0, - "y": 287, - "w": 85, - "h": 95 - } - }, - { - "filename": "0029.png", - "rotated": false, - "trimmed": true, - "sourceSize": { - "w": 95, - "h": 97 - }, - "spriteSourceSize": { - "x": 3, - "y": 1, - "w": 85, - "h": 95 - }, - "frame": { - "x": 0, - "y": 287, - "w": 85, - "h": 95 - } - }, - { - "filename": "0002.png", - "rotated": false, - "trimmed": true, - "sourceSize": { - "w": 95, - "h": 97 - }, - "spriteSourceSize": { - "x": 1, - "y": 3, - "w": 85, - "h": 94 - }, - "frame": { - "x": 85, - "y": 287, - "w": 85, - "h": 94 - } - }, - { - "filename": "0017.png", - "rotated": false, - "trimmed": true, - "sourceSize": { - "w": 95, - "h": 97 - }, - "spriteSourceSize": { - "x": 1, - "y": 3, - "w": 85, - "h": 94 - }, - "frame": { - "x": 85, - "y": 287, - "w": 85, - "h": 94 - } - }, - { - "filename": "0003.png", - "rotated": false, - "trimmed": true, - "sourceSize": { - "w": 95, - "h": 97 - }, - "spriteSourceSize": { - "x": 2, - "y": 1, - "w": 82, - "h": 96 - }, - "frame": { - "x": 263, - "y": 192, - "w": 82, - "h": 96 - } - }, - { - "filename": "0018.png", - "rotated": false, - "trimmed": true, - "sourceSize": { - "w": 95, - "h": 97 - }, - "spriteSourceSize": { - "x": 2, - "y": 1, - "w": 82, - "h": 96 - }, - "frame": { - "x": 263, - "y": 192, - "w": 82, - "h": 96 - } - }, - { - "filename": "0009.png", - "rotated": false, - "trimmed": true, - "sourceSize": { - "w": 95, - "h": 97 - }, - "spriteSourceSize": { - "x": 8, - "y": 3, - "w": 85, - "h": 93 - }, - "frame": { - "x": 268, - "y": 96, - "w": 85, - "h": 93 - } - }, - { - "filename": "0024.png", - "rotated": false, - "trimmed": true, - "sourceSize": { - "w": 95, - "h": 97 - }, - "spriteSourceSize": { - "x": 8, - "y": 3, - "w": 85, - "h": 93 - }, - "frame": { - "x": 268, - "y": 96, - "w": 85, - "h": 93 - } - }, - { - "filename": "0001.png", - "rotated": false, - "trimmed": true, - "sourceSize": { - "w": 95, - "h": 97 - }, - "spriteSourceSize": { - "x": 3, - "y": 3, - "w": 81, - "h": 94 - }, - "frame": { - "x": 170, - "y": 288, - "w": 81, - "h": 94 - } - }, - { - "filename": "0016.png", - "rotated": false, - "trimmed": true, - "sourceSize": { - "w": 95, - "h": 97 - }, - "spriteSourceSize": { - "x": 3, - "y": 3, - "w": 81, - "h": 94 - }, - "frame": { - "x": 170, - "y": 288, - "w": 81, - "h": 94 - } - }, - { - "filename": "0015.png", - "rotated": false, - "trimmed": true, - "sourceSize": { - "w": 95, - "h": 97 - }, - "spriteSourceSize": { - "x": 2, - "y": 3, - "w": 80, - "h": 94 - }, - "frame": { - "x": 251, - "y": 288, - "w": 80, - "h": 94 - } - }, - { - "filename": "0030.png", - "rotated": false, - "trimmed": true, - "sourceSize": { - "w": 95, - "h": 97 - }, - "spriteSourceSize": { - "x": 2, - "y": 3, - "w": 80, - "h": 94 - }, - "frame": { - "x": 251, - "y": 288, - "w": 80, - "h": 94 - } - } - ] - } - ], - "meta": { - "app": "https://www.codeandweb.com/texturepacker", - "version": "3.0", - "smartupdate": "$TexturePacker:SmartUpdate:25759b98c1f7867fe6c4ff54c797c3e2:0076c777d18a4f3d780937118dfb6388:1d4b4f8d62307c37457ba974879b47d0$" - } -} diff --git a/public/images/pokemon/exp/back/937.png b/public/images/pokemon/exp/back/937.png deleted file mode 100644 index 676950a1999..00000000000 Binary files a/public/images/pokemon/exp/back/937.png and /dev/null differ diff --git a/public/images/pokemon/exp/back/shiny/692.png b/public/images/pokemon/exp/back/shiny/692.png index c1bb353a739..baee2adcd4f 100644 Binary files a/public/images/pokemon/exp/back/shiny/692.png and b/public/images/pokemon/exp/back/shiny/692.png differ diff --git a/public/images/pokemon/exp/back/shiny/782.json b/public/images/pokemon/exp/back/shiny/782.json deleted file mode 100644 index facd127868f..00000000000 --- a/public/images/pokemon/exp/back/shiny/782.json +++ /dev/null @@ -1,2351 +0,0 @@ -{ - "textures": [ - { - "image": "782.png", - "format": "RGBA8888", - "size": { - "w": 239, - "h": 239 - }, - "scale": 1, - "frames": [ - { - "filename": "0083.png", - "rotated": false, - "trimmed": true, - "sourceSize": { - "w": 49, - "h": 52 - }, - "spriteSourceSize": { - "x": 0, - "y": 0, - "w": 48, - "h": 52 - }, - "frame": { - "x": 0, - "y": 0, - "w": 48, - "h": 52 - } - }, - { - "filename": "0111.png", - "rotated": false, - "trimmed": true, - "sourceSize": { - "w": 49, - "h": 52 - }, - "spriteSourceSize": { - "x": 0, - "y": 0, - "w": 48, - "h": 52 - }, - "frame": { - "x": 0, - "y": 0, - "w": 48, - "h": 52 - } - }, - { - "filename": "0084.png", - "rotated": false, - "trimmed": true, - "sourceSize": { - "w": 49, - "h": 52 - }, - "spriteSourceSize": { - "x": 0, - "y": 0, - "w": 48, - "h": 52 - }, - "frame": { - "x": 0, - "y": 52, - "w": 48, - "h": 52 - } - }, - { - "filename": "0110.png", - "rotated": false, - "trimmed": true, - "sourceSize": { - "w": 49, - "h": 52 - }, - "spriteSourceSize": { - "x": 0, - "y": 0, - "w": 48, - "h": 52 - }, - "frame": { - "x": 0, - "y": 52, - "w": 48, - "h": 52 - } - }, - { - "filename": "0085.png", - "rotated": false, - "trimmed": true, - "sourceSize": { - "w": 49, - "h": 52 - }, - "spriteSourceSize": { - "x": 0, - "y": 0, - "w": 48, - "h": 52 - }, - "frame": { - "x": 48, - "y": 0, - "w": 48, - "h": 52 - } - }, - { - "filename": "0086.png", - "rotated": false, - "trimmed": true, - "sourceSize": { - "w": 49, - "h": 52 - }, - "spriteSourceSize": { - "x": 0, - "y": 0, - "w": 48, - "h": 52 - }, - "frame": { - "x": 0, - "y": 104, - "w": 48, - "h": 52 - } - }, - { - "filename": "0087.png", - "rotated": false, - "trimmed": true, - "sourceSize": { - "w": 49, - "h": 52 - }, - "spriteSourceSize": { - "x": 0, - "y": 0, - "w": 48, - "h": 52 - }, - "frame": { - "x": 48, - "y": 52, - "w": 48, - "h": 52 - } - }, - { - "filename": "0088.png", - "rotated": false, - "trimmed": true, - "sourceSize": { - "w": 49, - "h": 52 - }, - "spriteSourceSize": { - "x": 0, - "y": 0, - "w": 48, - "h": 52 - }, - "frame": { - "x": 48, - "y": 52, - "w": 48, - "h": 52 - } - }, - { - "filename": "0095.png", - "rotated": false, - "trimmed": true, - "sourceSize": { - "w": 49, - "h": 52 - }, - "spriteSourceSize": { - "x": 0, - "y": 0, - "w": 48, - "h": 52 - }, - "frame": { - "x": 48, - "y": 52, - "w": 48, - "h": 52 - } - }, - { - "filename": "0096.png", - "rotated": false, - "trimmed": true, - "sourceSize": { - "w": 49, - "h": 52 - }, - "spriteSourceSize": { - "x": 0, - "y": 0, - "w": 48, - "h": 52 - }, - "frame": { - "x": 48, - "y": 52, - "w": 48, - "h": 52 - } - }, - { - "filename": "0104.png", - "rotated": false, - "trimmed": true, - "sourceSize": { - "w": 49, - "h": 52 - }, - "spriteSourceSize": { - "x": 0, - "y": 0, - "w": 48, - "h": 52 - }, - "frame": { - "x": 48, - "y": 52, - "w": 48, - "h": 52 - } - }, - { - "filename": "0105.png", - "rotated": false, - "trimmed": true, - "sourceSize": { - "w": 49, - "h": 52 - }, - "spriteSourceSize": { - "x": 0, - "y": 0, - "w": 48, - "h": 52 - }, - "frame": { - "x": 48, - "y": 52, - "w": 48, - "h": 52 - } - }, - { - "filename": "0089.png", - "rotated": false, - "trimmed": true, - "sourceSize": { - "w": 49, - "h": 52 - }, - "spriteSourceSize": { - "x": 0, - "y": 0, - "w": 48, - "h": 52 - }, - "frame": { - "x": 96, - "y": 0, - "w": 48, - "h": 52 - } - }, - { - "filename": "0090.png", - "rotated": false, - "trimmed": true, - "sourceSize": { - "w": 49, - "h": 52 - }, - "spriteSourceSize": { - "x": 0, - "y": 0, - "w": 48, - "h": 52 - }, - "frame": { - "x": 0, - "y": 156, - "w": 48, - "h": 52 - } - }, - { - "filename": "0091.png", - "rotated": false, - "trimmed": true, - "sourceSize": { - "w": 49, - "h": 52 - }, - "spriteSourceSize": { - "x": 0, - "y": 0, - "w": 48, - "h": 52 - }, - "frame": { - "x": 48, - "y": 104, - "w": 48, - "h": 52 - } - }, - { - "filename": "0108.png", - "rotated": false, - "trimmed": true, - "sourceSize": { - "w": 49, - "h": 52 - }, - "spriteSourceSize": { - "x": 0, - "y": 0, - "w": 48, - "h": 52 - }, - "frame": { - "x": 48, - "y": 104, - "w": 48, - "h": 52 - } - }, - { - "filename": "0092.png", - "rotated": false, - "trimmed": true, - "sourceSize": { - "w": 49, - "h": 52 - }, - "spriteSourceSize": { - "x": 0, - "y": 0, - "w": 48, - "h": 52 - }, - "frame": { - "x": 96, - "y": 52, - "w": 48, - "h": 52 - } - }, - { - "filename": "0099.png", - "rotated": false, - "trimmed": true, - "sourceSize": { - "w": 49, - "h": 52 - }, - "spriteSourceSize": { - "x": 0, - "y": 0, - "w": 48, - "h": 52 - }, - "frame": { - "x": 96, - "y": 52, - "w": 48, - "h": 52 - } - }, - { - "filename": "0100.png", - "rotated": false, - "trimmed": true, - "sourceSize": { - "w": 49, - "h": 52 - }, - "spriteSourceSize": { - "x": 0, - "y": 0, - "w": 48, - "h": 52 - }, - "frame": { - "x": 96, - "y": 52, - "w": 48, - "h": 52 - } - }, - { - "filename": "0093.png", - "rotated": false, - "trimmed": true, - "sourceSize": { - "w": 49, - "h": 52 - }, - "spriteSourceSize": { - "x": 0, - "y": 0, - "w": 48, - "h": 52 - }, - "frame": { - "x": 144, - "y": 0, - "w": 48, - "h": 52 - } - }, - { - "filename": "0094.png", - "rotated": false, - "trimmed": true, - "sourceSize": { - "w": 49, - "h": 52 - }, - "spriteSourceSize": { - "x": 0, - "y": 0, - "w": 48, - "h": 52 - }, - "frame": { - "x": 144, - "y": 0, - "w": 48, - "h": 52 - } - }, - { - "filename": "0101.png", - "rotated": false, - "trimmed": true, - "sourceSize": { - "w": 49, - "h": 52 - }, - "spriteSourceSize": { - "x": 0, - "y": 0, - "w": 48, - "h": 52 - }, - "frame": { - "x": 144, - "y": 0, - "w": 48, - "h": 52 - } - }, - { - "filename": "0102.png", - "rotated": false, - "trimmed": true, - "sourceSize": { - "w": 49, - "h": 52 - }, - "spriteSourceSize": { - "x": 0, - "y": 0, - "w": 48, - "h": 52 - }, - "frame": { - "x": 144, - "y": 0, - "w": 48, - "h": 52 - } - }, - { - "filename": "0103.png", - "rotated": false, - "trimmed": true, - "sourceSize": { - "w": 49, - "h": 52 - }, - "spriteSourceSize": { - "x": 0, - "y": 0, - "w": 48, - "h": 52 - }, - "frame": { - "x": 144, - "y": 0, - "w": 48, - "h": 52 - } - }, - { - "filename": "0013.png", - "rotated": false, - "trimmed": true, - "sourceSize": { - "w": 49, - "h": 52 - }, - "spriteSourceSize": { - "x": 2, - "y": 1, - "w": 47, - "h": 51 - }, - "frame": { - "x": 192, - "y": 0, - "w": 47, - "h": 51 - } - }, - { - "filename": "0014.png", - "rotated": false, - "trimmed": true, - "sourceSize": { - "w": 49, - "h": 52 - }, - "spriteSourceSize": { - "x": 2, - "y": 1, - "w": 47, - "h": 51 - }, - "frame": { - "x": 192, - "y": 0, - "w": 47, - "h": 51 - } - }, - { - "filename": "0029.png", - "rotated": false, - "trimmed": true, - "sourceSize": { - "w": 49, - "h": 52 - }, - "spriteSourceSize": { - "x": 2, - "y": 1, - "w": 47, - "h": 51 - }, - "frame": { - "x": 192, - "y": 0, - "w": 47, - "h": 51 - } - }, - { - "filename": "0030.png", - "rotated": false, - "trimmed": true, - "sourceSize": { - "w": 49, - "h": 52 - }, - "spriteSourceSize": { - "x": 2, - "y": 1, - "w": 47, - "h": 51 - }, - "frame": { - "x": 192, - "y": 0, - "w": 47, - "h": 51 - } - }, - { - "filename": "0045.png", - "rotated": false, - "trimmed": true, - "sourceSize": { - "w": 49, - "h": 52 - }, - "spriteSourceSize": { - "x": 2, - "y": 1, - "w": 47, - "h": 51 - }, - "frame": { - "x": 192, - "y": 0, - "w": 47, - "h": 51 - } - }, - { - "filename": "0046.png", - "rotated": false, - "trimmed": true, - "sourceSize": { - "w": 49, - "h": 52 - }, - "spriteSourceSize": { - "x": 2, - "y": 1, - "w": 47, - "h": 51 - }, - "frame": { - "x": 192, - "y": 0, - "w": 47, - "h": 51 - } - }, - { - "filename": "0061.png", - "rotated": false, - "trimmed": true, - "sourceSize": { - "w": 49, - "h": 52 - }, - "spriteSourceSize": { - "x": 2, - "y": 1, - "w": 47, - "h": 51 - }, - "frame": { - "x": 192, - "y": 0, - "w": 47, - "h": 51 - } - }, - { - "filename": "0062.png", - "rotated": false, - "trimmed": true, - "sourceSize": { - "w": 49, - "h": 52 - }, - "spriteSourceSize": { - "x": 2, - "y": 1, - "w": 47, - "h": 51 - }, - "frame": { - "x": 192, - "y": 0, - "w": 47, - "h": 51 - } - }, - { - "filename": "0077.png", - "rotated": false, - "trimmed": true, - "sourceSize": { - "w": 49, - "h": 52 - }, - "spriteSourceSize": { - "x": 2, - "y": 1, - "w": 47, - "h": 51 - }, - "frame": { - "x": 192, - "y": 0, - "w": 47, - "h": 51 - } - }, - { - "filename": "0078.png", - "rotated": false, - "trimmed": true, - "sourceSize": { - "w": 49, - "h": 52 - }, - "spriteSourceSize": { - "x": 2, - "y": 1, - "w": 47, - "h": 51 - }, - "frame": { - "x": 192, - "y": 0, - "w": 47, - "h": 51 - } - }, - { - "filename": "0097.png", - "rotated": false, - "trimmed": true, - "sourceSize": { - "w": 49, - "h": 52 - }, - "spriteSourceSize": { - "x": 0, - "y": 0, - "w": 48, - "h": 52 - }, - "frame": { - "x": 48, - "y": 156, - "w": 48, - "h": 52 - } - }, - { - "filename": "0098.png", - "rotated": false, - "trimmed": true, - "sourceSize": { - "w": 49, - "h": 52 - }, - "spriteSourceSize": { - "x": 0, - "y": 0, - "w": 48, - "h": 52 - }, - "frame": { - "x": 48, - "y": 156, - "w": 48, - "h": 52 - } - }, - { - "filename": "0106.png", - "rotated": false, - "trimmed": true, - "sourceSize": { - "w": 49, - "h": 52 - }, - "spriteSourceSize": { - "x": 0, - "y": 0, - "w": 48, - "h": 52 - }, - "frame": { - "x": 48, - "y": 156, - "w": 48, - "h": 52 - } - }, - { - "filename": "0107.png", - "rotated": false, - "trimmed": true, - "sourceSize": { - "w": 49, - "h": 52 - }, - "spriteSourceSize": { - "x": 0, - "y": 0, - "w": 48, - "h": 52 - }, - "frame": { - "x": 48, - "y": 156, - "w": 48, - "h": 52 - } - }, - { - "filename": "0109.png", - "rotated": false, - "trimmed": true, - "sourceSize": { - "w": 49, - "h": 52 - }, - "spriteSourceSize": { - "x": 0, - "y": 0, - "w": 48, - "h": 52 - }, - "frame": { - "x": 96, - "y": 104, - "w": 48, - "h": 52 - } - }, - { - "filename": "0001.png", - "rotated": false, - "trimmed": true, - "sourceSize": { - "w": 49, - "h": 52 - }, - "spriteSourceSize": { - "x": 0, - "y": 1, - "w": 48, - "h": 51 - }, - "frame": { - "x": 144, - "y": 52, - "w": 48, - "h": 51 - } - }, - { - "filename": "0002.png", - "rotated": false, - "trimmed": true, - "sourceSize": { - "w": 49, - "h": 52 - }, - "spriteSourceSize": { - "x": 0, - "y": 1, - "w": 48, - "h": 51 - }, - "frame": { - "x": 144, - "y": 52, - "w": 48, - "h": 51 - } - }, - { - "filename": "0017.png", - "rotated": false, - "trimmed": true, - "sourceSize": { - "w": 49, - "h": 52 - }, - "spriteSourceSize": { - "x": 0, - "y": 1, - "w": 48, - "h": 51 - }, - "frame": { - "x": 144, - "y": 52, - "w": 48, - "h": 51 - } - }, - { - "filename": "0018.png", - "rotated": false, - "trimmed": true, - "sourceSize": { - "w": 49, - "h": 52 - }, - "spriteSourceSize": { - "x": 0, - "y": 1, - "w": 48, - "h": 51 - }, - "frame": { - "x": 144, - "y": 52, - "w": 48, - "h": 51 - } - }, - { - "filename": "0033.png", - "rotated": false, - "trimmed": true, - "sourceSize": { - "w": 49, - "h": 52 - }, - "spriteSourceSize": { - "x": 0, - "y": 1, - "w": 48, - "h": 51 - }, - "frame": { - "x": 144, - "y": 52, - "w": 48, - "h": 51 - } - }, - { - "filename": "0034.png", - "rotated": false, - "trimmed": true, - "sourceSize": { - "w": 49, - "h": 52 - }, - "spriteSourceSize": { - "x": 0, - "y": 1, - "w": 48, - "h": 51 - }, - "frame": { - "x": 144, - "y": 52, - "w": 48, - "h": 51 - } - }, - { - "filename": "0049.png", - "rotated": false, - "trimmed": true, - "sourceSize": { - "w": 49, - "h": 52 - }, - "spriteSourceSize": { - "x": 0, - "y": 1, - "w": 48, - "h": 51 - }, - "frame": { - "x": 144, - "y": 52, - "w": 48, - "h": 51 - } - }, - { - "filename": "0050.png", - "rotated": false, - "trimmed": true, - "sourceSize": { - "w": 49, - "h": 52 - }, - "spriteSourceSize": { - "x": 0, - "y": 1, - "w": 48, - "h": 51 - }, - "frame": { - "x": 144, - "y": 52, - "w": 48, - "h": 51 - } - }, - { - "filename": "0065.png", - "rotated": false, - "trimmed": true, - "sourceSize": { - "w": 49, - "h": 52 - }, - "spriteSourceSize": { - "x": 0, - "y": 1, - "w": 48, - "h": 51 - }, - "frame": { - "x": 144, - "y": 52, - "w": 48, - "h": 51 - } - }, - { - "filename": "0066.png", - "rotated": false, - "trimmed": true, - "sourceSize": { - "w": 49, - "h": 52 - }, - "spriteSourceSize": { - "x": 0, - "y": 1, - "w": 48, - "h": 51 - }, - "frame": { - "x": 144, - "y": 52, - "w": 48, - "h": 51 - } - }, - { - "filename": "0081.png", - "rotated": false, - "trimmed": true, - "sourceSize": { - "w": 49, - "h": 52 - }, - "spriteSourceSize": { - "x": 0, - "y": 1, - "w": 48, - "h": 51 - }, - "frame": { - "x": 144, - "y": 52, - "w": 48, - "h": 51 - } - }, - { - "filename": "0082.png", - "rotated": false, - "trimmed": true, - "sourceSize": { - "w": 49, - "h": 52 - }, - "spriteSourceSize": { - "x": 0, - "y": 1, - "w": 48, - "h": 51 - }, - "frame": { - "x": 144, - "y": 52, - "w": 48, - "h": 51 - } - }, - { - "filename": "0015.png", - "rotated": false, - "trimmed": true, - "sourceSize": { - "w": 49, - "h": 52 - }, - "spriteSourceSize": { - "x": 1, - "y": 1, - "w": 47, - "h": 51 - }, - "frame": { - "x": 192, - "y": 51, - "w": 47, - "h": 51 - } - }, - { - "filename": "0016.png", - "rotated": false, - "trimmed": true, - "sourceSize": { - "w": 49, - "h": 52 - }, - "spriteSourceSize": { - "x": 1, - "y": 1, - "w": 47, - "h": 51 - }, - "frame": { - "x": 192, - "y": 51, - "w": 47, - "h": 51 - } - }, - { - "filename": "0031.png", - "rotated": false, - "trimmed": true, - "sourceSize": { - "w": 49, - "h": 52 - }, - "spriteSourceSize": { - "x": 1, - "y": 1, - "w": 47, - "h": 51 - }, - "frame": { - "x": 192, - "y": 51, - "w": 47, - "h": 51 - } - }, - { - "filename": "0032.png", - "rotated": false, - "trimmed": true, - "sourceSize": { - "w": 49, - "h": 52 - }, - "spriteSourceSize": { - "x": 1, - "y": 1, - "w": 47, - "h": 51 - }, - "frame": { - "x": 192, - "y": 51, - "w": 47, - "h": 51 - } - }, - { - "filename": "0047.png", - "rotated": false, - "trimmed": true, - "sourceSize": { - "w": 49, - "h": 52 - }, - "spriteSourceSize": { - "x": 1, - "y": 1, - "w": 47, - "h": 51 - }, - "frame": { - "x": 192, - "y": 51, - "w": 47, - "h": 51 - } - }, - { - "filename": "0048.png", - "rotated": false, - "trimmed": true, - "sourceSize": { - "w": 49, - "h": 52 - }, - "spriteSourceSize": { - "x": 1, - "y": 1, - "w": 47, - "h": 51 - }, - "frame": { - "x": 192, - "y": 51, - "w": 47, - "h": 51 - } - }, - { - "filename": "0063.png", - "rotated": false, - "trimmed": true, - "sourceSize": { - "w": 49, - "h": 52 - }, - "spriteSourceSize": { - "x": 1, - "y": 1, - "w": 47, - "h": 51 - }, - "frame": { - "x": 192, - "y": 51, - "w": 47, - "h": 51 - } - }, - { - "filename": "0064.png", - "rotated": false, - "trimmed": true, - "sourceSize": { - "w": 49, - "h": 52 - }, - "spriteSourceSize": { - "x": 1, - "y": 1, - "w": 47, - "h": 51 - }, - "frame": { - "x": 192, - "y": 51, - "w": 47, - "h": 51 - } - }, - { - "filename": "0079.png", - "rotated": false, - "trimmed": true, - "sourceSize": { - "w": 49, - "h": 52 - }, - "spriteSourceSize": { - "x": 1, - "y": 1, - "w": 47, - "h": 51 - }, - "frame": { - "x": 192, - "y": 51, - "w": 47, - "h": 51 - } - }, - { - "filename": "0080.png", - "rotated": false, - "trimmed": true, - "sourceSize": { - "w": 49, - "h": 52 - }, - "spriteSourceSize": { - "x": 1, - "y": 1, - "w": 47, - "h": 51 - }, - "frame": { - "x": 192, - "y": 51, - "w": 47, - "h": 51 - } - }, - { - "filename": "0003.png", - "rotated": false, - "trimmed": true, - "sourceSize": { - "w": 49, - "h": 52 - }, - "spriteSourceSize": { - "x": 0, - "y": 1, - "w": 48, - "h": 51 - }, - "frame": { - "x": 96, - "y": 156, - "w": 48, - "h": 51 - } - }, - { - "filename": "0004.png", - "rotated": false, - "trimmed": true, - "sourceSize": { - "w": 49, - "h": 52 - }, - "spriteSourceSize": { - "x": 0, - "y": 1, - "w": 48, - "h": 51 - }, - "frame": { - "x": 96, - "y": 156, - "w": 48, - "h": 51 - } - }, - { - "filename": "0019.png", - "rotated": false, - "trimmed": true, - "sourceSize": { - "w": 49, - "h": 52 - }, - "spriteSourceSize": { - "x": 0, - "y": 1, - "w": 48, - "h": 51 - }, - "frame": { - "x": 96, - "y": 156, - "w": 48, - "h": 51 - } - }, - { - "filename": "0020.png", - "rotated": false, - "trimmed": true, - "sourceSize": { - "w": 49, - "h": 52 - }, - "spriteSourceSize": { - "x": 0, - "y": 1, - "w": 48, - "h": 51 - }, - "frame": { - "x": 96, - "y": 156, - "w": 48, - "h": 51 - } - }, - { - "filename": "0035.png", - "rotated": false, - "trimmed": true, - "sourceSize": { - "w": 49, - "h": 52 - }, - "spriteSourceSize": { - "x": 0, - "y": 1, - "w": 48, - "h": 51 - }, - "frame": { - "x": 96, - "y": 156, - "w": 48, - "h": 51 - } - }, - { - "filename": "0036.png", - "rotated": false, - "trimmed": true, - "sourceSize": { - "w": 49, - "h": 52 - }, - "spriteSourceSize": { - "x": 0, - "y": 1, - "w": 48, - "h": 51 - }, - "frame": { - "x": 96, - "y": 156, - "w": 48, - "h": 51 - } - }, - { - "filename": "0051.png", - "rotated": false, - "trimmed": true, - "sourceSize": { - "w": 49, - "h": 52 - }, - "spriteSourceSize": { - "x": 0, - "y": 1, - "w": 48, - "h": 51 - }, - "frame": { - "x": 96, - "y": 156, - "w": 48, - "h": 51 - } - }, - { - "filename": "0052.png", - "rotated": false, - "trimmed": true, - "sourceSize": { - "w": 49, - "h": 52 - }, - "spriteSourceSize": { - "x": 0, - "y": 1, - "w": 48, - "h": 51 - }, - "frame": { - "x": 96, - "y": 156, - "w": 48, - "h": 51 - } - }, - { - "filename": "0067.png", - "rotated": false, - "trimmed": true, - "sourceSize": { - "w": 49, - "h": 52 - }, - "spriteSourceSize": { - "x": 0, - "y": 1, - "w": 48, - "h": 51 - }, - "frame": { - "x": 96, - "y": 156, - "w": 48, - "h": 51 - } - }, - { - "filename": "0068.png", - "rotated": false, - "trimmed": true, - "sourceSize": { - "w": 49, - "h": 52 - }, - "spriteSourceSize": { - "x": 0, - "y": 1, - "w": 48, - "h": 51 - }, - "frame": { - "x": 96, - "y": 156, - "w": 48, - "h": 51 - } - }, - { - "filename": "0005.png", - "rotated": false, - "trimmed": true, - "sourceSize": { - "w": 49, - "h": 52 - }, - "spriteSourceSize": { - "x": 1, - "y": 1, - "w": 48, - "h": 51 - }, - "frame": { - "x": 144, - "y": 103, - "w": 48, - "h": 51 - } - }, - { - "filename": "0006.png", - "rotated": false, - "trimmed": true, - "sourceSize": { - "w": 49, - "h": 52 - }, - "spriteSourceSize": { - "x": 1, - "y": 1, - "w": 48, - "h": 51 - }, - "frame": { - "x": 144, - "y": 103, - "w": 48, - "h": 51 - } - }, - { - "filename": "0021.png", - "rotated": false, - "trimmed": true, - "sourceSize": { - "w": 49, - "h": 52 - }, - "spriteSourceSize": { - "x": 1, - "y": 1, - "w": 48, - "h": 51 - }, - "frame": { - "x": 144, - "y": 103, - "w": 48, - "h": 51 - } - }, - { - "filename": "0022.png", - "rotated": false, - "trimmed": true, - "sourceSize": { - "w": 49, - "h": 52 - }, - "spriteSourceSize": { - "x": 1, - "y": 1, - "w": 48, - "h": 51 - }, - "frame": { - "x": 144, - "y": 103, - "w": 48, - "h": 51 - } - }, - { - "filename": "0037.png", - "rotated": false, - "trimmed": true, - "sourceSize": { - "w": 49, - "h": 52 - }, - "spriteSourceSize": { - "x": 1, - "y": 1, - "w": 48, - "h": 51 - }, - "frame": { - "x": 144, - "y": 103, - "w": 48, - "h": 51 - } - }, - { - "filename": "0038.png", - "rotated": false, - "trimmed": true, - "sourceSize": { - "w": 49, - "h": 52 - }, - "spriteSourceSize": { - "x": 1, - "y": 1, - "w": 48, - "h": 51 - }, - "frame": { - "x": 144, - "y": 103, - "w": 48, - "h": 51 - } - }, - { - "filename": "0053.png", - "rotated": false, - "trimmed": true, - "sourceSize": { - "w": 49, - "h": 52 - }, - "spriteSourceSize": { - "x": 1, - "y": 1, - "w": 48, - "h": 51 - }, - "frame": { - "x": 144, - "y": 103, - "w": 48, - "h": 51 - } - }, - { - "filename": "0054.png", - "rotated": false, - "trimmed": true, - "sourceSize": { - "w": 49, - "h": 52 - }, - "spriteSourceSize": { - "x": 1, - "y": 1, - "w": 48, - "h": 51 - }, - "frame": { - "x": 144, - "y": 103, - "w": 48, - "h": 51 - } - }, - { - "filename": "0069.png", - "rotated": false, - "trimmed": true, - "sourceSize": { - "w": 49, - "h": 52 - }, - "spriteSourceSize": { - "x": 1, - "y": 1, - "w": 48, - "h": 51 - }, - "frame": { - "x": 144, - "y": 103, - "w": 48, - "h": 51 - } - }, - { - "filename": "0070.png", - "rotated": false, - "trimmed": true, - "sourceSize": { - "w": 49, - "h": 52 - }, - "spriteSourceSize": { - "x": 1, - "y": 1, - "w": 48, - "h": 51 - }, - "frame": { - "x": 144, - "y": 103, - "w": 48, - "h": 51 - } - }, - { - "filename": "0007.png", - "rotated": false, - "trimmed": true, - "sourceSize": { - "w": 49, - "h": 52 - }, - "spriteSourceSize": { - "x": 2, - "y": 2, - "w": 47, - "h": 50 - }, - "frame": { - "x": 192, - "y": 102, - "w": 47, - "h": 50 - } - }, - { - "filename": "0008.png", - "rotated": false, - "trimmed": true, - "sourceSize": { - "w": 49, - "h": 52 - }, - "spriteSourceSize": { - "x": 2, - "y": 2, - "w": 47, - "h": 50 - }, - "frame": { - "x": 192, - "y": 102, - "w": 47, - "h": 50 - } - }, - { - "filename": "0023.png", - "rotated": false, - "trimmed": true, - "sourceSize": { - "w": 49, - "h": 52 - }, - "spriteSourceSize": { - "x": 2, - "y": 2, - "w": 47, - "h": 50 - }, - "frame": { - "x": 192, - "y": 102, - "w": 47, - "h": 50 - } - }, - { - "filename": "0024.png", - "rotated": false, - "trimmed": true, - "sourceSize": { - "w": 49, - "h": 52 - }, - "spriteSourceSize": { - "x": 2, - "y": 2, - "w": 47, - "h": 50 - }, - "frame": { - "x": 192, - "y": 102, - "w": 47, - "h": 50 - } - }, - { - "filename": "0039.png", - "rotated": false, - "trimmed": true, - "sourceSize": { - "w": 49, - "h": 52 - }, - "spriteSourceSize": { - "x": 2, - "y": 2, - "w": 47, - "h": 50 - }, - "frame": { - "x": 192, - "y": 102, - "w": 47, - "h": 50 - } - }, - { - "filename": "0040.png", - "rotated": false, - "trimmed": true, - "sourceSize": { - "w": 49, - "h": 52 - }, - "spriteSourceSize": { - "x": 2, - "y": 2, - "w": 47, - "h": 50 - }, - "frame": { - "x": 192, - "y": 102, - "w": 47, - "h": 50 - } - }, - { - "filename": "0055.png", - "rotated": false, - "trimmed": true, - "sourceSize": { - "w": 49, - "h": 52 - }, - "spriteSourceSize": { - "x": 2, - "y": 2, - "w": 47, - "h": 50 - }, - "frame": { - "x": 192, - "y": 102, - "w": 47, - "h": 50 - } - }, - { - "filename": "0056.png", - "rotated": false, - "trimmed": true, - "sourceSize": { - "w": 49, - "h": 52 - }, - "spriteSourceSize": { - "x": 2, - "y": 2, - "w": 47, - "h": 50 - }, - "frame": { - "x": 192, - "y": 102, - "w": 47, - "h": 50 - } - }, - { - "filename": "0071.png", - "rotated": false, - "trimmed": true, - "sourceSize": { - "w": 49, - "h": 52 - }, - "spriteSourceSize": { - "x": 2, - "y": 2, - "w": 47, - "h": 50 - }, - "frame": { - "x": 192, - "y": 102, - "w": 47, - "h": 50 - } - }, - { - "filename": "0072.png", - "rotated": false, - "trimmed": true, - "sourceSize": { - "w": 49, - "h": 52 - }, - "spriteSourceSize": { - "x": 2, - "y": 2, - "w": 47, - "h": 50 - }, - "frame": { - "x": 192, - "y": 102, - "w": 47, - "h": 50 - } - }, - { - "filename": "0011.png", - "rotated": false, - "trimmed": true, - "sourceSize": { - "w": 49, - "h": 52 - }, - "spriteSourceSize": { - "x": 2, - "y": 2, - "w": 47, - "h": 50 - }, - "frame": { - "x": 192, - "y": 152, - "w": 47, - "h": 50 - } - }, - { - "filename": "0012.png", - "rotated": false, - "trimmed": true, - "sourceSize": { - "w": 49, - "h": 52 - }, - "spriteSourceSize": { - "x": 2, - "y": 2, - "w": 47, - "h": 50 - }, - "frame": { - "x": 192, - "y": 152, - "w": 47, - "h": 50 - } - }, - { - "filename": "0027.png", - "rotated": false, - "trimmed": true, - "sourceSize": { - "w": 49, - "h": 52 - }, - "spriteSourceSize": { - "x": 2, - "y": 2, - "w": 47, - "h": 50 - }, - "frame": { - "x": 192, - "y": 152, - "w": 47, - "h": 50 - } - }, - { - "filename": "0028.png", - "rotated": false, - "trimmed": true, - "sourceSize": { - "w": 49, - "h": 52 - }, - "spriteSourceSize": { - "x": 2, - "y": 2, - "w": 47, - "h": 50 - }, - "frame": { - "x": 192, - "y": 152, - "w": 47, - "h": 50 - } - }, - { - "filename": "0043.png", - "rotated": false, - "trimmed": true, - "sourceSize": { - "w": 49, - "h": 52 - }, - "spriteSourceSize": { - "x": 2, - "y": 2, - "w": 47, - "h": 50 - }, - "frame": { - "x": 192, - "y": 152, - "w": 47, - "h": 50 - } - }, - { - "filename": "0044.png", - "rotated": false, - "trimmed": true, - "sourceSize": { - "w": 49, - "h": 52 - }, - "spriteSourceSize": { - "x": 2, - "y": 2, - "w": 47, - "h": 50 - }, - "frame": { - "x": 192, - "y": 152, - "w": 47, - "h": 50 - } - }, - { - "filename": "0059.png", - "rotated": false, - "trimmed": true, - "sourceSize": { - "w": 49, - "h": 52 - }, - "spriteSourceSize": { - "x": 2, - "y": 2, - "w": 47, - "h": 50 - }, - "frame": { - "x": 192, - "y": 152, - "w": 47, - "h": 50 - } - }, - { - "filename": "0060.png", - "rotated": false, - "trimmed": true, - "sourceSize": { - "w": 49, - "h": 52 - }, - "spriteSourceSize": { - "x": 2, - "y": 2, - "w": 47, - "h": 50 - }, - "frame": { - "x": 192, - "y": 152, - "w": 47, - "h": 50 - } - }, - { - "filename": "0075.png", - "rotated": false, - "trimmed": true, - "sourceSize": { - "w": 49, - "h": 52 - }, - "spriteSourceSize": { - "x": 2, - "y": 2, - "w": 47, - "h": 50 - }, - "frame": { - "x": 192, - "y": 152, - "w": 47, - "h": 50 - } - }, - { - "filename": "0076.png", - "rotated": false, - "trimmed": true, - "sourceSize": { - "w": 49, - "h": 52 - }, - "spriteSourceSize": { - "x": 2, - "y": 2, - "w": 47, - "h": 50 - }, - "frame": { - "x": 192, - "y": 152, - "w": 47, - "h": 50 - } - }, - { - "filename": "0009.png", - "rotated": false, - "trimmed": true, - "sourceSize": { - "w": 49, - "h": 52 - }, - "spriteSourceSize": { - "x": 2, - "y": 3, - "w": 47, - "h": 49 - }, - "frame": { - "x": 144, - "y": 154, - "w": 47, - "h": 49 - } - }, - { - "filename": "0010.png", - "rotated": false, - "trimmed": true, - "sourceSize": { - "w": 49, - "h": 52 - }, - "spriteSourceSize": { - "x": 2, - "y": 3, - "w": 47, - "h": 49 - }, - "frame": { - "x": 144, - "y": 154, - "w": 47, - "h": 49 - } - }, - { - "filename": "0025.png", - "rotated": false, - "trimmed": true, - "sourceSize": { - "w": 49, - "h": 52 - }, - "spriteSourceSize": { - "x": 2, - "y": 3, - "w": 47, - "h": 49 - }, - "frame": { - "x": 144, - "y": 154, - "w": 47, - "h": 49 - } - }, - { - "filename": "0026.png", - "rotated": false, - "trimmed": true, - "sourceSize": { - "w": 49, - "h": 52 - }, - "spriteSourceSize": { - "x": 2, - "y": 3, - "w": 47, - "h": 49 - }, - "frame": { - "x": 144, - "y": 154, - "w": 47, - "h": 49 - } - }, - { - "filename": "0041.png", - "rotated": false, - "trimmed": true, - "sourceSize": { - "w": 49, - "h": 52 - }, - "spriteSourceSize": { - "x": 2, - "y": 3, - "w": 47, - "h": 49 - }, - "frame": { - "x": 144, - "y": 154, - "w": 47, - "h": 49 - } - }, - { - "filename": "0042.png", - "rotated": false, - "trimmed": true, - "sourceSize": { - "w": 49, - "h": 52 - }, - "spriteSourceSize": { - "x": 2, - "y": 3, - "w": 47, - "h": 49 - }, - "frame": { - "x": 144, - "y": 154, - "w": 47, - "h": 49 - } - }, - { - "filename": "0057.png", - "rotated": false, - "trimmed": true, - "sourceSize": { - "w": 49, - "h": 52 - }, - "spriteSourceSize": { - "x": 2, - "y": 3, - "w": 47, - "h": 49 - }, - "frame": { - "x": 144, - "y": 154, - "w": 47, - "h": 49 - } - }, - { - "filename": "0058.png", - "rotated": false, - "trimmed": true, - "sourceSize": { - "w": 49, - "h": 52 - }, - "spriteSourceSize": { - "x": 2, - "y": 3, - "w": 47, - "h": 49 - }, - "frame": { - "x": 144, - "y": 154, - "w": 47, - "h": 49 - } - }, - { - "filename": "0073.png", - "rotated": false, - "trimmed": true, - "sourceSize": { - "w": 49, - "h": 52 - }, - "spriteSourceSize": { - "x": 2, - "y": 3, - "w": 47, - "h": 49 - }, - "frame": { - "x": 144, - "y": 154, - "w": 47, - "h": 49 - } - }, - { - "filename": "0074.png", - "rotated": false, - "trimmed": true, - "sourceSize": { - "w": 49, - "h": 52 - }, - "spriteSourceSize": { - "x": 2, - "y": 3, - "w": 47, - "h": 49 - }, - "frame": { - "x": 144, - "y": 154, - "w": 47, - "h": 49 - } - } - ] - } - ], - "meta": { - "app": "https://www.codeandweb.com/texturepacker", - "version": "3.0", - "smartupdate": "$TexturePacker:SmartUpdate:037c9a33b267f5b73f2e7c10c87bf653:509435f895db2af666d45fff3ec043dc:d07862436676aa228a148ee1f1d82a8f$" - } -} diff --git a/public/images/pokemon/exp/back/shiny/782.png b/public/images/pokemon/exp/back/shiny/782.png deleted file mode 100644 index 9ecbcf1f035..00000000000 Binary files a/public/images/pokemon/exp/back/shiny/782.png and /dev/null differ diff --git a/public/images/pokemon/exp/back/shiny/783.json b/public/images/pokemon/exp/back/shiny/783.json deleted file mode 100644 index c23c9116e10..00000000000 --- a/public/images/pokemon/exp/back/shiny/783.json +++ /dev/null @@ -1,230 +0,0 @@ -{ - "textures": [ - { - "image": "783.png", - "format": "RGBA8888", - "size": { - "w": 170, - "h": 170 - }, - "scale": 1, - "frames": [ - { - "filename": "0001.png", - "rotated": false, - "trimmed": true, - "sourceSize": { - "w": 60, - "h": 70 - }, - "spriteSourceSize": { - "x": 0, - "y": 1, - "w": 60, - "h": 69 - }, - "frame": { - "x": 0, - "y": 0, - "w": 60, - "h": 69 - } - }, - { - "filename": "0002.png", - "rotated": false, - "trimmed": true, - "sourceSize": { - "w": 60, - "h": 70 - }, - "spriteSourceSize": { - "x": 0, - "y": 0, - "w": 59, - "h": 70 - }, - "frame": { - "x": 0, - "y": 69, - "w": 59, - "h": 70 - } - }, - { - "filename": "0010.png", - "rotated": false, - "trimmed": true, - "sourceSize": { - "w": 60, - "h": 70 - }, - "spriteSourceSize": { - "x": 0, - "y": 0, - "w": 59, - "h": 70 - }, - "frame": { - "x": 0, - "y": 69, - "w": 59, - "h": 70 - } - }, - { - "filename": "0003.png", - "rotated": false, - "trimmed": true, - "sourceSize": { - "w": 60, - "h": 70 - }, - "spriteSourceSize": { - "x": 0, - "y": 0, - "w": 57, - "h": 70 - }, - "frame": { - "x": 60, - "y": 0, - "w": 57, - "h": 70 - } - }, - { - "filename": "0009.png", - "rotated": false, - "trimmed": true, - "sourceSize": { - "w": 60, - "h": 70 - }, - "spriteSourceSize": { - "x": 0, - "y": 0, - "w": 57, - "h": 70 - }, - "frame": { - "x": 60, - "y": 0, - "w": 57, - "h": 70 - } - }, - { - "filename": "0006.png", - "rotated": false, - "trimmed": true, - "sourceSize": { - "w": 60, - "h": 70 - }, - "spriteSourceSize": { - "x": 3, - "y": 0, - "w": 53, - "h": 70 - }, - "frame": { - "x": 117, - "y": 0, - "w": 53, - "h": 70 - } - }, - { - "filename": "0004.png", - "rotated": false, - "trimmed": true, - "sourceSize": { - "w": 60, - "h": 70 - }, - "spriteSourceSize": { - "x": 2, - "y": 0, - "w": 55, - "h": 70 - }, - "frame": { - "x": 59, - "y": 70, - "w": 55, - "h": 70 - } - }, - { - "filename": "0008.png", - "rotated": false, - "trimmed": true, - "sourceSize": { - "w": 60, - "h": 70 - }, - "spriteSourceSize": { - "x": 2, - "y": 0, - "w": 55, - "h": 70 - }, - "frame": { - "x": 59, - "y": 70, - "w": 55, - "h": 70 - } - }, - { - "filename": "0005.png", - "rotated": false, - "trimmed": true, - "sourceSize": { - "w": 60, - "h": 70 - }, - "spriteSourceSize": { - "x": 2, - "y": 0, - "w": 55, - "h": 70 - }, - "frame": { - "x": 114, - "y": 70, - "w": 55, - "h": 70 - } - }, - { - "filename": "0007.png", - "rotated": false, - "trimmed": true, - "sourceSize": { - "w": 60, - "h": 70 - }, - "spriteSourceSize": { - "x": 2, - "y": 0, - "w": 55, - "h": 70 - }, - "frame": { - "x": 114, - "y": 70, - "w": 55, - "h": 70 - } - } - ] - } - ], - "meta": { - "app": "https://www.codeandweb.com/texturepacker", - "version": "3.0", - "smartupdate": "$TexturePacker:SmartUpdate:ceb13eb26bf07b1a43fd9d23cef4895a:399ef100f2226bb28ca73ab82f617bd7:aab166e28c744865a0296041224dd01b$" - } -} diff --git a/public/images/pokemon/exp/back/shiny/783.png b/public/images/pokemon/exp/back/shiny/783.png deleted file mode 100644 index fd57a32b55e..00000000000 Binary files a/public/images/pokemon/exp/back/shiny/783.png and /dev/null differ diff --git a/public/images/pokemon/exp/back/shiny/784.json b/public/images/pokemon/exp/back/shiny/784.json deleted file mode 100644 index 27f3d18b7d6..00000000000 --- a/public/images/pokemon/exp/back/shiny/784.json +++ /dev/null @@ -1,230 +0,0 @@ -{ - "textures": [ - { - "image": "784.png", - "format": "RGBA8888", - "size": { - "w": 240, - "h": 240 - }, - "scale": 1, - "frames": [ - { - "filename": "0001.png", - "rotated": false, - "trimmed": false, - "sourceSize": { - "w": 86, - "h": 81 - }, - "spriteSourceSize": { - "x": 0, - "y": 0, - "w": 86, - "h": 81 - }, - "frame": { - "x": 0, - "y": 0, - "w": 86, - "h": 81 - } - }, - { - "filename": "0002.png", - "rotated": false, - "trimmed": true, - "sourceSize": { - "w": 86, - "h": 81 - }, - "spriteSourceSize": { - "x": 1, - "y": 0, - "w": 84, - "h": 81 - }, - "frame": { - "x": 86, - "y": 0, - "w": 84, - "h": 81 - } - }, - { - "filename": "0010.png", - "rotated": false, - "trimmed": true, - "sourceSize": { - "w": 86, - "h": 81 - }, - "spriteSourceSize": { - "x": 1, - "y": 0, - "w": 84, - "h": 81 - }, - "frame": { - "x": 86, - "y": 0, - "w": 84, - "h": 81 - } - }, - { - "filename": "0003.png", - "rotated": false, - "trimmed": true, - "sourceSize": { - "w": 86, - "h": 81 - }, - "spriteSourceSize": { - "x": 2, - "y": 0, - "w": 81, - "h": 81 - }, - "frame": { - "x": 0, - "y": 81, - "w": 81, - "h": 81 - } - }, - { - "filename": "0009.png", - "rotated": false, - "trimmed": true, - "sourceSize": { - "w": 86, - "h": 81 - }, - "spriteSourceSize": { - "x": 2, - "y": 0, - "w": 81, - "h": 81 - }, - "frame": { - "x": 0, - "y": 81, - "w": 81, - "h": 81 - } - }, - { - "filename": "0004.png", - "rotated": false, - "trimmed": true, - "sourceSize": { - "w": 86, - "h": 81 - }, - "spriteSourceSize": { - "x": 4, - "y": 0, - "w": 78, - "h": 81 - }, - "frame": { - "x": 81, - "y": 81, - "w": 78, - "h": 81 - } - }, - { - "filename": "0008.png", - "rotated": false, - "trimmed": true, - "sourceSize": { - "w": 86, - "h": 81 - }, - "spriteSourceSize": { - "x": 4, - "y": 0, - "w": 78, - "h": 81 - }, - "frame": { - "x": 81, - "y": 81, - "w": 78, - "h": 81 - } - }, - { - "filename": "0006.png", - "rotated": false, - "trimmed": true, - "sourceSize": { - "w": 86, - "h": 81 - }, - "spriteSourceSize": { - "x": 4, - "y": 2, - "w": 79, - "h": 79 - }, - "frame": { - "x": 159, - "y": 81, - "w": 79, - "h": 79 - } - }, - { - "filename": "0005.png", - "rotated": false, - "trimmed": true, - "sourceSize": { - "w": 86, - "h": 81 - }, - "spriteSourceSize": { - "x": 4, - "y": 1, - "w": 78, - "h": 80 - }, - "frame": { - "x": 159, - "y": 160, - "w": 78, - "h": 80 - } - }, - { - "filename": "0007.png", - "rotated": false, - "trimmed": true, - "sourceSize": { - "w": 86, - "h": 81 - }, - "spriteSourceSize": { - "x": 4, - "y": 1, - "w": 78, - "h": 80 - }, - "frame": { - "x": 159, - "y": 160, - "w": 78, - "h": 80 - } - } - ] - } - ], - "meta": { - "app": "https://www.codeandweb.com/texturepacker", - "version": "3.0", - "smartupdate": "$TexturePacker:SmartUpdate:841ddb49f9601ed6f43373fcdfd97a55:abdfda19e619b7f57eb4c9c5d68cc9d9:c2f7ca3ab1075b8c824730653d891244$" - } -} diff --git a/public/images/pokemon/exp/back/shiny/784.png b/public/images/pokemon/exp/back/shiny/784.png deleted file mode 100644 index fdec2486c56..00000000000 Binary files a/public/images/pokemon/exp/back/shiny/784.png and /dev/null differ diff --git a/public/images/pokemon/exp/back/shiny/840.json b/public/images/pokemon/exp/back/shiny/840.json index ccacb7508ff..eb5a925c565 100644 --- a/public/images/pokemon/exp/back/shiny/840.json +++ b/public/images/pokemon/exp/back/shiny/840.json @@ -1,230 +1,1145 @@ -{ - "textures": [ - { - "image": "840.png", - "format": "RGBA8888", - "size": { - "w": 95, - "h": 95 - }, - "scale": 1, - "frames": [ - { - "filename": "0004.png", - "rotated": false, - "trimmed": false, - "sourceSize": { - "w": 32, - "h": 42 - }, - "spriteSourceSize": { - "x": 0, - "y": 0, - "w": 32, - "h": 42 - }, - "frame": { - "x": 0, - "y": 0, - "w": 32, - "h": 42 - } - }, - { - "filename": "0008.png", - "rotated": false, - "trimmed": false, - "sourceSize": { - "w": 32, - "h": 42 - }, - "spriteSourceSize": { - "x": 0, - "y": 0, - "w": 32, - "h": 42 - }, - "frame": { - "x": 0, - "y": 0, - "w": 32, - "h": 42 - } - }, - { - "filename": "0005.png", - "rotated": false, - "trimmed": false, - "sourceSize": { - "w": 32, - "h": 42 - }, - "spriteSourceSize": { - "x": 0, - "y": 0, - "w": 32, - "h": 42 - }, - "frame": { - "x": 0, - "y": 42, - "w": 32, - "h": 42 - } - }, - { - "filename": "0007.png", - "rotated": false, - "trimmed": false, - "sourceSize": { - "w": 32, - "h": 42 - }, - "spriteSourceSize": { - "x": 0, - "y": 0, - "w": 32, - "h": 42 - }, - "frame": { - "x": 0, - "y": 42, - "w": 32, - "h": 42 - } - }, - { - "filename": "0003.png", - "rotated": false, - "trimmed": true, - "sourceSize": { - "w": 32, - "h": 42 - }, - "spriteSourceSize": { - "x": 0, - "y": 1, - "w": 32, - "h": 41 - }, - "frame": { - "x": 32, - "y": 0, - "w": 32, - "h": 41 - } - }, - { - "filename": "0009.png", - "rotated": false, - "trimmed": true, - "sourceSize": { - "w": 32, - "h": 42 - }, - "spriteSourceSize": { - "x": 0, - "y": 1, - "w": 32, - "h": 41 - }, - "frame": { - "x": 32, - "y": 0, - "w": 32, - "h": 41 - } - }, - { - "filename": "0001.png", - "rotated": false, - "trimmed": true, - "sourceSize": { - "w": 32, - "h": 42 - }, - "spriteSourceSize": { - "x": 0, - "y": 0, - "w": 31, - "h": 42 - }, - "frame": { - "x": 64, - "y": 0, - "w": 31, - "h": 42 - } - }, - { - "filename": "0006.png", - "rotated": false, - "trimmed": true, - "sourceSize": { - "w": 32, - "h": 42 - }, - "spriteSourceSize": { - "x": 1, - "y": 0, - "w": 31, - "h": 42 - }, - "frame": { - "x": 32, - "y": 41, - "w": 31, - "h": 42 - } - }, - { - "filename": "0002.png", - "rotated": false, - "trimmed": true, - "sourceSize": { - "w": 32, - "h": 42 - }, - "spriteSourceSize": { - "x": 0, - "y": 1, - "w": 31, - "h": 41 - }, - "frame": { - "x": 63, - "y": 42, - "w": 31, - "h": 41 - } - }, - { - "filename": "0010.png", - "rotated": false, - "trimmed": true, - "sourceSize": { - "w": 32, - "h": 42 - }, - "spriteSourceSize": { - "x": 0, - "y": 1, - "w": 31, - "h": 41 - }, - "frame": { - "x": 63, - "y": 42, - "w": 31, - "h": 41 - } - } - ] - } - ], - "meta": { - "app": "https://www.codeandweb.com/texturepacker", - "version": "3.0", - "smartupdate": "$TexturePacker:SmartUpdate:c19a2ef85c7903c2a4c922be93e361d7:7a1608b4463c8ee6cb033125d1c506b4:c6a93eb4343acba47be6c18cd2c93ef1$" - } +{ "frames": [ + { + "filename": "0001.png", + "frame": { "x": 73, "y": 44, "w": 33, "h": 41 }, + "rotated": false, + "trimmed": true, + "spriteSourceSize": { "x": 0, "y": 2, "w": 33, "h": 41 }, + "sourceSize": { "w": 37, "h": 44 }, + "duration": 80 + }, + { + "filename": "0002.png", + "frame": { "x": 136, "y": 90, "w": 33, "h": 40 }, + "rotated": false, + "trimmed": true, + "spriteSourceSize": { "x": 0, "y": 3, "w": 33, "h": 40 }, + "sourceSize": { "w": 37, "h": 44 }, + "duration": 80 + }, + { + "filename": "0003.png", + "frame": { "x": 171, "y": 91, "w": 33, "h": 40 }, + "rotated": false, + "trimmed": true, + "spriteSourceSize": { "x": 0, "y": 3, "w": 33, "h": 40 }, + "sourceSize": { "w": 37, "h": 44 }, + "duration": 80 + }, + { + "filename": "0004.png", + "frame": { "x": 37, "y": 44, "w": 34, "h": 40 }, + "rotated": false, + "trimmed": true, + "spriteSourceSize": { "x": 0, "y": 3, "w": 34, "h": 40 }, + "sourceSize": { "w": 37, "h": 44 }, + "duration": 80 + }, + { + "filename": "0005.png", + "frame": { "x": 79, "y": 2, "w": 35, "h": 40 }, + "rotated": false, + "trimmed": true, + "spriteSourceSize": { "x": 0, "y": 4, "w": 35, "h": 40 }, + "sourceSize": { "w": 37, "h": 44 }, + "duration": 80 + }, + { + "filename": "0006.png", + "frame": { "x": 41, "y": 2, "w": 36, "h": 40 }, + "rotated": false, + "trimmed": true, + "spriteSourceSize": { "x": 0, "y": 4, "w": 36, "h": 40 }, + "sourceSize": { "w": 37, "h": 44 }, + "duration": 80 + }, + { + "filename": "0007.png", + "frame": { "x": 2, "y": 2, "w": 37, "h": 40 }, + "rotated": false, + "trimmed": true, + "spriteSourceSize": { "x": 0, "y": 4, "w": 37, "h": 40 }, + "sourceSize": { "w": 37, "h": 44 }, + "duration": 80 + }, + { + "filename": "0008.png", + "frame": { "x": 2, "y": 2, "w": 37, "h": 40 }, + "rotated": false, + "trimmed": true, + "spriteSourceSize": { "x": 0, "y": 4, "w": 37, "h": 40 }, + "sourceSize": { "w": 37, "h": 44 }, + "duration": 80 + }, + { + "filename": "0009.png", + "frame": { "x": 2, "y": 2, "w": 37, "h": 40 }, + "rotated": false, + "trimmed": true, + "spriteSourceSize": { "x": 0, "y": 4, "w": 37, "h": 40 }, + "sourceSize": { "w": 37, "h": 44 }, + "duration": 80 + }, + { + "filename": "0010.png", + "frame": { "x": 116, "y": 2, "w": 34, "h": 41 }, + "rotated": false, + "trimmed": true, + "spriteSourceSize": { "x": 0, "y": 2, "w": 34, "h": 41 }, + "sourceSize": { "w": 37, "h": 44 }, + "duration": 80 + }, + { + "filename": "0011.png", + "frame": { "x": 35, "y": 131, "w": 33, "h": 40 }, + "rotated": false, + "trimmed": true, + "spriteSourceSize": { "x": 0, "y": 3, "w": 33, "h": 40 }, + "sourceSize": { "w": 37, "h": 44 }, + "duration": 80 + }, + { + "filename": "0012.png", + "frame": { "x": 136, "y": 132, "w": 33, "h": 40 }, + "rotated": false, + "trimmed": true, + "spriteSourceSize": { "x": 0, "y": 3, "w": 33, "h": 40 }, + "sourceSize": { "w": 37, "h": 44 }, + "duration": 80 + }, + { + "filename": "0013.png", + "frame": { "x": 171, "y": 133, "w": 33, "h": 40 }, + "rotated": false, + "trimmed": true, + "spriteSourceSize": { "x": 0, "y": 3, "w": 33, "h": 40 }, + "sourceSize": { "w": 37, "h": 44 }, + "duration": 80 + }, + { + "filename": "0014.png", + "frame": { "x": 73, "y": 44, "w": 33, "h": 41 }, + "rotated": false, + "trimmed": true, + "spriteSourceSize": { "x": 0, "y": 2, "w": 33, "h": 41 }, + "sourceSize": { "w": 37, "h": 44 }, + "duration": 80 + }, + { + "filename": "0015.png", + "frame": { "x": 73, "y": 44, "w": 33, "h": 41 }, + "rotated": false, + "trimmed": true, + "spriteSourceSize": { "x": 0, "y": 2, "w": 33, "h": 41 }, + "sourceSize": { "w": 37, "h": 44 }, + "duration": 80 + }, + { + "filename": "0016.png", + "frame": { "x": 152, "y": 2, "w": 33, "h": 42 }, + "rotated": false, + "trimmed": true, + "spriteSourceSize": { "x": 0, "y": 1, "w": 33, "h": 42 }, + "sourceSize": { "w": 37, "h": 44 }, + "duration": 80 + }, + { + "filename": "0017.png", + "frame": { "x": 108, "y": 45, "w": 32, "h": 42 }, + "rotated": false, + "trimmed": true, + "spriteSourceSize": { "x": 0, "y": 1, "w": 32, "h": 42 }, + "sourceSize": { "w": 37, "h": 44 }, + "duration": 80 + }, + { + "filename": "0018.png", + "frame": { "x": 176, "y": 46, "w": 31, "h": 43 }, + "rotated": false, + "trimmed": true, + "spriteSourceSize": { "x": 0, "y": 0, "w": 31, "h": 43 }, + "sourceSize": { "w": 37, "h": 44 }, + "duration": 80 + }, + { + "filename": "0019.png", + "frame": { "x": 37, "y": 86, "w": 31, "h": 43 }, + "rotated": false, + "trimmed": true, + "spriteSourceSize": { "x": 0, "y": 0, "w": 31, "h": 43 }, + "sourceSize": { "w": 37, "h": 44 }, + "duration": 80 + }, + { + "filename": "0020.png", + "frame": { "x": 70, "y": 87, "w": 31, "h": 43 }, + "rotated": false, + "trimmed": true, + "spriteSourceSize": { "x": 0, "y": 0, "w": 31, "h": 43 }, + "sourceSize": { "w": 37, "h": 44 }, + "duration": 80 + }, + { + "filename": "0021.png", + "frame": { "x": 2, "y": 88, "w": 31, "h": 43 }, + "rotated": false, + "trimmed": true, + "spriteSourceSize": { "x": 0, "y": 0, "w": 31, "h": 43 }, + "sourceSize": { "w": 37, "h": 44 }, + "duration": 80 + }, + { + "filename": "0022.png", + "frame": { "x": 2, "y": 88, "w": 31, "h": 43 }, + "rotated": false, + "trimmed": true, + "spriteSourceSize": { "x": 0, "y": 0, "w": 31, "h": 43 }, + "sourceSize": { "w": 37, "h": 44 }, + "duration": 80 + }, + { + "filename": "0023.png", + "frame": { "x": 2, "y": 88, "w": 31, "h": 43 }, + "rotated": false, + "trimmed": true, + "spriteSourceSize": { "x": 0, "y": 0, "w": 31, "h": 43 }, + "sourceSize": { "w": 37, "h": 44 }, + "duration": 80 + }, + { + "filename": "0024.png", + "frame": { "x": 70, "y": 132, "w": 30, "h": 43 }, + "rotated": false, + "trimmed": true, + "spriteSourceSize": { "x": 0, "y": 0, "w": 30, "h": 43 }, + "sourceSize": { "w": 37, "h": 44 }, + "duration": 80 + }, + { + "filename": "0025.png", + "frame": { "x": 103, "y": 89, "w": 31, "h": 43 }, + "rotated": false, + "trimmed": true, + "spriteSourceSize": { "x": 0, "y": 0, "w": 31, "h": 43 }, + "sourceSize": { "w": 37, "h": 44 }, + "duration": 80 + }, + { + "filename": "0026.png", + "frame": { "x": 142, "y": 46, "w": 32, "h": 42 }, + "rotated": false, + "trimmed": true, + "spriteSourceSize": { "x": 0, "y": 1, "w": 32, "h": 42 }, + "sourceSize": { "w": 37, "h": 44 }, + "duration": 80 + }, + { + "filename": "0027.png", + "frame": { "x": 187, "y": 2, "w": 33, "h": 42 }, + "rotated": false, + "trimmed": true, + "spriteSourceSize": { "x": 0, "y": 1, "w": 33, "h": 42 }, + "sourceSize": { "w": 37, "h": 44 }, + "duration": 80 + }, + { + "filename": "0028.png", + "frame": { "x": 2, "y": 44, "w": 33, "h": 42 }, + "rotated": false, + "trimmed": true, + "spriteSourceSize": { "x": 0, "y": 1, "w": 33, "h": 42 }, + "sourceSize": { "w": 37, "h": 44 }, + "duration": 80 + }, + { + "filename": "0029.png", + "frame": { "x": 73, "y": 44, "w": 33, "h": 41 }, + "rotated": false, + "trimmed": true, + "spriteSourceSize": { "x": 0, "y": 2, "w": 33, "h": 41 }, + "sourceSize": { "w": 37, "h": 44 }, + "duration": 80 + }, + { + "filename": "0030.png", + "frame": { "x": 73, "y": 44, "w": 33, "h": 41 }, + "rotated": false, + "trimmed": true, + "spriteSourceSize": { "x": 0, "y": 2, "w": 33, "h": 41 }, + "sourceSize": { "w": 37, "h": 44 }, + "duration": 80 + }, + { + "filename": "0031.png", + "frame": { "x": 73, "y": 44, "w": 33, "h": 41 }, + "rotated": false, + "trimmed": true, + "spriteSourceSize": { "x": 0, "y": 2, "w": 33, "h": 41 }, + "sourceSize": { "w": 37, "h": 44 }, + "duration": 80 + }, + { + "filename": "0032.png", + "frame": { "x": 73, "y": 44, "w": 33, "h": 41 }, + "rotated": false, + "trimmed": true, + "spriteSourceSize": { "x": 0, "y": 2, "w": 33, "h": 41 }, + "sourceSize": { "w": 37, "h": 44 }, + "duration": 80 + }, + { + "filename": "0033.png", + "frame": { "x": 73, "y": 44, "w": 33, "h": 41 }, + "rotated": false, + "trimmed": true, + "spriteSourceSize": { "x": 0, "y": 2, "w": 33, "h": 41 }, + "sourceSize": { "w": 37, "h": 44 }, + "duration": 80 + }, + { + "filename": "0034.png", + "frame": { "x": 136, "y": 90, "w": 33, "h": 40 }, + "rotated": false, + "trimmed": true, + "spriteSourceSize": { "x": 0, "y": 3, "w": 33, "h": 40 }, + "sourceSize": { "w": 37, "h": 44 }, + "duration": 80 + }, + { + "filename": "0035.png", + "frame": { "x": 171, "y": 91, "w": 33, "h": 40 }, + "rotated": false, + "trimmed": true, + "spriteSourceSize": { "x": 0, "y": 3, "w": 33, "h": 40 }, + "sourceSize": { "w": 37, "h": 44 }, + "duration": 80 + }, + { + "filename": "0036.png", + "frame": { "x": 37, "y": 44, "w": 34, "h": 40 }, + "rotated": false, + "trimmed": true, + "spriteSourceSize": { "x": 0, "y": 3, "w": 34, "h": 40 }, + "sourceSize": { "w": 37, "h": 44 }, + "duration": 80 + }, + { + "filename": "0037.png", + "frame": { "x": 79, "y": 2, "w": 35, "h": 40 }, + "rotated": false, + "trimmed": true, + "spriteSourceSize": { "x": 0, "y": 4, "w": 35, "h": 40 }, + "sourceSize": { "w": 37, "h": 44 }, + "duration": 80 + }, + { + "filename": "0038.png", + "frame": { "x": 41, "y": 2, "w": 36, "h": 40 }, + "rotated": false, + "trimmed": true, + "spriteSourceSize": { "x": 0, "y": 4, "w": 36, "h": 40 }, + "sourceSize": { "w": 37, "h": 44 }, + "duration": 80 + }, + { + "filename": "0039.png", + "frame": { "x": 2, "y": 2, "w": 37, "h": 40 }, + "rotated": false, + "trimmed": true, + "spriteSourceSize": { "x": 0, "y": 4, "w": 37, "h": 40 }, + "sourceSize": { "w": 37, "h": 44 }, + "duration": 80 + }, + { + "filename": "0040.png", + "frame": { "x": 2, "y": 2, "w": 37, "h": 40 }, + "rotated": false, + "trimmed": true, + "spriteSourceSize": { "x": 0, "y": 4, "w": 37, "h": 40 }, + "sourceSize": { "w": 37, "h": 44 }, + "duration": 80 + }, + { + "filename": "0041.png", + "frame": { "x": 2, "y": 2, "w": 37, "h": 40 }, + "rotated": false, + "trimmed": true, + "spriteSourceSize": { "x": 0, "y": 4, "w": 37, "h": 40 }, + "sourceSize": { "w": 37, "h": 44 }, + "duration": 80 + }, + { + "filename": "0042.png", + "frame": { "x": 116, "y": 2, "w": 34, "h": 41 }, + "rotated": false, + "trimmed": true, + "spriteSourceSize": { "x": 0, "y": 2, "w": 34, "h": 41 }, + "sourceSize": { "w": 37, "h": 44 }, + "duration": 80 + }, + { + "filename": "0043.png", + "frame": { "x": 35, "y": 131, "w": 33, "h": 40 }, + "rotated": false, + "trimmed": true, + "spriteSourceSize": { "x": 0, "y": 3, "w": 33, "h": 40 }, + "sourceSize": { "w": 37, "h": 44 }, + "duration": 80 + }, + { + "filename": "0044.png", + "frame": { "x": 136, "y": 132, "w": 33, "h": 40 }, + "rotated": false, + "trimmed": true, + "spriteSourceSize": { "x": 0, "y": 3, "w": 33, "h": 40 }, + "sourceSize": { "w": 37, "h": 44 }, + "duration": 80 + }, + { + "filename": "0045.png", + "frame": { "x": 171, "y": 133, "w": 33, "h": 40 }, + "rotated": false, + "trimmed": true, + "spriteSourceSize": { "x": 0, "y": 3, "w": 33, "h": 40 }, + "sourceSize": { "w": 37, "h": 44 }, + "duration": 80 + }, + { + "filename": "0046.png", + "frame": { "x": 73, "y": 44, "w": 33, "h": 41 }, + "rotated": false, + "trimmed": true, + "spriteSourceSize": { "x": 0, "y": 2, "w": 33, "h": 41 }, + "sourceSize": { "w": 37, "h": 44 }, + "duration": 80 + }, + { + "filename": "0047.png", + "frame": { "x": 73, "y": 44, "w": 33, "h": 41 }, + "rotated": false, + "trimmed": true, + "spriteSourceSize": { "x": 0, "y": 2, "w": 33, "h": 41 }, + "sourceSize": { "w": 37, "h": 44 }, + "duration": 80 + }, + { + "filename": "0048.png", + "frame": { "x": 152, "y": 2, "w": 33, "h": 42 }, + "rotated": false, + "trimmed": true, + "spriteSourceSize": { "x": 0, "y": 1, "w": 33, "h": 42 }, + "sourceSize": { "w": 37, "h": 44 }, + "duration": 80 + }, + { + "filename": "0049.png", + "frame": { "x": 108, "y": 45, "w": 32, "h": 42 }, + "rotated": false, + "trimmed": true, + "spriteSourceSize": { "x": 0, "y": 1, "w": 32, "h": 42 }, + "sourceSize": { "w": 37, "h": 44 }, + "duration": 80 + }, + { + "filename": "0050.png", + "frame": { "x": 176, "y": 46, "w": 31, "h": 43 }, + "rotated": false, + "trimmed": true, + "spriteSourceSize": { "x": 0, "y": 0, "w": 31, "h": 43 }, + "sourceSize": { "w": 37, "h": 44 }, + "duration": 80 + }, + { + "filename": "0051.png", + "frame": { "x": 37, "y": 86, "w": 31, "h": 43 }, + "rotated": false, + "trimmed": true, + "spriteSourceSize": { "x": 0, "y": 0, "w": 31, "h": 43 }, + "sourceSize": { "w": 37, "h": 44 }, + "duration": 80 + }, + { + "filename": "0052.png", + "frame": { "x": 70, "y": 87, "w": 31, "h": 43 }, + "rotated": false, + "trimmed": true, + "spriteSourceSize": { "x": 0, "y": 0, "w": 31, "h": 43 }, + "sourceSize": { "w": 37, "h": 44 }, + "duration": 80 + }, + { + "filename": "0053.png", + "frame": { "x": 2, "y": 88, "w": 31, "h": 43 }, + "rotated": false, + "trimmed": true, + "spriteSourceSize": { "x": 0, "y": 0, "w": 31, "h": 43 }, + "sourceSize": { "w": 37, "h": 44 }, + "duration": 80 + }, + { + "filename": "0054.png", + "frame": { "x": 2, "y": 88, "w": 31, "h": 43 }, + "rotated": false, + "trimmed": true, + "spriteSourceSize": { "x": 0, "y": 0, "w": 31, "h": 43 }, + "sourceSize": { "w": 37, "h": 44 }, + "duration": 80 + }, + { + "filename": "0055.png", + "frame": { "x": 2, "y": 88, "w": 31, "h": 43 }, + "rotated": false, + "trimmed": true, + "spriteSourceSize": { "x": 0, "y": 0, "w": 31, "h": 43 }, + "sourceSize": { "w": 37, "h": 44 }, + "duration": 80 + }, + { + "filename": "0056.png", + "frame": { "x": 70, "y": 132, "w": 30, "h": 43 }, + "rotated": false, + "trimmed": true, + "spriteSourceSize": { "x": 0, "y": 0, "w": 30, "h": 43 }, + "sourceSize": { "w": 37, "h": 44 }, + "duration": 80 + }, + { + "filename": "0057.png", + "frame": { "x": 103, "y": 89, "w": 31, "h": 43 }, + "rotated": false, + "trimmed": true, + "spriteSourceSize": { "x": 0, "y": 0, "w": 31, "h": 43 }, + "sourceSize": { "w": 37, "h": 44 }, + "duration": 80 + }, + { + "filename": "0058.png", + "frame": { "x": 142, "y": 46, "w": 32, "h": 42 }, + "rotated": false, + "trimmed": true, + "spriteSourceSize": { "x": 0, "y": 1, "w": 32, "h": 42 }, + "sourceSize": { "w": 37, "h": 44 }, + "duration": 80 + }, + { + "filename": "0059.png", + "frame": { "x": 187, "y": 2, "w": 33, "h": 42 }, + "rotated": false, + "trimmed": true, + "spriteSourceSize": { "x": 0, "y": 1, "w": 33, "h": 42 }, + "sourceSize": { "w": 37, "h": 44 }, + "duration": 80 + }, + { + "filename": "0060.png", + "frame": { "x": 2, "y": 44, "w": 33, "h": 42 }, + "rotated": false, + "trimmed": true, + "spriteSourceSize": { "x": 0, "y": 1, "w": 33, "h": 42 }, + "sourceSize": { "w": 37, "h": 44 }, + "duration": 80 + }, + { + "filename": "0061.png", + "frame": { "x": 73, "y": 44, "w": 33, "h": 41 }, + "rotated": false, + "trimmed": true, + "spriteSourceSize": { "x": 0, "y": 2, "w": 33, "h": 41 }, + "sourceSize": { "w": 37, "h": 44 }, + "duration": 80 + }, + { + "filename": "0062.png", + "frame": { "x": 73, "y": 44, "w": 33, "h": 41 }, + "rotated": false, + "trimmed": true, + "spriteSourceSize": { "x": 0, "y": 2, "w": 33, "h": 41 }, + "sourceSize": { "w": 37, "h": 44 }, + "duration": 80 + }, + { + "filename": "0063.png", + "frame": { "x": 73, "y": 44, "w": 33, "h": 41 }, + "rotated": false, + "trimmed": true, + "spriteSourceSize": { "x": 0, "y": 2, "w": 33, "h": 41 }, + "sourceSize": { "w": 37, "h": 44 }, + "duration": 80 + }, + { + "filename": "0064.png", + "frame": { "x": 73, "y": 44, "w": 33, "h": 41 }, + "rotated": false, + "trimmed": true, + "spriteSourceSize": { "x": 0, "y": 2, "w": 33, "h": 41 }, + "sourceSize": { "w": 37, "h": 44 }, + "duration": 80 + }, + { + "filename": "0065.png", + "frame": { "x": 73, "y": 44, "w": 33, "h": 41 }, + "rotated": false, + "trimmed": true, + "spriteSourceSize": { "x": 0, "y": 2, "w": 33, "h": 41 }, + "sourceSize": { "w": 37, "h": 44 }, + "duration": 80 + }, + { + "filename": "0066.png", + "frame": { "x": 136, "y": 90, "w": 33, "h": 40 }, + "rotated": false, + "trimmed": true, + "spriteSourceSize": { "x": 0, "y": 3, "w": 33, "h": 40 }, + "sourceSize": { "w": 37, "h": 44 }, + "duration": 80 + }, + { + "filename": "0067.png", + "frame": { "x": 171, "y": 91, "w": 33, "h": 40 }, + "rotated": false, + "trimmed": true, + "spriteSourceSize": { "x": 0, "y": 3, "w": 33, "h": 40 }, + "sourceSize": { "w": 37, "h": 44 }, + "duration": 80 + }, + { + "filename": "0068.png", + "frame": { "x": 37, "y": 44, "w": 34, "h": 40 }, + "rotated": false, + "trimmed": true, + "spriteSourceSize": { "x": 0, "y": 3, "w": 34, "h": 40 }, + "sourceSize": { "w": 37, "h": 44 }, + "duration": 80 + }, + { + "filename": "0069.png", + "frame": { "x": 79, "y": 2, "w": 35, "h": 40 }, + "rotated": false, + "trimmed": true, + "spriteSourceSize": { "x": 0, "y": 4, "w": 35, "h": 40 }, + "sourceSize": { "w": 37, "h": 44 }, + "duration": 80 + }, + { + "filename": "0070.png", + "frame": { "x": 41, "y": 2, "w": 36, "h": 40 }, + "rotated": false, + "trimmed": true, + "spriteSourceSize": { "x": 0, "y": 4, "w": 36, "h": 40 }, + "sourceSize": { "w": 37, "h": 44 }, + "duration": 80 + }, + { + "filename": "0071.png", + "frame": { "x": 2, "y": 2, "w": 37, "h": 40 }, + "rotated": false, + "trimmed": true, + "spriteSourceSize": { "x": 0, "y": 4, "w": 37, "h": 40 }, + "sourceSize": { "w": 37, "h": 44 }, + "duration": 80 + }, + { + "filename": "0072.png", + "frame": { "x": 2, "y": 2, "w": 37, "h": 40 }, + "rotated": false, + "trimmed": true, + "spriteSourceSize": { "x": 0, "y": 4, "w": 37, "h": 40 }, + "sourceSize": { "w": 37, "h": 44 }, + "duration": 80 + }, + { + "filename": "0073.png", + "frame": { "x": 2, "y": 2, "w": 37, "h": 40 }, + "rotated": false, + "trimmed": true, + "spriteSourceSize": { "x": 0, "y": 4, "w": 37, "h": 40 }, + "sourceSize": { "w": 37, "h": 44 }, + "duration": 80 + }, + { + "filename": "0074.png", + "frame": { "x": 116, "y": 2, "w": 34, "h": 41 }, + "rotated": false, + "trimmed": true, + "spriteSourceSize": { "x": 0, "y": 2, "w": 34, "h": 41 }, + "sourceSize": { "w": 37, "h": 44 }, + "duration": 80 + }, + { + "filename": "0075.png", + "frame": { "x": 35, "y": 131, "w": 33, "h": 40 }, + "rotated": false, + "trimmed": true, + "spriteSourceSize": { "x": 0, "y": 3, "w": 33, "h": 40 }, + "sourceSize": { "w": 37, "h": 44 }, + "duration": 80 + }, + { + "filename": "0076.png", + "frame": { "x": 136, "y": 132, "w": 33, "h": 40 }, + "rotated": false, + "trimmed": true, + "spriteSourceSize": { "x": 0, "y": 3, "w": 33, "h": 40 }, + "sourceSize": { "w": 37, "h": 44 }, + "duration": 80 + }, + { + "filename": "0077.png", + "frame": { "x": 171, "y": 133, "w": 33, "h": 40 }, + "rotated": false, + "trimmed": true, + "spriteSourceSize": { "x": 0, "y": 3, "w": 33, "h": 40 }, + "sourceSize": { "w": 37, "h": 44 }, + "duration": 80 + }, + { + "filename": "0078.png", + "frame": { "x": 73, "y": 44, "w": 33, "h": 41 }, + "rotated": false, + "trimmed": true, + "spriteSourceSize": { "x": 0, "y": 2, "w": 33, "h": 41 }, + "sourceSize": { "w": 37, "h": 44 }, + "duration": 80 + }, + { + "filename": "0079.png", + "frame": { "x": 73, "y": 44, "w": 33, "h": 41 }, + "rotated": false, + "trimmed": true, + "spriteSourceSize": { "x": 0, "y": 2, "w": 33, "h": 41 }, + "sourceSize": { "w": 37, "h": 44 }, + "duration": 80 + }, + { + "filename": "0080.png", + "frame": { "x": 152, "y": 2, "w": 33, "h": 42 }, + "rotated": false, + "trimmed": true, + "spriteSourceSize": { "x": 0, "y": 1, "w": 33, "h": 42 }, + "sourceSize": { "w": 37, "h": 44 }, + "duration": 80 + }, + { + "filename": "0081.png", + "frame": { "x": 108, "y": 45, "w": 32, "h": 42 }, + "rotated": false, + "trimmed": true, + "spriteSourceSize": { "x": 0, "y": 1, "w": 32, "h": 42 }, + "sourceSize": { "w": 37, "h": 44 }, + "duration": 80 + }, + { + "filename": "0082.png", + "frame": { "x": 176, "y": 46, "w": 31, "h": 43 }, + "rotated": false, + "trimmed": true, + "spriteSourceSize": { "x": 0, "y": 0, "w": 31, "h": 43 }, + "sourceSize": { "w": 37, "h": 44 }, + "duration": 80 + }, + { + "filename": "0083.png", + "frame": { "x": 37, "y": 86, "w": 31, "h": 43 }, + "rotated": false, + "trimmed": true, + "spriteSourceSize": { "x": 0, "y": 0, "w": 31, "h": 43 }, + "sourceSize": { "w": 37, "h": 44 }, + "duration": 80 + }, + { + "filename": "0084.png", + "frame": { "x": 70, "y": 87, "w": 31, "h": 43 }, + "rotated": false, + "trimmed": true, + "spriteSourceSize": { "x": 0, "y": 0, "w": 31, "h": 43 }, + "sourceSize": { "w": 37, "h": 44 }, + "duration": 80 + }, + { + "filename": "0085.png", + "frame": { "x": 2, "y": 88, "w": 31, "h": 43 }, + "rotated": false, + "trimmed": true, + "spriteSourceSize": { "x": 0, "y": 0, "w": 31, "h": 43 }, + "sourceSize": { "w": 37, "h": 44 }, + "duration": 80 + }, + { + "filename": "0086.png", + "frame": { "x": 2, "y": 88, "w": 31, "h": 43 }, + "rotated": false, + "trimmed": true, + "spriteSourceSize": { "x": 0, "y": 0, "w": 31, "h": 43 }, + "sourceSize": { "w": 37, "h": 44 }, + "duration": 80 + }, + { + "filename": "0087.png", + "frame": { "x": 2, "y": 88, "w": 31, "h": 43 }, + "rotated": false, + "trimmed": true, + "spriteSourceSize": { "x": 0, "y": 0, "w": 31, "h": 43 }, + "sourceSize": { "w": 37, "h": 44 }, + "duration": 80 + }, + { + "filename": "0088.png", + "frame": { "x": 70, "y": 132, "w": 30, "h": 43 }, + "rotated": false, + "trimmed": true, + "spriteSourceSize": { "x": 0, "y": 0, "w": 30, "h": 43 }, + "sourceSize": { "w": 37, "h": 44 }, + "duration": 80 + }, + { + "filename": "0089.png", + "frame": { "x": 103, "y": 89, "w": 31, "h": 43 }, + "rotated": false, + "trimmed": true, + "spriteSourceSize": { "x": 0, "y": 0, "w": 31, "h": 43 }, + "sourceSize": { "w": 37, "h": 44 }, + "duration": 80 + }, + { + "filename": "0090.png", + "frame": { "x": 142, "y": 46, "w": 32, "h": 42 }, + "rotated": false, + "trimmed": true, + "spriteSourceSize": { "x": 0, "y": 1, "w": 32, "h": 42 }, + "sourceSize": { "w": 37, "h": 44 }, + "duration": 80 + }, + { + "filename": "0091.png", + "frame": { "x": 187, "y": 2, "w": 33, "h": 42 }, + "rotated": false, + "trimmed": true, + "spriteSourceSize": { "x": 0, "y": 1, "w": 33, "h": 42 }, + "sourceSize": { "w": 37, "h": 44 }, + "duration": 80 + }, + { + "filename": "0092.png", + "frame": { "x": 2, "y": 44, "w": 33, "h": 42 }, + "rotated": false, + "trimmed": true, + "spriteSourceSize": { "x": 0, "y": 1, "w": 33, "h": 42 }, + "sourceSize": { "w": 37, "h": 44 }, + "duration": 80 + }, + { + "filename": "0093.png", + "frame": { "x": 73, "y": 44, "w": 33, "h": 41 }, + "rotated": false, + "trimmed": true, + "spriteSourceSize": { "x": 0, "y": 2, "w": 33, "h": 41 }, + "sourceSize": { "w": 37, "h": 44 }, + "duration": 80 + }, + { + "filename": "0094.png", + "frame": { "x": 73, "y": 44, "w": 33, "h": 41 }, + "rotated": false, + "trimmed": true, + "spriteSourceSize": { "x": 0, "y": 2, "w": 33, "h": 41 }, + "sourceSize": { "w": 37, "h": 44 }, + "duration": 80 + }, + { + "filename": "0095.png", + "frame": { "x": 73, "y": 44, "w": 33, "h": 41 }, + "rotated": false, + "trimmed": true, + "spriteSourceSize": { "x": 0, "y": 2, "w": 33, "h": 41 }, + "sourceSize": { "w": 37, "h": 44 }, + "duration": 80 + }, + { + "filename": "0096.png", + "frame": { "x": 73, "y": 44, "w": 33, "h": 41 }, + "rotated": false, + "trimmed": true, + "spriteSourceSize": { "x": 0, "y": 2, "w": 33, "h": 41 }, + "sourceSize": { "w": 37, "h": 44 }, + "duration": 80 + }, + { + "filename": "0097.png", + "frame": { "x": 73, "y": 44, "w": 33, "h": 41 }, + "rotated": false, + "trimmed": true, + "spriteSourceSize": { "x": 0, "y": 2, "w": 33, "h": 41 }, + "sourceSize": { "w": 37, "h": 44 }, + "duration": 80 + }, + { + "filename": "0098.png", + "frame": { "x": 2, "y": 173, "w": 33, "h": 39 }, + "rotated": false, + "trimmed": true, + "spriteSourceSize": { "x": 0, "y": 4, "w": 33, "h": 39 }, + "sourceSize": { "w": 37, "h": 44 }, + "duration": 80 + }, + { + "filename": "0099.png", + "frame": { "x": 2, "y": 133, "w": 30, "h": 34 }, + "rotated": false, + "trimmed": true, + "spriteSourceSize": { "x": 3, "y": 9, "w": 30, "h": 34 }, + "sourceSize": { "w": 37, "h": 44 }, + "duration": 80 + }, + { + "filename": "0100.png", + "frame": { "x": 102, "y": 134, "w": 28, "h": 30 }, + "rotated": false, + "trimmed": true, + "spriteSourceSize": { "x": 5, "y": 12, "w": 28, "h": 30 }, + "sourceSize": { "w": 37, "h": 44 }, + "duration": 80 + }, + { + "filename": "0101.png", + "frame": { "x": 102, "y": 166, "w": 27, "h": 25 }, + "rotated": false, + "trimmed": true, + "spriteSourceSize": { "x": 6, "y": 17, "w": 27, "h": 25 }, + "sourceSize": { "w": 37, "h": 44 }, + "duration": 80 + }, + { + "filename": "0102.png", + "frame": { "x": 102, "y": 166, "w": 27, "h": 25 }, + "rotated": false, + "trimmed": true, + "spriteSourceSize": { "x": 6, "y": 17, "w": 27, "h": 25 }, + "sourceSize": { "w": 37, "h": 44 }, + "duration": 80 + }, + { + "filename": "0103.png", + "frame": { "x": 102, "y": 166, "w": 27, "h": 25 }, + "rotated": false, + "trimmed": true, + "spriteSourceSize": { "x": 6, "y": 17, "w": 27, "h": 25 }, + "sourceSize": { "w": 37, "h": 44 }, + "duration": 80 + }, + { + "filename": "0104.png", + "frame": { "x": 102, "y": 166, "w": 27, "h": 25 }, + "rotated": false, + "trimmed": true, + "spriteSourceSize": { "x": 6, "y": 15, "w": 27, "h": 25 }, + "sourceSize": { "w": 37, "h": 44 }, + "duration": 80 + }, + { + "filename": "0105.png", + "frame": { "x": 102, "y": 166, "w": 27, "h": 25 }, + "rotated": false, + "trimmed": true, + "spriteSourceSize": { "x": 6, "y": 13, "w": 27, "h": 25 }, + "sourceSize": { "w": 37, "h": 44 }, + "duration": 80 + }, + { + "filename": "0106.png", + "frame": { "x": 102, "y": 166, "w": 27, "h": 25 }, + "rotated": false, + "trimmed": true, + "spriteSourceSize": { "x": 6, "y": 12, "w": 27, "h": 25 }, + "sourceSize": { "w": 37, "h": 44 }, + "duration": 80 + }, + { + "filename": "0107.png", + "frame": { "x": 102, "y": 166, "w": 27, "h": 25 }, + "rotated": false, + "trimmed": true, + "spriteSourceSize": { "x": 6, "y": 11, "w": 27, "h": 25 }, + "sourceSize": { "w": 37, "h": 44 }, + "duration": 80 + }, + { + "filename": "0108.png", + "frame": { "x": 102, "y": 166, "w": 27, "h": 25 }, + "rotated": false, + "trimmed": true, + "spriteSourceSize": { "x": 6, "y": 11, "w": 27, "h": 25 }, + "sourceSize": { "w": 37, "h": 44 }, + "duration": 80 + }, + { + "filename": "0109.png", + "frame": { "x": 102, "y": 166, "w": 27, "h": 25 }, + "rotated": false, + "trimmed": true, + "spriteSourceSize": { "x": 6, "y": 12, "w": 27, "h": 25 }, + "sourceSize": { "w": 37, "h": 44 }, + "duration": 80 + }, + { + "filename": "0110.png", + "frame": { "x": 102, "y": 166, "w": 27, "h": 25 }, + "rotated": false, + "trimmed": true, + "spriteSourceSize": { "x": 6, "y": 14, "w": 27, "h": 25 }, + "sourceSize": { "w": 37, "h": 44 }, + "duration": 80 + }, + { + "filename": "0111.png", + "frame": { "x": 102, "y": 166, "w": 27, "h": 25 }, + "rotated": false, + "trimmed": true, + "spriteSourceSize": { "x": 6, "y": 17, "w": 27, "h": 25 }, + "sourceSize": { "w": 37, "h": 44 }, + "duration": 80 + }, + { + "filename": "0112.png", + "frame": { "x": 102, "y": 166, "w": 27, "h": 25 }, + "rotated": false, + "trimmed": true, + "spriteSourceSize": { "x": 6, "y": 17, "w": 27, "h": 25 }, + "sourceSize": { "w": 37, "h": 44 }, + "duration": 80 + }, + { + "filename": "0113.png", + "frame": { "x": 102, "y": 166, "w": 27, "h": 25 }, + "rotated": false, + "trimmed": true, + "spriteSourceSize": { "x": 6, "y": 15, "w": 27, "h": 25 }, + "sourceSize": { "w": 37, "h": 44 }, + "duration": 80 + }, + { + "filename": "0114.png", + "frame": { "x": 102, "y": 166, "w": 27, "h": 25 }, + "rotated": false, + "trimmed": true, + "spriteSourceSize": { "x": 6, "y": 13, "w": 27, "h": 25 }, + "sourceSize": { "w": 37, "h": 44 }, + "duration": 80 + }, + { + "filename": "0115.png", + "frame": { "x": 102, "y": 166, "w": 27, "h": 25 }, + "rotated": false, + "trimmed": true, + "spriteSourceSize": { "x": 6, "y": 12, "w": 27, "h": 25 }, + "sourceSize": { "w": 37, "h": 44 }, + "duration": 80 + }, + { + "filename": "0116.png", + "frame": { "x": 102, "y": 166, "w": 27, "h": 25 }, + "rotated": false, + "trimmed": true, + "spriteSourceSize": { "x": 6, "y": 11, "w": 27, "h": 25 }, + "sourceSize": { "w": 37, "h": 44 }, + "duration": 80 + }, + { + "filename": "0117.png", + "frame": { "x": 102, "y": 166, "w": 27, "h": 25 }, + "rotated": false, + "trimmed": true, + "spriteSourceSize": { "x": 6, "y": 11, "w": 27, "h": 25 }, + "sourceSize": { "w": 37, "h": 44 }, + "duration": 80 + }, + { + "filename": "0118.png", + "frame": { "x": 102, "y": 166, "w": 27, "h": 25 }, + "rotated": false, + "trimmed": true, + "spriteSourceSize": { "x": 6, "y": 12, "w": 27, "h": 25 }, + "sourceSize": { "w": 37, "h": 44 }, + "duration": 80 + }, + { + "filename": "0119.png", + "frame": { "x": 102, "y": 166, "w": 27, "h": 25 }, + "rotated": false, + "trimmed": true, + "spriteSourceSize": { "x": 6, "y": 14, "w": 27, "h": 25 }, + "sourceSize": { "w": 37, "h": 44 }, + "duration": 80 + }, + { + "filename": "0120.png", + "frame": { "x": 102, "y": 166, "w": 27, "h": 25 }, + "rotated": false, + "trimmed": true, + "spriteSourceSize": { "x": 6, "y": 17, "w": 27, "h": 25 }, + "sourceSize": { "w": 37, "h": 44 }, + "duration": 80 + }, + { + "filename": "0121.png", + "frame": { "x": 102, "y": 166, "w": 27, "h": 25 }, + "rotated": false, + "trimmed": true, + "spriteSourceSize": { "x": 6, "y": 17, "w": 27, "h": 25 }, + "sourceSize": { "w": 37, "h": 44 }, + "duration": 80 + }, + { + "filename": "0122.png", + "frame": { "x": 102, "y": 134, "w": 28, "h": 30 }, + "rotated": false, + "trimmed": true, + "spriteSourceSize": { "x": 5, "y": 12, "w": 28, "h": 30 }, + "sourceSize": { "w": 37, "h": 44 }, + "duration": 80 + }, + { + "filename": "0123.png", + "frame": { "x": 2, "y": 133, "w": 30, "h": 34 }, + "rotated": false, + "trimmed": true, + "spriteSourceSize": { "x": 3, "y": 9, "w": 30, "h": 34 }, + "sourceSize": { "w": 37, "h": 44 }, + "duration": 80 + }, + { + "filename": "0124.png", + "frame": { "x": 2, "y": 173, "w": 33, "h": 39 }, + "rotated": false, + "trimmed": true, + "spriteSourceSize": { "x": 0, "y": 4, "w": 33, "h": 39 }, + "sourceSize": { "w": 37, "h": 44 }, + "duration": 80 + }, + { + "filename": "0125.png", + "frame": { "x": 73, "y": 44, "w": 33, "h": 41 }, + "rotated": false, + "trimmed": true, + "spriteSourceSize": { "x": 0, "y": 2, "w": 33, "h": 41 }, + "sourceSize": { "w": 37, "h": 44 }, + "duration": 80 + }, + { + "filename": "0126.png", + "frame": { "x": 73, "y": 44, "w": 33, "h": 41 }, + "rotated": false, + "trimmed": true, + "spriteSourceSize": { "x": 0, "y": 2, "w": 33, "h": 41 }, + "sourceSize": { "w": 37, "h": 44 }, + "duration": 80 + } + ], + "meta": { + "app": "https://www.aseprite.org/", + "version": "1.3.13-x64", + "image": "840.png", + "format": "I8", + "size": { "w": 222, "h": 214 }, + "scale": "1" + } } diff --git a/public/images/pokemon/exp/back/shiny/840.png b/public/images/pokemon/exp/back/shiny/840.png index 9a800ab956c..e37bd252d7b 100644 Binary files a/public/images/pokemon/exp/back/shiny/840.png and b/public/images/pokemon/exp/back/shiny/840.png differ diff --git a/public/images/pokemon/exp/back/shiny/935.json b/public/images/pokemon/exp/back/shiny/935.json deleted file mode 100644 index 2bdf2b2a155..00000000000 --- a/public/images/pokemon/exp/back/shiny/935.json +++ /dev/null @@ -1,356 +0,0 @@ -{ - "textures": [ - { - "image": "935.png", - "format": "RGBA8888", - "size": { - "w": 133, - "h": 133 - }, - "scale": 1, - "frames": [ - { - "filename": "0006.png", - "rotated": false, - "trimmed": true, - "sourceSize": { - "w": 32, - "h": 49 - }, - "spriteSourceSize": { - "x": 1, - "y": 0, - "w": 29, - "h": 49 - }, - "frame": { - "x": 0, - "y": 0, - "w": 29, - "h": 49 - } - }, - { - "filename": "0012.png", - "rotated": false, - "trimmed": true, - "sourceSize": { - "w": 32, - "h": 49 - }, - "spriteSourceSize": { - "x": 1, - "y": 0, - "w": 29, - "h": 49 - }, - "frame": { - "x": 0, - "y": 0, - "w": 29, - "h": 49 - } - }, - { - "filename": "0007.png", - "rotated": false, - "trimmed": true, - "sourceSize": { - "w": 32, - "h": 49 - }, - "spriteSourceSize": { - "x": 0, - "y": 0, - "w": 29, - "h": 49 - }, - "frame": { - "x": 29, - "y": 0, - "w": 29, - "h": 49 - } - }, - { - "filename": "0011.png", - "rotated": false, - "trimmed": true, - "sourceSize": { - "w": 32, - "h": 49 - }, - "spriteSourceSize": { - "x": 0, - "y": 0, - "w": 29, - "h": 49 - }, - "frame": { - "x": 29, - "y": 0, - "w": 29, - "h": 49 - } - }, - { - "filename": "0005.png", - "rotated": false, - "trimmed": true, - "sourceSize": { - "w": 32, - "h": 49 - }, - "spriteSourceSize": { - "x": 2, - "y": 0, - "w": 28, - "h": 49 - }, - "frame": { - "x": 58, - "y": 0, - "w": 28, - "h": 49 - } - }, - { - "filename": "0013.png", - "rotated": false, - "trimmed": true, - "sourceSize": { - "w": 32, - "h": 49 - }, - "spriteSourceSize": { - "x": 2, - "y": 0, - "w": 28, - "h": 49 - }, - "frame": { - "x": 58, - "y": 0, - "w": 28, - "h": 49 - } - }, - { - "filename": "0008.png", - "rotated": false, - "trimmed": true, - "sourceSize": { - "w": 32, - "h": 49 - }, - "spriteSourceSize": { - "x": 0, - "y": 0, - "w": 28, - "h": 49 - }, - "frame": { - "x": 86, - "y": 0, - "w": 28, - "h": 49 - } - }, - { - "filename": "0010.png", - "rotated": false, - "trimmed": true, - "sourceSize": { - "w": 32, - "h": 49 - }, - "spriteSourceSize": { - "x": 0, - "y": 0, - "w": 28, - "h": 49 - }, - "frame": { - "x": 86, - "y": 0, - "w": 28, - "h": 49 - } - }, - { - "filename": "0004.png", - "rotated": false, - "trimmed": true, - "sourceSize": { - "w": 32, - "h": 49 - }, - "spriteSourceSize": { - "x": 3, - "y": 1, - "w": 28, - "h": 48 - }, - "frame": { - "x": 0, - "y": 49, - "w": 28, - "h": 48 - } - }, - { - "filename": "0014.png", - "rotated": false, - "trimmed": true, - "sourceSize": { - "w": 32, - "h": 49 - }, - "spriteSourceSize": { - "x": 3, - "y": 1, - "w": 28, - "h": 48 - }, - "frame": { - "x": 0, - "y": 49, - "w": 28, - "h": 48 - } - }, - { - "filename": "0009.png", - "rotated": false, - "trimmed": true, - "sourceSize": { - "w": 32, - "h": 49 - }, - "spriteSourceSize": { - "x": 0, - "y": 1, - "w": 27, - "h": 48 - }, - "frame": { - "x": 28, - "y": 49, - "w": 27, - "h": 48 - } - }, - { - "filename": "0003.png", - "rotated": false, - "trimmed": true, - "sourceSize": { - "w": 32, - "h": 49 - }, - "spriteSourceSize": { - "x": 5, - "y": 2, - "w": 27, - "h": 47 - }, - "frame": { - "x": 55, - "y": 49, - "w": 27, - "h": 47 - } - }, - { - "filename": "0015.png", - "rotated": false, - "trimmed": true, - "sourceSize": { - "w": 32, - "h": 49 - }, - "spriteSourceSize": { - "x": 5, - "y": 2, - "w": 27, - "h": 47 - }, - "frame": { - "x": 55, - "y": 49, - "w": 27, - "h": 47 - } - }, - { - "filename": "0002.png", - "rotated": false, - "trimmed": true, - "sourceSize": { - "w": 32, - "h": 49 - }, - "spriteSourceSize": { - "x": 6, - "y": 3, - "w": 26, - "h": 46 - }, - "frame": { - "x": 82, - "y": 49, - "w": 26, - "h": 46 - } - }, - { - "filename": "0016.png", - "rotated": false, - "trimmed": true, - "sourceSize": { - "w": 32, - "h": 49 - }, - "spriteSourceSize": { - "x": 6, - "y": 3, - "w": 26, - "h": 46 - }, - "frame": { - "x": 82, - "y": 49, - "w": 26, - "h": 46 - } - }, - { - "filename": "0001.png", - "rotated": false, - "trimmed": true, - "sourceSize": { - "w": 32, - "h": 49 - }, - "spriteSourceSize": { - "x": 7, - "y": 4, - "w": 25, - "h": 45 - }, - "frame": { - "x": 108, - "y": 49, - "w": 25, - "h": 45 - } - } - ] - } - ], - "meta": { - "app": "https://www.codeandweb.com/texturepacker", - "version": "3.0", - "smartupdate": "$TexturePacker:SmartUpdate:039aaaf52028b39c07e4909a88a5e8bb:1e66e8f98dd44fa06a53d364e32b154b:077dcf06dc5fc347497b59afe6126a5e$" - } -} diff --git a/public/images/pokemon/exp/back/shiny/935.png b/public/images/pokemon/exp/back/shiny/935.png deleted file mode 100644 index bdd1ef192ad..00000000000 Binary files a/public/images/pokemon/exp/back/shiny/935.png and /dev/null differ diff --git a/public/images/pokemon/exp/back/shiny/936.json b/public/images/pokemon/exp/back/shiny/936.json deleted file mode 100644 index 295267305ad..00000000000 --- a/public/images/pokemon/exp/back/shiny/936.json +++ /dev/null @@ -1,356 +0,0 @@ -{ - "textures": [ - { - "image": "936.png", - "format": "RGBA8888", - "size": { - "w": 283, - "h": 283 - }, - "scale": 1, - "frames": [ - { - "filename": "0004.png", - "rotated": false, - "trimmed": true, - "sourceSize": { - "w": 67, - "h": 97 - }, - "spriteSourceSize": { - "x": 5, - "y": 0, - "w": 59, - "h": 97 - }, - "frame": { - "x": 0, - "y": 0, - "w": 59, - "h": 97 - } - }, - { - "filename": "0014.png", - "rotated": false, - "trimmed": true, - "sourceSize": { - "w": 67, - "h": 97 - }, - "spriteSourceSize": { - "x": 5, - "y": 0, - "w": 59, - "h": 97 - }, - "frame": { - "x": 0, - "y": 0, - "w": 59, - "h": 97 - } - }, - { - "filename": "0005.png", - "rotated": false, - "trimmed": true, - "sourceSize": { - "w": 67, - "h": 97 - }, - "spriteSourceSize": { - "x": 3, - "y": 0, - "w": 59, - "h": 97 - }, - "frame": { - "x": 0, - "y": 97, - "w": 59, - "h": 97 - } - }, - { - "filename": "0013.png", - "rotated": false, - "trimmed": true, - "sourceSize": { - "w": 67, - "h": 97 - }, - "spriteSourceSize": { - "x": 3, - "y": 0, - "w": 59, - "h": 97 - }, - "frame": { - "x": 0, - "y": 97, - "w": 59, - "h": 97 - } - }, - { - "filename": "0006.png", - "rotated": false, - "trimmed": true, - "sourceSize": { - "w": 67, - "h": 97 - }, - "spriteSourceSize": { - "x": 2, - "y": 0, - "w": 59, - "h": 97 - }, - "frame": { - "x": 59, - "y": 0, - "w": 59, - "h": 97 - } - }, - { - "filename": "0012.png", - "rotated": false, - "trimmed": true, - "sourceSize": { - "w": 67, - "h": 97 - }, - "spriteSourceSize": { - "x": 2, - "y": 0, - "w": 59, - "h": 97 - }, - "frame": { - "x": 59, - "y": 0, - "w": 59, - "h": 97 - } - }, - { - "filename": "0002.png", - "rotated": false, - "trimmed": true, - "sourceSize": { - "w": 67, - "h": 97 - }, - "spriteSourceSize": { - "x": 8, - "y": 0, - "w": 58, - "h": 97 - }, - "frame": { - "x": 59, - "y": 97, - "w": 58, - "h": 97 - } - }, - { - "filename": "0016.png", - "rotated": false, - "trimmed": true, - "sourceSize": { - "w": 67, - "h": 97 - }, - "spriteSourceSize": { - "x": 8, - "y": 0, - "w": 58, - "h": 97 - }, - "frame": { - "x": 59, - "y": 97, - "w": 58, - "h": 97 - } - }, - { - "filename": "0007.png", - "rotated": false, - "trimmed": true, - "sourceSize": { - "w": 67, - "h": 97 - }, - "spriteSourceSize": { - "x": 2, - "y": 0, - "w": 58, - "h": 97 - }, - "frame": { - "x": 117, - "y": 97, - "w": 58, - "h": 97 - } - }, - { - "filename": "0011.png", - "rotated": false, - "trimmed": true, - "sourceSize": { - "w": 67, - "h": 97 - }, - "spriteSourceSize": { - "x": 2, - "y": 0, - "w": 58, - "h": 97 - }, - "frame": { - "x": 117, - "y": 97, - "w": 58, - "h": 97 - } - }, - { - "filename": "0003.png", - "rotated": false, - "trimmed": true, - "sourceSize": { - "w": 67, - "h": 97 - }, - "spriteSourceSize": { - "x": 7, - "y": 1, - "w": 57, - "h": 96 - }, - "frame": { - "x": 118, - "y": 0, - "w": 57, - "h": 96 - } - }, - { - "filename": "0015.png", - "rotated": false, - "trimmed": true, - "sourceSize": { - "w": 67, - "h": 97 - }, - "spriteSourceSize": { - "x": 7, - "y": 1, - "w": 57, - "h": 96 - }, - "frame": { - "x": 118, - "y": 0, - "w": 57, - "h": 96 - } - }, - { - "filename": "0008.png", - "rotated": false, - "trimmed": true, - "sourceSize": { - "w": 67, - "h": 97 - }, - "spriteSourceSize": { - "x": 1, - "y": 2, - "w": 58, - "h": 95 - }, - "frame": { - "x": 175, - "y": 0, - "w": 58, - "h": 95 - } - }, - { - "filename": "0010.png", - "rotated": false, - "trimmed": true, - "sourceSize": { - "w": 67, - "h": 97 - }, - "spriteSourceSize": { - "x": 1, - "y": 2, - "w": 58, - "h": 95 - }, - "frame": { - "x": 175, - "y": 0, - "w": 58, - "h": 95 - } - }, - { - "filename": "0009.png", - "rotated": false, - "trimmed": true, - "sourceSize": { - "w": 67, - "h": 97 - }, - "spriteSourceSize": { - "x": 0, - "y": 3, - "w": 58, - "h": 94 - }, - "frame": { - "x": 175, - "y": 95, - "w": 58, - "h": 94 - } - }, - { - "filename": "0001.png", - "rotated": false, - "trimmed": true, - "sourceSize": { - "w": 67, - "h": 97 - }, - "spriteSourceSize": { - "x": 10, - "y": 3, - "w": 57, - "h": 94 - }, - "frame": { - "x": 175, - "y": 189, - "w": 57, - "h": 94 - } - } - ] - } - ], - "meta": { - "app": "https://www.codeandweb.com/texturepacker", - "version": "3.0", - "smartupdate": "$TexturePacker:SmartUpdate:28e584ed8d8aaebb8c9edc4517b84f45:09d8ad02433d8015e4665464587b1259:1a0490303f9626f92e787c567cd10feb$" - } -} diff --git a/public/images/pokemon/exp/back/shiny/936.png b/public/images/pokemon/exp/back/shiny/936.png deleted file mode 100644 index 14b0c1c7bf2..00000000000 Binary files a/public/images/pokemon/exp/back/shiny/936.png and /dev/null differ diff --git a/public/images/pokemon/exp/back/shiny/937.json b/public/images/pokemon/exp/back/shiny/937.json deleted file mode 100644 index 1a94f5525d2..00000000000 --- a/public/images/pokemon/exp/back/shiny/937.json +++ /dev/null @@ -1,650 +0,0 @@ -{ - "textures": [ - { - "image": "937.png", - "format": "RGBA8888", - "size": { - "w": 382, - "h": 382 - }, - "scale": 1, - "frames": [ - { - "filename": "0013.png", - "rotated": false, - "trimmed": true, - "sourceSize": { - "w": 95, - "h": 97 - }, - "spriteSourceSize": { - "x": 0, - "y": 0, - "w": 91, - "h": 96 - }, - "frame": { - "x": 0, - "y": 0, - "w": 91, - "h": 96 - } - }, - { - "filename": "0028.png", - "rotated": false, - "trimmed": true, - "sourceSize": { - "w": 95, - "h": 97 - }, - "spriteSourceSize": { - "x": 0, - "y": 0, - "w": 91, - "h": 96 - }, - "frame": { - "x": 91, - "y": 0, - "w": 91, - "h": 96 - } - }, - { - "filename": "0012.png", - "rotated": false, - "trimmed": true, - "sourceSize": { - "w": 95, - "h": 97 - }, - "spriteSourceSize": { - "x": 2, - "y": 0, - "w": 90, - "h": 96 - }, - "frame": { - "x": 182, - "y": 0, - "w": 90, - "h": 96 - } - }, - { - "filename": "0027.png", - "rotated": false, - "trimmed": true, - "sourceSize": { - "w": 95, - "h": 97 - }, - "spriteSourceSize": { - "x": 2, - "y": 0, - "w": 90, - "h": 96 - }, - "frame": { - "x": 182, - "y": 0, - "w": 90, - "h": 96 - } - }, - { - "filename": "0006.png", - "rotated": false, - "trimmed": true, - "sourceSize": { - "w": 95, - "h": 97 - }, - "spriteSourceSize": { - "x": 2, - "y": 0, - "w": 89, - "h": 96 - }, - "frame": { - "x": 272, - "y": 0, - "w": 89, - "h": 96 - } - }, - { - "filename": "0021.png", - "rotated": false, - "trimmed": true, - "sourceSize": { - "w": 95, - "h": 97 - }, - "spriteSourceSize": { - "x": 2, - "y": 0, - "w": 89, - "h": 96 - }, - "frame": { - "x": 272, - "y": 0, - "w": 89, - "h": 96 - } - }, - { - "filename": "0007.png", - "rotated": false, - "trimmed": true, - "sourceSize": { - "w": 95, - "h": 97 - }, - "spriteSourceSize": { - "x": 4, - "y": 1, - "w": 91, - "h": 95 - }, - "frame": { - "x": 0, - "y": 96, - "w": 91, - "h": 95 - } - }, - { - "filename": "0022.png", - "rotated": false, - "trimmed": true, - "sourceSize": { - "w": 95, - "h": 97 - }, - "spriteSourceSize": { - "x": 4, - "y": 1, - "w": 91, - "h": 95 - }, - "frame": { - "x": 0, - "y": 96, - "w": 91, - "h": 95 - } - }, - { - "filename": "0011.png", - "rotated": false, - "trimmed": true, - "sourceSize": { - "w": 95, - "h": 97 - }, - "spriteSourceSize": { - "x": 4, - "y": 1, - "w": 89, - "h": 95 - }, - "frame": { - "x": 91, - "y": 96, - "w": 89, - "h": 95 - } - }, - { - "filename": "0026.png", - "rotated": false, - "trimmed": true, - "sourceSize": { - "w": 95, - "h": 97 - }, - "spriteSourceSize": { - "x": 4, - "y": 1, - "w": 89, - "h": 95 - }, - "frame": { - "x": 91, - "y": 96, - "w": 89, - "h": 95 - } - }, - { - "filename": "0004.png", - "rotated": false, - "trimmed": true, - "sourceSize": { - "w": 95, - "h": 97 - }, - "spriteSourceSize": { - "x": 0, - "y": 0, - "w": 88, - "h": 96 - }, - "frame": { - "x": 180, - "y": 96, - "w": 88, - "h": 96 - } - }, - { - "filename": "0019.png", - "rotated": false, - "trimmed": true, - "sourceSize": { - "w": 95, - "h": 97 - }, - "spriteSourceSize": { - "x": 0, - "y": 0, - "w": 88, - "h": 96 - }, - "frame": { - "x": 180, - "y": 96, - "w": 88, - "h": 96 - } - }, - { - "filename": "0005.png", - "rotated": false, - "trimmed": true, - "sourceSize": { - "w": 95, - "h": 97 - }, - "spriteSourceSize": { - "x": 0, - "y": 0, - "w": 88, - "h": 96 - }, - "frame": { - "x": 0, - "y": 191, - "w": 88, - "h": 96 - } - }, - { - "filename": "0020.png", - "rotated": false, - "trimmed": true, - "sourceSize": { - "w": 95, - "h": 97 - }, - "spriteSourceSize": { - "x": 0, - "y": 0, - "w": 88, - "h": 96 - }, - "frame": { - "x": 0, - "y": 191, - "w": 88, - "h": 96 - } - }, - { - "filename": "0008.png", - "rotated": false, - "trimmed": true, - "sourceSize": { - "w": 95, - "h": 97 - }, - "spriteSourceSize": { - "x": 7, - "y": 0, - "w": 88, - "h": 96 - }, - "frame": { - "x": 88, - "y": 191, - "w": 88, - "h": 96 - } - }, - { - "filename": "0023.png", - "rotated": false, - "trimmed": true, - "sourceSize": { - "w": 95, - "h": 97 - }, - "spriteSourceSize": { - "x": 7, - "y": 0, - "w": 88, - "h": 96 - }, - "frame": { - "x": 88, - "y": 191, - "w": 88, - "h": 96 - } - }, - { - "filename": "0010.png", - "rotated": false, - "trimmed": true, - "sourceSize": { - "w": 95, - "h": 97 - }, - "spriteSourceSize": { - "x": 7, - "y": 0, - "w": 87, - "h": 96 - }, - "frame": { - "x": 176, - "y": 192, - "w": 87, - "h": 96 - } - }, - { - "filename": "0025.png", - "rotated": false, - "trimmed": true, - "sourceSize": { - "w": 95, - "h": 97 - }, - "spriteSourceSize": { - "x": 7, - "y": 0, - "w": 87, - "h": 96 - }, - "frame": { - "x": 176, - "y": 192, - "w": 87, - "h": 96 - } - }, - { - "filename": "0014.png", - "rotated": false, - "trimmed": true, - "sourceSize": { - "w": 95, - "h": 97 - }, - "spriteSourceSize": { - "x": 3, - "y": 1, - "w": 85, - "h": 95 - }, - "frame": { - "x": 0, - "y": 287, - "w": 85, - "h": 95 - } - }, - { - "filename": "0029.png", - "rotated": false, - "trimmed": true, - "sourceSize": { - "w": 95, - "h": 97 - }, - "spriteSourceSize": { - "x": 3, - "y": 1, - "w": 85, - "h": 95 - }, - "frame": { - "x": 0, - "y": 287, - "w": 85, - "h": 95 - } - }, - { - "filename": "0002.png", - "rotated": false, - "trimmed": true, - "sourceSize": { - "w": 95, - "h": 97 - }, - "spriteSourceSize": { - "x": 1, - "y": 3, - "w": 85, - "h": 94 - }, - "frame": { - "x": 85, - "y": 287, - "w": 85, - "h": 94 - } - }, - { - "filename": "0017.png", - "rotated": false, - "trimmed": true, - "sourceSize": { - "w": 95, - "h": 97 - }, - "spriteSourceSize": { - "x": 1, - "y": 3, - "w": 85, - "h": 94 - }, - "frame": { - "x": 85, - "y": 287, - "w": 85, - "h": 94 - } - }, - { - "filename": "0003.png", - "rotated": false, - "trimmed": true, - "sourceSize": { - "w": 95, - "h": 97 - }, - "spriteSourceSize": { - "x": 2, - "y": 1, - "w": 82, - "h": 96 - }, - "frame": { - "x": 263, - "y": 192, - "w": 82, - "h": 96 - } - }, - { - "filename": "0018.png", - "rotated": false, - "trimmed": true, - "sourceSize": { - "w": 95, - "h": 97 - }, - "spriteSourceSize": { - "x": 2, - "y": 1, - "w": 82, - "h": 96 - }, - "frame": { - "x": 263, - "y": 192, - "w": 82, - "h": 96 - } - }, - { - "filename": "0009.png", - "rotated": false, - "trimmed": true, - "sourceSize": { - "w": 95, - "h": 97 - }, - "spriteSourceSize": { - "x": 8, - "y": 3, - "w": 85, - "h": 93 - }, - "frame": { - "x": 268, - "y": 96, - "w": 85, - "h": 93 - } - }, - { - "filename": "0024.png", - "rotated": false, - "trimmed": true, - "sourceSize": { - "w": 95, - "h": 97 - }, - "spriteSourceSize": { - "x": 8, - "y": 3, - "w": 85, - "h": 93 - }, - "frame": { - "x": 268, - "y": 96, - "w": 85, - "h": 93 - } - }, - { - "filename": "0001.png", - "rotated": false, - "trimmed": true, - "sourceSize": { - "w": 95, - "h": 97 - }, - "spriteSourceSize": { - "x": 3, - "y": 3, - "w": 81, - "h": 94 - }, - "frame": { - "x": 170, - "y": 288, - "w": 81, - "h": 94 - } - }, - { - "filename": "0016.png", - "rotated": false, - "trimmed": true, - "sourceSize": { - "w": 95, - "h": 97 - }, - "spriteSourceSize": { - "x": 3, - "y": 3, - "w": 81, - "h": 94 - }, - "frame": { - "x": 170, - "y": 288, - "w": 81, - "h": 94 - } - }, - { - "filename": "0015.png", - "rotated": false, - "trimmed": true, - "sourceSize": { - "w": 95, - "h": 97 - }, - "spriteSourceSize": { - "x": 2, - "y": 3, - "w": 80, - "h": 94 - }, - "frame": { - "x": 251, - "y": 288, - "w": 80, - "h": 94 - } - }, - { - "filename": "0030.png", - "rotated": false, - "trimmed": true, - "sourceSize": { - "w": 95, - "h": 97 - }, - "spriteSourceSize": { - "x": 2, - "y": 3, - "w": 80, - "h": 94 - }, - "frame": { - "x": 251, - "y": 288, - "w": 80, - "h": 94 - } - } - ] - } - ], - "meta": { - "app": "https://www.codeandweb.com/texturepacker", - "version": "3.0", - "smartupdate": "$TexturePacker:SmartUpdate:d3ac9f14a29e2d6136e96b1fbd1551c7:0076c777d18a4f3d780937118dfb6388:1d4b4f8d62307c37457ba974879b47d0$" - } -} diff --git a/public/images/pokemon/exp/back/shiny/937.png b/public/images/pokemon/exp/back/shiny/937.png deleted file mode 100644 index 676950a1999..00000000000 Binary files a/public/images/pokemon/exp/back/shiny/937.png and /dev/null differ diff --git a/public/images/pokemon/exp/shiny/692.png b/public/images/pokemon/exp/shiny/692.png index 3d938d6e64a..d46c585bdfb 100644 Binary files a/public/images/pokemon/exp/shiny/692.png and b/public/images/pokemon/exp/shiny/692.png differ diff --git a/public/images/pokemon/exp/shiny/782.json b/public/images/pokemon/exp/shiny/782.json deleted file mode 100644 index f06c3d4755e..00000000000 --- a/public/images/pokemon/exp/shiny/782.json +++ /dev/null @@ -1,2351 +0,0 @@ -{ - "textures": [ - { - "image": "782.png", - "format": "RGBA8888", - "size": { - "w": 240, - "h": 240 - }, - "scale": 1, - "frames": [ - { - "filename": "0083.png", - "rotated": false, - "trimmed": true, - "sourceSize": { - "w": 49, - "h": 52 - }, - "spriteSourceSize": { - "x": 1, - "y": 0, - "w": 48, - "h": 52 - }, - "frame": { - "x": 0, - "y": 0, - "w": 48, - "h": 52 - } - }, - { - "filename": "0111.png", - "rotated": false, - "trimmed": true, - "sourceSize": { - "w": 49, - "h": 52 - }, - "spriteSourceSize": { - "x": 1, - "y": 0, - "w": 48, - "h": 52 - }, - "frame": { - "x": 0, - "y": 0, - "w": 48, - "h": 52 - } - }, - { - "filename": "0084.png", - "rotated": false, - "trimmed": true, - "sourceSize": { - "w": 49, - "h": 52 - }, - "spriteSourceSize": { - "x": 1, - "y": 0, - "w": 48, - "h": 52 - }, - "frame": { - "x": 0, - "y": 52, - "w": 48, - "h": 52 - } - }, - { - "filename": "0110.png", - "rotated": false, - "trimmed": true, - "sourceSize": { - "w": 49, - "h": 52 - }, - "spriteSourceSize": { - "x": 1, - "y": 0, - "w": 48, - "h": 52 - }, - "frame": { - "x": 0, - "y": 52, - "w": 48, - "h": 52 - } - }, - { - "filename": "0085.png", - "rotated": false, - "trimmed": true, - "sourceSize": { - "w": 49, - "h": 52 - }, - "spriteSourceSize": { - "x": 1, - "y": 0, - "w": 48, - "h": 52 - }, - "frame": { - "x": 0, - "y": 104, - "w": 48, - "h": 52 - } - }, - { - "filename": "0086.png", - "rotated": false, - "trimmed": true, - "sourceSize": { - "w": 49, - "h": 52 - }, - "spriteSourceSize": { - "x": 1, - "y": 0, - "w": 48, - "h": 52 - }, - "frame": { - "x": 0, - "y": 156, - "w": 48, - "h": 52 - } - }, - { - "filename": "0013.png", - "rotated": false, - "trimmed": true, - "sourceSize": { - "w": 49, - "h": 52 - }, - "spriteSourceSize": { - "x": 0, - "y": 2, - "w": 49, - "h": 50 - }, - "frame": { - "x": 48, - "y": 0, - "w": 49, - "h": 50 - } - }, - { - "filename": "0014.png", - "rotated": false, - "trimmed": true, - "sourceSize": { - "w": 49, - "h": 52 - }, - "spriteSourceSize": { - "x": 0, - "y": 2, - "w": 49, - "h": 50 - }, - "frame": { - "x": 48, - "y": 0, - "w": 49, - "h": 50 - } - }, - { - "filename": "0029.png", - "rotated": false, - "trimmed": true, - "sourceSize": { - "w": 49, - "h": 52 - }, - "spriteSourceSize": { - "x": 0, - "y": 2, - "w": 49, - "h": 50 - }, - "frame": { - "x": 48, - "y": 0, - "w": 49, - "h": 50 - } - }, - { - "filename": "0030.png", - "rotated": false, - "trimmed": true, - "sourceSize": { - "w": 49, - "h": 52 - }, - "spriteSourceSize": { - "x": 0, - "y": 2, - "w": 49, - "h": 50 - }, - "frame": { - "x": 48, - "y": 0, - "w": 49, - "h": 50 - } - }, - { - "filename": "0045.png", - "rotated": false, - "trimmed": true, - "sourceSize": { - "w": 49, - "h": 52 - }, - "spriteSourceSize": { - "x": 0, - "y": 2, - "w": 49, - "h": 50 - }, - "frame": { - "x": 48, - "y": 0, - "w": 49, - "h": 50 - } - }, - { - "filename": "0046.png", - "rotated": false, - "trimmed": true, - "sourceSize": { - "w": 49, - "h": 52 - }, - "spriteSourceSize": { - "x": 0, - "y": 2, - "w": 49, - "h": 50 - }, - "frame": { - "x": 48, - "y": 0, - "w": 49, - "h": 50 - } - }, - { - "filename": "0061.png", - "rotated": false, - "trimmed": true, - "sourceSize": { - "w": 49, - "h": 52 - }, - "spriteSourceSize": { - "x": 0, - "y": 2, - "w": 49, - "h": 50 - }, - "frame": { - "x": 48, - "y": 0, - "w": 49, - "h": 50 - } - }, - { - "filename": "0062.png", - "rotated": false, - "trimmed": true, - "sourceSize": { - "w": 49, - "h": 52 - }, - "spriteSourceSize": { - "x": 0, - "y": 2, - "w": 49, - "h": 50 - }, - "frame": { - "x": 48, - "y": 0, - "w": 49, - "h": 50 - } - }, - { - "filename": "0077.png", - "rotated": false, - "trimmed": true, - "sourceSize": { - "w": 49, - "h": 52 - }, - "spriteSourceSize": { - "x": 0, - "y": 2, - "w": 49, - "h": 50 - }, - "frame": { - "x": 48, - "y": 0, - "w": 49, - "h": 50 - } - }, - { - "filename": "0078.png", - "rotated": false, - "trimmed": true, - "sourceSize": { - "w": 49, - "h": 52 - }, - "spriteSourceSize": { - "x": 0, - "y": 2, - "w": 49, - "h": 50 - }, - "frame": { - "x": 48, - "y": 0, - "w": 49, - "h": 50 - } - }, - { - "filename": "0089.png", - "rotated": false, - "trimmed": true, - "sourceSize": { - "w": 49, - "h": 52 - }, - "spriteSourceSize": { - "x": 1, - "y": 0, - "w": 48, - "h": 52 - }, - "frame": { - "x": 97, - "y": 0, - "w": 48, - "h": 52 - } - }, - { - "filename": "0090.png", - "rotated": false, - "trimmed": true, - "sourceSize": { - "w": 49, - "h": 52 - }, - "spriteSourceSize": { - "x": 1, - "y": 0, - "w": 48, - "h": 52 - }, - "frame": { - "x": 48, - "y": 50, - "w": 48, - "h": 52 - } - }, - { - "filename": "0091.png", - "rotated": false, - "trimmed": true, - "sourceSize": { - "w": 49, - "h": 52 - }, - "spriteSourceSize": { - "x": 1, - "y": 0, - "w": 48, - "h": 52 - }, - "frame": { - "x": 145, - "y": 0, - "w": 48, - "h": 52 - } - }, - { - "filename": "0108.png", - "rotated": false, - "trimmed": true, - "sourceSize": { - "w": 49, - "h": 52 - }, - "spriteSourceSize": { - "x": 1, - "y": 0, - "w": 48, - "h": 52 - }, - "frame": { - "x": 145, - "y": 0, - "w": 48, - "h": 52 - } - }, - { - "filename": "0087.png", - "rotated": false, - "trimmed": true, - "sourceSize": { - "w": 49, - "h": 52 - }, - "spriteSourceSize": { - "x": 1, - "y": 0, - "w": 47, - "h": 52 - }, - "frame": { - "x": 193, - "y": 0, - "w": 47, - "h": 52 - } - }, - { - "filename": "0088.png", - "rotated": false, - "trimmed": true, - "sourceSize": { - "w": 49, - "h": 52 - }, - "spriteSourceSize": { - "x": 1, - "y": 0, - "w": 47, - "h": 52 - }, - "frame": { - "x": 193, - "y": 0, - "w": 47, - "h": 52 - } - }, - { - "filename": "0095.png", - "rotated": false, - "trimmed": true, - "sourceSize": { - "w": 49, - "h": 52 - }, - "spriteSourceSize": { - "x": 1, - "y": 0, - "w": 47, - "h": 52 - }, - "frame": { - "x": 193, - "y": 0, - "w": 47, - "h": 52 - } - }, - { - "filename": "0096.png", - "rotated": false, - "trimmed": true, - "sourceSize": { - "w": 49, - "h": 52 - }, - "spriteSourceSize": { - "x": 1, - "y": 0, - "w": 47, - "h": 52 - }, - "frame": { - "x": 193, - "y": 0, - "w": 47, - "h": 52 - } - }, - { - "filename": "0104.png", - "rotated": false, - "trimmed": true, - "sourceSize": { - "w": 49, - "h": 52 - }, - "spriteSourceSize": { - "x": 1, - "y": 0, - "w": 47, - "h": 52 - }, - "frame": { - "x": 193, - "y": 0, - "w": 47, - "h": 52 - } - }, - { - "filename": "0105.png", - "rotated": false, - "trimmed": true, - "sourceSize": { - "w": 49, - "h": 52 - }, - "spriteSourceSize": { - "x": 1, - "y": 0, - "w": 47, - "h": 52 - }, - "frame": { - "x": 193, - "y": 0, - "w": 47, - "h": 52 - } - }, - { - "filename": "0092.png", - "rotated": false, - "trimmed": true, - "sourceSize": { - "w": 49, - "h": 52 - }, - "spriteSourceSize": { - "x": 1, - "y": 0, - "w": 48, - "h": 52 - }, - "frame": { - "x": 48, - "y": 102, - "w": 48, - "h": 52 - } - }, - { - "filename": "0099.png", - "rotated": false, - "trimmed": true, - "sourceSize": { - "w": 49, - "h": 52 - }, - "spriteSourceSize": { - "x": 1, - "y": 0, - "w": 48, - "h": 52 - }, - "frame": { - "x": 48, - "y": 102, - "w": 48, - "h": 52 - } - }, - { - "filename": "0100.png", - "rotated": false, - "trimmed": true, - "sourceSize": { - "w": 49, - "h": 52 - }, - "spriteSourceSize": { - "x": 1, - "y": 0, - "w": 48, - "h": 52 - }, - "frame": { - "x": 48, - "y": 102, - "w": 48, - "h": 52 - } - }, - { - "filename": "0093.png", - "rotated": false, - "trimmed": true, - "sourceSize": { - "w": 49, - "h": 52 - }, - "spriteSourceSize": { - "x": 1, - "y": 0, - "w": 48, - "h": 52 - }, - "frame": { - "x": 48, - "y": 154, - "w": 48, - "h": 52 - } - }, - { - "filename": "0094.png", - "rotated": false, - "trimmed": true, - "sourceSize": { - "w": 49, - "h": 52 - }, - "spriteSourceSize": { - "x": 1, - "y": 0, - "w": 48, - "h": 52 - }, - "frame": { - "x": 48, - "y": 154, - "w": 48, - "h": 52 - } - }, - { - "filename": "0101.png", - "rotated": false, - "trimmed": true, - "sourceSize": { - "w": 49, - "h": 52 - }, - "spriteSourceSize": { - "x": 1, - "y": 0, - "w": 48, - "h": 52 - }, - "frame": { - "x": 48, - "y": 154, - "w": 48, - "h": 52 - } - }, - { - "filename": "0102.png", - "rotated": false, - "trimmed": true, - "sourceSize": { - "w": 49, - "h": 52 - }, - "spriteSourceSize": { - "x": 1, - "y": 0, - "w": 48, - "h": 52 - }, - "frame": { - "x": 48, - "y": 154, - "w": 48, - "h": 52 - } - }, - { - "filename": "0103.png", - "rotated": false, - "trimmed": true, - "sourceSize": { - "w": 49, - "h": 52 - }, - "spriteSourceSize": { - "x": 1, - "y": 0, - "w": 48, - "h": 52 - }, - "frame": { - "x": 48, - "y": 154, - "w": 48, - "h": 52 - } - }, - { - "filename": "0097.png", - "rotated": false, - "trimmed": true, - "sourceSize": { - "w": 49, - "h": 52 - }, - "spriteSourceSize": { - "x": 1, - "y": 0, - "w": 48, - "h": 52 - }, - "frame": { - "x": 96, - "y": 52, - "w": 48, - "h": 52 - } - }, - { - "filename": "0098.png", - "rotated": false, - "trimmed": true, - "sourceSize": { - "w": 49, - "h": 52 - }, - "spriteSourceSize": { - "x": 1, - "y": 0, - "w": 48, - "h": 52 - }, - "frame": { - "x": 96, - "y": 52, - "w": 48, - "h": 52 - } - }, - { - "filename": "0106.png", - "rotated": false, - "trimmed": true, - "sourceSize": { - "w": 49, - "h": 52 - }, - "spriteSourceSize": { - "x": 1, - "y": 0, - "w": 48, - "h": 52 - }, - "frame": { - "x": 96, - "y": 52, - "w": 48, - "h": 52 - } - }, - { - "filename": "0107.png", - "rotated": false, - "trimmed": true, - "sourceSize": { - "w": 49, - "h": 52 - }, - "spriteSourceSize": { - "x": 1, - "y": 0, - "w": 48, - "h": 52 - }, - "frame": { - "x": 96, - "y": 52, - "w": 48, - "h": 52 - } - }, - { - "filename": "0109.png", - "rotated": false, - "trimmed": true, - "sourceSize": { - "w": 49, - "h": 52 - }, - "spriteSourceSize": { - "x": 1, - "y": 0, - "w": 48, - "h": 52 - }, - "frame": { - "x": 144, - "y": 52, - "w": 48, - "h": 52 - } - }, - { - "filename": "0001.png", - "rotated": false, - "trimmed": true, - "sourceSize": { - "w": 49, - "h": 52 - }, - "spriteSourceSize": { - "x": 1, - "y": 1, - "w": 48, - "h": 51 - }, - "frame": { - "x": 192, - "y": 52, - "w": 48, - "h": 51 - } - }, - { - "filename": "0002.png", - "rotated": false, - "trimmed": true, - "sourceSize": { - "w": 49, - "h": 52 - }, - "spriteSourceSize": { - "x": 1, - "y": 1, - "w": 48, - "h": 51 - }, - "frame": { - "x": 192, - "y": 52, - "w": 48, - "h": 51 - } - }, - { - "filename": "0017.png", - "rotated": false, - "trimmed": true, - "sourceSize": { - "w": 49, - "h": 52 - }, - "spriteSourceSize": { - "x": 1, - "y": 1, - "w": 48, - "h": 51 - }, - "frame": { - "x": 192, - "y": 52, - "w": 48, - "h": 51 - } - }, - { - "filename": "0018.png", - "rotated": false, - "trimmed": true, - "sourceSize": { - "w": 49, - "h": 52 - }, - "spriteSourceSize": { - "x": 1, - "y": 1, - "w": 48, - "h": 51 - }, - "frame": { - "x": 192, - "y": 52, - "w": 48, - "h": 51 - } - }, - { - "filename": "0033.png", - "rotated": false, - "trimmed": true, - "sourceSize": { - "w": 49, - "h": 52 - }, - "spriteSourceSize": { - "x": 1, - "y": 1, - "w": 48, - "h": 51 - }, - "frame": { - "x": 192, - "y": 52, - "w": 48, - "h": 51 - } - }, - { - "filename": "0034.png", - "rotated": false, - "trimmed": true, - "sourceSize": { - "w": 49, - "h": 52 - }, - "spriteSourceSize": { - "x": 1, - "y": 1, - "w": 48, - "h": 51 - }, - "frame": { - "x": 192, - "y": 52, - "w": 48, - "h": 51 - } - }, - { - "filename": "0049.png", - "rotated": false, - "trimmed": true, - "sourceSize": { - "w": 49, - "h": 52 - }, - "spriteSourceSize": { - "x": 1, - "y": 1, - "w": 48, - "h": 51 - }, - "frame": { - "x": 192, - "y": 52, - "w": 48, - "h": 51 - } - }, - { - "filename": "0050.png", - "rotated": false, - "trimmed": true, - "sourceSize": { - "w": 49, - "h": 52 - }, - "spriteSourceSize": { - "x": 1, - "y": 1, - "w": 48, - "h": 51 - }, - "frame": { - "x": 192, - "y": 52, - "w": 48, - "h": 51 - } - }, - { - "filename": "0065.png", - "rotated": false, - "trimmed": true, - "sourceSize": { - "w": 49, - "h": 52 - }, - "spriteSourceSize": { - "x": 1, - "y": 1, - "w": 48, - "h": 51 - }, - "frame": { - "x": 192, - "y": 52, - "w": 48, - "h": 51 - } - }, - { - "filename": "0066.png", - "rotated": false, - "trimmed": true, - "sourceSize": { - "w": 49, - "h": 52 - }, - "spriteSourceSize": { - "x": 1, - "y": 1, - "w": 48, - "h": 51 - }, - "frame": { - "x": 192, - "y": 52, - "w": 48, - "h": 51 - } - }, - { - "filename": "0081.png", - "rotated": false, - "trimmed": true, - "sourceSize": { - "w": 49, - "h": 52 - }, - "spriteSourceSize": { - "x": 1, - "y": 1, - "w": 48, - "h": 51 - }, - "frame": { - "x": 192, - "y": 52, - "w": 48, - "h": 51 - } - }, - { - "filename": "0082.png", - "rotated": false, - "trimmed": true, - "sourceSize": { - "w": 49, - "h": 52 - }, - "spriteSourceSize": { - "x": 1, - "y": 1, - "w": 48, - "h": 51 - }, - "frame": { - "x": 192, - "y": 52, - "w": 48, - "h": 51 - } - }, - { - "filename": "0015.png", - "rotated": false, - "trimmed": true, - "sourceSize": { - "w": 49, - "h": 52 - }, - "spriteSourceSize": { - "x": 1, - "y": 1, - "w": 48, - "h": 51 - }, - "frame": { - "x": 192, - "y": 103, - "w": 48, - "h": 51 - } - }, - { - "filename": "0016.png", - "rotated": false, - "trimmed": true, - "sourceSize": { - "w": 49, - "h": 52 - }, - "spriteSourceSize": { - "x": 1, - "y": 1, - "w": 48, - "h": 51 - }, - "frame": { - "x": 192, - "y": 103, - "w": 48, - "h": 51 - } - }, - { - "filename": "0031.png", - "rotated": false, - "trimmed": true, - "sourceSize": { - "w": 49, - "h": 52 - }, - "spriteSourceSize": { - "x": 1, - "y": 1, - "w": 48, - "h": 51 - }, - "frame": { - "x": 192, - "y": 103, - "w": 48, - "h": 51 - } - }, - { - "filename": "0032.png", - "rotated": false, - "trimmed": true, - "sourceSize": { - "w": 49, - "h": 52 - }, - "spriteSourceSize": { - "x": 1, - "y": 1, - "w": 48, - "h": 51 - }, - "frame": { - "x": 192, - "y": 103, - "w": 48, - "h": 51 - } - }, - { - "filename": "0047.png", - "rotated": false, - "trimmed": true, - "sourceSize": { - "w": 49, - "h": 52 - }, - "spriteSourceSize": { - "x": 1, - "y": 1, - "w": 48, - "h": 51 - }, - "frame": { - "x": 192, - "y": 103, - "w": 48, - "h": 51 - } - }, - { - "filename": "0048.png", - "rotated": false, - "trimmed": true, - "sourceSize": { - "w": 49, - "h": 52 - }, - "spriteSourceSize": { - "x": 1, - "y": 1, - "w": 48, - "h": 51 - }, - "frame": { - "x": 192, - "y": 103, - "w": 48, - "h": 51 - } - }, - { - "filename": "0063.png", - "rotated": false, - "trimmed": true, - "sourceSize": { - "w": 49, - "h": 52 - }, - "spriteSourceSize": { - "x": 1, - "y": 1, - "w": 48, - "h": 51 - }, - "frame": { - "x": 192, - "y": 103, - "w": 48, - "h": 51 - } - }, - { - "filename": "0064.png", - "rotated": false, - "trimmed": true, - "sourceSize": { - "w": 49, - "h": 52 - }, - "spriteSourceSize": { - "x": 1, - "y": 1, - "w": 48, - "h": 51 - }, - "frame": { - "x": 192, - "y": 103, - "w": 48, - "h": 51 - } - }, - { - "filename": "0079.png", - "rotated": false, - "trimmed": true, - "sourceSize": { - "w": 49, - "h": 52 - }, - "spriteSourceSize": { - "x": 1, - "y": 1, - "w": 48, - "h": 51 - }, - "frame": { - "x": 192, - "y": 103, - "w": 48, - "h": 51 - } - }, - { - "filename": "0080.png", - "rotated": false, - "trimmed": true, - "sourceSize": { - "w": 49, - "h": 52 - }, - "spriteSourceSize": { - "x": 1, - "y": 1, - "w": 48, - "h": 51 - }, - "frame": { - "x": 192, - "y": 103, - "w": 48, - "h": 51 - } - }, - { - "filename": "0003.png", - "rotated": false, - "trimmed": true, - "sourceSize": { - "w": 49, - "h": 52 - }, - "spriteSourceSize": { - "x": 1, - "y": 1, - "w": 47, - "h": 51 - }, - "frame": { - "x": 96, - "y": 154, - "w": 47, - "h": 51 - } - }, - { - "filename": "0004.png", - "rotated": false, - "trimmed": true, - "sourceSize": { - "w": 49, - "h": 52 - }, - "spriteSourceSize": { - "x": 1, - "y": 1, - "w": 47, - "h": 51 - }, - "frame": { - "x": 96, - "y": 154, - "w": 47, - "h": 51 - } - }, - { - "filename": "0019.png", - "rotated": false, - "trimmed": true, - "sourceSize": { - "w": 49, - "h": 52 - }, - "spriteSourceSize": { - "x": 1, - "y": 1, - "w": 47, - "h": 51 - }, - "frame": { - "x": 96, - "y": 154, - "w": 47, - "h": 51 - } - }, - { - "filename": "0020.png", - "rotated": false, - "trimmed": true, - "sourceSize": { - "w": 49, - "h": 52 - }, - "spriteSourceSize": { - "x": 1, - "y": 1, - "w": 47, - "h": 51 - }, - "frame": { - "x": 96, - "y": 154, - "w": 47, - "h": 51 - } - }, - { - "filename": "0035.png", - "rotated": false, - "trimmed": true, - "sourceSize": { - "w": 49, - "h": 52 - }, - "spriteSourceSize": { - "x": 1, - "y": 1, - "w": 47, - "h": 51 - }, - "frame": { - "x": 96, - "y": 154, - "w": 47, - "h": 51 - } - }, - { - "filename": "0036.png", - "rotated": false, - "trimmed": true, - "sourceSize": { - "w": 49, - "h": 52 - }, - "spriteSourceSize": { - "x": 1, - "y": 1, - "w": 47, - "h": 51 - }, - "frame": { - "x": 96, - "y": 154, - "w": 47, - "h": 51 - } - }, - { - "filename": "0051.png", - "rotated": false, - "trimmed": true, - "sourceSize": { - "w": 49, - "h": 52 - }, - "spriteSourceSize": { - "x": 1, - "y": 1, - "w": 47, - "h": 51 - }, - "frame": { - "x": 96, - "y": 154, - "w": 47, - "h": 51 - } - }, - { - "filename": "0052.png", - "rotated": false, - "trimmed": true, - "sourceSize": { - "w": 49, - "h": 52 - }, - "spriteSourceSize": { - "x": 1, - "y": 1, - "w": 47, - "h": 51 - }, - "frame": { - "x": 96, - "y": 154, - "w": 47, - "h": 51 - } - }, - { - "filename": "0067.png", - "rotated": false, - "trimmed": true, - "sourceSize": { - "w": 49, - "h": 52 - }, - "spriteSourceSize": { - "x": 1, - "y": 1, - "w": 47, - "h": 51 - }, - "frame": { - "x": 96, - "y": 154, - "w": 47, - "h": 51 - } - }, - { - "filename": "0068.png", - "rotated": false, - "trimmed": true, - "sourceSize": { - "w": 49, - "h": 52 - }, - "spriteSourceSize": { - "x": 1, - "y": 1, - "w": 47, - "h": 51 - }, - "frame": { - "x": 96, - "y": 154, - "w": 47, - "h": 51 - } - }, - { - "filename": "0005.png", - "rotated": false, - "trimmed": true, - "sourceSize": { - "w": 49, - "h": 52 - }, - "spriteSourceSize": { - "x": 0, - "y": 2, - "w": 48, - "h": 50 - }, - "frame": { - "x": 96, - "y": 104, - "w": 48, - "h": 50 - } - }, - { - "filename": "0006.png", - "rotated": false, - "trimmed": true, - "sourceSize": { - "w": 49, - "h": 52 - }, - "spriteSourceSize": { - "x": 0, - "y": 2, - "w": 48, - "h": 50 - }, - "frame": { - "x": 96, - "y": 104, - "w": 48, - "h": 50 - } - }, - { - "filename": "0021.png", - "rotated": false, - "trimmed": true, - "sourceSize": { - "w": 49, - "h": 52 - }, - "spriteSourceSize": { - "x": 0, - "y": 2, - "w": 48, - "h": 50 - }, - "frame": { - "x": 96, - "y": 104, - "w": 48, - "h": 50 - } - }, - { - "filename": "0022.png", - "rotated": false, - "trimmed": true, - "sourceSize": { - "w": 49, - "h": 52 - }, - "spriteSourceSize": { - "x": 0, - "y": 2, - "w": 48, - "h": 50 - }, - "frame": { - "x": 96, - "y": 104, - "w": 48, - "h": 50 - } - }, - { - "filename": "0037.png", - "rotated": false, - "trimmed": true, - "sourceSize": { - "w": 49, - "h": 52 - }, - "spriteSourceSize": { - "x": 0, - "y": 2, - "w": 48, - "h": 50 - }, - "frame": { - "x": 96, - "y": 104, - "w": 48, - "h": 50 - } - }, - { - "filename": "0038.png", - "rotated": false, - "trimmed": true, - "sourceSize": { - "w": 49, - "h": 52 - }, - "spriteSourceSize": { - "x": 0, - "y": 2, - "w": 48, - "h": 50 - }, - "frame": { - "x": 96, - "y": 104, - "w": 48, - "h": 50 - } - }, - { - "filename": "0053.png", - "rotated": false, - "trimmed": true, - "sourceSize": { - "w": 49, - "h": 52 - }, - "spriteSourceSize": { - "x": 0, - "y": 2, - "w": 48, - "h": 50 - }, - "frame": { - "x": 96, - "y": 104, - "w": 48, - "h": 50 - } - }, - { - "filename": "0054.png", - "rotated": false, - "trimmed": true, - "sourceSize": { - "w": 49, - "h": 52 - }, - "spriteSourceSize": { - "x": 0, - "y": 2, - "w": 48, - "h": 50 - }, - "frame": { - "x": 96, - "y": 104, - "w": 48, - "h": 50 - } - }, - { - "filename": "0069.png", - "rotated": false, - "trimmed": true, - "sourceSize": { - "w": 49, - "h": 52 - }, - "spriteSourceSize": { - "x": 0, - "y": 2, - "w": 48, - "h": 50 - }, - "frame": { - "x": 96, - "y": 104, - "w": 48, - "h": 50 - } - }, - { - "filename": "0070.png", - "rotated": false, - "trimmed": true, - "sourceSize": { - "w": 49, - "h": 52 - }, - "spriteSourceSize": { - "x": 0, - "y": 2, - "w": 48, - "h": 50 - }, - "frame": { - "x": 96, - "y": 104, - "w": 48, - "h": 50 - } - }, - { - "filename": "0007.png", - "rotated": false, - "trimmed": true, - "sourceSize": { - "w": 49, - "h": 52 - }, - "spriteSourceSize": { - "x": 0, - "y": 4, - "w": 48, - "h": 48 - }, - "frame": { - "x": 144, - "y": 104, - "w": 48, - "h": 48 - } - }, - { - "filename": "0008.png", - "rotated": false, - "trimmed": true, - "sourceSize": { - "w": 49, - "h": 52 - }, - "spriteSourceSize": { - "x": 0, - "y": 4, - "w": 48, - "h": 48 - }, - "frame": { - "x": 144, - "y": 104, - "w": 48, - "h": 48 - } - }, - { - "filename": "0023.png", - "rotated": false, - "trimmed": true, - "sourceSize": { - "w": 49, - "h": 52 - }, - "spriteSourceSize": { - "x": 0, - "y": 4, - "w": 48, - "h": 48 - }, - "frame": { - "x": 144, - "y": 104, - "w": 48, - "h": 48 - } - }, - { - "filename": "0024.png", - "rotated": false, - "trimmed": true, - "sourceSize": { - "w": 49, - "h": 52 - }, - "spriteSourceSize": { - "x": 0, - "y": 4, - "w": 48, - "h": 48 - }, - "frame": { - "x": 144, - "y": 104, - "w": 48, - "h": 48 - } - }, - { - "filename": "0039.png", - "rotated": false, - "trimmed": true, - "sourceSize": { - "w": 49, - "h": 52 - }, - "spriteSourceSize": { - "x": 0, - "y": 4, - "w": 48, - "h": 48 - }, - "frame": { - "x": 144, - "y": 104, - "w": 48, - "h": 48 - } - }, - { - "filename": "0040.png", - "rotated": false, - "trimmed": true, - "sourceSize": { - "w": 49, - "h": 52 - }, - "spriteSourceSize": { - "x": 0, - "y": 4, - "w": 48, - "h": 48 - }, - "frame": { - "x": 144, - "y": 104, - "w": 48, - "h": 48 - } - }, - { - "filename": "0055.png", - "rotated": false, - "trimmed": true, - "sourceSize": { - "w": 49, - "h": 52 - }, - "spriteSourceSize": { - "x": 0, - "y": 4, - "w": 48, - "h": 48 - }, - "frame": { - "x": 144, - "y": 104, - "w": 48, - "h": 48 - } - }, - { - "filename": "0056.png", - "rotated": false, - "trimmed": true, - "sourceSize": { - "w": 49, - "h": 52 - }, - "spriteSourceSize": { - "x": 0, - "y": 4, - "w": 48, - "h": 48 - }, - "frame": { - "x": 144, - "y": 104, - "w": 48, - "h": 48 - } - }, - { - "filename": "0071.png", - "rotated": false, - "trimmed": true, - "sourceSize": { - "w": 49, - "h": 52 - }, - "spriteSourceSize": { - "x": 0, - "y": 4, - "w": 48, - "h": 48 - }, - "frame": { - "x": 144, - "y": 104, - "w": 48, - "h": 48 - } - }, - { - "filename": "0072.png", - "rotated": false, - "trimmed": true, - "sourceSize": { - "w": 49, - "h": 52 - }, - "spriteSourceSize": { - "x": 0, - "y": 4, - "w": 48, - "h": 48 - }, - "frame": { - "x": 144, - "y": 104, - "w": 48, - "h": 48 - } - }, - { - "filename": "0009.png", - "rotated": false, - "trimmed": true, - "sourceSize": { - "w": 49, - "h": 52 - }, - "spriteSourceSize": { - "x": 0, - "y": 4, - "w": 48, - "h": 48 - }, - "frame": { - "x": 144, - "y": 152, - "w": 48, - "h": 48 - } - }, - { - "filename": "0010.png", - "rotated": false, - "trimmed": true, - "sourceSize": { - "w": 49, - "h": 52 - }, - "spriteSourceSize": { - "x": 0, - "y": 4, - "w": 48, - "h": 48 - }, - "frame": { - "x": 144, - "y": 152, - "w": 48, - "h": 48 - } - }, - { - "filename": "0025.png", - "rotated": false, - "trimmed": true, - "sourceSize": { - "w": 49, - "h": 52 - }, - "spriteSourceSize": { - "x": 0, - "y": 4, - "w": 48, - "h": 48 - }, - "frame": { - "x": 144, - "y": 152, - "w": 48, - "h": 48 - } - }, - { - "filename": "0026.png", - "rotated": false, - "trimmed": true, - "sourceSize": { - "w": 49, - "h": 52 - }, - "spriteSourceSize": { - "x": 0, - "y": 4, - "w": 48, - "h": 48 - }, - "frame": { - "x": 144, - "y": 152, - "w": 48, - "h": 48 - } - }, - { - "filename": "0041.png", - "rotated": false, - "trimmed": true, - "sourceSize": { - "w": 49, - "h": 52 - }, - "spriteSourceSize": { - "x": 0, - "y": 4, - "w": 48, - "h": 48 - }, - "frame": { - "x": 144, - "y": 152, - "w": 48, - "h": 48 - } - }, - { - "filename": "0042.png", - "rotated": false, - "trimmed": true, - "sourceSize": { - "w": 49, - "h": 52 - }, - "spriteSourceSize": { - "x": 0, - "y": 4, - "w": 48, - "h": 48 - }, - "frame": { - "x": 144, - "y": 152, - "w": 48, - "h": 48 - } - }, - { - "filename": "0057.png", - "rotated": false, - "trimmed": true, - "sourceSize": { - "w": 49, - "h": 52 - }, - "spriteSourceSize": { - "x": 0, - "y": 4, - "w": 48, - "h": 48 - }, - "frame": { - "x": 144, - "y": 152, - "w": 48, - "h": 48 - } - }, - { - "filename": "0058.png", - "rotated": false, - "trimmed": true, - "sourceSize": { - "w": 49, - "h": 52 - }, - "spriteSourceSize": { - "x": 0, - "y": 4, - "w": 48, - "h": 48 - }, - "frame": { - "x": 144, - "y": 152, - "w": 48, - "h": 48 - } - }, - { - "filename": "0073.png", - "rotated": false, - "trimmed": true, - "sourceSize": { - "w": 49, - "h": 52 - }, - "spriteSourceSize": { - "x": 0, - "y": 4, - "w": 48, - "h": 48 - }, - "frame": { - "x": 144, - "y": 152, - "w": 48, - "h": 48 - } - }, - { - "filename": "0074.png", - "rotated": false, - "trimmed": true, - "sourceSize": { - "w": 49, - "h": 52 - }, - "spriteSourceSize": { - "x": 0, - "y": 4, - "w": 48, - "h": 48 - }, - "frame": { - "x": 144, - "y": 152, - "w": 48, - "h": 48 - } - }, - { - "filename": "0011.png", - "rotated": false, - "trimmed": true, - "sourceSize": { - "w": 49, - "h": 52 - }, - "spriteSourceSize": { - "x": 0, - "y": 4, - "w": 48, - "h": 48 - }, - "frame": { - "x": 192, - "y": 154, - "w": 48, - "h": 48 - } - }, - { - "filename": "0012.png", - "rotated": false, - "trimmed": true, - "sourceSize": { - "w": 49, - "h": 52 - }, - "spriteSourceSize": { - "x": 0, - "y": 4, - "w": 48, - "h": 48 - }, - "frame": { - "x": 192, - "y": 154, - "w": 48, - "h": 48 - } - }, - { - "filename": "0027.png", - "rotated": false, - "trimmed": true, - "sourceSize": { - "w": 49, - "h": 52 - }, - "spriteSourceSize": { - "x": 0, - "y": 4, - "w": 48, - "h": 48 - }, - "frame": { - "x": 192, - "y": 154, - "w": 48, - "h": 48 - } - }, - { - "filename": "0028.png", - "rotated": false, - "trimmed": true, - "sourceSize": { - "w": 49, - "h": 52 - }, - "spriteSourceSize": { - "x": 0, - "y": 4, - "w": 48, - "h": 48 - }, - "frame": { - "x": 192, - "y": 154, - "w": 48, - "h": 48 - } - }, - { - "filename": "0043.png", - "rotated": false, - "trimmed": true, - "sourceSize": { - "w": 49, - "h": 52 - }, - "spriteSourceSize": { - "x": 0, - "y": 4, - "w": 48, - "h": 48 - }, - "frame": { - "x": 192, - "y": 154, - "w": 48, - "h": 48 - } - }, - { - "filename": "0044.png", - "rotated": false, - "trimmed": true, - "sourceSize": { - "w": 49, - "h": 52 - }, - "spriteSourceSize": { - "x": 0, - "y": 4, - "w": 48, - "h": 48 - }, - "frame": { - "x": 192, - "y": 154, - "w": 48, - "h": 48 - } - }, - { - "filename": "0059.png", - "rotated": false, - "trimmed": true, - "sourceSize": { - "w": 49, - "h": 52 - }, - "spriteSourceSize": { - "x": 0, - "y": 4, - "w": 48, - "h": 48 - }, - "frame": { - "x": 192, - "y": 154, - "w": 48, - "h": 48 - } - }, - { - "filename": "0060.png", - "rotated": false, - "trimmed": true, - "sourceSize": { - "w": 49, - "h": 52 - }, - "spriteSourceSize": { - "x": 0, - "y": 4, - "w": 48, - "h": 48 - }, - "frame": { - "x": 192, - "y": 154, - "w": 48, - "h": 48 - } - }, - { - "filename": "0075.png", - "rotated": false, - "trimmed": true, - "sourceSize": { - "w": 49, - "h": 52 - }, - "spriteSourceSize": { - "x": 0, - "y": 4, - "w": 48, - "h": 48 - }, - "frame": { - "x": 192, - "y": 154, - "w": 48, - "h": 48 - } - }, - { - "filename": "0076.png", - "rotated": false, - "trimmed": true, - "sourceSize": { - "w": 49, - "h": 52 - }, - "spriteSourceSize": { - "x": 0, - "y": 4, - "w": 48, - "h": 48 - }, - "frame": { - "x": 192, - "y": 154, - "w": 48, - "h": 48 - } - } - ] - } - ], - "meta": { - "app": "https://www.codeandweb.com/texturepacker", - "version": "3.0", - "smartupdate": "$TexturePacker:SmartUpdate:be0dbbdbd852ebe341842d9712f73e7d:1cd4bec3148a80480f6568f4c8920125:d07862436676aa228a148ee1f1d82a8f$" - } -} diff --git a/public/images/pokemon/exp/shiny/782.png b/public/images/pokemon/exp/shiny/782.png deleted file mode 100644 index 5998d9f9d7a..00000000000 Binary files a/public/images/pokemon/exp/shiny/782.png and /dev/null differ diff --git a/public/images/pokemon/exp/shiny/783.json b/public/images/pokemon/exp/shiny/783.json deleted file mode 100644 index 440e495598b..00000000000 --- a/public/images/pokemon/exp/shiny/783.json +++ /dev/null @@ -1,2204 +0,0 @@ -{ - "textures": [ - { - "image": "783.png", - "format": "RGBA8888", - "size": { - "w": 279, - "h": 279 - }, - "scale": 1, - "frames": [ - { - "filename": "0077.png", - "rotated": false, - "trimmed": true, - "sourceSize": { - "w": 65, - "h": 71 - }, - "spriteSourceSize": { - "x": 1, - "y": 0, - "w": 64, - "h": 71 - }, - "frame": { - "x": 0, - "y": 0, - "w": 64, - "h": 71 - } - }, - { - "filename": "0082.png", - "rotated": false, - "trimmed": true, - "sourceSize": { - "w": 65, - "h": 71 - }, - "spriteSourceSize": { - "x": 1, - "y": 0, - "w": 64, - "h": 71 - }, - "frame": { - "x": 0, - "y": 0, - "w": 64, - "h": 71 - } - }, - { - "filename": "0087.png", - "rotated": false, - "trimmed": true, - "sourceSize": { - "w": 65, - "h": 71 - }, - "spriteSourceSize": { - "x": 1, - "y": 0, - "w": 64, - "h": 71 - }, - "frame": { - "x": 0, - "y": 0, - "w": 64, - "h": 71 - } - }, - { - "filename": "0092.png", - "rotated": false, - "trimmed": true, - "sourceSize": { - "w": 65, - "h": 71 - }, - "spriteSourceSize": { - "x": 1, - "y": 0, - "w": 64, - "h": 71 - }, - "frame": { - "x": 64, - "y": 0, - "w": 64, - "h": 71 - } - }, - { - "filename": "0069.png", - "rotated": false, - "trimmed": true, - "sourceSize": { - "w": 65, - "h": 71 - }, - "spriteSourceSize": { - "x": 1, - "y": 0, - "w": 63, - "h": 71 - }, - "frame": { - "x": 128, - "y": 0, - "w": 63, - "h": 71 - } - }, - { - "filename": "0070.png", - "rotated": false, - "trimmed": true, - "sourceSize": { - "w": 65, - "h": 71 - }, - "spriteSourceSize": { - "x": 1, - "y": 0, - "w": 63, - "h": 71 - }, - "frame": { - "x": 128, - "y": 0, - "w": 63, - "h": 71 - } - }, - { - "filename": "0071.png", - "rotated": false, - "trimmed": true, - "sourceSize": { - "w": 65, - "h": 71 - }, - "spriteSourceSize": { - "x": 1, - "y": 0, - "w": 63, - "h": 71 - }, - "frame": { - "x": 191, - "y": 0, - "w": 63, - "h": 71 - } - }, - { - "filename": "0072.png", - "rotated": false, - "trimmed": true, - "sourceSize": { - "w": 65, - "h": 71 - }, - "spriteSourceSize": { - "x": 1, - "y": 0, - "w": 63, - "h": 71 - }, - "frame": { - "x": 191, - "y": 0, - "w": 63, - "h": 71 - } - }, - { - "filename": "0076.png", - "rotated": false, - "trimmed": true, - "sourceSize": { - "w": 65, - "h": 71 - }, - "spriteSourceSize": { - "x": 1, - "y": 0, - "w": 63, - "h": 71 - }, - "frame": { - "x": 0, - "y": 71, - "w": 63, - "h": 71 - } - }, - { - "filename": "0081.png", - "rotated": false, - "trimmed": true, - "sourceSize": { - "w": 65, - "h": 71 - }, - "spriteSourceSize": { - "x": 1, - "y": 0, - "w": 63, - "h": 71 - }, - "frame": { - "x": 0, - "y": 71, - "w": 63, - "h": 71 - } - }, - { - "filename": "0086.png", - "rotated": false, - "trimmed": true, - "sourceSize": { - "w": 65, - "h": 71 - }, - "spriteSourceSize": { - "x": 1, - "y": 0, - "w": 63, - "h": 71 - }, - "frame": { - "x": 0, - "y": 71, - "w": 63, - "h": 71 - } - }, - { - "filename": "0091.png", - "rotated": false, - "trimmed": true, - "sourceSize": { - "w": 65, - "h": 71 - }, - "spriteSourceSize": { - "x": 1, - "y": 0, - "w": 63, - "h": 71 - }, - "frame": { - "x": 0, - "y": 71, - "w": 63, - "h": 71 - } - }, - { - "filename": "0078.png", - "rotated": false, - "trimmed": true, - "sourceSize": { - "w": 65, - "h": 71 - }, - "spriteSourceSize": { - "x": 1, - "y": 0, - "w": 63, - "h": 71 - }, - "frame": { - "x": 63, - "y": 71, - "w": 63, - "h": 71 - } - }, - { - "filename": "0083.png", - "rotated": false, - "trimmed": true, - "sourceSize": { - "w": 65, - "h": 71 - }, - "spriteSourceSize": { - "x": 1, - "y": 0, - "w": 63, - "h": 71 - }, - "frame": { - "x": 63, - "y": 71, - "w": 63, - "h": 71 - } - }, - { - "filename": "0088.png", - "rotated": false, - "trimmed": true, - "sourceSize": { - "w": 65, - "h": 71 - }, - "spriteSourceSize": { - "x": 1, - "y": 0, - "w": 63, - "h": 71 - }, - "frame": { - "x": 63, - "y": 71, - "w": 63, - "h": 71 - } - }, - { - "filename": "0093.png", - "rotated": false, - "trimmed": true, - "sourceSize": { - "w": 65, - "h": 71 - }, - "spriteSourceSize": { - "x": 1, - "y": 0, - "w": 63, - "h": 71 - }, - "frame": { - "x": 126, - "y": 71, - "w": 63, - "h": 71 - } - }, - { - "filename": "0073.png", - "rotated": false, - "trimmed": true, - "sourceSize": { - "w": 65, - "h": 71 - }, - "spriteSourceSize": { - "x": 1, - "y": 0, - "w": 62, - "h": 71 - }, - "frame": { - "x": 189, - "y": 71, - "w": 62, - "h": 71 - } - }, - { - "filename": "0074.png", - "rotated": false, - "trimmed": true, - "sourceSize": { - "w": 65, - "h": 71 - }, - "spriteSourceSize": { - "x": 1, - "y": 0, - "w": 62, - "h": 71 - }, - "frame": { - "x": 189, - "y": 71, - "w": 62, - "h": 71 - } - }, - { - "filename": "0005.png", - "rotated": false, - "trimmed": true, - "sourceSize": { - "w": 65, - "h": 71 - }, - "spriteSourceSize": { - "x": 1, - "y": 1, - "w": 63, - "h": 70 - }, - "frame": { - "x": 0, - "y": 142, - "w": 63, - "h": 70 - } - }, - { - "filename": "0006.png", - "rotated": false, - "trimmed": true, - "sourceSize": { - "w": 65, - "h": 71 - }, - "spriteSourceSize": { - "x": 1, - "y": 1, - "w": 63, - "h": 70 - }, - "frame": { - "x": 0, - "y": 142, - "w": 63, - "h": 70 - } - }, - { - "filename": "0021.png", - "rotated": false, - "trimmed": true, - "sourceSize": { - "w": 65, - "h": 71 - }, - "spriteSourceSize": { - "x": 1, - "y": 1, - "w": 63, - "h": 70 - }, - "frame": { - "x": 0, - "y": 142, - "w": 63, - "h": 70 - } - }, - { - "filename": "0022.png", - "rotated": false, - "trimmed": true, - "sourceSize": { - "w": 65, - "h": 71 - }, - "spriteSourceSize": { - "x": 1, - "y": 1, - "w": 63, - "h": 70 - }, - "frame": { - "x": 0, - "y": 142, - "w": 63, - "h": 70 - } - }, - { - "filename": "0037.png", - "rotated": false, - "trimmed": true, - "sourceSize": { - "w": 65, - "h": 71 - }, - "spriteSourceSize": { - "x": 1, - "y": 1, - "w": 63, - "h": 70 - }, - "frame": { - "x": 0, - "y": 142, - "w": 63, - "h": 70 - } - }, - { - "filename": "0038.png", - "rotated": false, - "trimmed": true, - "sourceSize": { - "w": 65, - "h": 71 - }, - "spriteSourceSize": { - "x": 1, - "y": 1, - "w": 63, - "h": 70 - }, - "frame": { - "x": 0, - "y": 142, - "w": 63, - "h": 70 - } - }, - { - "filename": "0053.png", - "rotated": false, - "trimmed": true, - "sourceSize": { - "w": 65, - "h": 71 - }, - "spriteSourceSize": { - "x": 1, - "y": 1, - "w": 63, - "h": 70 - }, - "frame": { - "x": 0, - "y": 142, - "w": 63, - "h": 70 - } - }, - { - "filename": "0054.png", - "rotated": false, - "trimmed": true, - "sourceSize": { - "w": 65, - "h": 71 - }, - "spriteSourceSize": { - "x": 1, - "y": 1, - "w": 63, - "h": 70 - }, - "frame": { - "x": 0, - "y": 142, - "w": 63, - "h": 70 - } - }, - { - "filename": "0067.png", - "rotated": false, - "trimmed": true, - "sourceSize": { - "w": 65, - "h": 71 - }, - "spriteSourceSize": { - "x": 1, - "y": 1, - "w": 63, - "h": 70 - }, - "frame": { - "x": 0, - "y": 142, - "w": 63, - "h": 70 - } - }, - { - "filename": "0068.png", - "rotated": false, - "trimmed": true, - "sourceSize": { - "w": 65, - "h": 71 - }, - "spriteSourceSize": { - "x": 1, - "y": 1, - "w": 63, - "h": 70 - }, - "frame": { - "x": 0, - "y": 142, - "w": 63, - "h": 70 - } - }, - { - "filename": "0094.png", - "rotated": false, - "trimmed": true, - "sourceSize": { - "w": 65, - "h": 71 - }, - "spriteSourceSize": { - "x": 1, - "y": 1, - "w": 63, - "h": 70 - }, - "frame": { - "x": 0, - "y": 142, - "w": 63, - "h": 70 - } - }, - { - "filename": "0095.png", - "rotated": false, - "trimmed": true, - "sourceSize": { - "w": 65, - "h": 71 - }, - "spriteSourceSize": { - "x": 1, - "y": 1, - "w": 63, - "h": 70 - }, - "frame": { - "x": 0, - "y": 142, - "w": 63, - "h": 70 - } - }, - { - "filename": "0079.png", - "rotated": false, - "trimmed": true, - "sourceSize": { - "w": 65, - "h": 71 - }, - "spriteSourceSize": { - "x": 1, - "y": 0, - "w": 62, - "h": 71 - }, - "frame": { - "x": 63, - "y": 142, - "w": 62, - "h": 71 - } - }, - { - "filename": "0084.png", - "rotated": false, - "trimmed": true, - "sourceSize": { - "w": 65, - "h": 71 - }, - "spriteSourceSize": { - "x": 1, - "y": 0, - "w": 62, - "h": 71 - }, - "frame": { - "x": 63, - "y": 142, - "w": 62, - "h": 71 - } - }, - { - "filename": "0089.png", - "rotated": false, - "trimmed": true, - "sourceSize": { - "w": 65, - "h": 71 - }, - "spriteSourceSize": { - "x": 1, - "y": 0, - "w": 62, - "h": 71 - }, - "frame": { - "x": 63, - "y": 142, - "w": 62, - "h": 71 - } - }, - { - "filename": "0011.png", - "rotated": false, - "trimmed": true, - "sourceSize": { - "w": 65, - "h": 71 - }, - "spriteSourceSize": { - "x": 0, - "y": 4, - "w": 58, - "h": 67 - }, - "frame": { - "x": 0, - "y": 212, - "w": 58, - "h": 67 - } - }, - { - "filename": "0012.png", - "rotated": false, - "trimmed": true, - "sourceSize": { - "w": 65, - "h": 71 - }, - "spriteSourceSize": { - "x": 0, - "y": 4, - "w": 58, - "h": 67 - }, - "frame": { - "x": 0, - "y": 212, - "w": 58, - "h": 67 - } - }, - { - "filename": "0015.png", - "rotated": false, - "trimmed": true, - "sourceSize": { - "w": 65, - "h": 71 - }, - "spriteSourceSize": { - "x": 0, - "y": 4, - "w": 58, - "h": 67 - }, - "frame": { - "x": 0, - "y": 212, - "w": 58, - "h": 67 - } - }, - { - "filename": "0016.png", - "rotated": false, - "trimmed": true, - "sourceSize": { - "w": 65, - "h": 71 - }, - "spriteSourceSize": { - "x": 0, - "y": 4, - "w": 58, - "h": 67 - }, - "frame": { - "x": 0, - "y": 212, - "w": 58, - "h": 67 - } - }, - { - "filename": "0027.png", - "rotated": false, - "trimmed": true, - "sourceSize": { - "w": 65, - "h": 71 - }, - "spriteSourceSize": { - "x": 0, - "y": 4, - "w": 58, - "h": 67 - }, - "frame": { - "x": 0, - "y": 212, - "w": 58, - "h": 67 - } - }, - { - "filename": "0028.png", - "rotated": false, - "trimmed": true, - "sourceSize": { - "w": 65, - "h": 71 - }, - "spriteSourceSize": { - "x": 0, - "y": 4, - "w": 58, - "h": 67 - }, - "frame": { - "x": 0, - "y": 212, - "w": 58, - "h": 67 - } - }, - { - "filename": "0031.png", - "rotated": false, - "trimmed": true, - "sourceSize": { - "w": 65, - "h": 71 - }, - "spriteSourceSize": { - "x": 0, - "y": 4, - "w": 58, - "h": 67 - }, - "frame": { - "x": 0, - "y": 212, - "w": 58, - "h": 67 - } - }, - { - "filename": "0032.png", - "rotated": false, - "trimmed": true, - "sourceSize": { - "w": 65, - "h": 71 - }, - "spriteSourceSize": { - "x": 0, - "y": 4, - "w": 58, - "h": 67 - }, - "frame": { - "x": 0, - "y": 212, - "w": 58, - "h": 67 - } - }, - { - "filename": "0043.png", - "rotated": false, - "trimmed": true, - "sourceSize": { - "w": 65, - "h": 71 - }, - "spriteSourceSize": { - "x": 0, - "y": 4, - "w": 58, - "h": 67 - }, - "frame": { - "x": 0, - "y": 212, - "w": 58, - "h": 67 - } - }, - { - "filename": "0044.png", - "rotated": false, - "trimmed": true, - "sourceSize": { - "w": 65, - "h": 71 - }, - "spriteSourceSize": { - "x": 0, - "y": 4, - "w": 58, - "h": 67 - }, - "frame": { - "x": 0, - "y": 212, - "w": 58, - "h": 67 - } - }, - { - "filename": "0047.png", - "rotated": false, - "trimmed": true, - "sourceSize": { - "w": 65, - "h": 71 - }, - "spriteSourceSize": { - "x": 0, - "y": 4, - "w": 58, - "h": 67 - }, - "frame": { - "x": 0, - "y": 212, - "w": 58, - "h": 67 - } - }, - { - "filename": "0048.png", - "rotated": false, - "trimmed": true, - "sourceSize": { - "w": 65, - "h": 71 - }, - "spriteSourceSize": { - "x": 0, - "y": 4, - "w": 58, - "h": 67 - }, - "frame": { - "x": 0, - "y": 212, - "w": 58, - "h": 67 - } - }, - { - "filename": "0059.png", - "rotated": false, - "trimmed": true, - "sourceSize": { - "w": 65, - "h": 71 - }, - "spriteSourceSize": { - "x": 0, - "y": 4, - "w": 58, - "h": 67 - }, - "frame": { - "x": 0, - "y": 212, - "w": 58, - "h": 67 - } - }, - { - "filename": "0060.png", - "rotated": false, - "trimmed": true, - "sourceSize": { - "w": 65, - "h": 71 - }, - "spriteSourceSize": { - "x": 0, - "y": 4, - "w": 58, - "h": 67 - }, - "frame": { - "x": 0, - "y": 212, - "w": 58, - "h": 67 - } - }, - { - "filename": "0063.png", - "rotated": false, - "trimmed": true, - "sourceSize": { - "w": 65, - "h": 71 - }, - "spriteSourceSize": { - "x": 0, - "y": 4, - "w": 58, - "h": 67 - }, - "frame": { - "x": 0, - "y": 212, - "w": 58, - "h": 67 - } - }, - { - "filename": "0064.png", - "rotated": false, - "trimmed": true, - "sourceSize": { - "w": 65, - "h": 71 - }, - "spriteSourceSize": { - "x": 0, - "y": 4, - "w": 58, - "h": 67 - }, - "frame": { - "x": 0, - "y": 212, - "w": 58, - "h": 67 - } - }, - { - "filename": "0099.png", - "rotated": false, - "trimmed": true, - "sourceSize": { - "w": 65, - "h": 71 - }, - "spriteSourceSize": { - "x": 0, - "y": 4, - "w": 58, - "h": 67 - }, - "frame": { - "x": 0, - "y": 212, - "w": 58, - "h": 67 - } - }, - { - "filename": "0100.png", - "rotated": false, - "trimmed": true, - "sourceSize": { - "w": 65, - "h": 71 - }, - "spriteSourceSize": { - "x": 0, - "y": 4, - "w": 58, - "h": 67 - }, - "frame": { - "x": 0, - "y": 212, - "w": 58, - "h": 67 - } - }, - { - "filename": "0103.png", - "rotated": false, - "trimmed": true, - "sourceSize": { - "w": 65, - "h": 71 - }, - "spriteSourceSize": { - "x": 0, - "y": 4, - "w": 58, - "h": 67 - }, - "frame": { - "x": 0, - "y": 212, - "w": 58, - "h": 67 - } - }, - { - "filename": "0104.png", - "rotated": false, - "trimmed": true, - "sourceSize": { - "w": 65, - "h": 71 - }, - "spriteSourceSize": { - "x": 0, - "y": 4, - "w": 58, - "h": 67 - }, - "frame": { - "x": 0, - "y": 212, - "w": 58, - "h": 67 - } - }, - { - "filename": "0003.png", - "rotated": false, - "trimmed": true, - "sourceSize": { - "w": 65, - "h": 71 - }, - "spriteSourceSize": { - "x": 0, - "y": 2, - "w": 62, - "h": 69 - }, - "frame": { - "x": 125, - "y": 142, - "w": 62, - "h": 69 - } - }, - { - "filename": "0004.png", - "rotated": false, - "trimmed": true, - "sourceSize": { - "w": 65, - "h": 71 - }, - "spriteSourceSize": { - "x": 0, - "y": 2, - "w": 62, - "h": 69 - }, - "frame": { - "x": 125, - "y": 142, - "w": 62, - "h": 69 - } - }, - { - "filename": "0007.png", - "rotated": false, - "trimmed": true, - "sourceSize": { - "w": 65, - "h": 71 - }, - "spriteSourceSize": { - "x": 0, - "y": 2, - "w": 62, - "h": 69 - }, - "frame": { - "x": 125, - "y": 142, - "w": 62, - "h": 69 - } - }, - { - "filename": "0008.png", - "rotated": false, - "trimmed": true, - "sourceSize": { - "w": 65, - "h": 71 - }, - "spriteSourceSize": { - "x": 0, - "y": 2, - "w": 62, - "h": 69 - }, - "frame": { - "x": 125, - "y": 142, - "w": 62, - "h": 69 - } - }, - { - "filename": "0019.png", - "rotated": false, - "trimmed": true, - "sourceSize": { - "w": 65, - "h": 71 - }, - "spriteSourceSize": { - "x": 0, - "y": 2, - "w": 62, - "h": 69 - }, - "frame": { - "x": 125, - "y": 142, - "w": 62, - "h": 69 - } - }, - { - "filename": "0020.png", - "rotated": false, - "trimmed": true, - "sourceSize": { - "w": 65, - "h": 71 - }, - "spriteSourceSize": { - "x": 0, - "y": 2, - "w": 62, - "h": 69 - }, - "frame": { - "x": 125, - "y": 142, - "w": 62, - "h": 69 - } - }, - { - "filename": "0023.png", - "rotated": false, - "trimmed": true, - "sourceSize": { - "w": 65, - "h": 71 - }, - "spriteSourceSize": { - "x": 0, - "y": 2, - "w": 62, - "h": 69 - }, - "frame": { - "x": 125, - "y": 142, - "w": 62, - "h": 69 - } - }, - { - "filename": "0024.png", - "rotated": false, - "trimmed": true, - "sourceSize": { - "w": 65, - "h": 71 - }, - "spriteSourceSize": { - "x": 0, - "y": 2, - "w": 62, - "h": 69 - }, - "frame": { - "x": 125, - "y": 142, - "w": 62, - "h": 69 - } - }, - { - "filename": "0035.png", - "rotated": false, - "trimmed": true, - "sourceSize": { - "w": 65, - "h": 71 - }, - "spriteSourceSize": { - "x": 0, - "y": 2, - "w": 62, - "h": 69 - }, - "frame": { - "x": 125, - "y": 142, - "w": 62, - "h": 69 - } - }, - { - "filename": "0036.png", - "rotated": false, - "trimmed": true, - "sourceSize": { - "w": 65, - "h": 71 - }, - "spriteSourceSize": { - "x": 0, - "y": 2, - "w": 62, - "h": 69 - }, - "frame": { - "x": 125, - "y": 142, - "w": 62, - "h": 69 - } - }, - { - "filename": "0039.png", - "rotated": false, - "trimmed": true, - "sourceSize": { - "w": 65, - "h": 71 - }, - "spriteSourceSize": { - "x": 0, - "y": 2, - "w": 62, - "h": 69 - }, - "frame": { - "x": 125, - "y": 142, - "w": 62, - "h": 69 - } - }, - { - "filename": "0040.png", - "rotated": false, - "trimmed": true, - "sourceSize": { - "w": 65, - "h": 71 - }, - "spriteSourceSize": { - "x": 0, - "y": 2, - "w": 62, - "h": 69 - }, - "frame": { - "x": 125, - "y": 142, - "w": 62, - "h": 69 - } - }, - { - "filename": "0051.png", - "rotated": false, - "trimmed": true, - "sourceSize": { - "w": 65, - "h": 71 - }, - "spriteSourceSize": { - "x": 0, - "y": 2, - "w": 62, - "h": 69 - }, - "frame": { - "x": 125, - "y": 142, - "w": 62, - "h": 69 - } - }, - { - "filename": "0052.png", - "rotated": false, - "trimmed": true, - "sourceSize": { - "w": 65, - "h": 71 - }, - "spriteSourceSize": { - "x": 0, - "y": 2, - "w": 62, - "h": 69 - }, - "frame": { - "x": 125, - "y": 142, - "w": 62, - "h": 69 - } - }, - { - "filename": "0055.png", - "rotated": false, - "trimmed": true, - "sourceSize": { - "w": 65, - "h": 71 - }, - "spriteSourceSize": { - "x": 0, - "y": 2, - "w": 62, - "h": 69 - }, - "frame": { - "x": 125, - "y": 142, - "w": 62, - "h": 69 - } - }, - { - "filename": "0056.png", - "rotated": false, - "trimmed": true, - "sourceSize": { - "w": 65, - "h": 71 - }, - "spriteSourceSize": { - "x": 0, - "y": 2, - "w": 62, - "h": 69 - }, - "frame": { - "x": 125, - "y": 142, - "w": 62, - "h": 69 - } - }, - { - "filename": "0065.png", - "rotated": false, - "trimmed": true, - "sourceSize": { - "w": 65, - "h": 71 - }, - "spriteSourceSize": { - "x": 0, - "y": 2, - "w": 62, - "h": 69 - }, - "frame": { - "x": 125, - "y": 142, - "w": 62, - "h": 69 - } - }, - { - "filename": "0066.png", - "rotated": false, - "trimmed": true, - "sourceSize": { - "w": 65, - "h": 71 - }, - "spriteSourceSize": { - "x": 0, - "y": 2, - "w": 62, - "h": 69 - }, - "frame": { - "x": 125, - "y": 142, - "w": 62, - "h": 69 - } - }, - { - "filename": "0096.png", - "rotated": false, - "trimmed": true, - "sourceSize": { - "w": 65, - "h": 71 - }, - "spriteSourceSize": { - "x": 0, - "y": 2, - "w": 62, - "h": 69 - }, - "frame": { - "x": 125, - "y": 142, - "w": 62, - "h": 69 - } - }, - { - "filename": "0097.png", - "rotated": false, - "trimmed": true, - "sourceSize": { - "w": 65, - "h": 71 - }, - "spriteSourceSize": { - "x": 0, - "y": 2, - "w": 62, - "h": 69 - }, - "frame": { - "x": 125, - "y": 142, - "w": 62, - "h": 69 - } - }, - { - "filename": "0075.png", - "rotated": false, - "trimmed": true, - "sourceSize": { - "w": 65, - "h": 71 - }, - "spriteSourceSize": { - "x": 1, - "y": 0, - "w": 60, - "h": 71 - }, - "frame": { - "x": 187, - "y": 142, - "w": 60, - "h": 71 - } - }, - { - "filename": "0080.png", - "rotated": false, - "trimmed": true, - "sourceSize": { - "w": 65, - "h": 71 - }, - "spriteSourceSize": { - "x": 1, - "y": 0, - "w": 60, - "h": 71 - }, - "frame": { - "x": 187, - "y": 142, - "w": 60, - "h": 71 - } - }, - { - "filename": "0085.png", - "rotated": false, - "trimmed": true, - "sourceSize": { - "w": 65, - "h": 71 - }, - "spriteSourceSize": { - "x": 1, - "y": 0, - "w": 60, - "h": 71 - }, - "frame": { - "x": 187, - "y": 142, - "w": 60, - "h": 71 - } - }, - { - "filename": "0090.png", - "rotated": false, - "trimmed": true, - "sourceSize": { - "w": 65, - "h": 71 - }, - "spriteSourceSize": { - "x": 1, - "y": 0, - "w": 60, - "h": 71 - }, - "frame": { - "x": 187, - "y": 142, - "w": 60, - "h": 71 - } - }, - { - "filename": "0001.png", - "rotated": false, - "trimmed": true, - "sourceSize": { - "w": 65, - "h": 71 - }, - "spriteSourceSize": { - "x": 0, - "y": 3, - "w": 60, - "h": 68 - }, - "frame": { - "x": 125, - "y": 211, - "w": 60, - "h": 68 - } - }, - { - "filename": "0002.png", - "rotated": false, - "trimmed": true, - "sourceSize": { - "w": 65, - "h": 71 - }, - "spriteSourceSize": { - "x": 0, - "y": 3, - "w": 60, - "h": 68 - }, - "frame": { - "x": 125, - "y": 211, - "w": 60, - "h": 68 - } - }, - { - "filename": "0009.png", - "rotated": false, - "trimmed": true, - "sourceSize": { - "w": 65, - "h": 71 - }, - "spriteSourceSize": { - "x": 0, - "y": 3, - "w": 60, - "h": 68 - }, - "frame": { - "x": 125, - "y": 211, - "w": 60, - "h": 68 - } - }, - { - "filename": "0010.png", - "rotated": false, - "trimmed": true, - "sourceSize": { - "w": 65, - "h": 71 - }, - "spriteSourceSize": { - "x": 0, - "y": 3, - "w": 60, - "h": 68 - }, - "frame": { - "x": 125, - "y": 211, - "w": 60, - "h": 68 - } - }, - { - "filename": "0017.png", - "rotated": false, - "trimmed": true, - "sourceSize": { - "w": 65, - "h": 71 - }, - "spriteSourceSize": { - "x": 0, - "y": 3, - "w": 60, - "h": 68 - }, - "frame": { - "x": 125, - "y": 211, - "w": 60, - "h": 68 - } - }, - { - "filename": "0018.png", - "rotated": false, - "trimmed": true, - "sourceSize": { - "w": 65, - "h": 71 - }, - "spriteSourceSize": { - "x": 0, - "y": 3, - "w": 60, - "h": 68 - }, - "frame": { - "x": 125, - "y": 211, - "w": 60, - "h": 68 - } - }, - { - "filename": "0025.png", - "rotated": false, - "trimmed": true, - "sourceSize": { - "w": 65, - "h": 71 - }, - "spriteSourceSize": { - "x": 0, - "y": 3, - "w": 60, - "h": 68 - }, - "frame": { - "x": 125, - "y": 211, - "w": 60, - "h": 68 - } - }, - { - "filename": "0026.png", - "rotated": false, - "trimmed": true, - "sourceSize": { - "w": 65, - "h": 71 - }, - "spriteSourceSize": { - "x": 0, - "y": 3, - "w": 60, - "h": 68 - }, - "frame": { - "x": 125, - "y": 211, - "w": 60, - "h": 68 - } - }, - { - "filename": "0033.png", - "rotated": false, - "trimmed": true, - "sourceSize": { - "w": 65, - "h": 71 - }, - "spriteSourceSize": { - "x": 0, - "y": 3, - "w": 60, - "h": 68 - }, - "frame": { - "x": 125, - "y": 211, - "w": 60, - "h": 68 - } - }, - { - "filename": "0034.png", - "rotated": false, - "trimmed": true, - "sourceSize": { - "w": 65, - "h": 71 - }, - "spriteSourceSize": { - "x": 0, - "y": 3, - "w": 60, - "h": 68 - }, - "frame": { - "x": 125, - "y": 211, - "w": 60, - "h": 68 - } - }, - { - "filename": "0041.png", - "rotated": false, - "trimmed": true, - "sourceSize": { - "w": 65, - "h": 71 - }, - "spriteSourceSize": { - "x": 0, - "y": 3, - "w": 60, - "h": 68 - }, - "frame": { - "x": 125, - "y": 211, - "w": 60, - "h": 68 - } - }, - { - "filename": "0042.png", - "rotated": false, - "trimmed": true, - "sourceSize": { - "w": 65, - "h": 71 - }, - "spriteSourceSize": { - "x": 0, - "y": 3, - "w": 60, - "h": 68 - }, - "frame": { - "x": 125, - "y": 211, - "w": 60, - "h": 68 - } - }, - { - "filename": "0049.png", - "rotated": false, - "trimmed": true, - "sourceSize": { - "w": 65, - "h": 71 - }, - "spriteSourceSize": { - "x": 0, - "y": 3, - "w": 60, - "h": 68 - }, - "frame": { - "x": 125, - "y": 211, - "w": 60, - "h": 68 - } - }, - { - "filename": "0050.png", - "rotated": false, - "trimmed": true, - "sourceSize": { - "w": 65, - "h": 71 - }, - "spriteSourceSize": { - "x": 0, - "y": 3, - "w": 60, - "h": 68 - }, - "frame": { - "x": 125, - "y": 211, - "w": 60, - "h": 68 - } - }, - { - "filename": "0057.png", - "rotated": false, - "trimmed": true, - "sourceSize": { - "w": 65, - "h": 71 - }, - "spriteSourceSize": { - "x": 0, - "y": 3, - "w": 60, - "h": 68 - }, - "frame": { - "x": 125, - "y": 211, - "w": 60, - "h": 68 - } - }, - { - "filename": "0058.png", - "rotated": false, - "trimmed": true, - "sourceSize": { - "w": 65, - "h": 71 - }, - "spriteSourceSize": { - "x": 0, - "y": 3, - "w": 60, - "h": 68 - }, - "frame": { - "x": 125, - "y": 211, - "w": 60, - "h": 68 - } - }, - { - "filename": "0098.png", - "rotated": false, - "trimmed": true, - "sourceSize": { - "w": 65, - "h": 71 - }, - "spriteSourceSize": { - "x": 0, - "y": 3, - "w": 60, - "h": 68 - }, - "frame": { - "x": 125, - "y": 211, - "w": 60, - "h": 68 - } - }, - { - "filename": "0013.png", - "rotated": false, - "trimmed": true, - "sourceSize": { - "w": 65, - "h": 71 - }, - "spriteSourceSize": { - "x": 0, - "y": 6, - "w": 55, - "h": 65 - }, - "frame": { - "x": 58, - "y": 213, - "w": 55, - "h": 65 - } - }, - { - "filename": "0014.png", - "rotated": false, - "trimmed": true, - "sourceSize": { - "w": 65, - "h": 71 - }, - "spriteSourceSize": { - "x": 0, - "y": 6, - "w": 55, - "h": 65 - }, - "frame": { - "x": 58, - "y": 213, - "w": 55, - "h": 65 - } - }, - { - "filename": "0029.png", - "rotated": false, - "trimmed": true, - "sourceSize": { - "w": 65, - "h": 71 - }, - "spriteSourceSize": { - "x": 0, - "y": 6, - "w": 55, - "h": 65 - }, - "frame": { - "x": 58, - "y": 213, - "w": 55, - "h": 65 - } - }, - { - "filename": "0030.png", - "rotated": false, - "trimmed": true, - "sourceSize": { - "w": 65, - "h": 71 - }, - "spriteSourceSize": { - "x": 0, - "y": 6, - "w": 55, - "h": 65 - }, - "frame": { - "x": 58, - "y": 213, - "w": 55, - "h": 65 - } - }, - { - "filename": "0045.png", - "rotated": false, - "trimmed": true, - "sourceSize": { - "w": 65, - "h": 71 - }, - "spriteSourceSize": { - "x": 0, - "y": 6, - "w": 55, - "h": 65 - }, - "frame": { - "x": 58, - "y": 213, - "w": 55, - "h": 65 - } - }, - { - "filename": "0046.png", - "rotated": false, - "trimmed": true, - "sourceSize": { - "w": 65, - "h": 71 - }, - "spriteSourceSize": { - "x": 0, - "y": 6, - "w": 55, - "h": 65 - }, - "frame": { - "x": 58, - "y": 213, - "w": 55, - "h": 65 - } - }, - { - "filename": "0061.png", - "rotated": false, - "trimmed": true, - "sourceSize": { - "w": 65, - "h": 71 - }, - "spriteSourceSize": { - "x": 0, - "y": 6, - "w": 55, - "h": 65 - }, - "frame": { - "x": 58, - "y": 213, - "w": 55, - "h": 65 - } - }, - { - "filename": "0062.png", - "rotated": false, - "trimmed": true, - "sourceSize": { - "w": 65, - "h": 71 - }, - "spriteSourceSize": { - "x": 0, - "y": 6, - "w": 55, - "h": 65 - }, - "frame": { - "x": 58, - "y": 213, - "w": 55, - "h": 65 - } - }, - { - "filename": "0101.png", - "rotated": false, - "trimmed": true, - "sourceSize": { - "w": 65, - "h": 71 - }, - "spriteSourceSize": { - "x": 0, - "y": 6, - "w": 55, - "h": 65 - }, - "frame": { - "x": 58, - "y": 213, - "w": 55, - "h": 65 - } - }, - { - "filename": "0102.png", - "rotated": false, - "trimmed": true, - "sourceSize": { - "w": 65, - "h": 71 - }, - "spriteSourceSize": { - "x": 0, - "y": 6, - "w": 55, - "h": 65 - }, - "frame": { - "x": 58, - "y": 213, - "w": 55, - "h": 65 - } - } - ] - } - ], - "meta": { - "app": "https://www.codeandweb.com/texturepacker", - "version": "3.0", - "smartupdate": "$TexturePacker:SmartUpdate:0398d2a32d121507cf95d3e4033a4847:6e131e2820d0625f17f5819dbe95feea:aab166e28c744865a0296041224dd01b$" - } -} diff --git a/public/images/pokemon/exp/shiny/783.png b/public/images/pokemon/exp/shiny/783.png deleted file mode 100644 index 92ea294de9f..00000000000 Binary files a/public/images/pokemon/exp/shiny/783.png and /dev/null differ diff --git a/public/images/pokemon/exp/shiny/784.json b/public/images/pokemon/exp/shiny/784.json deleted file mode 100644 index 0d32fcd217e..00000000000 --- a/public/images/pokemon/exp/shiny/784.json +++ /dev/null @@ -1,1826 +0,0 @@ -{ - "textures": [ - { - "image": "784.png", - "format": "RGBA8888", - "size": { - "w": 461, - "h": 461 - }, - "scale": 1, - "frames": [ - { - "filename": "0014.png", - "rotated": false, - "trimmed": true, - "sourceSize": { - "w": 96, - "h": 91 - }, - "spriteSourceSize": { - "x": 0, - "y": 0, - "w": 96, - "h": 88 - }, - "frame": { - "x": 0, - "y": 0, - "w": 96, - "h": 88 - } - }, - { - "filename": "0032.png", - "rotated": false, - "trimmed": true, - "sourceSize": { - "w": 96, - "h": 91 - }, - "spriteSourceSize": { - "x": 0, - "y": 0, - "w": 96, - "h": 88 - }, - "frame": { - "x": 0, - "y": 0, - "w": 96, - "h": 88 - } - }, - { - "filename": "0050.png", - "rotated": false, - "trimmed": true, - "sourceSize": { - "w": 96, - "h": 91 - }, - "spriteSourceSize": { - "x": 0, - "y": 0, - "w": 96, - "h": 88 - }, - "frame": { - "x": 0, - "y": 0, - "w": 96, - "h": 88 - } - }, - { - "filename": "0068.png", - "rotated": false, - "trimmed": true, - "sourceSize": { - "w": 96, - "h": 91 - }, - "spriteSourceSize": { - "x": 0, - "y": 0, - "w": 96, - "h": 88 - }, - "frame": { - "x": 0, - "y": 0, - "w": 96, - "h": 88 - } - }, - { - "filename": "0015.png", - "rotated": false, - "trimmed": true, - "sourceSize": { - "w": 96, - "h": 91 - }, - "spriteSourceSize": { - "x": 0, - "y": 0, - "w": 96, - "h": 88 - }, - "frame": { - "x": 0, - "y": 88, - "w": 96, - "h": 88 - } - }, - { - "filename": "0033.png", - "rotated": false, - "trimmed": true, - "sourceSize": { - "w": 96, - "h": 91 - }, - "spriteSourceSize": { - "x": 0, - "y": 0, - "w": 96, - "h": 88 - }, - "frame": { - "x": 0, - "y": 88, - "w": 96, - "h": 88 - } - }, - { - "filename": "0051.png", - "rotated": false, - "trimmed": true, - "sourceSize": { - "w": 96, - "h": 91 - }, - "spriteSourceSize": { - "x": 0, - "y": 0, - "w": 96, - "h": 88 - }, - "frame": { - "x": 0, - "y": 88, - "w": 96, - "h": 88 - } - }, - { - "filename": "0069.png", - "rotated": false, - "trimmed": true, - "sourceSize": { - "w": 96, - "h": 91 - }, - "spriteSourceSize": { - "x": 0, - "y": 0, - "w": 96, - "h": 88 - }, - "frame": { - "x": 0, - "y": 88, - "w": 96, - "h": 88 - } - }, - { - "filename": "0016.png", - "rotated": false, - "trimmed": true, - "sourceSize": { - "w": 96, - "h": 91 - }, - "spriteSourceSize": { - "x": 0, - "y": 0, - "w": 96, - "h": 88 - }, - "frame": { - "x": 96, - "y": 0, - "w": 96, - "h": 88 - } - }, - { - "filename": "0034.png", - "rotated": false, - "trimmed": true, - "sourceSize": { - "w": 96, - "h": 91 - }, - "spriteSourceSize": { - "x": 0, - "y": 0, - "w": 96, - "h": 88 - }, - "frame": { - "x": 96, - "y": 0, - "w": 96, - "h": 88 - } - }, - { - "filename": "0052.png", - "rotated": false, - "trimmed": true, - "sourceSize": { - "w": 96, - "h": 91 - }, - "spriteSourceSize": { - "x": 0, - "y": 0, - "w": 96, - "h": 88 - }, - "frame": { - "x": 96, - "y": 0, - "w": 96, - "h": 88 - } - }, - { - "filename": "0070.png", - "rotated": false, - "trimmed": true, - "sourceSize": { - "w": 96, - "h": 91 - }, - "spriteSourceSize": { - "x": 0, - "y": 0, - "w": 96, - "h": 88 - }, - "frame": { - "x": 96, - "y": 0, - "w": 96, - "h": 88 - } - }, - { - "filename": "0017.png", - "rotated": false, - "trimmed": true, - "sourceSize": { - "w": 96, - "h": 91 - }, - "spriteSourceSize": { - "x": 0, - "y": 0, - "w": 96, - "h": 88 - }, - "frame": { - "x": 0, - "y": 176, - "w": 96, - "h": 88 - } - }, - { - "filename": "0035.png", - "rotated": false, - "trimmed": true, - "sourceSize": { - "w": 96, - "h": 91 - }, - "spriteSourceSize": { - "x": 0, - "y": 0, - "w": 96, - "h": 88 - }, - "frame": { - "x": 0, - "y": 176, - "w": 96, - "h": 88 - } - }, - { - "filename": "0053.png", - "rotated": false, - "trimmed": true, - "sourceSize": { - "w": 96, - "h": 91 - }, - "spriteSourceSize": { - "x": 0, - "y": 0, - "w": 96, - "h": 88 - }, - "frame": { - "x": 0, - "y": 176, - "w": 96, - "h": 88 - } - }, - { - "filename": "0071.png", - "rotated": false, - "trimmed": true, - "sourceSize": { - "w": 96, - "h": 91 - }, - "spriteSourceSize": { - "x": 0, - "y": 0, - "w": 96, - "h": 88 - }, - "frame": { - "x": 0, - "y": 176, - "w": 96, - "h": 88 - } - }, - { - "filename": "0018.png", - "rotated": false, - "trimmed": true, - "sourceSize": { - "w": 96, - "h": 91 - }, - "spriteSourceSize": { - "x": 0, - "y": 0, - "w": 96, - "h": 88 - }, - "frame": { - "x": 96, - "y": 88, - "w": 96, - "h": 88 - } - }, - { - "filename": "0036.png", - "rotated": false, - "trimmed": true, - "sourceSize": { - "w": 96, - "h": 91 - }, - "spriteSourceSize": { - "x": 0, - "y": 0, - "w": 96, - "h": 88 - }, - "frame": { - "x": 96, - "y": 88, - "w": 96, - "h": 88 - } - }, - { - "filename": "0054.png", - "rotated": false, - "trimmed": true, - "sourceSize": { - "w": 96, - "h": 91 - }, - "spriteSourceSize": { - "x": 0, - "y": 0, - "w": 96, - "h": 88 - }, - "frame": { - "x": 96, - "y": 88, - "w": 96, - "h": 88 - } - }, - { - "filename": "0072.png", - "rotated": false, - "trimmed": true, - "sourceSize": { - "w": 96, - "h": 91 - }, - "spriteSourceSize": { - "x": 0, - "y": 0, - "w": 96, - "h": 88 - }, - "frame": { - "x": 96, - "y": 88, - "w": 96, - "h": 88 - } - }, - { - "filename": "0001.png", - "rotated": false, - "trimmed": true, - "sourceSize": { - "w": 96, - "h": 91 - }, - "spriteSourceSize": { - "x": 1, - "y": 0, - "w": 94, - "h": 88 - }, - "frame": { - "x": 192, - "y": 0, - "w": 94, - "h": 88 - } - }, - { - "filename": "0013.png", - "rotated": false, - "trimmed": true, - "sourceSize": { - "w": 96, - "h": 91 - }, - "spriteSourceSize": { - "x": 1, - "y": 0, - "w": 94, - "h": 88 - }, - "frame": { - "x": 192, - "y": 0, - "w": 94, - "h": 88 - } - }, - { - "filename": "0019.png", - "rotated": false, - "trimmed": true, - "sourceSize": { - "w": 96, - "h": 91 - }, - "spriteSourceSize": { - "x": 1, - "y": 0, - "w": 94, - "h": 88 - }, - "frame": { - "x": 192, - "y": 0, - "w": 94, - "h": 88 - } - }, - { - "filename": "0031.png", - "rotated": false, - "trimmed": true, - "sourceSize": { - "w": 96, - "h": 91 - }, - "spriteSourceSize": { - "x": 1, - "y": 0, - "w": 94, - "h": 88 - }, - "frame": { - "x": 192, - "y": 0, - "w": 94, - "h": 88 - } - }, - { - "filename": "0037.png", - "rotated": false, - "trimmed": true, - "sourceSize": { - "w": 96, - "h": 91 - }, - "spriteSourceSize": { - "x": 1, - "y": 0, - "w": 94, - "h": 88 - }, - "frame": { - "x": 192, - "y": 0, - "w": 94, - "h": 88 - } - }, - { - "filename": "0049.png", - "rotated": false, - "trimmed": true, - "sourceSize": { - "w": 96, - "h": 91 - }, - "spriteSourceSize": { - "x": 1, - "y": 0, - "w": 94, - "h": 88 - }, - "frame": { - "x": 192, - "y": 0, - "w": 94, - "h": 88 - } - }, - { - "filename": "0055.png", - "rotated": false, - "trimmed": true, - "sourceSize": { - "w": 96, - "h": 91 - }, - "spriteSourceSize": { - "x": 1, - "y": 0, - "w": 94, - "h": 88 - }, - "frame": { - "x": 192, - "y": 0, - "w": 94, - "h": 88 - } - }, - { - "filename": "0067.png", - "rotated": false, - "trimmed": true, - "sourceSize": { - "w": 96, - "h": 91 - }, - "spriteSourceSize": { - "x": 1, - "y": 0, - "w": 94, - "h": 88 - }, - "frame": { - "x": 192, - "y": 0, - "w": 94, - "h": 88 - } - }, - { - "filename": "0073.png", - "rotated": false, - "trimmed": true, - "sourceSize": { - "w": 96, - "h": 91 - }, - "spriteSourceSize": { - "x": 1, - "y": 0, - "w": 94, - "h": 88 - }, - "frame": { - "x": 192, - "y": 0, - "w": 94, - "h": 88 - } - }, - { - "filename": "0086.png", - "rotated": false, - "trimmed": true, - "sourceSize": { - "w": 96, - "h": 91 - }, - "spriteSourceSize": { - "x": 1, - "y": 0, - "w": 94, - "h": 88 - }, - "frame": { - "x": 192, - "y": 0, - "w": 94, - "h": 88 - } - }, - { - "filename": "0003.png", - "rotated": false, - "trimmed": true, - "sourceSize": { - "w": 96, - "h": 91 - }, - "spriteSourceSize": { - "x": 2, - "y": 1, - "w": 92, - "h": 89 - }, - "frame": { - "x": 0, - "y": 264, - "w": 92, - "h": 89 - } - }, - { - "filename": "0011.png", - "rotated": false, - "trimmed": true, - "sourceSize": { - "w": 96, - "h": 91 - }, - "spriteSourceSize": { - "x": 2, - "y": 1, - "w": 92, - "h": 89 - }, - "frame": { - "x": 0, - "y": 264, - "w": 92, - "h": 89 - } - }, - { - "filename": "0021.png", - "rotated": false, - "trimmed": true, - "sourceSize": { - "w": 96, - "h": 91 - }, - "spriteSourceSize": { - "x": 2, - "y": 1, - "w": 92, - "h": 89 - }, - "frame": { - "x": 0, - "y": 264, - "w": 92, - "h": 89 - } - }, - { - "filename": "0029.png", - "rotated": false, - "trimmed": true, - "sourceSize": { - "w": 96, - "h": 91 - }, - "spriteSourceSize": { - "x": 2, - "y": 1, - "w": 92, - "h": 89 - }, - "frame": { - "x": 0, - "y": 264, - "w": 92, - "h": 89 - } - }, - { - "filename": "0039.png", - "rotated": false, - "trimmed": true, - "sourceSize": { - "w": 96, - "h": 91 - }, - "spriteSourceSize": { - "x": 2, - "y": 1, - "w": 92, - "h": 89 - }, - "frame": { - "x": 0, - "y": 264, - "w": 92, - "h": 89 - } - }, - { - "filename": "0047.png", - "rotated": false, - "trimmed": true, - "sourceSize": { - "w": 96, - "h": 91 - }, - "spriteSourceSize": { - "x": 2, - "y": 1, - "w": 92, - "h": 89 - }, - "frame": { - "x": 0, - "y": 264, - "w": 92, - "h": 89 - } - }, - { - "filename": "0057.png", - "rotated": false, - "trimmed": true, - "sourceSize": { - "w": 96, - "h": 91 - }, - "spriteSourceSize": { - "x": 2, - "y": 1, - "w": 92, - "h": 89 - }, - "frame": { - "x": 0, - "y": 264, - "w": 92, - "h": 89 - } - }, - { - "filename": "0065.png", - "rotated": false, - "trimmed": true, - "sourceSize": { - "w": 96, - "h": 91 - }, - "spriteSourceSize": { - "x": 2, - "y": 1, - "w": 92, - "h": 89 - }, - "frame": { - "x": 0, - "y": 264, - "w": 92, - "h": 89 - } - }, - { - "filename": "0074.png", - "rotated": false, - "trimmed": true, - "sourceSize": { - "w": 96, - "h": 91 - }, - "spriteSourceSize": { - "x": 3, - "y": 0, - "w": 92, - "h": 89 - }, - "frame": { - "x": 0, - "y": 353, - "w": 92, - "h": 89 - } - }, - { - "filename": "0002.png", - "rotated": false, - "trimmed": true, - "sourceSize": { - "w": 96, - "h": 91 - }, - "spriteSourceSize": { - "x": 2, - "y": 0, - "w": 92, - "h": 88 - }, - "frame": { - "x": 96, - "y": 176, - "w": 92, - "h": 88 - } - }, - { - "filename": "0012.png", - "rotated": false, - "trimmed": true, - "sourceSize": { - "w": 96, - "h": 91 - }, - "spriteSourceSize": { - "x": 2, - "y": 0, - "w": 92, - "h": 88 - }, - "frame": { - "x": 96, - "y": 176, - "w": 92, - "h": 88 - } - }, - { - "filename": "0020.png", - "rotated": false, - "trimmed": true, - "sourceSize": { - "w": 96, - "h": 91 - }, - "spriteSourceSize": { - "x": 2, - "y": 0, - "w": 92, - "h": 88 - }, - "frame": { - "x": 96, - "y": 176, - "w": 92, - "h": 88 - } - }, - { - "filename": "0030.png", - "rotated": false, - "trimmed": true, - "sourceSize": { - "w": 96, - "h": 91 - }, - "spriteSourceSize": { - "x": 2, - "y": 0, - "w": 92, - "h": 88 - }, - "frame": { - "x": 96, - "y": 176, - "w": 92, - "h": 88 - } - }, - { - "filename": "0038.png", - "rotated": false, - "trimmed": true, - "sourceSize": { - "w": 96, - "h": 91 - }, - "spriteSourceSize": { - "x": 2, - "y": 0, - "w": 92, - "h": 88 - }, - "frame": { - "x": 96, - "y": 176, - "w": 92, - "h": 88 - } - }, - { - "filename": "0048.png", - "rotated": false, - "trimmed": true, - "sourceSize": { - "w": 96, - "h": 91 - }, - "spriteSourceSize": { - "x": 2, - "y": 0, - "w": 92, - "h": 88 - }, - "frame": { - "x": 96, - "y": 176, - "w": 92, - "h": 88 - } - }, - { - "filename": "0056.png", - "rotated": false, - "trimmed": true, - "sourceSize": { - "w": 96, - "h": 91 - }, - "spriteSourceSize": { - "x": 2, - "y": 0, - "w": 92, - "h": 88 - }, - "frame": { - "x": 96, - "y": 176, - "w": 92, - "h": 88 - } - }, - { - "filename": "0066.png", - "rotated": false, - "trimmed": true, - "sourceSize": { - "w": 96, - "h": 91 - }, - "spriteSourceSize": { - "x": 2, - "y": 0, - "w": 92, - "h": 88 - }, - "frame": { - "x": 96, - "y": 176, - "w": 92, - "h": 88 - } - }, - { - "filename": "0085.png", - "rotated": false, - "trimmed": true, - "sourceSize": { - "w": 96, - "h": 91 - }, - "spriteSourceSize": { - "x": 3, - "y": 0, - "w": 92, - "h": 89 - }, - "frame": { - "x": 92, - "y": 264, - "w": 92, - "h": 89 - } - }, - { - "filename": "0004.png", - "rotated": false, - "trimmed": true, - "sourceSize": { - "w": 96, - "h": 91 - }, - "spriteSourceSize": { - "x": 3, - "y": 1, - "w": 90, - "h": 90 - }, - "frame": { - "x": 92, - "y": 353, - "w": 90, - "h": 90 - } - }, - { - "filename": "0010.png", - "rotated": false, - "trimmed": true, - "sourceSize": { - "w": 96, - "h": 91 - }, - "spriteSourceSize": { - "x": 3, - "y": 1, - "w": 90, - "h": 90 - }, - "frame": { - "x": 92, - "y": 353, - "w": 90, - "h": 90 - } - }, - { - "filename": "0022.png", - "rotated": false, - "trimmed": true, - "sourceSize": { - "w": 96, - "h": 91 - }, - "spriteSourceSize": { - "x": 3, - "y": 1, - "w": 90, - "h": 90 - }, - "frame": { - "x": 92, - "y": 353, - "w": 90, - "h": 90 - } - }, - { - "filename": "0028.png", - "rotated": false, - "trimmed": true, - "sourceSize": { - "w": 96, - "h": 91 - }, - "spriteSourceSize": { - "x": 3, - "y": 1, - "w": 90, - "h": 90 - }, - "frame": { - "x": 92, - "y": 353, - "w": 90, - "h": 90 - } - }, - { - "filename": "0040.png", - "rotated": false, - "trimmed": true, - "sourceSize": { - "w": 96, - "h": 91 - }, - "spriteSourceSize": { - "x": 3, - "y": 1, - "w": 90, - "h": 90 - }, - "frame": { - "x": 92, - "y": 353, - "w": 90, - "h": 90 - } - }, - { - "filename": "0046.png", - "rotated": false, - "trimmed": true, - "sourceSize": { - "w": 96, - "h": 91 - }, - "spriteSourceSize": { - "x": 3, - "y": 1, - "w": 90, - "h": 90 - }, - "frame": { - "x": 92, - "y": 353, - "w": 90, - "h": 90 - } - }, - { - "filename": "0058.png", - "rotated": false, - "trimmed": true, - "sourceSize": { - "w": 96, - "h": 91 - }, - "spriteSourceSize": { - "x": 3, - "y": 1, - "w": 90, - "h": 90 - }, - "frame": { - "x": 92, - "y": 353, - "w": 90, - "h": 90 - } - }, - { - "filename": "0064.png", - "rotated": false, - "trimmed": true, - "sourceSize": { - "w": 96, - "h": 91 - }, - "spriteSourceSize": { - "x": 3, - "y": 1, - "w": 90, - "h": 90 - }, - "frame": { - "x": 92, - "y": 353, - "w": 90, - "h": 90 - } - }, - { - "filename": "0005.png", - "rotated": false, - "trimmed": true, - "sourceSize": { - "w": 96, - "h": 91 - }, - "spriteSourceSize": { - "x": 3, - "y": 2, - "w": 89, - "h": 89 - }, - "frame": { - "x": 192, - "y": 88, - "w": 89, - "h": 89 - } - }, - { - "filename": "0023.png", - "rotated": false, - "trimmed": true, - "sourceSize": { - "w": 96, - "h": 91 - }, - "spriteSourceSize": { - "x": 3, - "y": 2, - "w": 89, - "h": 89 - }, - "frame": { - "x": 192, - "y": 88, - "w": 89, - "h": 89 - } - }, - { - "filename": "0041.png", - "rotated": false, - "trimmed": true, - "sourceSize": { - "w": 96, - "h": 91 - }, - "spriteSourceSize": { - "x": 3, - "y": 2, - "w": 89, - "h": 89 - }, - "frame": { - "x": 192, - "y": 88, - "w": 89, - "h": 89 - } - }, - { - "filename": "0059.png", - "rotated": false, - "trimmed": true, - "sourceSize": { - "w": 96, - "h": 91 - }, - "spriteSourceSize": { - "x": 3, - "y": 2, - "w": 89, - "h": 89 - }, - "frame": { - "x": 192, - "y": 88, - "w": 89, - "h": 89 - } - }, - { - "filename": "0009.png", - "rotated": false, - "trimmed": true, - "sourceSize": { - "w": 96, - "h": 91 - }, - "spriteSourceSize": { - "x": 3, - "y": 2, - "w": 89, - "h": 89 - }, - "frame": { - "x": 286, - "y": 0, - "w": 89, - "h": 89 - } - }, - { - "filename": "0027.png", - "rotated": false, - "trimmed": true, - "sourceSize": { - "w": 96, - "h": 91 - }, - "spriteSourceSize": { - "x": 3, - "y": 2, - "w": 89, - "h": 89 - }, - "frame": { - "x": 286, - "y": 0, - "w": 89, - "h": 89 - } - }, - { - "filename": "0045.png", - "rotated": false, - "trimmed": true, - "sourceSize": { - "w": 96, - "h": 91 - }, - "spriteSourceSize": { - "x": 3, - "y": 2, - "w": 89, - "h": 89 - }, - "frame": { - "x": 286, - "y": 0, - "w": 89, - "h": 89 - } - }, - { - "filename": "0063.png", - "rotated": false, - "trimmed": true, - "sourceSize": { - "w": 96, - "h": 91 - }, - "spriteSourceSize": { - "x": 3, - "y": 2, - "w": 89, - "h": 89 - }, - "frame": { - "x": 286, - "y": 0, - "w": 89, - "h": 89 - } - }, - { - "filename": "0079.png", - "rotated": false, - "trimmed": true, - "sourceSize": { - "w": 96, - "h": 91 - }, - "spriteSourceSize": { - "x": 3, - "y": 4, - "w": 86, - "h": 87 - }, - "frame": { - "x": 375, - "y": 0, - "w": 86, - "h": 87 - } - }, - { - "filename": "0081.png", - "rotated": false, - "trimmed": true, - "sourceSize": { - "w": 96, - "h": 91 - }, - "spriteSourceSize": { - "x": 3, - "y": 4, - "w": 86, - "h": 87 - }, - "frame": { - "x": 375, - "y": 87, - "w": 86, - "h": 87 - } - }, - { - "filename": "0075.png", - "rotated": false, - "trimmed": true, - "sourceSize": { - "w": 96, - "h": 91 - }, - "spriteSourceSize": { - "x": 3, - "y": 2, - "w": 89, - "h": 89 - }, - "frame": { - "x": 188, - "y": 177, - "w": 89, - "h": 89 - } - }, - { - "filename": "0084.png", - "rotated": false, - "trimmed": true, - "sourceSize": { - "w": 96, - "h": 91 - }, - "spriteSourceSize": { - "x": 3, - "y": 2, - "w": 89, - "h": 89 - }, - "frame": { - "x": 281, - "y": 89, - "w": 89, - "h": 89 - } - }, - { - "filename": "0006.png", - "rotated": false, - "trimmed": true, - "sourceSize": { - "w": 96, - "h": 91 - }, - "spriteSourceSize": { - "x": 4, - "y": 2, - "w": 88, - "h": 89 - }, - "frame": { - "x": 277, - "y": 178, - "w": 88, - "h": 89 - } - }, - { - "filename": "0024.png", - "rotated": false, - "trimmed": true, - "sourceSize": { - "w": 96, - "h": 91 - }, - "spriteSourceSize": { - "x": 4, - "y": 2, - "w": 88, - "h": 89 - }, - "frame": { - "x": 277, - "y": 178, - "w": 88, - "h": 89 - } - }, - { - "filename": "0042.png", - "rotated": false, - "trimmed": true, - "sourceSize": { - "w": 96, - "h": 91 - }, - "spriteSourceSize": { - "x": 4, - "y": 2, - "w": 88, - "h": 89 - }, - "frame": { - "x": 277, - "y": 178, - "w": 88, - "h": 89 - } - }, - { - "filename": "0060.png", - "rotated": false, - "trimmed": true, - "sourceSize": { - "w": 96, - "h": 91 - }, - "spriteSourceSize": { - "x": 4, - "y": 2, - "w": 88, - "h": 89 - }, - "frame": { - "x": 277, - "y": 178, - "w": 88, - "h": 89 - } - }, - { - "filename": "0007.png", - "rotated": false, - "trimmed": true, - "sourceSize": { - "w": 96, - "h": 91 - }, - "spriteSourceSize": { - "x": 4, - "y": 2, - "w": 88, - "h": 89 - }, - "frame": { - "x": 184, - "y": 266, - "w": 88, - "h": 89 - } - }, - { - "filename": "0025.png", - "rotated": false, - "trimmed": true, - "sourceSize": { - "w": 96, - "h": 91 - }, - "spriteSourceSize": { - "x": 4, - "y": 2, - "w": 88, - "h": 89 - }, - "frame": { - "x": 184, - "y": 266, - "w": 88, - "h": 89 - } - }, - { - "filename": "0043.png", - "rotated": false, - "trimmed": true, - "sourceSize": { - "w": 96, - "h": 91 - }, - "spriteSourceSize": { - "x": 4, - "y": 2, - "w": 88, - "h": 89 - }, - "frame": { - "x": 184, - "y": 266, - "w": 88, - "h": 89 - } - }, - { - "filename": "0061.png", - "rotated": false, - "trimmed": true, - "sourceSize": { - "w": 96, - "h": 91 - }, - "spriteSourceSize": { - "x": 4, - "y": 2, - "w": 88, - "h": 89 - }, - "frame": { - "x": 184, - "y": 266, - "w": 88, - "h": 89 - } - }, - { - "filename": "0008.png", - "rotated": false, - "trimmed": true, - "sourceSize": { - "w": 96, - "h": 91 - }, - "spriteSourceSize": { - "x": 4, - "y": 2, - "w": 88, - "h": 89 - }, - "frame": { - "x": 182, - "y": 355, - "w": 88, - "h": 89 - } - }, - { - "filename": "0026.png", - "rotated": false, - "trimmed": true, - "sourceSize": { - "w": 96, - "h": 91 - }, - "spriteSourceSize": { - "x": 4, - "y": 2, - "w": 88, - "h": 89 - }, - "frame": { - "x": 182, - "y": 355, - "w": 88, - "h": 89 - } - }, - { - "filename": "0044.png", - "rotated": false, - "trimmed": true, - "sourceSize": { - "w": 96, - "h": 91 - }, - "spriteSourceSize": { - "x": 4, - "y": 2, - "w": 88, - "h": 89 - }, - "frame": { - "x": 182, - "y": 355, - "w": 88, - "h": 89 - } - }, - { - "filename": "0062.png", - "rotated": false, - "trimmed": true, - "sourceSize": { - "w": 96, - "h": 91 - }, - "spriteSourceSize": { - "x": 4, - "y": 2, - "w": 88, - "h": 89 - }, - "frame": { - "x": 182, - "y": 355, - "w": 88, - "h": 89 - } - }, - { - "filename": "0076.png", - "rotated": false, - "trimmed": true, - "sourceSize": { - "w": 96, - "h": 91 - }, - "spriteSourceSize": { - "x": 5, - "y": 2, - "w": 87, - "h": 89 - }, - "frame": { - "x": 272, - "y": 267, - "w": 87, - "h": 89 - } - }, - { - "filename": "0083.png", - "rotated": false, - "trimmed": true, - "sourceSize": { - "w": 96, - "h": 91 - }, - "spriteSourceSize": { - "x": 5, - "y": 2, - "w": 87, - "h": 89 - }, - "frame": { - "x": 270, - "y": 356, - "w": 87, - "h": 89 - } - }, - { - "filename": "0077.png", - "rotated": false, - "trimmed": true, - "sourceSize": { - "w": 96, - "h": 91 - }, - "spriteSourceSize": { - "x": 3, - "y": 4, - "w": 87, - "h": 87 - }, - "frame": { - "x": 359, - "y": 267, - "w": 87, - "h": 87 - } - }, - { - "filename": "0078.png", - "rotated": false, - "trimmed": true, - "sourceSize": { - "w": 96, - "h": 91 - }, - "spriteSourceSize": { - "x": 3, - "y": 4, - "w": 87, - "h": 87 - }, - "frame": { - "x": 365, - "y": 178, - "w": 87, - "h": 87 - } - }, - { - "filename": "0080.png", - "rotated": false, - "trimmed": true, - "sourceSize": { - "w": 96, - "h": 91 - }, - "spriteSourceSize": { - "x": 3, - "y": 4, - "w": 87, - "h": 87 - }, - "frame": { - "x": 357, - "y": 356, - "w": 87, - "h": 87 - } - }, - { - "filename": "0082.png", - "rotated": false, - "trimmed": true, - "sourceSize": { - "w": 96, - "h": 91 - }, - "spriteSourceSize": { - "x": 3, - "y": 4, - "w": 87, - "h": 87 - }, - "frame": { - "x": 357, - "y": 356, - "w": 87, - "h": 87 - } - } - ] - } - ], - "meta": { - "app": "https://www.codeandweb.com/texturepacker", - "version": "3.0", - "smartupdate": "$TexturePacker:SmartUpdate:ee5ed94dce71b1b77b0e9e09ac1d01d0:89b096ba9193e9faad415ff12ec9d93c:c2f7ca3ab1075b8c824730653d891244$" - } -} diff --git a/public/images/pokemon/exp/shiny/784.png b/public/images/pokemon/exp/shiny/784.png deleted file mode 100644 index 4fe57a70dec..00000000000 Binary files a/public/images/pokemon/exp/shiny/784.png and /dev/null differ diff --git a/public/images/pokemon/exp/shiny/935.json b/public/images/pokemon/exp/shiny/935.json deleted file mode 100644 index 3b7326364a9..00000000000 --- a/public/images/pokemon/exp/shiny/935.json +++ /dev/null @@ -1,440 +0,0 @@ -{ - "textures": [ - { - "image": "935.png", - "format": "RGBA8888", - "size": { - "w": 165, - "h": 165 - }, - "scale": 1, - "frames": [ - { - "filename": "0001.png", - "rotated": false, - "trimmed": false, - "sourceSize": { - "w": 35, - "h": 55 - }, - "spriteSourceSize": { - "x": 0, - "y": 0, - "w": 35, - "h": 55 - }, - "frame": { - "x": 0, - "y": 0, - "w": 35, - "h": 55 - } - }, - { - "filename": "0005.png", - "rotated": false, - "trimmed": false, - "sourceSize": { - "w": 35, - "h": 55 - }, - "spriteSourceSize": { - "x": 0, - "y": 0, - "w": 35, - "h": 55 - }, - "frame": { - "x": 0, - "y": 0, - "w": 35, - "h": 55 - } - }, - { - "filename": "0009.png", - "rotated": false, - "trimmed": false, - "sourceSize": { - "w": 35, - "h": 55 - }, - "spriteSourceSize": { - "x": 0, - "y": 0, - "w": 35, - "h": 55 - }, - "frame": { - "x": 0, - "y": 0, - "w": 35, - "h": 55 - } - }, - { - "filename": "0002.png", - "rotated": false, - "trimmed": false, - "sourceSize": { - "w": 35, - "h": 55 - }, - "spriteSourceSize": { - "x": 0, - "y": 0, - "w": 35, - "h": 55 - }, - "frame": { - "x": 0, - "y": 55, - "w": 35, - "h": 55 - } - }, - { - "filename": "0006.png", - "rotated": false, - "trimmed": false, - "sourceSize": { - "w": 35, - "h": 55 - }, - "spriteSourceSize": { - "x": 0, - "y": 0, - "w": 35, - "h": 55 - }, - "frame": { - "x": 0, - "y": 55, - "w": 35, - "h": 55 - } - }, - { - "filename": "0010.png", - "rotated": false, - "trimmed": false, - "sourceSize": { - "w": 35, - "h": 55 - }, - "spriteSourceSize": { - "x": 0, - "y": 0, - "w": 35, - "h": 55 - }, - "frame": { - "x": 0, - "y": 55, - "w": 35, - "h": 55 - } - }, - { - "filename": "0003.png", - "rotated": false, - "trimmed": false, - "sourceSize": { - "w": 35, - "h": 55 - }, - "spriteSourceSize": { - "x": 0, - "y": 0, - "w": 35, - "h": 55 - }, - "frame": { - "x": 0, - "y": 110, - "w": 35, - "h": 55 - } - }, - { - "filename": "0007.png", - "rotated": false, - "trimmed": false, - "sourceSize": { - "w": 35, - "h": 55 - }, - "spriteSourceSize": { - "x": 0, - "y": 0, - "w": 35, - "h": 55 - }, - "frame": { - "x": 0, - "y": 110, - "w": 35, - "h": 55 - } - }, - { - "filename": "0011.png", - "rotated": false, - "trimmed": false, - "sourceSize": { - "w": 35, - "h": 55 - }, - "spriteSourceSize": { - "x": 0, - "y": 0, - "w": 35, - "h": 55 - }, - "frame": { - "x": 0, - "y": 110, - "w": 35, - "h": 55 - } - }, - { - "filename": "0004.png", - "rotated": false, - "trimmed": false, - "sourceSize": { - "w": 35, - "h": 55 - }, - "spriteSourceSize": { - "x": 0, - "y": 0, - "w": 35, - "h": 55 - }, - "frame": { - "x": 35, - "y": 0, - "w": 35, - "h": 55 - } - }, - { - "filename": "0008.png", - "rotated": false, - "trimmed": false, - "sourceSize": { - "w": 35, - "h": 55 - }, - "spriteSourceSize": { - "x": 0, - "y": 0, - "w": 35, - "h": 55 - }, - "frame": { - "x": 35, - "y": 0, - "w": 35, - "h": 55 - } - }, - { - "filename": "0012.png", - "rotated": false, - "trimmed": false, - "sourceSize": { - "w": 35, - "h": 55 - }, - "spriteSourceSize": { - "x": 0, - "y": 0, - "w": 35, - "h": 55 - }, - "frame": { - "x": 35, - "y": 0, - "w": 35, - "h": 55 - } - }, - { - "filename": "0013.png", - "rotated": false, - "trimmed": false, - "sourceSize": { - "w": 35, - "h": 55 - }, - "spriteSourceSize": { - "x": 0, - "y": 0, - "w": 35, - "h": 55 - }, - "frame": { - "x": 35, - "y": 55, - "w": 35, - "h": 55 - } - }, - { - "filename": "0014.png", - "rotated": false, - "trimmed": false, - "sourceSize": { - "w": 35, - "h": 55 - }, - "spriteSourceSize": { - "x": 0, - "y": 0, - "w": 35, - "h": 55 - }, - "frame": { - "x": 35, - "y": 110, - "w": 35, - "h": 55 - } - }, - { - "filename": "0015.png", - "rotated": false, - "trimmed": false, - "sourceSize": { - "w": 35, - "h": 55 - }, - "spriteSourceSize": { - "x": 0, - "y": 0, - "w": 35, - "h": 55 - }, - "frame": { - "x": 70, - "y": 0, - "w": 35, - "h": 55 - } - }, - { - "filename": "0016.png", - "rotated": false, - "trimmed": false, - "sourceSize": { - "w": 35, - "h": 55 - }, - "spriteSourceSize": { - "x": 0, - "y": 0, - "w": 35, - "h": 55 - }, - "frame": { - "x": 105, - "y": 0, - "w": 35, - "h": 55 - } - }, - { - "filename": "0017.png", - "rotated": false, - "trimmed": false, - "sourceSize": { - "w": 35, - "h": 55 - }, - "spriteSourceSize": { - "x": 0, - "y": 0, - "w": 35, - "h": 55 - }, - "frame": { - "x": 70, - "y": 55, - "w": 35, - "h": 55 - } - }, - { - "filename": "0018.png", - "rotated": false, - "trimmed": false, - "sourceSize": { - "w": 35, - "h": 55 - }, - "spriteSourceSize": { - "x": 0, - "y": 0, - "w": 35, - "h": 55 - }, - "frame": { - "x": 70, - "y": 110, - "w": 35, - "h": 55 - } - }, - { - "filename": "0019.png", - "rotated": false, - "trimmed": false, - "sourceSize": { - "w": 35, - "h": 55 - }, - "spriteSourceSize": { - "x": 0, - "y": 0, - "w": 35, - "h": 55 - }, - "frame": { - "x": 105, - "y": 55, - "w": 35, - "h": 55 - } - }, - { - "filename": "0020.png", - "rotated": false, - "trimmed": false, - "sourceSize": { - "w": 35, - "h": 55 - }, - "spriteSourceSize": { - "x": 0, - "y": 0, - "w": 35, - "h": 55 - }, - "frame": { - "x": 105, - "y": 110, - "w": 35, - "h": 55 - } - } - ] - } - ], - "meta": { - "app": "https://www.codeandweb.com/texturepacker", - "version": "3.0", - "smartupdate": "$TexturePacker:SmartUpdate:f58bc6c5ab628b520de90b88937784eb:2cb222a4a62936135e43a7f74d7bb852:077dcf06dc5fc347497b59afe6126a5e$" - } -} diff --git a/public/images/pokemon/exp/shiny/935.png b/public/images/pokemon/exp/shiny/935.png deleted file mode 100644 index ce821b4f870..00000000000 Binary files a/public/images/pokemon/exp/shiny/935.png and /dev/null differ diff --git a/public/images/pokemon/exp/shiny/936.json b/public/images/pokemon/exp/shiny/936.json deleted file mode 100644 index 550894878b6..00000000000 --- a/public/images/pokemon/exp/shiny/936.json +++ /dev/null @@ -1,524 +0,0 @@ -{ - "textures": [ - { - "image": "936.png", - "format": "RGBA8888", - "size": { - "w": 323, - "h": 323 - }, - "scale": 1, - "frames": [ - { - "filename": "0016.png", - "rotated": false, - "trimmed": false, - "sourceSize": { - "w": 76, - "h": 99 - }, - "spriteSourceSize": { - "x": 0, - "y": 0, - "w": 76, - "h": 99 - }, - "frame": { - "x": 0, - "y": 0, - "w": 76, - "h": 99 - } - }, - { - "filename": "0017.png", - "rotated": false, - "trimmed": false, - "sourceSize": { - "w": 76, - "h": 99 - }, - "spriteSourceSize": { - "x": 0, - "y": 0, - "w": 76, - "h": 99 - }, - "frame": { - "x": 0, - "y": 99, - "w": 76, - "h": 99 - } - }, - { - "filename": "0018.png", - "rotated": false, - "trimmed": false, - "sourceSize": { - "w": 76, - "h": 99 - }, - "spriteSourceSize": { - "x": 0, - "y": 0, - "w": 76, - "h": 99 - }, - "frame": { - "x": 0, - "y": 198, - "w": 76, - "h": 99 - } - }, - { - "filename": "0015.png", - "rotated": false, - "trimmed": true, - "sourceSize": { - "w": 76, - "h": 99 - }, - "spriteSourceSize": { - "x": 0, - "y": 1, - "w": 76, - "h": 98 - }, - "frame": { - "x": 76, - "y": 0, - "w": 76, - "h": 98 - } - }, - { - "filename": "0019.png", - "rotated": false, - "trimmed": true, - "sourceSize": { - "w": 76, - "h": 99 - }, - "spriteSourceSize": { - "x": 0, - "y": 1, - "w": 76, - "h": 98 - }, - "frame": { - "x": 152, - "y": 0, - "w": 76, - "h": 98 - } - }, - { - "filename": "0014.png", - "rotated": false, - "trimmed": true, - "sourceSize": { - "w": 76, - "h": 99 - }, - "spriteSourceSize": { - "x": 2, - "y": 0, - "w": 70, - "h": 99 - }, - "frame": { - "x": 228, - "y": 0, - "w": 70, - "h": 99 - } - }, - { - "filename": "0020.png", - "rotated": false, - "trimmed": true, - "sourceSize": { - "w": 76, - "h": 99 - }, - "spriteSourceSize": { - "x": 2, - "y": 0, - "w": 70, - "h": 99 - }, - "frame": { - "x": 76, - "y": 98, - "w": 70, - "h": 99 - } - }, - { - "filename": "0001.png", - "rotated": false, - "trimmed": true, - "sourceSize": { - "w": 76, - "h": 99 - }, - "spriteSourceSize": { - "x": 9, - "y": 0, - "w": 59, - "h": 99 - }, - "frame": { - "x": 146, - "y": 98, - "w": 59, - "h": 99 - } - }, - { - "filename": "0005.png", - "rotated": false, - "trimmed": true, - "sourceSize": { - "w": 76, - "h": 99 - }, - "spriteSourceSize": { - "x": 9, - "y": 0, - "w": 59, - "h": 99 - }, - "frame": { - "x": 146, - "y": 98, - "w": 59, - "h": 99 - } - }, - { - "filename": "0021.png", - "rotated": false, - "trimmed": true, - "sourceSize": { - "w": 76, - "h": 99 - }, - "spriteSourceSize": { - "x": 9, - "y": 0, - "w": 59, - "h": 99 - }, - "frame": { - "x": 146, - "y": 98, - "w": 59, - "h": 99 - } - }, - { - "filename": "0002.png", - "rotated": false, - "trimmed": true, - "sourceSize": { - "w": 76, - "h": 99 - }, - "spriteSourceSize": { - "x": 9, - "y": 0, - "w": 59, - "h": 99 - }, - "frame": { - "x": 76, - "y": 197, - "w": 59, - "h": 99 - } - }, - { - "filename": "0006.png", - "rotated": false, - "trimmed": true, - "sourceSize": { - "w": 76, - "h": 99 - }, - "spriteSourceSize": { - "x": 9, - "y": 0, - "w": 59, - "h": 99 - }, - "frame": { - "x": 76, - "y": 197, - "w": 59, - "h": 99 - } - }, - { - "filename": "0010.png", - "rotated": false, - "trimmed": true, - "sourceSize": { - "w": 76, - "h": 99 - }, - "spriteSourceSize": { - "x": 9, - "y": 0, - "w": 59, - "h": 99 - }, - "frame": { - "x": 76, - "y": 197, - "w": 59, - "h": 99 - } - }, - { - "filename": "0022.png", - "rotated": false, - "trimmed": true, - "sourceSize": { - "w": 76, - "h": 99 - }, - "spriteSourceSize": { - "x": 9, - "y": 0, - "w": 59, - "h": 99 - }, - "frame": { - "x": 76, - "y": 197, - "w": 59, - "h": 99 - } - }, - { - "filename": "0004.png", - "rotated": false, - "trimmed": true, - "sourceSize": { - "w": 76, - "h": 99 - }, - "spriteSourceSize": { - "x": 9, - "y": 0, - "w": 59, - "h": 99 - }, - "frame": { - "x": 135, - "y": 197, - "w": 59, - "h": 99 - } - }, - { - "filename": "0012.png", - "rotated": false, - "trimmed": true, - "sourceSize": { - "w": 76, - "h": 99 - }, - "spriteSourceSize": { - "x": 9, - "y": 0, - "w": 59, - "h": 99 - }, - "frame": { - "x": 135, - "y": 197, - "w": 59, - "h": 99 - } - }, - { - "filename": "0024.png", - "rotated": false, - "trimmed": true, - "sourceSize": { - "w": 76, - "h": 99 - }, - "spriteSourceSize": { - "x": 9, - "y": 0, - "w": 59, - "h": 99 - }, - "frame": { - "x": 135, - "y": 197, - "w": 59, - "h": 99 - } - }, - { - "filename": "0008.png", - "rotated": false, - "trimmed": true, - "sourceSize": { - "w": 76, - "h": 99 - }, - "spriteSourceSize": { - "x": 9, - "y": 0, - "w": 59, - "h": 99 - }, - "frame": { - "x": 194, - "y": 197, - "w": 59, - "h": 99 - } - }, - { - "filename": "0003.png", - "rotated": false, - "trimmed": true, - "sourceSize": { - "w": 76, - "h": 99 - }, - "spriteSourceSize": { - "x": 9, - "y": 1, - "w": 59, - "h": 98 - }, - "frame": { - "x": 205, - "y": 99, - "w": 59, - "h": 98 - } - }, - { - "filename": "0007.png", - "rotated": false, - "trimmed": true, - "sourceSize": { - "w": 76, - "h": 99 - }, - "spriteSourceSize": { - "x": 9, - "y": 1, - "w": 59, - "h": 98 - }, - "frame": { - "x": 205, - "y": 99, - "w": 59, - "h": 98 - } - }, - { - "filename": "0011.png", - "rotated": false, - "trimmed": true, - "sourceSize": { - "w": 76, - "h": 99 - }, - "spriteSourceSize": { - "x": 9, - "y": 1, - "w": 59, - "h": 98 - }, - "frame": { - "x": 205, - "y": 99, - "w": 59, - "h": 98 - } - }, - { - "filename": "0023.png", - "rotated": false, - "trimmed": true, - "sourceSize": { - "w": 76, - "h": 99 - }, - "spriteSourceSize": { - "x": 9, - "y": 1, - "w": 59, - "h": 98 - }, - "frame": { - "x": 205, - "y": 99, - "w": 59, - "h": 98 - } - }, - { - "filename": "0013.png", - "rotated": false, - "trimmed": true, - "sourceSize": { - "w": 76, - "h": 99 - }, - "spriteSourceSize": { - "x": 9, - "y": 0, - "w": 59, - "h": 99 - }, - "frame": { - "x": 264, - "y": 99, - "w": 59, - "h": 99 - } - }, - { - "filename": "0009.png", - "rotated": false, - "trimmed": true, - "sourceSize": { - "w": 76, - "h": 99 - }, - "spriteSourceSize": { - "x": 9, - "y": 1, - "w": 59, - "h": 98 - }, - "frame": { - "x": 253, - "y": 198, - "w": 59, - "h": 98 - } - } - ] - } - ], - "meta": { - "app": "https://www.codeandweb.com/texturepacker", - "version": "3.0", - "smartupdate": "$TexturePacker:SmartUpdate:244cdd3e42481041b59c3b67b0c2744d:204f377b772d27af90e7fcb35c29932a:1a0490303f9626f92e787c567cd10feb$" - } -} diff --git a/public/images/pokemon/exp/shiny/936.png b/public/images/pokemon/exp/shiny/936.png deleted file mode 100644 index 97856ebb8cc..00000000000 Binary files a/public/images/pokemon/exp/shiny/936.png and /dev/null differ diff --git a/public/images/pokemon/exp/shiny/937.json b/public/images/pokemon/exp/shiny/937.json deleted file mode 100644 index be7f920f7cd..00000000000 --- a/public/images/pokemon/exp/shiny/937.json +++ /dev/null @@ -1,125 +0,0 @@ -{ - "textures": [ - { - "image": "937.png", - "format": "RGBA8888", - "size": { - "w": 247, - "h": 247 - }, - "scale": 1, - "frames": [ - { - "filename": "0002.png", - "rotated": false, - "trimmed": true, - "sourceSize": { - "w": 86, - "h": 99 - }, - "spriteSourceSize": { - "x": 1, - "y": 1, - "w": 83, - "h": 98 - }, - "frame": { - "x": 0, - "y": 0, - "w": 83, - "h": 98 - } - }, - { - "filename": "0001.png", - "rotated": false, - "trimmed": true, - "sourceSize": { - "w": 86, - "h": 99 - }, - "spriteSourceSize": { - "x": 2, - "y": 0, - "w": 81, - "h": 99 - }, - "frame": { - "x": 83, - "y": 0, - "w": 81, - "h": 99 - } - }, - { - "filename": "0003.png", - "rotated": false, - "trimmed": true, - "sourceSize": { - "w": 86, - "h": 99 - }, - "spriteSourceSize": { - "x": 1, - "y": 0, - "w": 83, - "h": 99 - }, - "frame": { - "x": 164, - "y": 0, - "w": 83, - "h": 99 - } - }, - { - "filename": "0004.png", - "rotated": false, - "trimmed": false, - "sourceSize": { - "w": 86, - "h": 99 - }, - "spriteSourceSize": { - "x": 0, - "y": 0, - "w": 86, - "h": 99 - }, - "frame": { - "x": 0, - "y": 99, - "w": 86, - "h": 99 - } - }, - { - "filename": "0005.png", - "rotated": false, - "trimmed": false, - "sourceSize": { - "w": 86, - "h": 99 - }, - "spriteSourceSize": { - "x": 0, - "y": 0, - "w": 86, - "h": 99 - }, - "frame": { - "x": 86, - "y": 99, - "w": 86, - "h": 99 - } - } - ] - } - ], - "meta": { - "app": "https://www.codeandweb.com/texturepacker", - "version": "3.0", - "smartupdate": "$TexturePacker:SmartUpdate:d042040d151bc1a4b99bc43297e01fa6:d31a38624e1e937eaab1670f078bcfd7:1d4b4f8d62307c37457ba974879b47d0$" - } -} diff --git a/public/images/pokemon/exp/shiny/937.png b/public/images/pokemon/exp/shiny/937.png deleted file mode 100644 index fbf34a76cc2..00000000000 Binary files a/public/images/pokemon/exp/shiny/937.png and /dev/null differ diff --git a/public/images/pokemon/female/207.png b/public/images/pokemon/female/207.png index 071b72f9f07..48662a1a516 100644 Binary files a/public/images/pokemon/female/207.png and b/public/images/pokemon/female/207.png differ diff --git a/public/images/pokemon/female/332.png b/public/images/pokemon/female/332.png index 5a199f994eb..2100e4b9a10 100644 Binary files a/public/images/pokemon/female/332.png and b/public/images/pokemon/female/332.png differ diff --git a/public/images/pokemon/female/396.png b/public/images/pokemon/female/396.png index 0adaac1fe42..ee7debc27a9 100644 Binary files a/public/images/pokemon/female/396.png and b/public/images/pokemon/female/396.png differ diff --git a/public/images/pokemon/female/397.png b/public/images/pokemon/female/397.png index ecf63a03748..109a12dad7c 100644 Binary files a/public/images/pokemon/female/397.png and b/public/images/pokemon/female/397.png differ diff --git a/public/images/pokemon/female/398.png b/public/images/pokemon/female/398.png index cd3c1a54df4..d0af82f4f3b 100644 Binary files a/public/images/pokemon/female/398.png and b/public/images/pokemon/female/398.png differ diff --git a/public/images/pokemon/female/404.png b/public/images/pokemon/female/404.png index 67e68318f38..d05821148d4 100644 Binary files a/public/images/pokemon/female/404.png and b/public/images/pokemon/female/404.png differ diff --git a/public/images/pokemon/female/417.png b/public/images/pokemon/female/417.png index be3a2736e18..5b12e357477 100644 Binary files a/public/images/pokemon/female/417.png and b/public/images/pokemon/female/417.png differ diff --git a/public/images/pokemon/icons/7/746-school.png b/public/images/pokemon/icons/7/746-school.png index 837c67d9f63..d421210c2cf 100644 Binary files a/public/images/pokemon/icons/7/746-school.png and b/public/images/pokemon/icons/7/746-school.png differ diff --git a/public/images/pokemon/icons/7/746.png b/public/images/pokemon/icons/7/746.png index 5286054780e..3912ab26688 100644 Binary files a/public/images/pokemon/icons/7/746.png and b/public/images/pokemon/icons/7/746.png differ diff --git a/public/images/pokemon/icons/variant/1/143-gigantamax_2.png b/public/images/pokemon/icons/variant/1/143-gigantamax_2.png new file mode 100644 index 00000000000..036fe6d230d Binary files /dev/null and b/public/images/pokemon/icons/variant/1/143-gigantamax_2.png differ diff --git a/public/images/pokemon/icons/variant/1/143-gigantamax_3.png b/public/images/pokemon/icons/variant/1/143-gigantamax_3.png new file mode 100644 index 00000000000..5a4fe34da7c Binary files /dev/null and b/public/images/pokemon/icons/variant/1/143-gigantamax_3.png differ diff --git a/public/images/pokemon/icons/variant/1/143_2.png b/public/images/pokemon/icons/variant/1/143_2.png new file mode 100644 index 00000000000..a757c202eb6 Binary files /dev/null and b/public/images/pokemon/icons/variant/1/143_2.png differ diff --git a/public/images/pokemon/icons/variant/1/143_3.png b/public/images/pokemon/icons/variant/1/143_3.png new file mode 100644 index 00000000000..0f6da40ca0d Binary files /dev/null and b/public/images/pokemon/icons/variant/1/143_3.png differ diff --git a/public/images/pokemon/icons/variant/1/32_2.png b/public/images/pokemon/icons/variant/1/32_2.png new file mode 100644 index 00000000000..83c7716c509 Binary files /dev/null and b/public/images/pokemon/icons/variant/1/32_2.png differ diff --git a/public/images/pokemon/icons/variant/1/32_3.png b/public/images/pokemon/icons/variant/1/32_3.png new file mode 100644 index 00000000000..9bba8f3d9b9 Binary files /dev/null and b/public/images/pokemon/icons/variant/1/32_3.png differ diff --git a/public/images/pokemon/icons/variant/1/33_2.png b/public/images/pokemon/icons/variant/1/33_2.png new file mode 100644 index 00000000000..151c2091077 Binary files /dev/null and b/public/images/pokemon/icons/variant/1/33_2.png differ diff --git a/public/images/pokemon/icons/variant/1/33_3.png b/public/images/pokemon/icons/variant/1/33_3.png new file mode 100644 index 00000000000..84a8487116b Binary files /dev/null and b/public/images/pokemon/icons/variant/1/33_3.png differ diff --git a/public/images/pokemon/icons/variant/1/34_2.png b/public/images/pokemon/icons/variant/1/34_2.png new file mode 100644 index 00000000000..2d0477f7ff9 Binary files /dev/null and b/public/images/pokemon/icons/variant/1/34_2.png differ diff --git a/public/images/pokemon/icons/variant/1/34_3.png b/public/images/pokemon/icons/variant/1/34_3.png new file mode 100644 index 00000000000..8e844c38605 Binary files /dev/null and b/public/images/pokemon/icons/variant/1/34_3.png differ diff --git a/public/images/pokemon/icons/variant/1/88_2.png b/public/images/pokemon/icons/variant/1/88_2.png new file mode 100644 index 00000000000..164f98f7d80 Binary files /dev/null and b/public/images/pokemon/icons/variant/1/88_2.png differ diff --git a/public/images/pokemon/icons/variant/1/88_3.png b/public/images/pokemon/icons/variant/1/88_3.png new file mode 100644 index 00000000000..6e90ad56d2a Binary files /dev/null and b/public/images/pokemon/icons/variant/1/88_3.png differ diff --git a/public/images/pokemon/icons/variant/1/89_2.png b/public/images/pokemon/icons/variant/1/89_2.png new file mode 100644 index 00000000000..533ebe86c9e Binary files /dev/null and b/public/images/pokemon/icons/variant/1/89_2.png differ diff --git a/public/images/pokemon/icons/variant/1/89_3.png b/public/images/pokemon/icons/variant/1/89_3.png new file mode 100644 index 00000000000..8caf93912d4 Binary files /dev/null and b/public/images/pokemon/icons/variant/1/89_3.png differ diff --git a/public/images/pokemon/icons/variant/2/187_2.png b/public/images/pokemon/icons/variant/2/187_2.png new file mode 100644 index 00000000000..c7da6a46115 Binary files /dev/null and b/public/images/pokemon/icons/variant/2/187_2.png differ diff --git a/public/images/pokemon/icons/variant/2/187_3.png b/public/images/pokemon/icons/variant/2/187_3.png new file mode 100644 index 00000000000..6f118aed4f4 Binary files /dev/null and b/public/images/pokemon/icons/variant/2/187_3.png differ diff --git a/public/images/pokemon/icons/variant/2/188_2.png b/public/images/pokemon/icons/variant/2/188_2.png new file mode 100644 index 00000000000..cbb7b690ff0 Binary files /dev/null and b/public/images/pokemon/icons/variant/2/188_2.png differ diff --git a/public/images/pokemon/icons/variant/2/188_3.png b/public/images/pokemon/icons/variant/2/188_3.png new file mode 100644 index 00000000000..2c4e64cc608 Binary files /dev/null and b/public/images/pokemon/icons/variant/2/188_3.png differ diff --git a/public/images/pokemon/icons/variant/2/189_2.png b/public/images/pokemon/icons/variant/2/189_2.png new file mode 100644 index 00000000000..ca5e127816a Binary files /dev/null and b/public/images/pokemon/icons/variant/2/189_2.png differ diff --git a/public/images/pokemon/icons/variant/2/189_3.png b/public/images/pokemon/icons/variant/2/189_3.png new file mode 100644 index 00000000000..dfee57baf86 Binary files /dev/null and b/public/images/pokemon/icons/variant/2/189_3.png differ diff --git a/public/images/pokemon/icons/variant/2/204_2.png b/public/images/pokemon/icons/variant/2/204_2.png new file mode 100644 index 00000000000..e36cf0af684 Binary files /dev/null and b/public/images/pokemon/icons/variant/2/204_2.png differ diff --git a/public/images/pokemon/icons/variant/2/204_3.png b/public/images/pokemon/icons/variant/2/204_3.png new file mode 100644 index 00000000000..5b5c4a70769 Binary files /dev/null and b/public/images/pokemon/icons/variant/2/204_3.png differ diff --git a/public/images/pokemon/icons/variant/2/205_2.png b/public/images/pokemon/icons/variant/2/205_2.png new file mode 100644 index 00000000000..5bf3cb2c83e Binary files /dev/null and b/public/images/pokemon/icons/variant/2/205_2.png differ diff --git a/public/images/pokemon/icons/variant/2/205_3.png b/public/images/pokemon/icons/variant/2/205_3.png new file mode 100644 index 00000000000..6e8d2e3dc7d Binary files /dev/null and b/public/images/pokemon/icons/variant/2/205_3.png differ diff --git a/public/images/pokemon/icons/variant/2/207_2.png b/public/images/pokemon/icons/variant/2/207_2.png index 206f38f6a0a..c24b731925e 100644 Binary files a/public/images/pokemon/icons/variant/2/207_2.png and b/public/images/pokemon/icons/variant/2/207_2.png differ diff --git a/public/images/pokemon/icons/variant/2/207_3.png b/public/images/pokemon/icons/variant/2/207_3.png index 7a0018836dd..1a5c00992ce 100644 Binary files a/public/images/pokemon/icons/variant/2/207_3.png and b/public/images/pokemon/icons/variant/2/207_3.png differ diff --git a/public/images/pokemon/icons/variant/3/299_2.png b/public/images/pokemon/icons/variant/3/299_2.png new file mode 100644 index 00000000000..fa674c3afda Binary files /dev/null and b/public/images/pokemon/icons/variant/3/299_2.png differ diff --git a/public/images/pokemon/icons/variant/3/299_3.png b/public/images/pokemon/icons/variant/3/299_3.png new file mode 100644 index 00000000000..68d8a893316 Binary files /dev/null and b/public/images/pokemon/icons/variant/3/299_3.png differ diff --git a/public/images/pokemon/icons/variant/3/313_2.png b/public/images/pokemon/icons/variant/3/313_2.png new file mode 100644 index 00000000000..501bb3f859b Binary files /dev/null and b/public/images/pokemon/icons/variant/3/313_2.png differ diff --git a/public/images/pokemon/icons/variant/3/313_3.png b/public/images/pokemon/icons/variant/3/313_3.png new file mode 100644 index 00000000000..89c81375da8 Binary files /dev/null and b/public/images/pokemon/icons/variant/3/313_3.png differ diff --git a/public/images/pokemon/icons/variant/3/314_2.png b/public/images/pokemon/icons/variant/3/314_2.png new file mode 100644 index 00000000000..0242553f41a Binary files /dev/null and b/public/images/pokemon/icons/variant/3/314_2.png differ diff --git a/public/images/pokemon/icons/variant/3/314_3.png b/public/images/pokemon/icons/variant/3/314_3.png new file mode 100644 index 00000000000..716ffccd3f2 Binary files /dev/null and b/public/images/pokemon/icons/variant/3/314_3.png differ diff --git a/public/images/pokemon/icons/variant/3/325_2.png b/public/images/pokemon/icons/variant/3/325_2.png new file mode 100644 index 00000000000..0792a8aa840 Binary files /dev/null and b/public/images/pokemon/icons/variant/3/325_2.png differ diff --git a/public/images/pokemon/icons/variant/3/325_3.png b/public/images/pokemon/icons/variant/3/325_3.png new file mode 100644 index 00000000000..dfd13bd75be Binary files /dev/null and b/public/images/pokemon/icons/variant/3/325_3.png differ diff --git a/public/images/pokemon/icons/variant/3/326_2.png b/public/images/pokemon/icons/variant/3/326_2.png new file mode 100644 index 00000000000..b23be901c9a Binary files /dev/null and b/public/images/pokemon/icons/variant/3/326_2.png differ diff --git a/public/images/pokemon/icons/variant/3/326_3.png b/public/images/pokemon/icons/variant/3/326_3.png new file mode 100644 index 00000000000..6c4025d0842 Binary files /dev/null and b/public/images/pokemon/icons/variant/3/326_3.png differ diff --git a/public/images/pokemon/icons/variant/3/331_2.png b/public/images/pokemon/icons/variant/3/331_2.png new file mode 100644 index 00000000000..19b80296a1e Binary files /dev/null and b/public/images/pokemon/icons/variant/3/331_2.png differ diff --git a/public/images/pokemon/icons/variant/3/331_3.png b/public/images/pokemon/icons/variant/3/331_3.png new file mode 100644 index 00000000000..01b93a1d086 Binary files /dev/null and b/public/images/pokemon/icons/variant/3/331_3.png differ diff --git a/public/images/pokemon/icons/variant/3/332_2.png b/public/images/pokemon/icons/variant/3/332_2.png new file mode 100644 index 00000000000..ff9077cec0a Binary files /dev/null and b/public/images/pokemon/icons/variant/3/332_2.png differ diff --git a/public/images/pokemon/icons/variant/3/332_3.png b/public/images/pokemon/icons/variant/3/332_3.png new file mode 100644 index 00000000000..c1c6cee7947 Binary files /dev/null and b/public/images/pokemon/icons/variant/3/332_3.png differ diff --git a/public/images/pokemon/icons/variant/3/345_2.png b/public/images/pokemon/icons/variant/3/345_2.png new file mode 100644 index 00000000000..015696265f9 Binary files /dev/null and b/public/images/pokemon/icons/variant/3/345_2.png differ diff --git a/public/images/pokemon/icons/variant/3/345_3.png b/public/images/pokemon/icons/variant/3/345_3.png new file mode 100644 index 00000000000..41ba6766c21 Binary files /dev/null and b/public/images/pokemon/icons/variant/3/345_3.png differ diff --git a/public/images/pokemon/icons/variant/3/346_2.png b/public/images/pokemon/icons/variant/3/346_2.png new file mode 100644 index 00000000000..71e233c31cc Binary files /dev/null and b/public/images/pokemon/icons/variant/3/346_2.png differ diff --git a/public/images/pokemon/icons/variant/3/346_3.png b/public/images/pokemon/icons/variant/3/346_3.png new file mode 100644 index 00000000000..14514bb6183 Binary files /dev/null and b/public/images/pokemon/icons/variant/3/346_3.png differ diff --git a/public/images/pokemon/icons/variant/4/396_2.png b/public/images/pokemon/icons/variant/4/396_2.png new file mode 100644 index 00000000000..d7d23b494ab Binary files /dev/null and b/public/images/pokemon/icons/variant/4/396_2.png differ diff --git a/public/images/pokemon/icons/variant/4/396_3.png b/public/images/pokemon/icons/variant/4/396_3.png new file mode 100644 index 00000000000..6725912b199 Binary files /dev/null and b/public/images/pokemon/icons/variant/4/396_3.png differ diff --git a/public/images/pokemon/icons/variant/4/397_2.png b/public/images/pokemon/icons/variant/4/397_2.png new file mode 100644 index 00000000000..f6982eeece4 Binary files /dev/null and b/public/images/pokemon/icons/variant/4/397_2.png differ diff --git a/public/images/pokemon/icons/variant/4/397_3.png b/public/images/pokemon/icons/variant/4/397_3.png new file mode 100644 index 00000000000..83c2755599a Binary files /dev/null and b/public/images/pokemon/icons/variant/4/397_3.png differ diff --git a/public/images/pokemon/icons/variant/4/398_2.png b/public/images/pokemon/icons/variant/4/398_2.png new file mode 100644 index 00000000000..bbe04248c7b Binary files /dev/null and b/public/images/pokemon/icons/variant/4/398_2.png differ diff --git a/public/images/pokemon/icons/variant/4/398_3.png b/public/images/pokemon/icons/variant/4/398_3.png new file mode 100644 index 00000000000..a1d47a95b1a Binary files /dev/null and b/public/images/pokemon/icons/variant/4/398_3.png differ diff --git a/public/images/pokemon/icons/variant/4/403_2.png b/public/images/pokemon/icons/variant/4/403_2.png new file mode 100644 index 00000000000..410d3126e54 Binary files /dev/null and b/public/images/pokemon/icons/variant/4/403_2.png differ diff --git a/public/images/pokemon/icons/variant/4/403_3.png b/public/images/pokemon/icons/variant/4/403_3.png new file mode 100644 index 00000000000..0064c7d7d3f Binary files /dev/null and b/public/images/pokemon/icons/variant/4/403_3.png differ diff --git a/public/images/pokemon/icons/variant/4/404_2.png b/public/images/pokemon/icons/variant/4/404_2.png new file mode 100644 index 00000000000..9bd7a6ed7bf Binary files /dev/null and b/public/images/pokemon/icons/variant/4/404_2.png differ diff --git a/public/images/pokemon/icons/variant/4/404_3.png b/public/images/pokemon/icons/variant/4/404_3.png new file mode 100644 index 00000000000..5ec14183070 Binary files /dev/null and b/public/images/pokemon/icons/variant/4/404_3.png differ diff --git a/public/images/pokemon/icons/variant/4/405_2.png b/public/images/pokemon/icons/variant/4/405_2.png new file mode 100644 index 00000000000..28515b8350b Binary files /dev/null and b/public/images/pokemon/icons/variant/4/405_2.png differ diff --git a/public/images/pokemon/icons/variant/4/405_3.png b/public/images/pokemon/icons/variant/4/405_3.png new file mode 100644 index 00000000000..82f0270bd5b Binary files /dev/null and b/public/images/pokemon/icons/variant/4/405_3.png differ diff --git a/public/images/pokemon/icons/variant/4/417_2.png b/public/images/pokemon/icons/variant/4/417_2.png new file mode 100644 index 00000000000..e1bd9e52bb0 Binary files /dev/null and b/public/images/pokemon/icons/variant/4/417_2.png differ diff --git a/public/images/pokemon/icons/variant/4/417_3.png b/public/images/pokemon/icons/variant/4/417_3.png new file mode 100644 index 00000000000..4f9d1936f78 Binary files /dev/null and b/public/images/pokemon/icons/variant/4/417_3.png differ diff --git a/public/images/pokemon/icons/variant/4/420_2.png b/public/images/pokemon/icons/variant/4/420_2.png new file mode 100644 index 00000000000..194ae1213e3 Binary files /dev/null and b/public/images/pokemon/icons/variant/4/420_2.png differ diff --git a/public/images/pokemon/icons/variant/4/420_3.png b/public/images/pokemon/icons/variant/4/420_3.png new file mode 100644 index 00000000000..71116e40243 Binary files /dev/null and b/public/images/pokemon/icons/variant/4/420_3.png differ diff --git a/public/images/pokemon/icons/variant/4/421-overcast_2.png b/public/images/pokemon/icons/variant/4/421-overcast_2.png new file mode 100644 index 00000000000..0a8260baf49 Binary files /dev/null and b/public/images/pokemon/icons/variant/4/421-overcast_2.png differ diff --git a/public/images/pokemon/icons/variant/4/421-overcast_3.png b/public/images/pokemon/icons/variant/4/421-overcast_3.png new file mode 100644 index 00000000000..91fb8ef3d5f Binary files /dev/null and b/public/images/pokemon/icons/variant/4/421-overcast_3.png differ diff --git a/public/images/pokemon/icons/variant/4/421-sunshine_2.png b/public/images/pokemon/icons/variant/4/421-sunshine_2.png new file mode 100644 index 00000000000..4872654e4be Binary files /dev/null and b/public/images/pokemon/icons/variant/4/421-sunshine_2.png differ diff --git a/public/images/pokemon/icons/variant/4/421-sunshine_3.png b/public/images/pokemon/icons/variant/4/421-sunshine_3.png new file mode 100644 index 00000000000..d615119bdf2 Binary files /dev/null and b/public/images/pokemon/icons/variant/4/421-sunshine_3.png differ diff --git a/public/images/pokemon/icons/variant/4/446_2.png b/public/images/pokemon/icons/variant/4/446_2.png new file mode 100644 index 00000000000..900f3a5996b Binary files /dev/null and b/public/images/pokemon/icons/variant/4/446_2.png differ diff --git a/public/images/pokemon/icons/variant/4/446_3.png b/public/images/pokemon/icons/variant/4/446_3.png new file mode 100644 index 00000000000..04c40204baf Binary files /dev/null and b/public/images/pokemon/icons/variant/4/446_3.png differ diff --git a/public/images/pokemon/icons/variant/4/476_2.png b/public/images/pokemon/icons/variant/4/476_2.png new file mode 100644 index 00000000000..9b36a6f127e Binary files /dev/null and b/public/images/pokemon/icons/variant/4/476_2.png differ diff --git a/public/images/pokemon/icons/variant/4/476_3.png b/public/images/pokemon/icons/variant/4/476_3.png new file mode 100644 index 00000000000..39cb2a72088 Binary files /dev/null and b/public/images/pokemon/icons/variant/4/476_3.png differ diff --git a/public/images/pokemon/icons/variant/5/498_2.png b/public/images/pokemon/icons/variant/5/498_2.png new file mode 100644 index 00000000000..568e7ff7670 Binary files /dev/null and b/public/images/pokemon/icons/variant/5/498_2.png differ diff --git a/public/images/pokemon/icons/variant/5/498_3.png b/public/images/pokemon/icons/variant/5/498_3.png new file mode 100644 index 00000000000..d592f83c9be Binary files /dev/null and b/public/images/pokemon/icons/variant/5/498_3.png differ diff --git a/public/images/pokemon/icons/variant/5/499_2.png b/public/images/pokemon/icons/variant/5/499_2.png new file mode 100644 index 00000000000..992d5edb00a Binary files /dev/null and b/public/images/pokemon/icons/variant/5/499_2.png differ diff --git a/public/images/pokemon/icons/variant/5/499_3.png b/public/images/pokemon/icons/variant/5/499_3.png new file mode 100644 index 00000000000..151185e4556 Binary files /dev/null and b/public/images/pokemon/icons/variant/5/499_3.png differ diff --git a/public/images/pokemon/icons/variant/5/500_2.png b/public/images/pokemon/icons/variant/5/500_2.png new file mode 100644 index 00000000000..e8b8e88c46e Binary files /dev/null and b/public/images/pokemon/icons/variant/5/500_2.png differ diff --git a/public/images/pokemon/icons/variant/5/500_3.png b/public/images/pokemon/icons/variant/5/500_3.png new file mode 100644 index 00000000000..ad82f3d6ced Binary files /dev/null and b/public/images/pokemon/icons/variant/5/500_3.png differ diff --git a/public/images/pokemon/icons/variant/5/511_2.png b/public/images/pokemon/icons/variant/5/511_2.png new file mode 100644 index 00000000000..eea1484725e Binary files /dev/null and b/public/images/pokemon/icons/variant/5/511_2.png differ diff --git a/public/images/pokemon/icons/variant/5/511_3.png b/public/images/pokemon/icons/variant/5/511_3.png new file mode 100644 index 00000000000..fc434170eb2 Binary files /dev/null and b/public/images/pokemon/icons/variant/5/511_3.png differ diff --git a/public/images/pokemon/icons/variant/5/512_2.png b/public/images/pokemon/icons/variant/5/512_2.png new file mode 100644 index 00000000000..b9e0a45c06c Binary files /dev/null and b/public/images/pokemon/icons/variant/5/512_2.png differ diff --git a/public/images/pokemon/icons/variant/5/512_3.png b/public/images/pokemon/icons/variant/5/512_3.png new file mode 100644 index 00000000000..1a53cc12d26 Binary files /dev/null and b/public/images/pokemon/icons/variant/5/512_3.png differ diff --git a/public/images/pokemon/icons/variant/5/513_2.png b/public/images/pokemon/icons/variant/5/513_2.png new file mode 100644 index 00000000000..305903f3162 Binary files /dev/null and b/public/images/pokemon/icons/variant/5/513_2.png differ diff --git a/public/images/pokemon/icons/variant/5/513_3.png b/public/images/pokemon/icons/variant/5/513_3.png new file mode 100644 index 00000000000..6c4592a0f54 Binary files /dev/null and b/public/images/pokemon/icons/variant/5/513_3.png differ diff --git a/public/images/pokemon/icons/variant/5/514_2.png b/public/images/pokemon/icons/variant/5/514_2.png new file mode 100644 index 00000000000..5e39da4c7f7 Binary files /dev/null and b/public/images/pokemon/icons/variant/5/514_2.png differ diff --git a/public/images/pokemon/icons/variant/5/514_3.png b/public/images/pokemon/icons/variant/5/514_3.png new file mode 100644 index 00000000000..ea6224485ce Binary files /dev/null and b/public/images/pokemon/icons/variant/5/514_3.png differ diff --git a/public/images/pokemon/icons/variant/5/515_2.png b/public/images/pokemon/icons/variant/5/515_2.png new file mode 100644 index 00000000000..3d8af4a569f Binary files /dev/null and b/public/images/pokemon/icons/variant/5/515_2.png differ diff --git a/public/images/pokemon/icons/variant/5/515_3.png b/public/images/pokemon/icons/variant/5/515_3.png new file mode 100644 index 00000000000..bfd1a9e0011 Binary files /dev/null and b/public/images/pokemon/icons/variant/5/515_3.png differ diff --git a/public/images/pokemon/icons/variant/5/516_2.png b/public/images/pokemon/icons/variant/5/516_2.png new file mode 100644 index 00000000000..23257ea2c6f Binary files /dev/null and b/public/images/pokemon/icons/variant/5/516_2.png differ diff --git a/public/images/pokemon/icons/variant/5/516_3.png b/public/images/pokemon/icons/variant/5/516_3.png new file mode 100644 index 00000000000..78cb41df064 Binary files /dev/null and b/public/images/pokemon/icons/variant/5/516_3.png differ diff --git a/public/images/pokemon/icons/variant/5/522_2.png b/public/images/pokemon/icons/variant/5/522_2.png new file mode 100644 index 00000000000..111054ca1ab Binary files /dev/null and b/public/images/pokemon/icons/variant/5/522_2.png differ diff --git a/public/images/pokemon/icons/variant/5/522_3.png b/public/images/pokemon/icons/variant/5/522_3.png new file mode 100644 index 00000000000..03476f89139 Binary files /dev/null and b/public/images/pokemon/icons/variant/5/522_3.png differ diff --git a/public/images/pokemon/icons/variant/5/523_2.png b/public/images/pokemon/icons/variant/5/523_2.png new file mode 100644 index 00000000000..238e8d64594 Binary files /dev/null and b/public/images/pokemon/icons/variant/5/523_2.png differ diff --git a/public/images/pokemon/icons/variant/5/523_3.png b/public/images/pokemon/icons/variant/5/523_3.png new file mode 100644 index 00000000000..e2b12513061 Binary files /dev/null and b/public/images/pokemon/icons/variant/5/523_3.png differ diff --git a/public/images/pokemon/icons/variant/5/535_2.png b/public/images/pokemon/icons/variant/5/535_2.png new file mode 100644 index 00000000000..6f2f8a77136 Binary files /dev/null and b/public/images/pokemon/icons/variant/5/535_2.png differ diff --git a/public/images/pokemon/icons/variant/5/535_3.png b/public/images/pokemon/icons/variant/5/535_3.png new file mode 100644 index 00000000000..b97481faa8f Binary files /dev/null and b/public/images/pokemon/icons/variant/5/535_3.png differ diff --git a/public/images/pokemon/icons/variant/5/536_2.png b/public/images/pokemon/icons/variant/5/536_2.png new file mode 100644 index 00000000000..36a4a17dd2b Binary files /dev/null and b/public/images/pokemon/icons/variant/5/536_2.png differ diff --git a/public/images/pokemon/icons/variant/5/536_3.png b/public/images/pokemon/icons/variant/5/536_3.png new file mode 100644 index 00000000000..282864d38e9 Binary files /dev/null and b/public/images/pokemon/icons/variant/5/536_3.png differ diff --git a/public/images/pokemon/icons/variant/5/537_2.png b/public/images/pokemon/icons/variant/5/537_2.png new file mode 100644 index 00000000000..599752ff7f1 Binary files /dev/null and b/public/images/pokemon/icons/variant/5/537_2.png differ diff --git a/public/images/pokemon/icons/variant/5/537_3.png b/public/images/pokemon/icons/variant/5/537_3.png new file mode 100644 index 00000000000..229dd83c8ce Binary files /dev/null and b/public/images/pokemon/icons/variant/5/537_3.png differ diff --git a/public/images/pokemon/icons/variant/5/554_2.png b/public/images/pokemon/icons/variant/5/554_2.png new file mode 100644 index 00000000000..8f5df20db65 Binary files /dev/null and b/public/images/pokemon/icons/variant/5/554_2.png differ diff --git a/public/images/pokemon/icons/variant/5/554_3.png b/public/images/pokemon/icons/variant/5/554_3.png new file mode 100644 index 00000000000..6827ee2b478 Binary files /dev/null and b/public/images/pokemon/icons/variant/5/554_3.png differ diff --git a/public/images/pokemon/icons/variant/5/555-zen_2.png b/public/images/pokemon/icons/variant/5/555-zen_2.png new file mode 100644 index 00000000000..ae18a833759 Binary files /dev/null and b/public/images/pokemon/icons/variant/5/555-zen_2.png differ diff --git a/public/images/pokemon/icons/variant/5/555-zen_3.png b/public/images/pokemon/icons/variant/5/555-zen_3.png new file mode 100644 index 00000000000..692e39985a6 Binary files /dev/null and b/public/images/pokemon/icons/variant/5/555-zen_3.png differ diff --git a/public/images/pokemon/icons/variant/5/555_2.png b/public/images/pokemon/icons/variant/5/555_2.png new file mode 100644 index 00000000000..f408122171a Binary files /dev/null and b/public/images/pokemon/icons/variant/5/555_2.png differ diff --git a/public/images/pokemon/icons/variant/5/555_3.png b/public/images/pokemon/icons/variant/5/555_3.png new file mode 100644 index 00000000000..2994d3da2cf Binary files /dev/null and b/public/images/pokemon/icons/variant/5/555_3.png differ diff --git a/public/images/pokemon/icons/variant/5/566_2.png b/public/images/pokemon/icons/variant/5/566_2.png new file mode 100644 index 00000000000..927757ac240 Binary files /dev/null and b/public/images/pokemon/icons/variant/5/566_2.png differ diff --git a/public/images/pokemon/icons/variant/5/566_3.png b/public/images/pokemon/icons/variant/5/566_3.png new file mode 100644 index 00000000000..450fd247d8b Binary files /dev/null and b/public/images/pokemon/icons/variant/5/566_3.png differ diff --git a/public/images/pokemon/icons/variant/5/567_2.png b/public/images/pokemon/icons/variant/5/567_2.png new file mode 100644 index 00000000000..1050d13123d Binary files /dev/null and b/public/images/pokemon/icons/variant/5/567_2.png differ diff --git a/public/images/pokemon/icons/variant/5/567_3.png b/public/images/pokemon/icons/variant/5/567_3.png new file mode 100644 index 00000000000..c87f3841410 Binary files /dev/null and b/public/images/pokemon/icons/variant/5/567_3.png differ diff --git a/public/images/pokemon/icons/variant/5/572_2.png b/public/images/pokemon/icons/variant/5/572_2.png index b6230a17cbc..1da1f6b953a 100644 Binary files a/public/images/pokemon/icons/variant/5/572_2.png and b/public/images/pokemon/icons/variant/5/572_2.png differ diff --git a/public/images/pokemon/icons/variant/5/572_3.png b/public/images/pokemon/icons/variant/5/572_3.png index c0848deade2..868b7c38585 100644 Binary files a/public/images/pokemon/icons/variant/5/572_3.png and b/public/images/pokemon/icons/variant/5/572_3.png differ diff --git a/public/images/pokemon/icons/variant/5/573_2.png b/public/images/pokemon/icons/variant/5/573_2.png new file mode 100644 index 00000000000..effd7070f7d Binary files /dev/null and b/public/images/pokemon/icons/variant/5/573_2.png differ diff --git a/public/images/pokemon/icons/variant/5/573_3.png b/public/images/pokemon/icons/variant/5/573_3.png new file mode 100644 index 00000000000..019cf83795d Binary files /dev/null and b/public/images/pokemon/icons/variant/5/573_3.png differ diff --git a/public/images/pokemon/icons/variant/5/626_2.png b/public/images/pokemon/icons/variant/5/626_2.png new file mode 100644 index 00000000000..21930c7606e Binary files /dev/null and b/public/images/pokemon/icons/variant/5/626_2.png differ diff --git a/public/images/pokemon/icons/variant/5/626_3.png b/public/images/pokemon/icons/variant/5/626_3.png new file mode 100644 index 00000000000..2183e1426e8 Binary files /dev/null and b/public/images/pokemon/icons/variant/5/626_3.png differ diff --git a/public/images/pokemon/icons/variant/5/641-incarnate_1.png b/public/images/pokemon/icons/variant/5/641-incarnate_1.png deleted file mode 100644 index ddd0ca15c0c..00000000000 Binary files a/public/images/pokemon/icons/variant/5/641-incarnate_1.png and /dev/null differ diff --git a/public/images/pokemon/icons/variant/5/641-therian_1.png b/public/images/pokemon/icons/variant/5/641-therian_1.png deleted file mode 100644 index 8f6f01fd0d7..00000000000 Binary files a/public/images/pokemon/icons/variant/5/641-therian_1.png and /dev/null differ diff --git a/public/images/pokemon/icons/variant/5/642-incarnate_1.png b/public/images/pokemon/icons/variant/5/642-incarnate_1.png deleted file mode 100644 index 55507be70b9..00000000000 Binary files a/public/images/pokemon/icons/variant/5/642-incarnate_1.png and /dev/null differ diff --git a/public/images/pokemon/icons/variant/5/642-therian_1.png b/public/images/pokemon/icons/variant/5/642-therian_1.png deleted file mode 100644 index bea360abb95..00000000000 Binary files a/public/images/pokemon/icons/variant/5/642-therian_1.png and /dev/null differ diff --git a/public/images/pokemon/icons/variant/5/643_2.png b/public/images/pokemon/icons/variant/5/643_2.png new file mode 100644 index 00000000000..24b7ce28a36 Binary files /dev/null and b/public/images/pokemon/icons/variant/5/643_2.png differ diff --git a/public/images/pokemon/icons/variant/5/643_3.png b/public/images/pokemon/icons/variant/5/643_3.png new file mode 100644 index 00000000000..5c124dbb8f6 Binary files /dev/null and b/public/images/pokemon/icons/variant/5/643_3.png differ diff --git a/public/images/pokemon/icons/variant/5/644_2.png b/public/images/pokemon/icons/variant/5/644_2.png new file mode 100644 index 00000000000..13ba216e9ce Binary files /dev/null and b/public/images/pokemon/icons/variant/5/644_2.png differ diff --git a/public/images/pokemon/icons/variant/5/644_3.png b/public/images/pokemon/icons/variant/5/644_3.png new file mode 100644 index 00000000000..a071965f32d Binary files /dev/null and b/public/images/pokemon/icons/variant/5/644_3.png differ diff --git a/public/images/pokemon/icons/variant/5/645-incarnate_1.png b/public/images/pokemon/icons/variant/5/645-incarnate_1.png deleted file mode 100644 index 416fa9ca1db..00000000000 Binary files a/public/images/pokemon/icons/variant/5/645-incarnate_1.png and /dev/null differ diff --git a/public/images/pokemon/icons/variant/5/645-therian_1.png b/public/images/pokemon/icons/variant/5/645-therian_1.png deleted file mode 100644 index c03d4233e29..00000000000 Binary files a/public/images/pokemon/icons/variant/5/645-therian_1.png and /dev/null differ diff --git a/public/images/pokemon/icons/variant/5/646-black_2.png b/public/images/pokemon/icons/variant/5/646-black_2.png new file mode 100644 index 00000000000..825a8bd36c0 Binary files /dev/null and b/public/images/pokemon/icons/variant/5/646-black_2.png differ diff --git a/public/images/pokemon/icons/variant/5/646-black_3.png b/public/images/pokemon/icons/variant/5/646-black_3.png new file mode 100644 index 00000000000..6e854d9ea41 Binary files /dev/null and b/public/images/pokemon/icons/variant/5/646-black_3.png differ diff --git a/public/images/pokemon/icons/variant/5/646-white_2.png b/public/images/pokemon/icons/variant/5/646-white_2.png new file mode 100644 index 00000000000..e38dc504b21 Binary files /dev/null and b/public/images/pokemon/icons/variant/5/646-white_2.png differ diff --git a/public/images/pokemon/icons/variant/5/646-white_3.png b/public/images/pokemon/icons/variant/5/646-white_3.png new file mode 100644 index 00000000000..12bff95a01d Binary files /dev/null and b/public/images/pokemon/icons/variant/5/646-white_3.png differ diff --git a/public/images/pokemon/icons/variant/5/646_2.png b/public/images/pokemon/icons/variant/5/646_2.png new file mode 100644 index 00000000000..064598bfd26 Binary files /dev/null and b/public/images/pokemon/icons/variant/5/646_2.png differ diff --git a/public/images/pokemon/icons/variant/5/646_3.png b/public/images/pokemon/icons/variant/5/646_3.png new file mode 100644 index 00000000000..e258eb4ce91 Binary files /dev/null and b/public/images/pokemon/icons/variant/5/646_3.png differ diff --git a/public/images/pokemon/icons/variant/6/692_2.png b/public/images/pokemon/icons/variant/6/692_2.png new file mode 100644 index 00000000000..fa6cacc70dd Binary files /dev/null and b/public/images/pokemon/icons/variant/6/692_2.png differ diff --git a/public/images/pokemon/icons/variant/6/692_3.png b/public/images/pokemon/icons/variant/6/692_3.png new file mode 100644 index 00000000000..47d0661babe Binary files /dev/null and b/public/images/pokemon/icons/variant/6/692_3.png differ diff --git a/public/images/pokemon/icons/variant/6/693_2.png b/public/images/pokemon/icons/variant/6/693_2.png new file mode 100644 index 00000000000..9d8ea4f56cd Binary files /dev/null and b/public/images/pokemon/icons/variant/6/693_2.png differ diff --git a/public/images/pokemon/icons/variant/6/693_3.png b/public/images/pokemon/icons/variant/6/693_3.png new file mode 100644 index 00000000000..6f0169bb057 Binary files /dev/null and b/public/images/pokemon/icons/variant/6/693_3.png differ diff --git a/public/images/pokemon/icons/variant/7/2037_2.png b/public/images/pokemon/icons/variant/7/2037_2.png new file mode 100644 index 00000000000..528793de5c5 Binary files /dev/null and b/public/images/pokemon/icons/variant/7/2037_2.png differ diff --git a/public/images/pokemon/icons/variant/7/2037_3.png b/public/images/pokemon/icons/variant/7/2037_3.png new file mode 100644 index 00000000000..d79fd1c2369 Binary files /dev/null and b/public/images/pokemon/icons/variant/7/2037_3.png differ diff --git a/public/images/pokemon/icons/variant/7/2038_2.png b/public/images/pokemon/icons/variant/7/2038_2.png new file mode 100644 index 00000000000..d8295be1baf Binary files /dev/null and b/public/images/pokemon/icons/variant/7/2038_2.png differ diff --git a/public/images/pokemon/icons/variant/7/2038_3.png b/public/images/pokemon/icons/variant/7/2038_3.png new file mode 100644 index 00000000000..645c783b43f Binary files /dev/null and b/public/images/pokemon/icons/variant/7/2038_3.png differ diff --git a/public/images/pokemon/icons/variant/7/746-school_2.png b/public/images/pokemon/icons/variant/7/746-school_2.png new file mode 100644 index 00000000000..94d16db5c42 Binary files /dev/null and b/public/images/pokemon/icons/variant/7/746-school_2.png differ diff --git a/public/images/pokemon/icons/variant/7/746-school_3.png b/public/images/pokemon/icons/variant/7/746-school_3.png new file mode 100644 index 00000000000..94d16db5c42 Binary files /dev/null and b/public/images/pokemon/icons/variant/7/746-school_3.png differ diff --git a/public/images/pokemon/icons/variant/7/746_2.png b/public/images/pokemon/icons/variant/7/746_2.png new file mode 100644 index 00000000000..d4897e0acf3 Binary files /dev/null and b/public/images/pokemon/icons/variant/7/746_2.png differ diff --git a/public/images/pokemon/icons/variant/7/746_3.png b/public/images/pokemon/icons/variant/7/746_3.png new file mode 100644 index 00000000000..8746a45310d Binary files /dev/null and b/public/images/pokemon/icons/variant/7/746_3.png differ diff --git a/public/images/pokemon/icons/variant/7/780_2.png b/public/images/pokemon/icons/variant/7/780_2.png new file mode 100644 index 00000000000..fe40d474146 Binary files /dev/null and b/public/images/pokemon/icons/variant/7/780_2.png differ diff --git a/public/images/pokemon/icons/variant/7/780_3.png b/public/images/pokemon/icons/variant/7/780_3.png new file mode 100644 index 00000000000..6d98c750e8e Binary files /dev/null and b/public/images/pokemon/icons/variant/7/780_3.png differ diff --git a/public/images/pokemon/icons/variant/7/782_2.png b/public/images/pokemon/icons/variant/7/782_2.png new file mode 100644 index 00000000000..c036fa45017 Binary files /dev/null and b/public/images/pokemon/icons/variant/7/782_2.png differ diff --git a/public/images/pokemon/icons/variant/7/782_3.png b/public/images/pokemon/icons/variant/7/782_3.png new file mode 100644 index 00000000000..bc1e939e14d Binary files /dev/null and b/public/images/pokemon/icons/variant/7/782_3.png differ diff --git a/public/images/pokemon/icons/variant/7/783_2.png b/public/images/pokemon/icons/variant/7/783_2.png new file mode 100644 index 00000000000..1e686e95017 Binary files /dev/null and b/public/images/pokemon/icons/variant/7/783_2.png differ diff --git a/public/images/pokemon/icons/variant/7/783_3.png b/public/images/pokemon/icons/variant/7/783_3.png new file mode 100644 index 00000000000..6b61fea7298 Binary files /dev/null and b/public/images/pokemon/icons/variant/7/783_3.png differ diff --git a/public/images/pokemon/icons/variant/7/784_2.png b/public/images/pokemon/icons/variant/7/784_2.png new file mode 100644 index 00000000000..5f921735839 Binary files /dev/null and b/public/images/pokemon/icons/variant/7/784_2.png differ diff --git a/public/images/pokemon/icons/variant/7/784_3.png b/public/images/pokemon/icons/variant/7/784_3.png new file mode 100644 index 00000000000..077a6253a19 Binary files /dev/null and b/public/images/pokemon/icons/variant/7/784_3.png differ diff --git a/public/images/pokemon/icons/variant/8/840_2.png b/public/images/pokemon/icons/variant/8/840_2.png new file mode 100644 index 00000000000..796057e93fb Binary files /dev/null and b/public/images/pokemon/icons/variant/8/840_2.png differ diff --git a/public/images/pokemon/icons/variant/8/840_3.png b/public/images/pokemon/icons/variant/8/840_3.png new file mode 100644 index 00000000000..de8206c7fd7 Binary files /dev/null and b/public/images/pokemon/icons/variant/8/840_3.png differ diff --git a/public/images/pokemon/icons/variant/8/841-gigantamax_2.png b/public/images/pokemon/icons/variant/8/841-gigantamax_2.png new file mode 100644 index 00000000000..aaed8081eec Binary files /dev/null and b/public/images/pokemon/icons/variant/8/841-gigantamax_2.png differ diff --git a/public/images/pokemon/icons/variant/8/841-gigantamax_3.png b/public/images/pokemon/icons/variant/8/841-gigantamax_3.png new file mode 100644 index 00000000000..3ae323c8677 Binary files /dev/null and b/public/images/pokemon/icons/variant/8/841-gigantamax_3.png differ diff --git a/public/images/pokemon/icons/variant/8/841_2.png b/public/images/pokemon/icons/variant/8/841_2.png new file mode 100644 index 00000000000..d1a57120993 Binary files /dev/null and b/public/images/pokemon/icons/variant/8/841_2.png differ diff --git a/public/images/pokemon/icons/variant/8/841_3.png b/public/images/pokemon/icons/variant/8/841_3.png new file mode 100644 index 00000000000..5eaf8ea1c57 Binary files /dev/null and b/public/images/pokemon/icons/variant/8/841_3.png differ diff --git a/public/images/pokemon/icons/variant/8/842-gigantamax_2.png b/public/images/pokemon/icons/variant/8/842-gigantamax_2.png new file mode 100644 index 00000000000..aaed8081eec Binary files /dev/null and b/public/images/pokemon/icons/variant/8/842-gigantamax_2.png differ diff --git a/public/images/pokemon/icons/variant/8/842-gigantamax_3.png b/public/images/pokemon/icons/variant/8/842-gigantamax_3.png new file mode 100644 index 00000000000..3ae323c8677 Binary files /dev/null and b/public/images/pokemon/icons/variant/8/842-gigantamax_3.png differ diff --git a/public/images/pokemon/icons/variant/8/842_2.png b/public/images/pokemon/icons/variant/8/842_2.png new file mode 100644 index 00000000000..87de609f819 Binary files /dev/null and b/public/images/pokemon/icons/variant/8/842_2.png differ diff --git a/public/images/pokemon/icons/variant/8/842_3.png b/public/images/pokemon/icons/variant/8/842_3.png new file mode 100644 index 00000000000..15dfe7ea02c Binary files /dev/null and b/public/images/pokemon/icons/variant/8/842_3.png differ diff --git a/public/images/pokemon/icons/variant/8/871_2.png b/public/images/pokemon/icons/variant/8/871_2.png new file mode 100644 index 00000000000..719ee1eb3a9 Binary files /dev/null and b/public/images/pokemon/icons/variant/8/871_2.png differ diff --git a/public/images/pokemon/icons/variant/8/871_3.png b/public/images/pokemon/icons/variant/8/871_3.png new file mode 100644 index 00000000000..0d8227b722a Binary files /dev/null and b/public/images/pokemon/icons/variant/8/871_3.png differ diff --git a/public/images/pokemon/icons/variant/9/1011_2.png b/public/images/pokemon/icons/variant/9/1011_2.png new file mode 100644 index 00000000000..01abc1a8e65 Binary files /dev/null and b/public/images/pokemon/icons/variant/9/1011_2.png differ diff --git a/public/images/pokemon/icons/variant/9/1011_3.png b/public/images/pokemon/icons/variant/9/1011_3.png new file mode 100644 index 00000000000..fa5e3e35135 Binary files /dev/null and b/public/images/pokemon/icons/variant/9/1011_3.png differ diff --git a/public/images/pokemon/icons/variant/9/1019_2.png b/public/images/pokemon/icons/variant/9/1019_2.png new file mode 100644 index 00000000000..671ae3f6552 Binary files /dev/null and b/public/images/pokemon/icons/variant/9/1019_2.png differ diff --git a/public/images/pokemon/icons/variant/9/1019_3.png b/public/images/pokemon/icons/variant/9/1019_3.png new file mode 100644 index 00000000000..0569b3e84b6 Binary files /dev/null and b/public/images/pokemon/icons/variant/9/1019_3.png differ diff --git a/public/images/pokemon/shiny/782.json b/public/images/pokemon/shiny/782.json index 0147fd611c2..8b4336549f1 100644 --- a/public/images/pokemon/shiny/782.json +++ b/public/images/pokemon/shiny/782.json @@ -1,41 +1,1010 @@ -{ - "textures": [ - { - "image": "782.png", - "format": "RGBA8888", - "size": { - "w": 50, - "h": 50 - }, - "scale": 1, - "frames": [ - { - "filename": "0001.png", - "rotated": false, - "trimmed": false, - "sourceSize": { - "w": 46, - "h": 50 - }, - "spriteSourceSize": { - "x": 0, - "y": 0, - "w": 46, - "h": 50 - }, - "frame": { - "x": 0, - "y": 0, - "w": 46, - "h": 50 - } - } - ] - } - ], - "meta": { - "app": "https://www.codeandweb.com/texturepacker", - "version": "3.0", - "smartupdate": "$TexturePacker:SmartUpdate:a551362c468e8c1d1846087d45955da3:43093a2fa7dce85b50a7790b1ef2c6b0:d07862436676aa228a148ee1f1d82a8f$" - } +{ "frames": [ + { + "filename": "0001.png", + "frame": { "x": 48, "y": 105, "w": 46, "h": 50 }, + "rotated": false, + "trimmed": true, + "spriteSourceSize": { "x": 28, "y": 24, "w": 46, "h": 50 }, + "sourceSize": { "w": 96, "h": 96 }, + "duration": 50 + }, + { + "filename": "0002.png", + "frame": { "x": 48, "y": 105, "w": 46, "h": 50 }, + "rotated": false, + "trimmed": true, + "spriteSourceSize": { "x": 28, "y": 24, "w": 46, "h": 50 }, + "sourceSize": { "w": 96, "h": 96 }, + "duration": 50 + }, + { + "filename": "0003.png", + "frame": { "x": 94, "y": 105, "w": 45, "h": 50 }, + "rotated": false, + "trimmed": true, + "spriteSourceSize": { "x": 28, "y": 24, "w": 45, "h": 50 }, + "sourceSize": { "w": 96, "h": 96 }, + "duration": 50 + }, + { + "filename": "0004.png", + "frame": { "x": 94, "y": 105, "w": 45, "h": 50 }, + "rotated": false, + "trimmed": true, + "spriteSourceSize": { "x": 28, "y": 24, "w": 45, "h": 50 }, + "sourceSize": { "w": 96, "h": 96 }, + "duration": 50 + }, + { + "filename": "0005.png", + "frame": { "x": 47, "y": 155, "w": 46, "h": 49 }, + "rotated": false, + "trimmed": true, + "spriteSourceSize": { "x": 27, "y": 25, "w": 46, "h": 49 }, + "sourceSize": { "w": 96, "h": 96 }, + "duration": 50 + }, + { + "filename": "0006.png", + "frame": { "x": 47, "y": 155, "w": 46, "h": 49 }, + "rotated": false, + "trimmed": true, + "spriteSourceSize": { "x": 27, "y": 25, "w": 46, "h": 49 }, + "sourceSize": { "w": 96, "h": 96 }, + "duration": 50 + }, + { + "filename": "0007.png", + "frame": { "x": 140, "y": 156, "w": 46, "h": 47 }, + "rotated": false, + "trimmed": true, + "spriteSourceSize": { "x": 27, "y": 27, "w": 46, "h": 47 }, + "sourceSize": { "w": 96, "h": 96 }, + "duration": 50 + }, + { + "filename": "0008.png", + "frame": { "x": 140, "y": 156, "w": 46, "h": 47 }, + "rotated": false, + "trimmed": true, + "spriteSourceSize": { "x": 27, "y": 27, "w": 46, "h": 47 }, + "sourceSize": { "w": 96, "h": 96 }, + "duration": 50 + }, + { + "filename": "0009.png", + "frame": { "x": 93, "y": 156, "w": 47, "h": 47 }, + "rotated": false, + "trimmed": true, + "spriteSourceSize": { "x": 26, "y": 27, "w": 47, "h": 47 }, + "sourceSize": { "w": 96, "h": 96 }, + "duration": 50 + }, + { + "filename": "0010.png", + "frame": { "x": 93, "y": 156, "w": 47, "h": 47 }, + "rotated": false, + "trimmed": true, + "spriteSourceSize": { "x": 26, "y": 27, "w": 47, "h": 47 }, + "sourceSize": { "w": 96, "h": 96 }, + "duration": 50 + }, + { + "filename": "0011.png", + "frame": { "x": 186, "y": 156, "w": 46, "h": 47 }, + "rotated": false, + "trimmed": true, + "spriteSourceSize": { "x": 27, "y": 27, "w": 46, "h": 47 }, + "sourceSize": { "w": 96, "h": 96 }, + "duration": 50 + }, + { + "filename": "0012.png", + "frame": { "x": 186, "y": 156, "w": 46, "h": 47 }, + "rotated": false, + "trimmed": true, + "spriteSourceSize": { "x": 27, "y": 27, "w": 46, "h": 47 }, + "sourceSize": { "w": 96, "h": 96 }, + "duration": 50 + }, + { + "filename": "0013.png", + "frame": { "x": 1, "y": 105, "w": 47, "h": 49 }, + "rotated": false, + "trimmed": true, + "spriteSourceSize": { "x": 27, "y": 25, "w": 47, "h": 49 }, + "sourceSize": { "w": 96, "h": 96 }, + "duration": 50 + }, + { + "filename": "0014.png", + "frame": { "x": 1, "y": 105, "w": 47, "h": 49 }, + "rotated": false, + "trimmed": true, + "spriteSourceSize": { "x": 27, "y": 25, "w": 47, "h": 49 }, + "sourceSize": { "w": 96, "h": 96 }, + "duration": 50 + }, + { + "filename": "0015.png", + "frame": { "x": 1, "y": 154, "w": 46, "h": 50 }, + "rotated": false, + "trimmed": true, + "spriteSourceSize": { "x": 28, "y": 24, "w": 46, "h": 50 }, + "sourceSize": { "w": 96, "h": 96 }, + "duration": 50 + }, + { + "filename": "0016.png", + "frame": { "x": 1, "y": 154, "w": 46, "h": 50 }, + "rotated": false, + "trimmed": true, + "spriteSourceSize": { "x": 28, "y": 24, "w": 46, "h": 50 }, + "sourceSize": { "w": 96, "h": 96 }, + "duration": 50 + }, + { + "filename": "0017.png", + "frame": { "x": 48, "y": 105, "w": 46, "h": 50 }, + "rotated": false, + "trimmed": true, + "spriteSourceSize": { "x": 28, "y": 24, "w": 46, "h": 50 }, + "sourceSize": { "w": 96, "h": 96 }, + "duration": 50 + }, + { + "filename": "0018.png", + "frame": { "x": 48, "y": 105, "w": 46, "h": 50 }, + "rotated": false, + "trimmed": true, + "spriteSourceSize": { "x": 28, "y": 24, "w": 46, "h": 50 }, + "sourceSize": { "w": 96, "h": 96 }, + "duration": 50 + }, + { + "filename": "0019.png", + "frame": { "x": 94, "y": 105, "w": 45, "h": 50 }, + "rotated": false, + "trimmed": true, + "spriteSourceSize": { "x": 28, "y": 24, "w": 45, "h": 50 }, + "sourceSize": { "w": 96, "h": 96 }, + "duration": 50 + }, + { + "filename": "0020.png", + "frame": { "x": 94, "y": 105, "w": 45, "h": 50 }, + "rotated": false, + "trimmed": true, + "spriteSourceSize": { "x": 28, "y": 24, "w": 45, "h": 50 }, + "sourceSize": { "w": 96, "h": 96 }, + "duration": 50 + }, + { + "filename": "0021.png", + "frame": { "x": 47, "y": 155, "w": 46, "h": 49 }, + "rotated": false, + "trimmed": true, + "spriteSourceSize": { "x": 27, "y": 25, "w": 46, "h": 49 }, + "sourceSize": { "w": 96, "h": 96 }, + "duration": 50 + }, + { + "filename": "0022.png", + "frame": { "x": 47, "y": 155, "w": 46, "h": 49 }, + "rotated": false, + "trimmed": true, + "spriteSourceSize": { "x": 27, "y": 25, "w": 46, "h": 49 }, + "sourceSize": { "w": 96, "h": 96 }, + "duration": 50 + }, + { + "filename": "0023.png", + "frame": { "x": 140, "y": 156, "w": 46, "h": 47 }, + "rotated": false, + "trimmed": true, + "spriteSourceSize": { "x": 27, "y": 27, "w": 46, "h": 47 }, + "sourceSize": { "w": 96, "h": 96 }, + "duration": 50 + }, + { + "filename": "0024.png", + "frame": { "x": 140, "y": 156, "w": 46, "h": 47 }, + "rotated": false, + "trimmed": true, + "spriteSourceSize": { "x": 27, "y": 27, "w": 46, "h": 47 }, + "sourceSize": { "w": 96, "h": 96 }, + "duration": 50 + }, + { + "filename": "0025.png", + "frame": { "x": 93, "y": 156, "w": 47, "h": 47 }, + "rotated": false, + "trimmed": true, + "spriteSourceSize": { "x": 26, "y": 27, "w": 47, "h": 47 }, + "sourceSize": { "w": 96, "h": 96 }, + "duration": 50 + }, + { + "filename": "0026.png", + "frame": { "x": 93, "y": 156, "w": 47, "h": 47 }, + "rotated": false, + "trimmed": true, + "spriteSourceSize": { "x": 26, "y": 27, "w": 47, "h": 47 }, + "sourceSize": { "w": 96, "h": 96 }, + "duration": 50 + }, + { + "filename": "0027.png", + "frame": { "x": 186, "y": 156, "w": 46, "h": 47 }, + "rotated": false, + "trimmed": true, + "spriteSourceSize": { "x": 27, "y": 27, "w": 46, "h": 47 }, + "sourceSize": { "w": 96, "h": 96 }, + "duration": 50 + }, + { + "filename": "0028.png", + "frame": { "x": 186, "y": 156, "w": 46, "h": 47 }, + "rotated": false, + "trimmed": true, + "spriteSourceSize": { "x": 27, "y": 27, "w": 46, "h": 47 }, + "sourceSize": { "w": 96, "h": 96 }, + "duration": 50 + }, + { + "filename": "0029.png", + "frame": { "x": 1, "y": 105, "w": 47, "h": 49 }, + "rotated": false, + "trimmed": true, + "spriteSourceSize": { "x": 27, "y": 25, "w": 47, "h": 49 }, + "sourceSize": { "w": 96, "h": 96 }, + "duration": 50 + }, + { + "filename": "0030.png", + "frame": { "x": 1, "y": 105, "w": 47, "h": 49 }, + "rotated": false, + "trimmed": true, + "spriteSourceSize": { "x": 27, "y": 25, "w": 47, "h": 49 }, + "sourceSize": { "w": 96, "h": 96 }, + "duration": 50 + }, + { + "filename": "0031.png", + "frame": { "x": 1, "y": 154, "w": 46, "h": 50 }, + "rotated": false, + "trimmed": true, + "spriteSourceSize": { "x": 28, "y": 24, "w": 46, "h": 50 }, + "sourceSize": { "w": 96, "h": 96 }, + "duration": 50 + }, + { + "filename": "0032.png", + "frame": { "x": 1, "y": 154, "w": 46, "h": 50 }, + "rotated": false, + "trimmed": true, + "spriteSourceSize": { "x": 28, "y": 24, "w": 46, "h": 50 }, + "sourceSize": { "w": 96, "h": 96 }, + "duration": 50 + }, + { + "filename": "0033.png", + "frame": { "x": 48, "y": 105, "w": 46, "h": 50 }, + "rotated": false, + "trimmed": true, + "spriteSourceSize": { "x": 28, "y": 24, "w": 46, "h": 50 }, + "sourceSize": { "w": 96, "h": 96 }, + "duration": 50 + }, + { + "filename": "0034.png", + "frame": { "x": 48, "y": 105, "w": 46, "h": 50 }, + "rotated": false, + "trimmed": true, + "spriteSourceSize": { "x": 28, "y": 24, "w": 46, "h": 50 }, + "sourceSize": { "w": 96, "h": 96 }, + "duration": 50 + }, + { + "filename": "0035.png", + "frame": { "x": 94, "y": 105, "w": 45, "h": 50 }, + "rotated": false, + "trimmed": true, + "spriteSourceSize": { "x": 28, "y": 24, "w": 45, "h": 50 }, + "sourceSize": { "w": 96, "h": 96 }, + "duration": 50 + }, + { + "filename": "0036.png", + "frame": { "x": 94, "y": 105, "w": 45, "h": 50 }, + "rotated": false, + "trimmed": true, + "spriteSourceSize": { "x": 28, "y": 24, "w": 45, "h": 50 }, + "sourceSize": { "w": 96, "h": 96 }, + "duration": 50 + }, + { + "filename": "0037.png", + "frame": { "x": 47, "y": 155, "w": 46, "h": 49 }, + "rotated": false, + "trimmed": true, + "spriteSourceSize": { "x": 27, "y": 25, "w": 46, "h": 49 }, + "sourceSize": { "w": 96, "h": 96 }, + "duration": 50 + }, + { + "filename": "0038.png", + "frame": { "x": 47, "y": 155, "w": 46, "h": 49 }, + "rotated": false, + "trimmed": true, + "spriteSourceSize": { "x": 27, "y": 25, "w": 46, "h": 49 }, + "sourceSize": { "w": 96, "h": 96 }, + "duration": 50 + }, + { + "filename": "0039.png", + "frame": { "x": 140, "y": 156, "w": 46, "h": 47 }, + "rotated": false, + "trimmed": true, + "spriteSourceSize": { "x": 27, "y": 27, "w": 46, "h": 47 }, + "sourceSize": { "w": 96, "h": 96 }, + "duration": 50 + }, + { + "filename": "0040.png", + "frame": { "x": 140, "y": 156, "w": 46, "h": 47 }, + "rotated": false, + "trimmed": true, + "spriteSourceSize": { "x": 27, "y": 27, "w": 46, "h": 47 }, + "sourceSize": { "w": 96, "h": 96 }, + "duration": 50 + }, + { + "filename": "0041.png", + "frame": { "x": 93, "y": 156, "w": 47, "h": 47 }, + "rotated": false, + "trimmed": true, + "spriteSourceSize": { "x": 26, "y": 27, "w": 47, "h": 47 }, + "sourceSize": { "w": 96, "h": 96 }, + "duration": 50 + }, + { + "filename": "0042.png", + "frame": { "x": 93, "y": 156, "w": 47, "h": 47 }, + "rotated": false, + "trimmed": true, + "spriteSourceSize": { "x": 26, "y": 27, "w": 47, "h": 47 }, + "sourceSize": { "w": 96, "h": 96 }, + "duration": 50 + }, + { + "filename": "0043.png", + "frame": { "x": 186, "y": 156, "w": 46, "h": 47 }, + "rotated": false, + "trimmed": true, + "spriteSourceSize": { "x": 27, "y": 27, "w": 46, "h": 47 }, + "sourceSize": { "w": 96, "h": 96 }, + "duration": 50 + }, + { + "filename": "0044.png", + "frame": { "x": 186, "y": 156, "w": 46, "h": 47 }, + "rotated": false, + "trimmed": true, + "spriteSourceSize": { "x": 27, "y": 27, "w": 46, "h": 47 }, + "sourceSize": { "w": 96, "h": 96 }, + "duration": 50 + }, + { + "filename": "0045.png", + "frame": { "x": 1, "y": 105, "w": 47, "h": 49 }, + "rotated": false, + "trimmed": true, + "spriteSourceSize": { "x": 27, "y": 25, "w": 47, "h": 49 }, + "sourceSize": { "w": 96, "h": 96 }, + "duration": 50 + }, + { + "filename": "0046.png", + "frame": { "x": 1, "y": 105, "w": 47, "h": 49 }, + "rotated": false, + "trimmed": true, + "spriteSourceSize": { "x": 27, "y": 25, "w": 47, "h": 49 }, + "sourceSize": { "w": 96, "h": 96 }, + "duration": 50 + }, + { + "filename": "0047.png", + "frame": { "x": 1, "y": 154, "w": 46, "h": 50 }, + "rotated": false, + "trimmed": true, + "spriteSourceSize": { "x": 28, "y": 24, "w": 46, "h": 50 }, + "sourceSize": { "w": 96, "h": 96 }, + "duration": 50 + }, + { + "filename": "0048.png", + "frame": { "x": 1, "y": 154, "w": 46, "h": 50 }, + "rotated": false, + "trimmed": true, + "spriteSourceSize": { "x": 28, "y": 24, "w": 46, "h": 50 }, + "sourceSize": { "w": 96, "h": 96 }, + "duration": 50 + }, + { + "filename": "0049.png", + "frame": { "x": 48, "y": 105, "w": 46, "h": 50 }, + "rotated": false, + "trimmed": true, + "spriteSourceSize": { "x": 28, "y": 24, "w": 46, "h": 50 }, + "sourceSize": { "w": 96, "h": 96 }, + "duration": 50 + }, + { + "filename": "0050.png", + "frame": { "x": 48, "y": 105, "w": 46, "h": 50 }, + "rotated": false, + "trimmed": true, + "spriteSourceSize": { "x": 28, "y": 24, "w": 46, "h": 50 }, + "sourceSize": { "w": 96, "h": 96 }, + "duration": 50 + }, + { + "filename": "0051.png", + "frame": { "x": 94, "y": 105, "w": 45, "h": 50 }, + "rotated": false, + "trimmed": true, + "spriteSourceSize": { "x": 28, "y": 24, "w": 45, "h": 50 }, + "sourceSize": { "w": 96, "h": 96 }, + "duration": 50 + }, + { + "filename": "0052.png", + "frame": { "x": 94, "y": 105, "w": 45, "h": 50 }, + "rotated": false, + "trimmed": true, + "spriteSourceSize": { "x": 28, "y": 24, "w": 45, "h": 50 }, + "sourceSize": { "w": 96, "h": 96 }, + "duration": 50 + }, + { + "filename": "0053.png", + "frame": { "x": 47, "y": 155, "w": 46, "h": 49 }, + "rotated": false, + "trimmed": true, + "spriteSourceSize": { "x": 27, "y": 25, "w": 46, "h": 49 }, + "sourceSize": { "w": 96, "h": 96 }, + "duration": 50 + }, + { + "filename": "0054.png", + "frame": { "x": 47, "y": 155, "w": 46, "h": 49 }, + "rotated": false, + "trimmed": true, + "spriteSourceSize": { "x": 27, "y": 25, "w": 46, "h": 49 }, + "sourceSize": { "w": 96, "h": 96 }, + "duration": 50 + }, + { + "filename": "0055.png", + "frame": { "x": 140, "y": 156, "w": 46, "h": 47 }, + "rotated": false, + "trimmed": true, + "spriteSourceSize": { "x": 27, "y": 27, "w": 46, "h": 47 }, + "sourceSize": { "w": 96, "h": 96 }, + "duration": 50 + }, + { + "filename": "0056.png", + "frame": { "x": 140, "y": 156, "w": 46, "h": 47 }, + "rotated": false, + "trimmed": true, + "spriteSourceSize": { "x": 27, "y": 27, "w": 46, "h": 47 }, + "sourceSize": { "w": 96, "h": 96 }, + "duration": 50 + }, + { + "filename": "0057.png", + "frame": { "x": 93, "y": 156, "w": 47, "h": 47 }, + "rotated": false, + "trimmed": true, + "spriteSourceSize": { "x": 26, "y": 27, "w": 47, "h": 47 }, + "sourceSize": { "w": 96, "h": 96 }, + "duration": 50 + }, + { + "filename": "0058.png", + "frame": { "x": 93, "y": 156, "w": 47, "h": 47 }, + "rotated": false, + "trimmed": true, + "spriteSourceSize": { "x": 26, "y": 27, "w": 47, "h": 47 }, + "sourceSize": { "w": 96, "h": 96 }, + "duration": 50 + }, + { + "filename": "0059.png", + "frame": { "x": 186, "y": 156, "w": 46, "h": 47 }, + "rotated": false, + "trimmed": true, + "spriteSourceSize": { "x": 27, "y": 27, "w": 46, "h": 47 }, + "sourceSize": { "w": 96, "h": 96 }, + "duration": 50 + }, + { + "filename": "0060.png", + "frame": { "x": 186, "y": 156, "w": 46, "h": 47 }, + "rotated": false, + "trimmed": true, + "spriteSourceSize": { "x": 27, "y": 27, "w": 46, "h": 47 }, + "sourceSize": { "w": 96, "h": 96 }, + "duration": 50 + }, + { + "filename": "0061.png", + "frame": { "x": 1, "y": 105, "w": 47, "h": 49 }, + "rotated": false, + "trimmed": true, + "spriteSourceSize": { "x": 27, "y": 25, "w": 47, "h": 49 }, + "sourceSize": { "w": 96, "h": 96 }, + "duration": 50 + }, + { + "filename": "0062.png", + "frame": { "x": 1, "y": 105, "w": 47, "h": 49 }, + "rotated": false, + "trimmed": true, + "spriteSourceSize": { "x": 27, "y": 25, "w": 47, "h": 49 }, + "sourceSize": { "w": 96, "h": 96 }, + "duration": 50 + }, + { + "filename": "0063.png", + "frame": { "x": 1, "y": 154, "w": 46, "h": 50 }, + "rotated": false, + "trimmed": true, + "spriteSourceSize": { "x": 28, "y": 24, "w": 46, "h": 50 }, + "sourceSize": { "w": 96, "h": 96 }, + "duration": 50 + }, + { + "filename": "0064.png", + "frame": { "x": 1, "y": 154, "w": 46, "h": 50 }, + "rotated": false, + "trimmed": true, + "spriteSourceSize": { "x": 28, "y": 24, "w": 46, "h": 50 }, + "sourceSize": { "w": 96, "h": 96 }, + "duration": 50 + }, + { + "filename": "0065.png", + "frame": { "x": 48, "y": 105, "w": 46, "h": 50 }, + "rotated": false, + "trimmed": true, + "spriteSourceSize": { "x": 28, "y": 24, "w": 46, "h": 50 }, + "sourceSize": { "w": 96, "h": 96 }, + "duration": 50 + }, + { + "filename": "0066.png", + "frame": { "x": 48, "y": 105, "w": 46, "h": 50 }, + "rotated": false, + "trimmed": true, + "spriteSourceSize": { "x": 28, "y": 24, "w": 46, "h": 50 }, + "sourceSize": { "w": 96, "h": 96 }, + "duration": 50 + }, + { + "filename": "0067.png", + "frame": { "x": 94, "y": 105, "w": 45, "h": 50 }, + "rotated": false, + "trimmed": true, + "spriteSourceSize": { "x": 28, "y": 24, "w": 45, "h": 50 }, + "sourceSize": { "w": 96, "h": 96 }, + "duration": 50 + }, + { + "filename": "0068.png", + "frame": { "x": 94, "y": 105, "w": 45, "h": 50 }, + "rotated": false, + "trimmed": true, + "spriteSourceSize": { "x": 28, "y": 24, "w": 45, "h": 50 }, + "sourceSize": { "w": 96, "h": 96 }, + "duration": 50 + }, + { + "filename": "0069.png", + "frame": { "x": 47, "y": 155, "w": 46, "h": 49 }, + "rotated": false, + "trimmed": true, + "spriteSourceSize": { "x": 27, "y": 25, "w": 46, "h": 49 }, + "sourceSize": { "w": 96, "h": 96 }, + "duration": 50 + }, + { + "filename": "0070.png", + "frame": { "x": 47, "y": 155, "w": 46, "h": 49 }, + "rotated": false, + "trimmed": true, + "spriteSourceSize": { "x": 27, "y": 25, "w": 46, "h": 49 }, + "sourceSize": { "w": 96, "h": 96 }, + "duration": 50 + }, + { + "filename": "0071.png", + "frame": { "x": 140, "y": 156, "w": 46, "h": 47 }, + "rotated": false, + "trimmed": true, + "spriteSourceSize": { "x": 27, "y": 27, "w": 46, "h": 47 }, + "sourceSize": { "w": 96, "h": 96 }, + "duration": 50 + }, + { + "filename": "0072.png", + "frame": { "x": 140, "y": 156, "w": 46, "h": 47 }, + "rotated": false, + "trimmed": true, + "spriteSourceSize": { "x": 27, "y": 27, "w": 46, "h": 47 }, + "sourceSize": { "w": 96, "h": 96 }, + "duration": 50 + }, + { + "filename": "0073.png", + "frame": { "x": 93, "y": 156, "w": 47, "h": 47 }, + "rotated": false, + "trimmed": true, + "spriteSourceSize": { "x": 26, "y": 27, "w": 47, "h": 47 }, + "sourceSize": { "w": 96, "h": 96 }, + "duration": 50 + }, + { + "filename": "0074.png", + "frame": { "x": 93, "y": 156, "w": 47, "h": 47 }, + "rotated": false, + "trimmed": true, + "spriteSourceSize": { "x": 26, "y": 27, "w": 47, "h": 47 }, + "sourceSize": { "w": 96, "h": 96 }, + "duration": 50 + }, + { + "filename": "0075.png", + "frame": { "x": 186, "y": 156, "w": 46, "h": 47 }, + "rotated": false, + "trimmed": true, + "spriteSourceSize": { "x": 27, "y": 27, "w": 46, "h": 47 }, + "sourceSize": { "w": 96, "h": 96 }, + "duration": 50 + }, + { + "filename": "0076.png", + "frame": { "x": 186, "y": 156, "w": 46, "h": 47 }, + "rotated": false, + "trimmed": true, + "spriteSourceSize": { "x": 27, "y": 27, "w": 46, "h": 47 }, + "sourceSize": { "w": 96, "h": 96 }, + "duration": 50 + }, + { + "filename": "0077.png", + "frame": { "x": 1, "y": 105, "w": 47, "h": 49 }, + "rotated": false, + "trimmed": true, + "spriteSourceSize": { "x": 27, "y": 25, "w": 47, "h": 49 }, + "sourceSize": { "w": 96, "h": 96 }, + "duration": 50 + }, + { + "filename": "0078.png", + "frame": { "x": 1, "y": 105, "w": 47, "h": 49 }, + "rotated": false, + "trimmed": true, + "spriteSourceSize": { "x": 27, "y": 25, "w": 47, "h": 49 }, + "sourceSize": { "w": 96, "h": 96 }, + "duration": 50 + }, + { + "filename": "0079.png", + "frame": { "x": 1, "y": 154, "w": 46, "h": 50 }, + "rotated": false, + "trimmed": true, + "spriteSourceSize": { "x": 28, "y": 24, "w": 46, "h": 50 }, + "sourceSize": { "w": 96, "h": 96 }, + "duration": 50 + }, + { + "filename": "0080.png", + "frame": { "x": 1, "y": 154, "w": 46, "h": 50 }, + "rotated": false, + "trimmed": true, + "spriteSourceSize": { "x": 28, "y": 24, "w": 46, "h": 50 }, + "sourceSize": { "w": 96, "h": 96 }, + "duration": 50 + }, + { + "filename": "0081.png", + "frame": { "x": 48, "y": 105, "w": 46, "h": 50 }, + "rotated": false, + "trimmed": true, + "spriteSourceSize": { "x": 28, "y": 24, "w": 46, "h": 50 }, + "sourceSize": { "w": 96, "h": 96 }, + "duration": 50 + }, + { + "filename": "0082.png", + "frame": { "x": 48, "y": 105, "w": 46, "h": 50 }, + "rotated": false, + "trimmed": true, + "spriteSourceSize": { "x": 28, "y": 24, "w": 46, "h": 50 }, + "sourceSize": { "w": 96, "h": 96 }, + "duration": 50 + }, + { + "filename": "0083.png", + "frame": { "x": 142, "y": 1, "w": 47, "h": 51 }, + "rotated": false, + "trimmed": true, + "spriteSourceSize": { "x": 28, "y": 23, "w": 47, "h": 51 }, + "sourceSize": { "w": 96, "h": 96 }, + "duration": 50 + }, + { + "filename": "0084.png", + "frame": { "x": 189, "y": 1, "w": 47, "h": 51 }, + "rotated": false, + "trimmed": true, + "spriteSourceSize": { "x": 28, "y": 23, "w": 47, "h": 51 }, + "sourceSize": { "w": 96, "h": 96 }, + "duration": 50 + }, + { + "filename": "0085.png", + "frame": { "x": 1, "y": 1, "w": 47, "h": 52 }, + "rotated": false, + "trimmed": true, + "spriteSourceSize": { "x": 28, "y": 22, "w": 47, "h": 52 }, + "sourceSize": { "w": 96, "h": 96 }, + "duration": 50 + }, + { + "filename": "0086.png", + "frame": { "x": 48, "y": 1, "w": 47, "h": 52 }, + "rotated": false, + "trimmed": true, + "spriteSourceSize": { "x": 28, "y": 22, "w": 47, "h": 52 }, + "sourceSize": { "w": 96, "h": 96 }, + "duration": 50 + }, + { + "filename": "0087.png", + "frame": { "x": 185, "y": 104, "w": 45, "h": 52 }, + "rotated": false, + "trimmed": true, + "spriteSourceSize": { "x": 28, "y": 22, "w": 45, "h": 52 }, + "sourceSize": { "w": 96, "h": 96 }, + "duration": 50 + }, + { + "filename": "0088.png", + "frame": { "x": 185, "y": 104, "w": 45, "h": 52 }, + "rotated": false, + "trimmed": true, + "spriteSourceSize": { "x": 28, "y": 22, "w": 45, "h": 52 }, + "sourceSize": { "w": 96, "h": 96 }, + "duration": 50 + }, + { + "filename": "0089.png", + "frame": { "x": 142, "y": 52, "w": 46, "h": 52 }, + "rotated": false, + "trimmed": true, + "spriteSourceSize": { "x": 28, "y": 22, "w": 46, "h": 52 }, + "sourceSize": { "w": 96, "h": 96 }, + "duration": 50 + }, + { + "filename": "0090.png", + "frame": { "x": 188, "y": 52, "w": 46, "h": 52 }, + "rotated": false, + "trimmed": true, + "spriteSourceSize": { "x": 28, "y": 22, "w": 46, "h": 52 }, + "sourceSize": { "w": 96, "h": 96 }, + "duration": 50 + }, + { + "filename": "0091.png", + "frame": { "x": 1, "y": 53, "w": 46, "h": 52 }, + "rotated": false, + "trimmed": true, + "spriteSourceSize": { "x": 28, "y": 22, "w": 46, "h": 52 }, + "sourceSize": { "w": 96, "h": 96 }, + "duration": 50 + }, + { + "filename": "0092.png", + "frame": { "x": 47, "y": 53, "w": 46, "h": 52 }, + "rotated": false, + "trimmed": true, + "spriteSourceSize": { "x": 28, "y": 22, "w": 46, "h": 52 }, + "sourceSize": { "w": 96, "h": 96 }, + "duration": 50 + }, + { + "filename": "0093.png", + "frame": { "x": 95, "y": 1, "w": 47, "h": 52 }, + "rotated": false, + "trimmed": true, + "spriteSourceSize": { "x": 28, "y": 22, "w": 47, "h": 52 }, + "sourceSize": { "w": 96, "h": 96 }, + "duration": 50 + }, + { + "filename": "0094.png", + "frame": { "x": 95, "y": 1, "w": 47, "h": 52 }, + "rotated": false, + "trimmed": true, + "spriteSourceSize": { "x": 28, "y": 22, "w": 47, "h": 52 }, + "sourceSize": { "w": 96, "h": 96 }, + "duration": 50 + }, + { + "filename": "0095.png", + "frame": { "x": 185, "y": 104, "w": 45, "h": 52 }, + "rotated": false, + "trimmed": true, + "spriteSourceSize": { "x": 28, "y": 22, "w": 45, "h": 52 }, + "sourceSize": { "w": 96, "h": 96 }, + "duration": 50 + }, + { + "filename": "0096.png", + "frame": { "x": 185, "y": 104, "w": 45, "h": 52 }, + "rotated": false, + "trimmed": true, + "spriteSourceSize": { "x": 28, "y": 22, "w": 45, "h": 52 }, + "sourceSize": { "w": 96, "h": 96 }, + "duration": 50 + }, + { + "filename": "0097.png", + "frame": { "x": 93, "y": 53, "w": 46, "h": 52 }, + "rotated": false, + "trimmed": true, + "spriteSourceSize": { "x": 28, "y": 22, "w": 46, "h": 52 }, + "sourceSize": { "w": 96, "h": 96 }, + "duration": 50 + }, + { + "filename": "0098.png", + "frame": { "x": 93, "y": 53, "w": 46, "h": 52 }, + "rotated": false, + "trimmed": true, + "spriteSourceSize": { "x": 28, "y": 22, "w": 46, "h": 52 }, + "sourceSize": { "w": 96, "h": 96 }, + "duration": 50 + }, + { + "filename": "0099.png", + "frame": { "x": 47, "y": 53, "w": 46, "h": 52 }, + "rotated": false, + "trimmed": true, + "spriteSourceSize": { "x": 28, "y": 22, "w": 46, "h": 52 }, + "sourceSize": { "w": 96, "h": 96 }, + "duration": 50 + }, + { + "filename": "0100.png", + "frame": { "x": 47, "y": 53, "w": 46, "h": 52 }, + "rotated": false, + "trimmed": true, + "spriteSourceSize": { "x": 28, "y": 22, "w": 46, "h": 52 }, + "sourceSize": { "w": 96, "h": 96 }, + "duration": 50 + }, + { + "filename": "0101.png", + "frame": { "x": 95, "y": 1, "w": 47, "h": 52 }, + "rotated": false, + "trimmed": true, + "spriteSourceSize": { "x": 28, "y": 22, "w": 47, "h": 52 }, + "sourceSize": { "w": 96, "h": 96 }, + "duration": 50 + }, + { + "filename": "0102.png", + "frame": { "x": 95, "y": 1, "w": 47, "h": 52 }, + "rotated": false, + "trimmed": true, + "spriteSourceSize": { "x": 28, "y": 22, "w": 47, "h": 52 }, + "sourceSize": { "w": 96, "h": 96 }, + "duration": 50 + }, + { + "filename": "0103.png", + "frame": { "x": 95, "y": 1, "w": 47, "h": 52 }, + "rotated": false, + "trimmed": true, + "spriteSourceSize": { "x": 28, "y": 22, "w": 47, "h": 52 }, + "sourceSize": { "w": 96, "h": 96 }, + "duration": 50 + }, + { + "filename": "0104.png", + "frame": { "x": 185, "y": 104, "w": 45, "h": 52 }, + "rotated": false, + "trimmed": true, + "spriteSourceSize": { "x": 28, "y": 22, "w": 45, "h": 52 }, + "sourceSize": { "w": 96, "h": 96 }, + "duration": 50 + }, + { + "filename": "0105.png", + "frame": { "x": 185, "y": 104, "w": 45, "h": 52 }, + "rotated": false, + "trimmed": true, + "spriteSourceSize": { "x": 28, "y": 22, "w": 45, "h": 52 }, + "sourceSize": { "w": 96, "h": 96 }, + "duration": 50 + }, + { + "filename": "0106.png", + "frame": { "x": 93, "y": 53, "w": 46, "h": 52 }, + "rotated": false, + "trimmed": true, + "spriteSourceSize": { "x": 28, "y": 22, "w": 46, "h": 52 }, + "sourceSize": { "w": 96, "h": 96 }, + "duration": 50 + }, + { + "filename": "0107.png", + "frame": { "x": 93, "y": 53, "w": 46, "h": 52 }, + "rotated": false, + "trimmed": true, + "spriteSourceSize": { "x": 28, "y": 22, "w": 46, "h": 52 }, + "sourceSize": { "w": 96, "h": 96 }, + "duration": 50 + }, + { + "filename": "0108.png", + "frame": { "x": 1, "y": 53, "w": 46, "h": 52 }, + "rotated": false, + "trimmed": true, + "spriteSourceSize": { "x": 28, "y": 22, "w": 46, "h": 52 }, + "sourceSize": { "w": 96, "h": 96 }, + "duration": 50 + }, + { + "filename": "0109.png", + "frame": { "x": 139, "y": 104, "w": 46, "h": 52 }, + "rotated": false, + "trimmed": true, + "spriteSourceSize": { "x": 28, "y": 22, "w": 46, "h": 52 }, + "sourceSize": { "w": 96, "h": 96 }, + "duration": 50 + }, + { + "filename": "0110.png", + "frame": { "x": 189, "y": 1, "w": 47, "h": 51 }, + "rotated": false, + "trimmed": true, + "spriteSourceSize": { "x": 28, "y": 23, "w": 47, "h": 51 }, + "sourceSize": { "w": 96, "h": 96 }, + "duration": 50 + }, + { + "filename": "0111.png", + "frame": { "x": 142, "y": 1, "w": 47, "h": 51 }, + "rotated": false, + "trimmed": true, + "spriteSourceSize": { "x": 28, "y": 23, "w": 47, "h": 51 }, + "sourceSize": { "w": 96, "h": 96 }, + "duration": 50 + } + ], + "meta": { + "app": "https://www.aseprite.org/", + "version": "1.3.13-x64", + "image": "782.png", + "format": "I8", + "size": { "w": 237, "h": 205 }, + "scale": "1" + } } diff --git a/public/images/pokemon/shiny/782.png b/public/images/pokemon/shiny/782.png index 79ce0d6289a..be4689a7cc5 100644 Binary files a/public/images/pokemon/shiny/782.png and b/public/images/pokemon/shiny/782.png differ diff --git a/public/images/pokemon/shiny/783.json b/public/images/pokemon/shiny/783.json index cba4888951b..0d3815a6ecf 100644 --- a/public/images/pokemon/shiny/783.json +++ b/public/images/pokemon/shiny/783.json @@ -1,41 +1,965 @@ -{ - "textures": [ - { - "image": "783.png", - "format": "RGBA8888", - "size": { - "w": 69, - "h": 69 - }, - "scale": 1, - "frames": [ - { - "filename": "0001.png", - "rotated": false, - "trimmed": false, - "sourceSize": { - "w": 61, - "h": 69 - }, - "spriteSourceSize": { - "x": 0, - "y": 0, - "w": 61, - "h": 69 - }, - "frame": { - "x": 0, - "y": 0, - "w": 61, - "h": 69 - } - } - ] - } - ], - "meta": { - "app": "https://www.codeandweb.com/texturepacker", - "version": "3.0", - "smartupdate": "$TexturePacker:SmartUpdate:46608dec6728e687aeafbeda288354f0:c18ca883404bc368fe53932c65d95dd1:aab166e28c744865a0296041224dd01b$" - } +{ "frames": [ + { + "filename": "0001.png", + "frame": { "x": 64, "y": 208, "w": 61, "h": 69 }, + "rotated": false, + "trimmed": true, + "spriteSourceSize": { "x": 5, "y": 2, "w": 61, "h": 69 }, + "sourceSize": { "w": 76, "h": 71 }, + "duration": 100 + }, + { + "filename": "0002.png", + "frame": { "x": 326, "y": 142, "w": 62, "h": 69 }, + "rotated": false, + "trimmed": true, + "spriteSourceSize": { "x": 6, "y": 2, "w": 62, "h": 69 }, + "sourceSize": { "w": 76, "h": 71 }, + "duration": 100 + }, + { + "filename": "0003.png", + "frame": { "x": 1, "y": 71, "w": 64, "h": 70 }, + "rotated": false, + "trimmed": true, + "spriteSourceSize": { "x": 7, "y": 1, "w": 64, "h": 70 }, + "sourceSize": { "w": 76, "h": 71 }, + "duration": 100 + }, + { + "filename": "0004.png", + "frame": { "x": 412, "y": 71, "w": 64, "h": 70 }, + "rotated": false, + "trimmed": true, + "spriteSourceSize": { "x": 9, "y": 1, "w": 64, "h": 70 }, + "sourceSize": { "w": 76, "h": 71 }, + "duration": 100 + }, + { + "filename": "0005.png", + "frame": { "x": 276, "y": 68, "w": 64, "h": 71 }, + "rotated": false, + "trimmed": true, + "spriteSourceSize": { "x": 10, "y": 0, "w": 64, "h": 71 }, + "sourceSize": { "w": 76, "h": 71 }, + "duration": 100 + }, + { + "filename": "0006.png", + "frame": { "x": 340, "y": 72, "w": 63, "h": 70 }, + "rotated": false, + "trimmed": true, + "spriteSourceSize": { "x": 9, "y": 1, "w": 63, "h": 70 }, + "sourceSize": { "w": 76, "h": 71 }, + "duration": 100 + }, + { + "filename": "0007.png", + "frame": { "x": 476, "y": 137, "w": 63, "h": 70 }, + "rotated": false, + "trimmed": true, + "spriteSourceSize": { "x": 7, "y": 1, "w": 63, "h": 70 }, + "sourceSize": { "w": 76, "h": 71 }, + "duration": 100 + }, + { + "filename": "0008.png", + "frame": { "x": 403, "y": 141, "w": 62, "h": 69 }, + "rotated": false, + "trimmed": true, + "spriteSourceSize": { "x": 6, "y": 2, "w": 62, "h": 69 }, + "sourceSize": { "w": 76, "h": 71 }, + "duration": 100 + }, + { + "filename": "0009.png", + "frame": { "x": 308, "y": 211, "w": 60, "h": 69 }, + "rotated": false, + "trimmed": true, + "spriteSourceSize": { "x": 5, "y": 2, "w": 60, "h": 69 }, + "sourceSize": { "w": 76, "h": 71 }, + "duration": 100 + }, + { + "filename": "0010.png", + "frame": { "x": 299, "y": 280, "w": 59, "h": 68 }, + "rotated": false, + "trimmed": true, + "spriteSourceSize": { "x": 4, "y": 3, "w": 59, "h": 68 }, + "sourceSize": { "w": 76, "h": 71 }, + "duration": 100 + }, + { + "filename": "0011.png", + "frame": { "x": 471, "y": 412, "w": 56, "h": 67 }, + "rotated": false, + "trimmed": true, + "spriteSourceSize": { "x": 4, "y": 4, "w": 56, "h": 67 }, + "sourceSize": { "w": 76, "h": 71 }, + "duration": 100 + }, + { + "filename": "0012.png", + "frame": { "x": 415, "y": 412, "w": 56, "h": 67 }, + "rotated": false, + "trimmed": true, + "spriteSourceSize": { "x": 3, "y": 4, "w": 56, "h": 67 }, + "sourceSize": { "w": 76, "h": 71 }, + "duration": 100 + }, + { + "filename": "0013.png", + "frame": { "x": 228, "y": 413, "w": 56, "h": 66 }, + "rotated": false, + "trimmed": true, + "spriteSourceSize": { "x": 2, "y": 5, "w": 56, "h": 66 }, + "sourceSize": { "w": 76, "h": 71 }, + "duration": 100 + }, + { + "filename": "0014.png", + "frame": { "x": 1, "y": 412, "w": 56, "h": 67 }, + "rotated": false, + "trimmed": true, + "spriteSourceSize": { "x": 3, "y": 4, "w": 56, "h": 67 }, + "sourceSize": { "w": 76, "h": 71 }, + "duration": 100 + }, + { + "filename": "0015.png", + "frame": { "x": 358, "y": 347, "w": 57, "h": 67 }, + "rotated": false, + "trimmed": true, + "spriteSourceSize": { "x": 4, "y": 4, "w": 57, "h": 67 }, + "sourceSize": { "w": 76, "h": 71 }, + "duration": 100 + }, + { + "filename": "0016.png", + "frame": { "x": 508, "y": 275, "w": 60, "h": 68 }, + "rotated": false, + "trimmed": true, + "spriteSourceSize": { "x": 4, "y": 3, "w": 60, "h": 68 }, + "sourceSize": { "w": 76, "h": 71 }, + "duration": 100 + }, + { + "filename": "0017.png", + "frame": { "x": 64, "y": 208, "w": 61, "h": 69 }, + "rotated": false, + "trimmed": true, + "spriteSourceSize": { "x": 5, "y": 2, "w": 61, "h": 69 }, + "sourceSize": { "w": 76, "h": 71 }, + "duration": 100 + }, + { + "filename": "0018.png", + "frame": { "x": 326, "y": 142, "w": 62, "h": 69 }, + "rotated": false, + "trimmed": true, + "spriteSourceSize": { "x": 6, "y": 2, "w": 62, "h": 69 }, + "sourceSize": { "w": 76, "h": 71 }, + "duration": 100 + }, + { + "filename": "0019.png", + "frame": { "x": 1, "y": 71, "w": 64, "h": 70 }, + "rotated": false, + "trimmed": true, + "spriteSourceSize": { "x": 7, "y": 1, "w": 64, "h": 70 }, + "sourceSize": { "w": 76, "h": 71 }, + "duration": 100 + }, + { + "filename": "0020.png", + "frame": { "x": 412, "y": 71, "w": 64, "h": 70 }, + "rotated": false, + "trimmed": true, + "spriteSourceSize": { "x": 9, "y": 1, "w": 64, "h": 70 }, + "sourceSize": { "w": 76, "h": 71 }, + "duration": 100 + }, + { + "filename": "0021.png", + "frame": { "x": 276, "y": 68, "w": 64, "h": 71 }, + "rotated": false, + "trimmed": true, + "spriteSourceSize": { "x": 10, "y": 0, "w": 64, "h": 71 }, + "sourceSize": { "w": 76, "h": 71 }, + "duration": 100 + }, + { + "filename": "0022.png", + "frame": { "x": 340, "y": 72, "w": 63, "h": 70 }, + "rotated": false, + "trimmed": true, + "spriteSourceSize": { "x": 9, "y": 1, "w": 63, "h": 70 }, + "sourceSize": { "w": 76, "h": 71 }, + "duration": 100 + }, + { + "filename": "0023.png", + "frame": { "x": 476, "y": 137, "w": 63, "h": 70 }, + "rotated": false, + "trimmed": true, + "spriteSourceSize": { "x": 7, "y": 1, "w": 63, "h": 70 }, + "sourceSize": { "w": 76, "h": 71 }, + "duration": 100 + }, + { + "filename": "0024.png", + "frame": { "x": 403, "y": 141, "w": 62, "h": 69 }, + "rotated": false, + "trimmed": true, + "spriteSourceSize": { "x": 6, "y": 2, "w": 62, "h": 69 }, + "sourceSize": { "w": 76, "h": 71 }, + "duration": 100 + }, + { + "filename": "0025.png", + "frame": { "x": 308, "y": 211, "w": 60, "h": 69 }, + "rotated": false, + "trimmed": true, + "spriteSourceSize": { "x": 5, "y": 2, "w": 60, "h": 69 }, + "sourceSize": { "w": 76, "h": 71 }, + "duration": 100 + }, + { + "filename": "0026.png", + "frame": { "x": 299, "y": 280, "w": 59, "h": 68 }, + "rotated": false, + "trimmed": true, + "spriteSourceSize": { "x": 4, "y": 3, "w": 59, "h": 68 }, + "sourceSize": { "w": 76, "h": 71 }, + "duration": 100 + }, + { + "filename": "0027.png", + "frame": { "x": 471, "y": 412, "w": 56, "h": 67 }, + "rotated": false, + "trimmed": true, + "spriteSourceSize": { "x": 4, "y": 4, "w": 56, "h": 67 }, + "sourceSize": { "w": 76, "h": 71 }, + "duration": 100 + }, + { + "filename": "0028.png", + "frame": { "x": 415, "y": 412, "w": 56, "h": 67 }, + "rotated": false, + "trimmed": true, + "spriteSourceSize": { "x": 3, "y": 4, "w": 56, "h": 67 }, + "sourceSize": { "w": 76, "h": 71 }, + "duration": 100 + }, + { + "filename": "0029.png", + "frame": { "x": 228, "y": 413, "w": 56, "h": 66 }, + "rotated": false, + "trimmed": true, + "spriteSourceSize": { "x": 2, "y": 5, "w": 56, "h": 66 }, + "sourceSize": { "w": 76, "h": 71 }, + "duration": 100 + }, + { + "filename": "0030.png", + "frame": { "x": 1, "y": 412, "w": 56, "h": 67 }, + "rotated": false, + "trimmed": true, + "spriteSourceSize": { "x": 3, "y": 4, "w": 56, "h": 67 }, + "sourceSize": { "w": 76, "h": 71 }, + "duration": 100 + }, + { + "filename": "0031.png", + "frame": { "x": 358, "y": 347, "w": 57, "h": 67 }, + "rotated": false, + "trimmed": true, + "spriteSourceSize": { "x": 4, "y": 4, "w": 57, "h": 67 }, + "sourceSize": { "w": 76, "h": 71 }, + "duration": 100 + }, + { + "filename": "0032.png", + "frame": { "x": 508, "y": 275, "w": 60, "h": 68 }, + "rotated": false, + "trimmed": true, + "spriteSourceSize": { "x": 4, "y": 3, "w": 60, "h": 68 }, + "sourceSize": { "w": 76, "h": 71 }, + "duration": 100 + }, + { + "filename": "0033.png", + "frame": { "x": 64, "y": 208, "w": 61, "h": 69 }, + "rotated": false, + "trimmed": true, + "spriteSourceSize": { "x": 5, "y": 2, "w": 61, "h": 69 }, + "sourceSize": { "w": 76, "h": 71 }, + "duration": 100 + }, + { + "filename": "0034.png", + "frame": { "x": 326, "y": 142, "w": 62, "h": 69 }, + "rotated": false, + "trimmed": true, + "spriteSourceSize": { "x": 6, "y": 2, "w": 62, "h": 69 }, + "sourceSize": { "w": 76, "h": 71 }, + "duration": 100 + }, + { + "filename": "0035.png", + "frame": { "x": 1, "y": 71, "w": 64, "h": 70 }, + "rotated": false, + "trimmed": true, + "spriteSourceSize": { "x": 7, "y": 1, "w": 64, "h": 70 }, + "sourceSize": { "w": 76, "h": 71 }, + "duration": 100 + }, + { + "filename": "0036.png", + "frame": { "x": 412, "y": 71, "w": 64, "h": 70 }, + "rotated": false, + "trimmed": true, + "spriteSourceSize": { "x": 9, "y": 1, "w": 64, "h": 70 }, + "sourceSize": { "w": 76, "h": 71 }, + "duration": 100 + }, + { + "filename": "0037.png", + "frame": { "x": 276, "y": 68, "w": 64, "h": 71 }, + "rotated": false, + "trimmed": true, + "spriteSourceSize": { "x": 10, "y": 0, "w": 64, "h": 71 }, + "sourceSize": { "w": 76, "h": 71 }, + "duration": 100 + }, + { + "filename": "0038.png", + "frame": { "x": 340, "y": 72, "w": 63, "h": 70 }, + "rotated": false, + "trimmed": true, + "spriteSourceSize": { "x": 9, "y": 1, "w": 63, "h": 70 }, + "sourceSize": { "w": 76, "h": 71 }, + "duration": 100 + }, + { + "filename": "0039.png", + "frame": { "x": 476, "y": 137, "w": 63, "h": 70 }, + "rotated": false, + "trimmed": true, + "spriteSourceSize": { "x": 7, "y": 1, "w": 63, "h": 70 }, + "sourceSize": { "w": 76, "h": 71 }, + "duration": 100 + }, + { + "filename": "0040.png", + "frame": { "x": 403, "y": 141, "w": 62, "h": 69 }, + "rotated": false, + "trimmed": true, + "spriteSourceSize": { "x": 6, "y": 2, "w": 62, "h": 69 }, + "sourceSize": { "w": 76, "h": 71 }, + "duration": 100 + }, + { + "filename": "0041.png", + "frame": { "x": 308, "y": 211, "w": 60, "h": 69 }, + "rotated": false, + "trimmed": true, + "spriteSourceSize": { "x": 5, "y": 2, "w": 60, "h": 69 }, + "sourceSize": { "w": 76, "h": 71 }, + "duration": 100 + }, + { + "filename": "0042.png", + "frame": { "x": 299, "y": 280, "w": 59, "h": 68 }, + "rotated": false, + "trimmed": true, + "spriteSourceSize": { "x": 4, "y": 3, "w": 59, "h": 68 }, + "sourceSize": { "w": 76, "h": 71 }, + "duration": 100 + }, + { + "filename": "0043.png", + "frame": { "x": 471, "y": 412, "w": 56, "h": 67 }, + "rotated": false, + "trimmed": true, + "spriteSourceSize": { "x": 4, "y": 4, "w": 56, "h": 67 }, + "sourceSize": { "w": 76, "h": 71 }, + "duration": 100 + }, + { + "filename": "0044.png", + "frame": { "x": 415, "y": 412, "w": 56, "h": 67 }, + "rotated": false, + "trimmed": true, + "spriteSourceSize": { "x": 3, "y": 4, "w": 56, "h": 67 }, + "sourceSize": { "w": 76, "h": 71 }, + "duration": 100 + }, + { + "filename": "0045.png", + "frame": { "x": 228, "y": 413, "w": 56, "h": 66 }, + "rotated": false, + "trimmed": true, + "spriteSourceSize": { "x": 2, "y": 5, "w": 56, "h": 66 }, + "sourceSize": { "w": 76, "h": 71 }, + "duration": 100 + }, + { + "filename": "0046.png", + "frame": { "x": 1, "y": 412, "w": 56, "h": 67 }, + "rotated": false, + "trimmed": true, + "spriteSourceSize": { "x": 3, "y": 4, "w": 56, "h": 67 }, + "sourceSize": { "w": 76, "h": 71 }, + "duration": 100 + }, + { + "filename": "0047.png", + "frame": { "x": 358, "y": 347, "w": 57, "h": 67 }, + "rotated": false, + "trimmed": true, + "spriteSourceSize": { "x": 4, "y": 4, "w": 57, "h": 67 }, + "sourceSize": { "w": 76, "h": 71 }, + "duration": 100 + }, + { + "filename": "0048.png", + "frame": { "x": 508, "y": 275, "w": 60, "h": 68 }, + "rotated": false, + "trimmed": true, + "spriteSourceSize": { "x": 4, "y": 3, "w": 60, "h": 68 }, + "sourceSize": { "w": 76, "h": 71 }, + "duration": 100 + }, + { + "filename": "0049.png", + "frame": { "x": 64, "y": 208, "w": 61, "h": 69 }, + "rotated": false, + "trimmed": true, + "spriteSourceSize": { "x": 5, "y": 2, "w": 61, "h": 69 }, + "sourceSize": { "w": 76, "h": 71 }, + "duration": 100 + }, + { + "filename": "0050.png", + "frame": { "x": 326, "y": 142, "w": 62, "h": 69 }, + "rotated": false, + "trimmed": true, + "spriteSourceSize": { "x": 6, "y": 2, "w": 62, "h": 69 }, + "sourceSize": { "w": 76, "h": 71 }, + "duration": 100 + }, + { + "filename": "0051.png", + "frame": { "x": 1, "y": 71, "w": 64, "h": 70 }, + "rotated": false, + "trimmed": true, + "spriteSourceSize": { "x": 7, "y": 1, "w": 64, "h": 70 }, + "sourceSize": { "w": 76, "h": 71 }, + "duration": 100 + }, + { + "filename": "0052.png", + "frame": { "x": 412, "y": 71, "w": 64, "h": 70 }, + "rotated": false, + "trimmed": true, + "spriteSourceSize": { "x": 9, "y": 1, "w": 64, "h": 70 }, + "sourceSize": { "w": 76, "h": 71 }, + "duration": 100 + }, + { + "filename": "0053.png", + "frame": { "x": 276, "y": 68, "w": 64, "h": 71 }, + "rotated": false, + "trimmed": true, + "spriteSourceSize": { "x": 10, "y": 0, "w": 64, "h": 71 }, + "sourceSize": { "w": 76, "h": 71 }, + "duration": 100 + }, + { + "filename": "0054.png", + "frame": { "x": 340, "y": 72, "w": 63, "h": 70 }, + "rotated": false, + "trimmed": true, + "spriteSourceSize": { "x": 9, "y": 1, "w": 63, "h": 70 }, + "sourceSize": { "w": 76, "h": 71 }, + "duration": 100 + }, + { + "filename": "0055.png", + "frame": { "x": 476, "y": 137, "w": 63, "h": 70 }, + "rotated": false, + "trimmed": true, + "spriteSourceSize": { "x": 7, "y": 1, "w": 63, "h": 70 }, + "sourceSize": { "w": 76, "h": 71 }, + "duration": 100 + }, + { + "filename": "0056.png", + "frame": { "x": 403, "y": 141, "w": 62, "h": 69 }, + "rotated": false, + "trimmed": true, + "spriteSourceSize": { "x": 6, "y": 2, "w": 62, "h": 69 }, + "sourceSize": { "w": 76, "h": 71 }, + "duration": 100 + }, + { + "filename": "0057.png", + "frame": { "x": 308, "y": 211, "w": 60, "h": 69 }, + "rotated": false, + "trimmed": true, + "spriteSourceSize": { "x": 5, "y": 2, "w": 60, "h": 69 }, + "sourceSize": { "w": 76, "h": 71 }, + "duration": 100 + }, + { + "filename": "0058.png", + "frame": { "x": 299, "y": 280, "w": 59, "h": 68 }, + "rotated": false, + "trimmed": true, + "spriteSourceSize": { "x": 4, "y": 3, "w": 59, "h": 68 }, + "sourceSize": { "w": 76, "h": 71 }, + "duration": 100 + }, + { + "filename": "0059.png", + "frame": { "x": 471, "y": 412, "w": 56, "h": 67 }, + "rotated": false, + "trimmed": true, + "spriteSourceSize": { "x": 4, "y": 4, "w": 56, "h": 67 }, + "sourceSize": { "w": 76, "h": 71 }, + "duration": 100 + }, + { + "filename": "0060.png", + "frame": { "x": 415, "y": 412, "w": 56, "h": 67 }, + "rotated": false, + "trimmed": true, + "spriteSourceSize": { "x": 3, "y": 4, "w": 56, "h": 67 }, + "sourceSize": { "w": 76, "h": 71 }, + "duration": 100 + }, + { + "filename": "0061.png", + "frame": { "x": 228, "y": 413, "w": 56, "h": 66 }, + "rotated": false, + "trimmed": true, + "spriteSourceSize": { "x": 2, "y": 5, "w": 56, "h": 66 }, + "sourceSize": { "w": 76, "h": 71 }, + "duration": 100 + }, + { + "filename": "0062.png", + "frame": { "x": 1, "y": 412, "w": 56, "h": 67 }, + "rotated": false, + "trimmed": true, + "spriteSourceSize": { "x": 3, "y": 4, "w": 56, "h": 67 }, + "sourceSize": { "w": 76, "h": 71 }, + "duration": 100 + }, + { + "filename": "0063.png", + "frame": { "x": 358, "y": 347, "w": 57, "h": 67 }, + "rotated": false, + "trimmed": true, + "spriteSourceSize": { "x": 4, "y": 4, "w": 57, "h": 67 }, + "sourceSize": { "w": 76, "h": 71 }, + "duration": 100 + }, + { + "filename": "0064.png", + "frame": { "x": 508, "y": 275, "w": 60, "h": 68 }, + "rotated": false, + "trimmed": true, + "spriteSourceSize": { "x": 4, "y": 3, "w": 60, "h": 68 }, + "sourceSize": { "w": 76, "h": 71 }, + "duration": 100 + }, + { + "filename": "0065.png", + "frame": { "x": 247, "y": 208, "w": 61, "h": 69 }, + "rotated": false, + "trimmed": true, + "spriteSourceSize": { "x": 5, "y": 2, "w": 61, "h": 69 }, + "sourceSize": { "w": 76, "h": 71 }, + "duration": 100 + }, + { + "filename": "0066.png", + "frame": { "x": 448, "y": 275, "w": 60, "h": 68 }, + "rotated": false, + "trimmed": true, + "spriteSourceSize": { "x": 4, "y": 2, "w": 60, "h": 68 }, + "sourceSize": { "w": 76, "h": 71 }, + "duration": 100 + }, + { + "filename": "0067.png", + "frame": { "x": 368, "y": 279, "w": 59, "h": 68 }, + "rotated": false, + "trimmed": true, + "spriteSourceSize": { "x": 3, "y": 2, "w": 59, "h": 68 }, + "sourceSize": { "w": 76, "h": 71 }, + "duration": 100 + }, + { + "filename": "0068.png", + "frame": { "x": 173, "y": 346, "w": 57, "h": 67 }, + "rotated": false, + "trimmed": true, + "spriteSourceSize": { "x": 2, "y": 2, "w": 57, "h": 67 }, + "sourceSize": { "w": 76, "h": 71 }, + "duration": 100 + }, + { + "filename": "0069.png", + "frame": { "x": 239, "y": 277, "w": 60, "h": 67 }, + "rotated": false, + "trimmed": true, + "spriteSourceSize": { "x": 1, "y": 2, "w": 60, "h": 67 }, + "sourceSize": { "w": 76, "h": 71 }, + "duration": 100 + }, + { + "filename": "0070.png", + "frame": { "x": 1, "y": 209, "w": 63, "h": 66 }, + "rotated": false, + "trimmed": true, + "spriteSourceSize": { "x": 0, "y": 3, "w": 63, "h": 66 }, + "sourceSize": { "w": 76, "h": 71 }, + "duration": 100 + }, + { + "filename": "0071.png", + "frame": { "x": 478, "y": 1, "w": 68, "h": 67 }, + "rotated": false, + "trimmed": true, + "spriteSourceSize": { "x": 3, "y": 3, "w": 68, "h": 67 }, + "sourceSize": { "w": 76, "h": 71 }, + "duration": 100 + }, + { + "filename": "0072.png", + "frame": { "x": 276, "y": 1, "w": 70, "h": 67 }, + "rotated": false, + "trimmed": true, + "spriteSourceSize": { "x": 5, "y": 4, "w": 70, "h": 67 }, + "sourceSize": { "w": 76, "h": 71 }, + "duration": 100 + }, + { + "filename": "0073.png", + "frame": { "x": 70, "y": 1, "w": 71, "h": 68 }, + "rotated": false, + "trimmed": true, + "spriteSourceSize": { "x": 5, "y": 3, "w": 71, "h": 68 }, + "sourceSize": { "w": 76, "h": 71 }, + "duration": 100 + }, + { + "filename": "0074.png", + "frame": { "x": 208, "y": 1, "w": 68, "h": 69 }, + "rotated": false, + "trimmed": true, + "spriteSourceSize": { "x": 5, "y": 2, "w": 68, "h": 69 }, + "sourceSize": { "w": 76, "h": 71 }, + "duration": 100 + }, + { + "filename": "0075.png", + "frame": { "x": 208, "y": 70, "w": 65, "h": 69 }, + "rotated": false, + "trimmed": true, + "spriteSourceSize": { "x": 5, "y": 2, "w": 65, "h": 69 }, + "sourceSize": { "w": 76, "h": 71 }, + "duration": 100 + }, + { + "filename": "0076.png", + "frame": { "x": 64, "y": 208, "w": 61, "h": 69 }, + "rotated": false, + "trimmed": true, + "spriteSourceSize": { "x": 5, "y": 2, "w": 61, "h": 69 }, + "sourceSize": { "w": 76, "h": 71 }, + "duration": 100 + }, + { + "filename": "0077.png", + "frame": { "x": 65, "y": 138, "w": 63, "h": 70 }, + "rotated": false, + "trimmed": true, + "spriteSourceSize": { "x": 5, "y": 1, "w": 63, "h": 70 }, + "sourceSize": { "w": 76, "h": 71 }, + "duration": 100 + }, + { + "filename": "0078.png", + "frame": { "x": 412, "y": 1, "w": 66, "h": 70 }, + "rotated": false, + "trimmed": true, + "spriteSourceSize": { "x": 4, "y": 1, "w": 66, "h": 70 }, + "sourceSize": { "w": 76, "h": 71 }, + "duration": 100 + }, + { + "filename": "0079.png", + "frame": { "x": 1, "y": 1, "w": 69, "h": 70 }, + "rotated": false, + "trimmed": true, + "spriteSourceSize": { "x": 4, "y": 1, "w": 69, "h": 70 }, + "sourceSize": { "w": 76, "h": 71 }, + "duration": 100 + }, + { + "filename": "0080.png", + "frame": { "x": 141, "y": 1, "w": 67, "h": 71 }, + "rotated": false, + "trimmed": true, + "spriteSourceSize": { "x": 4, "y": 0, "w": 67, "h": 71 }, + "sourceSize": { "w": 76, "h": 71 }, + "duration": 100 + }, + { + "filename": "0081.png", + "frame": { "x": 346, "y": 1, "w": 66, "h": 71 }, + "rotated": false, + "trimmed": true, + "spriteSourceSize": { "x": 3, "y": 0, "w": 66, "h": 71 }, + "sourceSize": { "w": 76, "h": 71 }, + "duration": 100 + }, + { + "filename": "0082.png", + "frame": { "x": 239, "y": 344, "w": 57, "h": 69 }, + "rotated": false, + "trimmed": true, + "spriteSourceSize": { "x": 4, "y": 2, "w": 57, "h": 69 }, + "sourceSize": { "w": 76, "h": 71 }, + "duration": 100 + }, + { + "filename": "0083.png", + "frame": { "x": 57, "y": 414, "w": 54, "h": 67 }, + "rotated": false, + "trimmed": true, + "spriteSourceSize": { "x": 5, "y": 4, "w": 54, "h": 67 }, + "sourceSize": { "w": 76, "h": 71 }, + "duration": 100 + }, + { + "filename": "0084.png", + "frame": { "x": 173, "y": 413, "w": 55, "h": 68 }, + "rotated": false, + "trimmed": true, + "spriteSourceSize": { "x": 5, "y": 3, "w": 55, "h": 68 }, + "sourceSize": { "w": 76, "h": 71 }, + "duration": 100 + }, + { + "filename": "0085.png", + "frame": { "x": 296, "y": 348, "w": 55, "h": 69 }, + "rotated": false, + "trimmed": true, + "spriteSourceSize": { "x": 5, "y": 2, "w": 55, "h": 69 }, + "sourceSize": { "w": 76, "h": 71 }, + "duration": 100 + }, + { + "filename": "0086.png", + "frame": { "x": 59, "y": 345, "w": 57, "h": 69 }, + "rotated": false, + "trimmed": true, + "spriteSourceSize": { "x": 5, "y": 2, "w": 57, "h": 69 }, + "sourceSize": { "w": 76, "h": 71 }, + "duration": 100 + }, + { + "filename": "0087.png", + "frame": { "x": 64, "y": 208, "w": 61, "h": 69 }, + "rotated": false, + "trimmed": true, + "spriteSourceSize": { "x": 5, "y": 2, "w": 61, "h": 69 }, + "sourceSize": { "w": 76, "h": 71 }, + "duration": 100 + }, + { + "filename": "0088.png", + "frame": { "x": 263, "y": 139, "w": 63, "h": 69 }, + "rotated": false, + "trimmed": true, + "spriteSourceSize": { "x": 3, "y": 2, "w": 63, "h": 69 }, + "sourceSize": { "w": 76, "h": 71 }, + "duration": 100 + }, + { + "filename": "0089.png", + "frame": { "x": 70, "y": 69, "w": 65, "h": 69 }, + "rotated": false, + "trimmed": true, + "spriteSourceSize": { "x": 2, "y": 2, "w": 65, "h": 69 }, + "sourceSize": { "w": 76, "h": 71 }, + "duration": 100 + }, + { + "filename": "0090.png", + "frame": { "x": 121, "y": 277, "w": 59, "h": 69 }, + "rotated": false, + "trimmed": true, + "spriteSourceSize": { "x": 1, "y": 2, "w": 59, "h": 69 }, + "sourceSize": { "w": 76, "h": 71 }, + "duration": 100 + }, + { + "filename": "0091.png", + "frame": { "x": 186, "y": 208, "w": 61, "h": 69 }, + "rotated": false, + "trimmed": true, + "spriteSourceSize": { "x": 1, "y": 2, "w": 61, "h": 69 }, + "sourceSize": { "w": 76, "h": 71 }, + "duration": 100 + }, + { + "filename": "0092.png", + "frame": { "x": 200, "y": 139, "w": 63, "h": 69 }, + "rotated": false, + "trimmed": true, + "spriteSourceSize": { "x": 1, "y": 2, "w": 63, "h": 69 }, + "sourceSize": { "w": 76, "h": 71 }, + "duration": 100 + }, + { + "filename": "0093.png", + "frame": { "x": 478, "y": 68, "w": 65, "h": 69 }, + "rotated": false, + "trimmed": true, + "spriteSourceSize": { "x": 1, "y": 2, "w": 65, "h": 69 }, + "sourceSize": { "w": 76, "h": 71 }, + "duration": 100 + }, + { + "filename": "0094.png", + "frame": { "x": 427, "y": 343, "w": 58, "h": 69 }, + "rotated": false, + "trimmed": true, + "spriteSourceSize": { "x": 1, "y": 2, "w": 58, "h": 69 }, + "sourceSize": { "w": 76, "h": 71 }, + "duration": 100 + }, + { + "filename": "0095.png", + "frame": { "x": 125, "y": 208, "w": 61, "h": 69 }, + "rotated": false, + "trimmed": true, + "spriteSourceSize": { "x": 1, "y": 2, "w": 61, "h": 69 }, + "sourceSize": { "w": 76, "h": 71 }, + "duration": 100 + }, + { + "filename": "0096.png", + "frame": { "x": 128, "y": 140, "w": 63, "h": 68 }, + "rotated": false, + "trimmed": true, + "spriteSourceSize": { "x": 1, "y": 3, "w": 63, "h": 68 }, + "sourceSize": { "w": 76, "h": 71 }, + "duration": 100 + }, + { + "filename": "0097.png", + "frame": { "x": 135, "y": 72, "w": 65, "h": 68 }, + "rotated": false, + "trimmed": true, + "spriteSourceSize": { "x": 1, "y": 3, "w": 65, "h": 68 }, + "sourceSize": { "w": 76, "h": 71 }, + "duration": 100 + }, + { + "filename": "0098.png", + "frame": { "x": 1, "y": 344, "w": 58, "h": 68 }, + "rotated": false, + "trimmed": true, + "spriteSourceSize": { "x": 1, "y": 3, "w": 58, "h": 68 }, + "sourceSize": { "w": 76, "h": 71 }, + "duration": 100 + }, + { + "filename": "0099.png", + "frame": { "x": 61, "y": 277, "w": 60, "h": 68 }, + "rotated": false, + "trimmed": true, + "spriteSourceSize": { "x": 1, "y": 3, "w": 60, "h": 68 }, + "sourceSize": { "w": 76, "h": 71 }, + "duration": 100 + }, + { + "filename": "0100.png", + "frame": { "x": 465, "y": 207, "w": 62, "h": 68 }, + "rotated": false, + "trimmed": true, + "spriteSourceSize": { "x": 2, "y": 3, "w": 62, "h": 68 }, + "sourceSize": { "w": 76, "h": 71 }, + "duration": 100 + }, + { + "filename": "0101.png", + "frame": { "x": 1, "y": 141, "w": 63, "h": 68 }, + "rotated": false, + "trimmed": true, + "spriteSourceSize": { "x": 2, "y": 3, "w": 63, "h": 68 }, + "sourceSize": { "w": 76, "h": 71 }, + "duration": 100 + }, + { + "filename": "0102.png", + "frame": { "x": 116, "y": 346, "w": 57, "h": 68 }, + "rotated": false, + "trimmed": true, + "spriteSourceSize": { "x": 3, "y": 3, "w": 57, "h": 68 }, + "sourceSize": { "w": 76, "h": 71 }, + "duration": 100 + }, + { + "filename": "0103.png", + "frame": { "x": 485, "y": 343, "w": 58, "h": 69 }, + "rotated": false, + "trimmed": true, + "spriteSourceSize": { "x": 3, "y": 2, "w": 58, "h": 69 }, + "sourceSize": { "w": 76, "h": 71 }, + "duration": 100 + }, + { + "filename": "0104.png", + "frame": { "x": 180, "y": 277, "w": 59, "h": 69 }, + "rotated": false, + "trimmed": true, + "spriteSourceSize": { "x": 4, "y": 2, "w": 59, "h": 69 }, + "sourceSize": { "w": 76, "h": 71 }, + "duration": 100 + }, + { + "filename": "0105.png", + "frame": { "x": 1, "y": 275, "w": 60, "h": 69 }, + "rotated": false, + "trimmed": true, + "spriteSourceSize": { "x": 4, "y": 2, "w": 60, "h": 69 }, + "sourceSize": { "w": 76, "h": 71 }, + "duration": 100 + }, + { + "filename": "0106.png", + "frame": { "x": 388, "y": 210, "w": 60, "h": 69 }, + "rotated": false, + "trimmed": true, + "spriteSourceSize": { "x": 5, "y": 2, "w": 60, "h": 69 }, + "sourceSize": { "w": 76, "h": 71 }, + "duration": 100 + } + ], + "meta": { + "app": "https://www.aseprite.org/", + "version": "1.3.13-x64", + "image": "783.png", + "format": "I8", + "size": { "w": 569, "h": 482 }, + "scale": "1" + } } diff --git a/public/images/pokemon/shiny/783.png b/public/images/pokemon/shiny/783.png index 6d49131f69d..b14d064e998 100644 Binary files a/public/images/pokemon/shiny/783.png and b/public/images/pokemon/shiny/783.png differ diff --git a/public/images/pokemon/shiny/784.json b/public/images/pokemon/shiny/784.json index fdf96d2b111..b69481e9732 100644 --- a/public/images/pokemon/shiny/784.json +++ b/public/images/pokemon/shiny/784.json @@ -1,41 +1,812 @@ -{ - "textures": [ - { - "image": "784.png", - "format": "RGBA8888", - "size": { - "w": 81, - "h": 81 - }, - "scale": 1, - "frames": [ - { - "filename": "0001.png", - "rotated": false, - "trimmed": false, - "sourceSize": { - "w": 79, - "h": 81 - }, - "spriteSourceSize": { - "x": 0, - "y": 0, - "w": 79, - "h": 81 - }, - "frame": { - "x": 0, - "y": 0, - "w": 79, - "h": 81 - } - } - ] - } - ], - "meta": { - "app": "https://www.codeandweb.com/texturepacker", - "version": "3.0", - "smartupdate": "$TexturePacker:SmartUpdate:6096bcc779e33e1df807da48a8d58c7f:483f9130a6e530e32c532c6bacf9c317:c2f7ca3ab1075b8c824730653d891244$" - } +{ "frames": [ + { + "filename": "0001.png", + "frame": { "x": 254, "y": 238, "w": 80, "h": 81 }, + "rotated": false, + "trimmed": true, + "spriteSourceSize": { "x": 11, "y": 4, "w": 80, "h": 81 }, + "sourceSize": { "w": 108, "h": 88 }, + "duration": 100 + }, + { + "filename": "0002.png", + "frame": { "x": 373, "y": 162, "w": 84, "h": 81 }, + "rotated": false, + "trimmed": true, + "spriteSourceSize": { "x": 9, "y": 4, "w": 84, "h": 81 }, + "sourceSize": { "w": 108, "h": 88 }, + "duration": 100 + }, + { + "filename": "0003.png", + "frame": { "x": 285, "y": 157, "w": 88, "h": 81 }, + "rotated": false, + "trimmed": true, + "spriteSourceSize": { "x": 8, "y": 4, "w": 88, "h": 81 }, + "sourceSize": { "w": 108, "h": 88 }, + "duration": 100 + }, + { + "filename": "0004.png", + "frame": { "x": 104, "y": 78, "w": 94, "h": 80 }, + "rotated": false, + "trimmed": true, + "spriteSourceSize": { "x": 6, "y": 5, "w": 94, "h": 80 }, + "sourceSize": { "w": 108, "h": 88 }, + "duration": 100 + }, + { + "filename": "0005.png", + "frame": { "x": 414, "y": 1, "w": 99, "h": 79 }, + "rotated": false, + "trimmed": true, + "spriteSourceSize": { "x": 5, "y": 6, "w": 99, "h": 79 }, + "sourceSize": { "w": 108, "h": 88 }, + "duration": 100 + }, + { + "filename": "0006.png", + "frame": { "x": 1, "y": 1, "w": 103, "h": 78 }, + "rotated": false, + "trimmed": true, + "spriteSourceSize": { "x": 3, "y": 7, "w": 103, "h": 78 }, + "sourceSize": { "w": 108, "h": 88 }, + "duration": 100 + }, + { + "filename": "0007.png", + "frame": { "x": 104, "y": 1, "w": 104, "h": 77 }, + "rotated": false, + "trimmed": true, + "spriteSourceSize": { "x": 1, "y": 8, "w": 104, "h": 77 }, + "sourceSize": { "w": 108, "h": 88 }, + "duration": 100 + }, + { + "filename": "0008.png", + "frame": { "x": 208, "y": 1, "w": 102, "h": 78 }, + "rotated": false, + "trimmed": true, + "spriteSourceSize": { "x": 0, "y": 7, "w": 102, "h": 78 }, + "sourceSize": { "w": 108, "h": 88 }, + "duration": 100 + }, + { + "filename": "0009.png", + "frame": { "x": 310, "y": 77, "w": 96, "h": 80 }, + "rotated": false, + "trimmed": true, + "spriteSourceSize": { "x": 1, "y": 5, "w": 96, "h": 80 }, + "sourceSize": { "w": 108, "h": 88 }, + "duration": 100 + }, + { + "filename": "0010.png", + "frame": { "x": 406, "y": 80, "w": 89, "h": 82 }, + "rotated": false, + "trimmed": true, + "spriteSourceSize": { "x": 2, "y": 3, "w": 89, "h": 82 }, + "sourceSize": { "w": 108, "h": 88 }, + "duration": 100 + }, + { + "filename": "0011.png", + "frame": { "x": 495, "y": 161, "w": 82, "h": 83 }, + "rotated": false, + "trimmed": true, + "spriteSourceSize": { "x": 3, "y": 2, "w": 82, "h": 83 }, + "sourceSize": { "w": 108, "h": 88 }, + "duration": 100 + }, + { + "filename": "0012.png", + "frame": { "x": 649, "y": 324, "w": 77, "h": 81 }, + "rotated": false, + "trimmed": true, + "spriteSourceSize": { "x": 5, "y": 4, "w": 77, "h": 81 }, + "sourceSize": { "w": 108, "h": 88 }, + "duration": 100 + }, + { + "filename": "0013.png", + "frame": { "x": 155, "y": 327, "w": 76, "h": 79 }, + "rotated": false, + "trimmed": true, + "spriteSourceSize": { "x": 6, "y": 6, "w": 76, "h": 79 }, + "sourceSize": { "w": 108, "h": 88 }, + "duration": 100 + }, + { + "filename": "0014.png", + "frame": { "x": 394, "y": 325, "w": 77, "h": 80 }, + "rotated": false, + "trimmed": true, + "spriteSourceSize": { "x": 7, "y": 5, "w": 77, "h": 80 }, + "sourceSize": { "w": 108, "h": 88 }, + "duration": 100 + }, + { + "filename": "0015.png", + "frame": { "x": 571, "y": 324, "w": 78, "h": 80 }, + "rotated": false, + "trimmed": true, + "spriteSourceSize": { "x": 8, "y": 5, "w": 78, "h": 80 }, + "sourceSize": { "w": 108, "h": 88 }, + "duration": 100 + }, + { + "filename": "0016.png", + "frame": { "x": 161, "y": 246, "w": 78, "h": 81 }, + "rotated": false, + "trimmed": true, + "spriteSourceSize": { "x": 10, "y": 4, "w": 78, "h": 81 }, + "sourceSize": { "w": 108, "h": 88 }, + "duration": 100 + }, + { + "filename": "0017.png", + "frame": { "x": 254, "y": 238, "w": 80, "h": 81 }, + "rotated": false, + "trimmed": true, + "spriteSourceSize": { "x": 11, "y": 4, "w": 80, "h": 81 }, + "sourceSize": { "w": 108, "h": 88 }, + "duration": 100 + }, + { + "filename": "0018.png", + "frame": { "x": 373, "y": 162, "w": 84, "h": 81 }, + "rotated": false, + "trimmed": true, + "spriteSourceSize": { "x": 9, "y": 4, "w": 84, "h": 81 }, + "sourceSize": { "w": 108, "h": 88 }, + "duration": 100 + }, + { + "filename": "0019.png", + "frame": { "x": 285, "y": 157, "w": 88, "h": 81 }, + "rotated": false, + "trimmed": true, + "spriteSourceSize": { "x": 8, "y": 4, "w": 88, "h": 81 }, + "sourceSize": { "w": 108, "h": 88 }, + "duration": 100 + }, + { + "filename": "0020.png", + "frame": { "x": 104, "y": 78, "w": 94, "h": 80 }, + "rotated": false, + "trimmed": true, + "spriteSourceSize": { "x": 6, "y": 5, "w": 94, "h": 80 }, + "sourceSize": { "w": 108, "h": 88 }, + "duration": 100 + }, + { + "filename": "0021.png", + "frame": { "x": 414, "y": 1, "w": 99, "h": 79 }, + "rotated": false, + "trimmed": true, + "spriteSourceSize": { "x": 5, "y": 6, "w": 99, "h": 79 }, + "sourceSize": { "w": 108, "h": 88 }, + "duration": 100 + }, + { + "filename": "0022.png", + "frame": { "x": 1, "y": 1, "w": 103, "h": 78 }, + "rotated": false, + "trimmed": true, + "spriteSourceSize": { "x": 3, "y": 7, "w": 103, "h": 78 }, + "sourceSize": { "w": 108, "h": 88 }, + "duration": 100 + }, + { + "filename": "0023.png", + "frame": { "x": 104, "y": 1, "w": 104, "h": 77 }, + "rotated": false, + "trimmed": true, + "spriteSourceSize": { "x": 1, "y": 8, "w": 104, "h": 77 }, + "sourceSize": { "w": 108, "h": 88 }, + "duration": 100 + }, + { + "filename": "0024.png", + "frame": { "x": 208, "y": 1, "w": 102, "h": 78 }, + "rotated": false, + "trimmed": true, + "spriteSourceSize": { "x": 0, "y": 7, "w": 102, "h": 78 }, + "sourceSize": { "w": 108, "h": 88 }, + "duration": 100 + }, + { + "filename": "0025.png", + "frame": { "x": 310, "y": 77, "w": 96, "h": 80 }, + "rotated": false, + "trimmed": true, + "spriteSourceSize": { "x": 1, "y": 5, "w": 96, "h": 80 }, + "sourceSize": { "w": 108, "h": 88 }, + "duration": 100 + }, + { + "filename": "0026.png", + "frame": { "x": 406, "y": 80, "w": 89, "h": 82 }, + "rotated": false, + "trimmed": true, + "spriteSourceSize": { "x": 2, "y": 3, "w": 89, "h": 82 }, + "sourceSize": { "w": 108, "h": 88 }, + "duration": 100 + }, + { + "filename": "0027.png", + "frame": { "x": 495, "y": 161, "w": 82, "h": 83 }, + "rotated": false, + "trimmed": true, + "spriteSourceSize": { "x": 3, "y": 2, "w": 82, "h": 83 }, + "sourceSize": { "w": 108, "h": 88 }, + "duration": 100 + }, + { + "filename": "0028.png", + "frame": { "x": 649, "y": 324, "w": 77, "h": 81 }, + "rotated": false, + "trimmed": true, + "spriteSourceSize": { "x": 5, "y": 4, "w": 77, "h": 81 }, + "sourceSize": { "w": 108, "h": 88 }, + "duration": 100 + }, + { + "filename": "0029.png", + "frame": { "x": 155, "y": 327, "w": 76, "h": 79 }, + "rotated": false, + "trimmed": true, + "spriteSourceSize": { "x": 6, "y": 6, "w": 76, "h": 79 }, + "sourceSize": { "w": 108, "h": 88 }, + "duration": 100 + }, + { + "filename": "0030.png", + "frame": { "x": 394, "y": 325, "w": 77, "h": 80 }, + "rotated": false, + "trimmed": true, + "spriteSourceSize": { "x": 7, "y": 5, "w": 77, "h": 80 }, + "sourceSize": { "w": 108, "h": 88 }, + "duration": 100 + }, + { + "filename": "0031.png", + "frame": { "x": 571, "y": 324, "w": 78, "h": 80 }, + "rotated": false, + "trimmed": true, + "spriteSourceSize": { "x": 8, "y": 5, "w": 78, "h": 80 }, + "sourceSize": { "w": 108, "h": 88 }, + "duration": 100 + }, + { + "filename": "0032.png", + "frame": { "x": 161, "y": 246, "w": 78, "h": 81 }, + "rotated": false, + "trimmed": true, + "spriteSourceSize": { "x": 10, "y": 4, "w": 78, "h": 81 }, + "sourceSize": { "w": 108, "h": 88 }, + "duration": 100 + }, + { + "filename": "0033.png", + "frame": { "x": 254, "y": 238, "w": 80, "h": 81 }, + "rotated": false, + "trimmed": true, + "spriteSourceSize": { "x": 11, "y": 4, "w": 80, "h": 81 }, + "sourceSize": { "w": 108, "h": 88 }, + "duration": 100 + }, + { + "filename": "0034.png", + "frame": { "x": 373, "y": 162, "w": 84, "h": 81 }, + "rotated": false, + "trimmed": true, + "spriteSourceSize": { "x": 9, "y": 4, "w": 84, "h": 81 }, + "sourceSize": { "w": 108, "h": 88 }, + "duration": 100 + }, + { + "filename": "0035.png", + "frame": { "x": 285, "y": 157, "w": 88, "h": 81 }, + "rotated": false, + "trimmed": true, + "spriteSourceSize": { "x": 8, "y": 4, "w": 88, "h": 81 }, + "sourceSize": { "w": 108, "h": 88 }, + "duration": 100 + }, + { + "filename": "0036.png", + "frame": { "x": 104, "y": 78, "w": 94, "h": 80 }, + "rotated": false, + "trimmed": true, + "spriteSourceSize": { "x": 6, "y": 5, "w": 94, "h": 80 }, + "sourceSize": { "w": 108, "h": 88 }, + "duration": 100 + }, + { + "filename": "0037.png", + "frame": { "x": 414, "y": 1, "w": 99, "h": 79 }, + "rotated": false, + "trimmed": true, + "spriteSourceSize": { "x": 5, "y": 6, "w": 99, "h": 79 }, + "sourceSize": { "w": 108, "h": 88 }, + "duration": 100 + }, + { + "filename": "0038.png", + "frame": { "x": 1, "y": 1, "w": 103, "h": 78 }, + "rotated": false, + "trimmed": true, + "spriteSourceSize": { "x": 3, "y": 7, "w": 103, "h": 78 }, + "sourceSize": { "w": 108, "h": 88 }, + "duration": 100 + }, + { + "filename": "0039.png", + "frame": { "x": 104, "y": 1, "w": 104, "h": 77 }, + "rotated": false, + "trimmed": true, + "spriteSourceSize": { "x": 1, "y": 8, "w": 104, "h": 77 }, + "sourceSize": { "w": 108, "h": 88 }, + "duration": 100 + }, + { + "filename": "0040.png", + "frame": { "x": 208, "y": 1, "w": 102, "h": 78 }, + "rotated": false, + "trimmed": true, + "spriteSourceSize": { "x": 0, "y": 7, "w": 102, "h": 78 }, + "sourceSize": { "w": 108, "h": 88 }, + "duration": 100 + }, + { + "filename": "0041.png", + "frame": { "x": 310, "y": 77, "w": 96, "h": 80 }, + "rotated": false, + "trimmed": true, + "spriteSourceSize": { "x": 1, "y": 5, "w": 96, "h": 80 }, + "sourceSize": { "w": 108, "h": 88 }, + "duration": 100 + }, + { + "filename": "0042.png", + "frame": { "x": 406, "y": 80, "w": 89, "h": 82 }, + "rotated": false, + "trimmed": true, + "spriteSourceSize": { "x": 2, "y": 3, "w": 89, "h": 82 }, + "sourceSize": { "w": 108, "h": 88 }, + "duration": 100 + }, + { + "filename": "0043.png", + "frame": { "x": 495, "y": 161, "w": 82, "h": 83 }, + "rotated": false, + "trimmed": true, + "spriteSourceSize": { "x": 3, "y": 2, "w": 82, "h": 83 }, + "sourceSize": { "w": 108, "h": 88 }, + "duration": 100 + }, + { + "filename": "0044.png", + "frame": { "x": 649, "y": 324, "w": 77, "h": 81 }, + "rotated": false, + "trimmed": true, + "spriteSourceSize": { "x": 5, "y": 4, "w": 77, "h": 81 }, + "sourceSize": { "w": 108, "h": 88 }, + "duration": 100 + }, + { + "filename": "0045.png", + "frame": { "x": 155, "y": 327, "w": 76, "h": 79 }, + "rotated": false, + "trimmed": true, + "spriteSourceSize": { "x": 6, "y": 6, "w": 76, "h": 79 }, + "sourceSize": { "w": 108, "h": 88 }, + "duration": 100 + }, + { + "filename": "0046.png", + "frame": { "x": 394, "y": 325, "w": 77, "h": 80 }, + "rotated": false, + "trimmed": true, + "spriteSourceSize": { "x": 7, "y": 5, "w": 77, "h": 80 }, + "sourceSize": { "w": 108, "h": 88 }, + "duration": 100 + }, + { + "filename": "0047.png", + "frame": { "x": 571, "y": 324, "w": 78, "h": 80 }, + "rotated": false, + "trimmed": true, + "spriteSourceSize": { "x": 8, "y": 5, "w": 78, "h": 80 }, + "sourceSize": { "w": 108, "h": 88 }, + "duration": 100 + }, + { + "filename": "0048.png", + "frame": { "x": 161, "y": 246, "w": 78, "h": 81 }, + "rotated": false, + "trimmed": true, + "spriteSourceSize": { "x": 10, "y": 4, "w": 78, "h": 81 }, + "sourceSize": { "w": 108, "h": 88 }, + "duration": 100 + }, + { + "filename": "0049.png", + "frame": { "x": 254, "y": 238, "w": 80, "h": 81 }, + "rotated": false, + "trimmed": true, + "spriteSourceSize": { "x": 11, "y": 4, "w": 80, "h": 81 }, + "sourceSize": { "w": 108, "h": 88 }, + "duration": 100 + }, + { + "filename": "0050.png", + "frame": { "x": 373, "y": 162, "w": 84, "h": 81 }, + "rotated": false, + "trimmed": true, + "spriteSourceSize": { "x": 9, "y": 4, "w": 84, "h": 81 }, + "sourceSize": { "w": 108, "h": 88 }, + "duration": 100 + }, + { + "filename": "0051.png", + "frame": { "x": 285, "y": 157, "w": 88, "h": 81 }, + "rotated": false, + "trimmed": true, + "spriteSourceSize": { "x": 8, "y": 4, "w": 88, "h": 81 }, + "sourceSize": { "w": 108, "h": 88 }, + "duration": 100 + }, + { + "filename": "0052.png", + "frame": { "x": 104, "y": 78, "w": 94, "h": 80 }, + "rotated": false, + "trimmed": true, + "spriteSourceSize": { "x": 6, "y": 5, "w": 94, "h": 80 }, + "sourceSize": { "w": 108, "h": 88 }, + "duration": 100 + }, + { + "filename": "0053.png", + "frame": { "x": 414, "y": 1, "w": 99, "h": 79 }, + "rotated": false, + "trimmed": true, + "spriteSourceSize": { "x": 5, "y": 6, "w": 99, "h": 79 }, + "sourceSize": { "w": 108, "h": 88 }, + "duration": 100 + }, + { + "filename": "0054.png", + "frame": { "x": 1, "y": 1, "w": 103, "h": 78 }, + "rotated": false, + "trimmed": true, + "spriteSourceSize": { "x": 3, "y": 7, "w": 103, "h": 78 }, + "sourceSize": { "w": 108, "h": 88 }, + "duration": 100 + }, + { + "filename": "0055.png", + "frame": { "x": 104, "y": 1, "w": 104, "h": 77 }, + "rotated": false, + "trimmed": true, + "spriteSourceSize": { "x": 1, "y": 8, "w": 104, "h": 77 }, + "sourceSize": { "w": 108, "h": 88 }, + "duration": 100 + }, + { + "filename": "0056.png", + "frame": { "x": 208, "y": 1, "w": 102, "h": 78 }, + "rotated": false, + "trimmed": true, + "spriteSourceSize": { "x": 0, "y": 7, "w": 102, "h": 78 }, + "sourceSize": { "w": 108, "h": 88 }, + "duration": 100 + }, + { + "filename": "0057.png", + "frame": { "x": 310, "y": 77, "w": 96, "h": 80 }, + "rotated": false, + "trimmed": true, + "spriteSourceSize": { "x": 1, "y": 5, "w": 96, "h": 80 }, + "sourceSize": { "w": 108, "h": 88 }, + "duration": 100 + }, + { + "filename": "0058.png", + "frame": { "x": 406, "y": 80, "w": 89, "h": 82 }, + "rotated": false, + "trimmed": true, + "spriteSourceSize": { "x": 2, "y": 3, "w": 89, "h": 82 }, + "sourceSize": { "w": 108, "h": 88 }, + "duration": 100 + }, + { + "filename": "0059.png", + "frame": { "x": 495, "y": 161, "w": 82, "h": 83 }, + "rotated": false, + "trimmed": true, + "spriteSourceSize": { "x": 3, "y": 2, "w": 82, "h": 83 }, + "sourceSize": { "w": 108, "h": 88 }, + "duration": 100 + }, + { + "filename": "0060.png", + "frame": { "x": 649, "y": 324, "w": 77, "h": 81 }, + "rotated": false, + "trimmed": true, + "spriteSourceSize": { "x": 5, "y": 4, "w": 77, "h": 81 }, + "sourceSize": { "w": 108, "h": 88 }, + "duration": 100 + }, + { + "filename": "0061.png", + "frame": { "x": 155, "y": 327, "w": 76, "h": 79 }, + "rotated": false, + "trimmed": true, + "spriteSourceSize": { "x": 6, "y": 6, "w": 76, "h": 79 }, + "sourceSize": { "w": 108, "h": 88 }, + "duration": 100 + }, + { + "filename": "0062.png", + "frame": { "x": 394, "y": 325, "w": 77, "h": 80 }, + "rotated": false, + "trimmed": true, + "spriteSourceSize": { "x": 7, "y": 5, "w": 77, "h": 80 }, + "sourceSize": { "w": 108, "h": 88 }, + "duration": 100 + }, + { + "filename": "0063.png", + "frame": { "x": 571, "y": 324, "w": 78, "h": 80 }, + "rotated": false, + "trimmed": true, + "spriteSourceSize": { "x": 8, "y": 5, "w": 78, "h": 80 }, + "sourceSize": { "w": 108, "h": 88 }, + "duration": 100 + }, + { + "filename": "0064.png", + "frame": { "x": 161, "y": 246, "w": 78, "h": 81 }, + "rotated": false, + "trimmed": true, + "spriteSourceSize": { "x": 10, "y": 4, "w": 78, "h": 81 }, + "sourceSize": { "w": 108, "h": 88 }, + "duration": 100 + }, + { + "filename": "0065.png", + "frame": { "x": 81, "y": 240, "w": 80, "h": 81 }, + "rotated": false, + "trimmed": true, + "spriteSourceSize": { "x": 11, "y": 4, "w": 80, "h": 81 }, + "sourceSize": { "w": 108, "h": 88 }, + "duration": 100 + }, + { + "filename": "0066.png", + "frame": { "x": 577, "y": 162, "w": 83, "h": 81 }, + "rotated": false, + "trimmed": true, + "spriteSourceSize": { "x": 10, "y": 4, "w": 83, "h": 81 }, + "sourceSize": { "w": 108, "h": 88 }, + "duration": 100 + }, + { + "filename": "0067.png", + "frame": { "x": 1, "y": 158, "w": 89, "h": 80 }, + "rotated": false, + "trimmed": true, + "spriteSourceSize": { "x": 8, "y": 5, "w": 89, "h": 80 }, + "sourceSize": { "w": 108, "h": 88 }, + "duration": 100 + }, + { + "filename": "0068.png", + "frame": { "x": 1, "y": 79, "w": 95, "h": 79 }, + "rotated": false, + "trimmed": true, + "spriteSourceSize": { "x": 7, "y": 6, "w": 95, "h": 79 }, + "sourceSize": { "w": 108, "h": 88 }, + "duration": 100 + }, + { + "filename": "0069.png", + "frame": { "x": 612, "y": 1, "w": 100, "h": 78 }, + "rotated": false, + "trimmed": true, + "spriteSourceSize": { "x": 5, "y": 7, "w": 100, "h": 78 }, + "sourceSize": { "w": 108, "h": 88 }, + "duration": 100 + }, + { + "filename": "0070.png", + "frame": { "x": 310, "y": 1, "w": 104, "h": 76 }, + "rotated": false, + "trimmed": true, + "spriteSourceSize": { "x": 4, "y": 9, "w": 104, "h": 76 }, + "sourceSize": { "w": 108, "h": 88 }, + "duration": 100 + }, + { + "filename": "0071.png", + "frame": { "x": 513, "y": 1, "w": 99, "h": 79 }, + "rotated": false, + "trimmed": true, + "spriteSourceSize": { "x": 9, "y": 6, "w": 99, "h": 79 }, + "sourceSize": { "w": 108, "h": 88 }, + "duration": 100 + }, + { + "filename": "0072.png", + "frame": { "x": 495, "y": 80, "w": 90, "h": 81 }, + "rotated": false, + "trimmed": true, + "spriteSourceSize": { "x": 14, "y": 4, "w": 90, "h": 81 }, + "sourceSize": { "w": 108, "h": 88 }, + "duration": 100 + }, + { + "filename": "0073.png", + "frame": { "x": 612, "y": 79, "w": 88, "h": 83 }, + "rotated": false, + "trimmed": true, + "spriteSourceSize": { "x": 11, "y": 2, "w": 88, "h": 83 }, + "sourceSize": { "w": 108, "h": 88 }, + "duration": 100 + }, + { + "filename": "0074.png", + "frame": { "x": 198, "y": 79, "w": 87, "h": 85 }, + "rotated": false, + "trimmed": true, + "spriteSourceSize": { "x": 9, "y": 0, "w": 87, "h": 85 }, + "sourceSize": { "w": 108, "h": 88 }, + "duration": 100 + }, + { + "filename": "0075.png", + "frame": { "x": 90, "y": 158, "w": 84, "h": 82 }, + "rotated": false, + "trimmed": true, + "spriteSourceSize": { "x": 8, "y": 3, "w": 84, "h": 82 }, + "sourceSize": { "w": 108, "h": 88 }, + "duration": 100 + }, + { + "filename": "0076.png", + "frame": { "x": 471, "y": 325, "w": 76, "h": 80 }, + "rotated": false, + "trimmed": true, + "spriteSourceSize": { "x": 5, "y": 5, "w": 76, "h": 80 }, + "sourceSize": { "w": 108, "h": 88 }, + "duration": 100 + }, + { + "filename": "0077.png", + "frame": { "x": 77, "y": 403, "w": 75, "h": 74 }, + "rotated": false, + "trimmed": true, + "spriteSourceSize": { "x": 5, "y": 14, "w": 75, "h": 74 }, + "sourceSize": { "w": 108, "h": 88 }, + "duration": 100 + }, + { + "filename": "0078.png", + "frame": { "x": 231, "y": 400, "w": 75, "h": 80 }, + "rotated": false, + "trimmed": true, + "spriteSourceSize": { "x": 5, "y": 7, "w": 75, "h": 80 }, + "sourceSize": { "w": 108, "h": 88 }, + "duration": 100 + }, + { + "filename": "0079.png", + "frame": { "x": 1, "y": 402, "w": 76, "h": 77 }, + "rotated": false, + "trimmed": true, + "spriteSourceSize": { "x": 5, "y": 9, "w": 76, "h": 77 }, + "sourceSize": { "w": 108, "h": 88 }, + "duration": 100 + }, + { + "filename": "0080.png", + "frame": { "x": 317, "y": 325, "w": 77, "h": 80 }, + "rotated": false, + "trimmed": true, + "spriteSourceSize": { "x": 5, "y": 6, "w": 77, "h": 80 }, + "sourceSize": { "w": 108, "h": 88 }, + "duration": 100 + }, + { + "filename": "0081.png", + "frame": { "x": 239, "y": 319, "w": 78, "h": 81 }, + "rotated": false, + "trimmed": true, + "spriteSourceSize": { "x": 5, "y": 5, "w": 78, "h": 81 }, + "sourceSize": { "w": 108, "h": 88 }, + "duration": 100 + }, + { + "filename": "0082.png", + "frame": { "x": 174, "y": 164, "w": 80, "h": 82 }, + "rotated": false, + "trimmed": true, + "spriteSourceSize": { "x": 5, "y": 4, "w": 80, "h": 82 }, + "sourceSize": { "w": 108, "h": 88 }, + "duration": 100 + }, + { + "filename": "0083.png", + "frame": { "x": 1, "y": 238, "w": 80, "h": 82 }, + "rotated": false, + "trimmed": true, + "spriteSourceSize": { "x": 6, "y": 3, "w": 80, "h": 82 }, + "sourceSize": { "w": 108, "h": 88 }, + "duration": 100 + }, + { + "filename": "0084.png", + "frame": { "x": 334, "y": 243, "w": 79, "h": 82 }, + "rotated": false, + "trimmed": true, + "spriteSourceSize": { "x": 7, "y": 3, "w": 79, "h": 82 }, + "sourceSize": { "w": 108, "h": 88 }, + "duration": 100 + }, + { + "filename": "0085.png", + "frame": { "x": 1, "y": 320, "w": 77, "h": 82 }, + "rotated": false, + "trimmed": true, + "spriteSourceSize": { "x": 9, "y": 3, "w": 77, "h": 82 }, + "sourceSize": { "w": 108, "h": 88 }, + "duration": 100 + }, + { + "filename": "0086.png", + "frame": { "x": 78, "y": 321, "w": 77, "h": 82 }, + "rotated": false, + "trimmed": true, + "spriteSourceSize": { "x": 10, "y": 3, "w": 77, "h": 82 }, + "sourceSize": { "w": 108, "h": 88 }, + "duration": 100 + }, + { + "filename": "0087.png", + "frame": { "x": 413, "y": 243, "w": 79, "h": 82 }, + "rotated": false, + "trimmed": true, + "spriteSourceSize": { "x": 10, "y": 3, "w": 79, "h": 82 }, + "sourceSize": { "w": 108, "h": 88 }, + "duration": 100 + }, + { + "filename": "0088.png", + "frame": { "x": 577, "y": 243, "w": 79, "h": 81 }, + "rotated": false, + "trimmed": true, + "spriteSourceSize": { "x": 10, "y": 4, "w": 79, "h": 81 }, + "sourceSize": { "w": 108, "h": 88 }, + "duration": 100 + }, + { + "filename": "0089.png", + "frame": { "x": 492, "y": 244, "w": 79, "h": 81 }, + "rotated": false, + "trimmed": true, + "spriteSourceSize": { "x": 11, "y": 4, "w": 79, "h": 81 }, + "sourceSize": { "w": 108, "h": 88 }, + "duration": 100 + } + ], + "meta": { + "app": "https://www.aseprite.org/", + "version": "1.3.13-x64", + "image": "784.png", + "format": "I8", + "size": { "w": 727, "h": 481 }, + "scale": "1" + } } diff --git a/public/images/pokemon/shiny/784.png b/public/images/pokemon/shiny/784.png index 57cf7a67747..f9f5813e1c2 100644 Binary files a/public/images/pokemon/shiny/784.png and b/public/images/pokemon/shiny/784.png differ diff --git a/public/images/pokemon/variant/1011.json b/public/images/pokemon/variant/1011.json new file mode 100644 index 00000000000..cbb4be4e207 --- /dev/null +++ b/public/images/pokemon/variant/1011.json @@ -0,0 +1,36 @@ +{ + "1": { + "fd9477": "63b9b9", + "e64d3c": "397880", + "a28339": "5a4385", + "477d45": "67698b", + "b09579": "8ea1b4", + "f5e279": "f0d3f9", + "253922": "232b3a", + "345539": "313d4b", + "d1b147": "c998e2", + "9c1e2a": "272a52", + "7eb36a": "9aa0b3", + "9fc164": "9aa0b3", + "8e9960": "67698b", + "c73030": "2b526f", + "61071f": "190e2e" + }, + "2": { + "fd9477": "f3efde", + "e64d3c": "eee0bc", + "a28339": "2e2246", + "477d45": "903c4e", + "b09579": "b49c98", + "f5e279": "589df3", + "253922": "2e0920", + "345539": "4f162a", + "d1b147": "354dbf", + "9c1e2a": "9c564c", + "7eb36a": "e28c95", + "9fc164": "e28c95", + "8e9960": "b0526f", + "c73030": "d1a87e", + "61071f": "571818" + } +} \ No newline at end of file diff --git a/public/images/pokemon/variant/1019.json b/public/images/pokemon/variant/1019.json new file mode 100644 index 00000000000..2d5a5f699c6 --- /dev/null +++ b/public/images/pokemon/variant/1019.json @@ -0,0 +1,46 @@ +{ + "1": { + "9c0808": "70a2c5", + "b91d1d": "abd7e2", + "746739": "69348b", + "6ba835": "7a7c9e", + "9ce05f": "9aa0b3", + "d43e2d": "4e969e", + "841111": "302752", + "b11717": "663267", + "680606": "065e68", + "ff7a59": "69c5c5", + "c59588": "9c2e72", + "2d6127": "7f58af", + "b72629": "2b526f", + "b59a7d": "a3b9d0", + "82664a": "48476c", + "ffce5e": "d69ae8", + "3e662b": "313846", + "dcbfab": "c55885", + "e9cfb3": "dcebf9", + "3c9b3e": "e8edff" + }, + "2": { + "9c0808": "bfb5ab", + "b91d1d": "dcd9d1", + "746739": "312374", + "6ba835": "a8546e", + "9ce05f": "e28c95", + "d43e2d": "eedfb8", + "841111": "4b211b", + "b11717": "63473b", + "680606": "68403b", + "ff7a59": "f3efde", + "c59588": "402622", + "2d6127": "2e2b8b", + "b72629": "bf9870", + "b59a7d": "cbb4af", + "82664a": "613838", + "ffce5e": "688ce8", + "3e662b": "341c1c", + "dcbfab": "5d4c45", + "e9cfb3": "e2dcd6", + "3c9b3e": "5e75e2" + } +} \ No newline at end of file diff --git a/public/images/pokemon/variant/143-gigantamax.json b/public/images/pokemon/variant/143-gigantamax.json new file mode 100644 index 00000000000..c6e5312d330 --- /dev/null +++ b/public/images/pokemon/variant/143-gigantamax.json @@ -0,0 +1,50 @@ +{ + "1": { + "101010": "101010", + "5f3c18": "544a41", + "5e3e1d": "351b52", + "31573f": "7b59ba", + "54792b": "c06386", + "103941": "701a55", + "315a7b": "943469", + "bd3740": "c94489", + "a3704e": "522663", + "a47352": "6b6357", + "ad7f5f": "b56564", + "de5656": "d65a8a", + "069f5f": "b083de", + "89b432": "f1a1b2", + "bbe35b": "f1a1b2", + "98a0a0": "98a0a0", + "a0a0a0": "a0a0a0", + "fc8b9f": "ed7794", + "e6c5ac": "cf8880", + "f6e6bd": "f0beb1", + "c9c9c9": "c9c9c9", + "f4f4f4": "f4f4f4" + }, + "2": { + "101010": "101010", + "5f3c18": "ba6632", + "5e3e1d": "c2986e", + "31573f": "4b4c52", + "54792b": "208073", + "103941": "93b5c2", + "315a7b": "b6d6d9", + "bd3740": "9e4619", + "a3704e": "e6cda1", + "a47352": "cf9d48", + "ad7f5f": "284878", + "de5656": "bd742b", + "069f5f": "7c7c82", + "89b432": "37ad82", + "bbe35b": "79e0a2", + "98a0a0": "53738a", + "a0a0a0": "abd1cc", + "fc8b9f": "d9a443", + "e6c5ac": "27538a", + "f6e6bd": "36719c", + "c9c9c9": "b4d3d9", + "f4f4f4": "f4f4f4" + } +} \ No newline at end of file diff --git a/public/images/pokemon/variant/143.json b/public/images/pokemon/variant/143.json new file mode 100644 index 00000000000..b4e32403fc6 --- /dev/null +++ b/public/images/pokemon/variant/143.json @@ -0,0 +1,38 @@ +{ + "1": { + "000000": "101010", + "634221": "351b52", + "103a42": "701a55", + "3a3d47": "41201e", + "3d3d47": "756363", + "315a7b": "943469", + "8a6455": "91504e", + "a67351": "522663", + "a57352": "9e5755", + "528cad": "ad4b70", + "73a5bd": "cc6c84", + "e6c5ad": "cf8880", + "f7d6bd": "e09f96", + "f7e6bd": "f0beb1", + "cecece": "cbc4c4", + "ffffff": "ffffff" + }, + "2": { + "000000": "101010", + "634221": "c2986e", + "103a42": "85adbc", + "3a3d47": "131d39", + "3d3d47": "2b2b32", + "315a7b": "a3cacd", + "8a6455": "192b59", + "a67351": "e6cda1", + "a57352": "1b2e61", + "528cad": "cbe4e2", + "73a5bd": "edf5f4", + "e6c5ad": "284878", + "f7d6bd": "38638f", + "f7e6bd": "457ca8", + "cecece": "bfc7cb", + "ffffff": "ffffff" + } +} \ No newline at end of file diff --git a/public/images/pokemon/variant/187.json b/public/images/pokemon/variant/187.json new file mode 100644 index 00000000000..7e0d1dca511 --- /dev/null +++ b/public/images/pokemon/variant/187.json @@ -0,0 +1,28 @@ +{ + "1": { + "101010": "101010", + "425a10": "934200", + "52843a": "c27600", + "63bd5a": "efac00", + "8c083a": "012a3e", + "9cde5a": "ffdc46", + "b56373": "003e53", + "ff7b94": "006d7f", + "f79cb5": "00a59b", + "ffc500": "e3396c", + "ffff00": "ffa8b6" + }, + "2": { + "101010": "101010", + "425a10": "5f0052", + "52843a": "960070", + "63bd5a": "960070", + "8c083a": "802600", + "9cde5a": "e01c75", + "b56373": "d8591c", + "ff7b94": "fa9600", + "f79cb5": "ffc93b", + "ffc500": "5ec0ec", + "ffff00": "94ecf9" + } +} \ No newline at end of file diff --git a/public/images/pokemon/variant/188.json b/public/images/pokemon/variant/188.json new file mode 100644 index 00000000000..03edfeb51ff --- /dev/null +++ b/public/images/pokemon/variant/188.json @@ -0,0 +1,30 @@ +{ + "1": { + "000000": "101010", + "196b00": "c66b31", + "42b521": "e99f23", + "63d631": "ffd953", + "8c5200": "004269", + "8cf74a": "fef579", + "b5d6de": "fa9600", + "f7a519": "005883", + "ff6300": "420c78", + "ffd600": "046c90", + "ffef00": "007b9a", + "ffffff": "ffc93b" + }, + "2": { + "000000": "101010", + "196b00": "2659ad", + "42b521": "5293d5", + "63d631": "79d5fa", + "8c5200": "5f0052", + "8cf74a": "a6eafa", + "b5d6de": "fa9600", + "f7a519": "960070", + "ff6300": "86005c", + "ffd600": "ba0071", + "ffef00": "e01c75", + "ffffff": "ffc93b" + } +} \ No newline at end of file diff --git a/public/images/pokemon/variant/189.json b/public/images/pokemon/variant/189.json new file mode 100644 index 00000000000..7166d9ac513 --- /dev/null +++ b/public/images/pokemon/variant/189.json @@ -0,0 +1,38 @@ +{ + "1": { + "101010": "101010", + "194a73": "b64d21", + "c53142": "405b8f", + "ef4252": "6781a4", + "29844a": "83839f", + "b58c31": "071a3c", + "d6bd5a": "282773", + "84ce7b": "c1bdd1", + "3a73c5": "e19903", + "ded67b": "ded67b", + "efe69c": "104f80", + "8cb5ff": "f9f870", + "ffffde": "2faac4", + "ffffee": "ffffee", + "fff7b5": "1379a0", + "739cff": "fcd936" + }, + "2": { + "101010": "101010", + "194a73": "680054", + "c53142": "3887d2", + "ef4252": "58c1ea", + "29844a": "3887d3", + "b58c31": "da5014", + "d6bd5a": "f06f22", + "84ce7b": "58c1eb", + "3a73c5": "980062", + "ded67b": "ded67b", + "efe69c": "ffa747", + "8cb5ff": "e4486a", + "ffffde": "f9f29b", + "ffffee": "ffffee", + "fff7b5": "ffd45a", + "739cff": "d20d6a" + } +} \ No newline at end of file diff --git a/public/images/pokemon/variant/2037.json b/public/images/pokemon/variant/2037.json new file mode 100644 index 00000000000..2c190d5d36a --- /dev/null +++ b/public/images/pokemon/variant/2037.json @@ -0,0 +1,26 @@ +{ + "1": { + "151515": "101010", + "2d57bb": "235dc4", + "558b9f": "9f435d", + "648082": "6e67b0", + "6cb1db": "3daae0", + "97bdd2": "ffa8b8", + "c1d1d2": "b3b8ea", + "d9e9f4": "ffd3e1", + "fdfdfd": "d7d9f9", + "ffffff": "ffffff" + }, + "2": { + "151515": "101010", + "2d57bb": "6e1179", + "558b9f": "90215e", + "648082": "bf4747", + "6cb1db": "8832a0", + "97bdd2": "da4e75", + "c1d1d2": "ffc07b", + "d9e9f4": "ff8489", + "fdfdfd": "ffe6a0", + "ffffff": "ffffff" + } +} \ No newline at end of file diff --git a/public/images/pokemon/variant/2038.json b/public/images/pokemon/variant/2038.json new file mode 100644 index 00000000000..845c45f7887 --- /dev/null +++ b/public/images/pokemon/variant/2038.json @@ -0,0 +1,36 @@ +{ + "1": { + "101010": "101010", + "4d5c78": "394880", + "516077": "9f435d", + "007ab5": "2380c4", + "38858d": "e35ea2", + "7a8a9c": "6172ab", + "66b3d7": "3dbfe0", + "86a8c0": "e27495", + "81c2c5": "ff89c0", + "bdcbd7": "a7ade7", + "a1e1de": "ffb6e5", + "b0d3ea": "ffa8b8", + "eafefe": "ffd3e1", + "fdfdfd": "bec6ef", + "ffffff": "ffffff" + }, + "2": { + "101010": "101010", + "4d5c78": "73174a", + "516077": "bb3c3c", + "007ab5": "882493", + "38858d": "572746", + "7a8a9c": "90215e", + "66b3d7": "a044ab", + "86a8c0": "ff824c", + "81c2c5": "75355e", + "bdcbd7": "da426d", + "a1e1de": "93547c", + "b0d3ea": "ffbf6b", + "eafefe": "ffe28c", + "fdfdfd": "ff6f86", + "ffffff": "ffffff" + } +} \ No newline at end of file diff --git a/public/images/pokemon/variant/204.json b/public/images/pokemon/variant/204.json new file mode 100644 index 00000000000..19494090ac5 --- /dev/null +++ b/public/images/pokemon/variant/204.json @@ -0,0 +1,20 @@ +{ + "1": { + "84d6d6": "c1cd7d", + "b5eff7": "e3e796", + "3a73a5": "74a057", + "942900": "cc5c1c", + "294a7b": "4b7641", + "52adb5": "a4b76b", + "ff4a3a": "f68b31" + }, + "2": { + "84d6d6": "eda6ae", + "b5eff7": "f7dcd7", + "3a73a5": "b43469", + "942900": "1eaaaa", + "294a7b": "700a4b", + "52adb5": "d46b84", + "ff4a3a": "36cfbb" + } +} \ No newline at end of file diff --git a/public/images/pokemon/variant/205.json b/public/images/pokemon/variant/205.json new file mode 100644 index 00000000000..06e56b61f61 --- /dev/null +++ b/public/images/pokemon/variant/205.json @@ -0,0 +1,26 @@ +{ + "1": { + "847b9c": "103b2c", + "f7deef": "5b965b", + "e6cef7": "3e7745", + "6b6b6b": "53af4a", + "ff9c9c": "ffb356", + "ffffff": "91c25e", + "841031": "af3b11", + "f76373": "f68b31", + "bd2942": "d8681e", + "524263": "04211a", + "c5a5de": "205639" + }, + "2": { + "847b9c": "962a41", + "f7deef": "f7e2d7", + "e6cef7": "e9b1a0", + "ff9c9c": "b0f5ee", + "841031": "0e2667", + "f76373": "6bbfd2", + "bd2942": "2c6094", + "524263": "691338", + "c5a5de": "c86554" + } +} \ No newline at end of file diff --git a/public/images/pokemon/variant/207.json b/public/images/pokemon/variant/207.json index 63e1098713a..7d1ff05493d 100644 --- a/public/images/pokemon/variant/207.json +++ b/public/images/pokemon/variant/207.json @@ -1,32 +1,26 @@ { "1": { - "63314a": "7f4812", - "e6a5ce": "f8dd84", - "101010": "101010", - "ad6394": "b67322", "de84b5": "daa93f", - "4a5a73": "4a5a73", - "ffffff": "ffffff", - "adbdc5": "adbdc5", - "bd6b5a": "49a3d2", + "e6a5ce": "f8dd84", + "63314a": "275487", "4a73bd": "3b426f", - "ffa584": "68caed", "294a7b": "1f2142", - "6b9cef": "596596" + "ad6394": "b67322", + "612f48": "7f4812", + "6b9cef": "596596", + "ffa584": "68caed", + "bd6b5a": "49a3d2" }, "2": { - "63314a": "5f1723", - "e6a5ce": "ef6b58", - "101010": "101010", - "ad6394": "97343c", "de84b5": "c04144", - "4a5a73": "4a5a73", - "ffffff": "ffffff", - "adbdc5": "adbdc5", - "bd6b5a": "c86539", + "e6a5ce": "ef6b58", + "63314a": "752d17", "4a73bd": "42bca0", - "ffa584": "f0a452", "294a7b": "33817e", - "6b9cef": "81e4b3" + "ad6394": "97343c", + "612f48": "5f1723", + "6b9cef": "81e4b3", + "ffa584": "f0a452", + "bd6b5a": "c86539" } } \ No newline at end of file diff --git a/public/images/pokemon/variant/299.json b/public/images/pokemon/variant/299.json new file mode 100644 index 00000000000..3b2cd15e3cd --- /dev/null +++ b/public/images/pokemon/variant/299.json @@ -0,0 +1,28 @@ +{ + "1": { + "000000": "101010", + "5a1921": "1f3a30", + "31314a": "6b2710", + "9c314a": "30594a", + "de5252": "487c60", + "ff6b7b": "5a9170", + "42529c": "a14020", + "637bbd": "c66831", + "ff9494": "7fbc7a", + "8ca5e6": "db8644", + "adbdf7": "e09a65" + }, + "2": { + "000000": "101010", + "5a1921": "28163a", + "31314a": "38619e", + "9c314a": "452b5e", + "de5252": "584282", + "ff6b7b": "675398", + "42529c": "68a2cd", + "637bbd": "99e4ee", + "ff9494": "7282c4", + "8ca5e6": "dcfff8", + "adbdf7": "f3fff6" + } +} \ No newline at end of file diff --git a/public/images/pokemon/variant/313.json b/public/images/pokemon/variant/313.json new file mode 100644 index 00000000000..574574061ce --- /dev/null +++ b/public/images/pokemon/variant/313.json @@ -0,0 +1,36 @@ +{ + "1": { + "4a526b": "9a4013", + "4a4a52": "731509", + "ffe652": "fffa52", + "7b8ca5": "d66d38", + "8c314a": "491c22", + "8c8c94": "d4301b", + "a5b5c5": "eea256", + "f7df4d": "c0f79b", + "f78473": "864a51", + "8c6b52": "845c46", + "deb552": "edc81f", + "7b5d47": "329c38", + "ce3a52": "491c22", + "e65263": "652d32", + "d0a94c": "65c859" + }, + "2": { + "4a526b": "102b2d", + "4a4a52": "1e711a", + "ffe652": "dde6b1", + "7b8ca5": "1e5256", + "8c314a": "0b4569", + "8c8c94": "0ba905", + "a5b5c5": "26686d", + "f7df4d": "ffe798", + "f78473": "5cc3f5", + "8c6b52": "5c713d", + "deb552": "b6d479", + "7b5d47": "bd7a0c", + "ce3a52": "1b8ad0", + "e65263": "2ba5f1", + "d0a94c": "ffca1a" + } +} \ No newline at end of file diff --git a/public/images/pokemon/variant/314.json b/public/images/pokemon/variant/314.json new file mode 100644 index 00000000000..87852b5a6fa --- /dev/null +++ b/public/images/pokemon/variant/314.json @@ -0,0 +1,36 @@ +{ + "1": { + "56687b": "6b4448", + "5a6b8c": "9a4013", + "8cadce": "d66d38", + "adc5ef": "eea256", + "fbfafa": "ffffff", + "9c52bd": "57272c", + "9c8452": "c38c26", + "6b5a94": "371c21", + "ffe673": "fffa52", + "83a4c5": "a3d0f5", + "7b7b7b": "b82b18", + "e6b54a": "ffda31", + "3a3a3a": "710d00", + "005ad6": "439fec", + "ce8cde": "6a342c" + }, + "2": { + "56687b": "4badea", + "5a6b8c": "70a84f", + "8cadce": "c1db9c", + "adc5ef": "e5edcc", + "fbfafa": "8bfdea", + "9c52bd": "43a3df", + "9c8452": "074656", + "6b5a94": "255b95", + "ffe673": "3dc5d3", + "83a4c5": "ffde93", + "7b7b7b": "155870", + "e6b54a": "019792", + "3a3a3a": "0a2934", + "005ad6": "edb125", + "ce8cde": "77d4ee" + } +} \ No newline at end of file diff --git a/public/images/pokemon/variant/32.json b/public/images/pokemon/variant/32.json new file mode 100644 index 00000000000..473edcae2af --- /dev/null +++ b/public/images/pokemon/variant/32.json @@ -0,0 +1,34 @@ +{ + "1": { + "101010": "101010", + "006342": "273161", + "63426b": "944f25", + "b51900": "28678a", + "de4229": "42adc1", + "ff6b52": "78d6d3", + "00a573": "3b4d7a", + "9c4aad": "ab5c24", + "bd63c5": "cf863e", + "19ce9c": "55729e", + "e69cd6": "e0c151", + "efbdef": "ede4ab", + "cecece": "cecece", + "ffffff": "ffffff" + }, + "2": { + "101010": "101010", + "006342": "b0384a", + "63426b": "142440", + "b51900": "b86527", + "de4229": "e1b13b", + "ff6b52": "eddd95", + "00a573": "d65e64", + "9c4aad": "133257", + "bd63c5": "253f5e", + "19ce9c": "ed938e", + "e69cd6": "375c73", + "efbdef": "5d91a1", + "cecece": "cecece", + "ffffff": "ffffff" + } +} \ No newline at end of file diff --git a/public/images/pokemon/variant/325.json b/public/images/pokemon/variant/325.json new file mode 100644 index 00000000000..e8c6641defc --- /dev/null +++ b/public/images/pokemon/variant/325.json @@ -0,0 +1,26 @@ +{ + "1": { + "ef84ad": "5ca0b5", + "f7a5bd": "6ac5c8", + "c5637b": "3c6b95", + "ffd6e6": "b4e6e7", + "6b6b7b": "2e7320", + "7b7b8c": "559b43", + "5a5a73": "7dbc53", + "3a4252": "18340c", + "a53a42": "2b4d7d", + "a5a5ad": "b5d780" + }, + "2": { + "ef84ad": "1f6759", + "f7a5bd": "379a85", + "c5637b": "144844", + "ffd6e6": "8dd6ab", + "6b6b7b": "72442d", + "7b7b8c": "dca878", + "5a5a73": "a7724a", + "3a4252": "72442d", + "a53a42": "0c2625", + "a5a5ad": "fbe3a3" + } +} \ No newline at end of file diff --git a/public/images/pokemon/variant/326.json b/public/images/pokemon/variant/326.json new file mode 100644 index 00000000000..11e02009a26 --- /dev/null +++ b/public/images/pokemon/variant/326.json @@ -0,0 +1,32 @@ +{ + "1": { + "9c9ca5": "7ecdd1", + "d684ce": "7bb15b", + "636373": "3c6b95", + "ef7b94": "e99e76", + "f7bdf7": "bbfcf8", + "bd63ad": "559b43", + "a5425a": "a84331", + "f7a5b5": "f7d1a0", + "6b426b": "18340c", + "ce5a7b": "d06d50", + "e6a5de": "b5d780", + "4a4a52": "2b4d7d", + "7b7b84": "5ca0b5" + }, + "2": { + "9c9ca5": "fffade", + "d684ce": "67508c", + "636373": "e8bc75", + "ef7b94": "379a85", + "f7bdf7": "b395de", + "bd63ad": "574285", + "a5425a": "144844", + "f7a5b5": "5cba98", + "6b426b": "081f19", + "ce5a7b": "1f6759", + "e6a5de": "7a649c", + "4a4a52": "d08f55", + "7b7b84": "fbefb3" + } +} \ No newline at end of file diff --git a/public/images/pokemon/variant/33.json b/public/images/pokemon/variant/33.json new file mode 100644 index 00000000000..331220de9ef --- /dev/null +++ b/public/images/pokemon/variant/33.json @@ -0,0 +1,32 @@ +{ + "1": { + "101010": "101010", + "5a3a63": "944f25", + "b51900": "b51900", + "de4229": "de4229", + "845a52": "42adc1", + "009463": "273161", + "945ab5": "cf863e", + "4acea5": "55729e", + "848484": "848484", + "ce84de": "e0c151", + "e6adef": "ede4ab", + "c5c5c5": "c5c5c5", + "ffffff": "ffffff" + }, + "2": { + "101010": "101010", + "5a3a63": "142440", + "b51900": "d98943", + "de4229": "edc85a", + "845a52": "e1b13b", + "009463": "b0384a", + "945ab5": "253f5e", + "4acea5": "ed938e", + "848484": "848484", + "ce84de": "375c73", + "e6adef": "5d91a1", + "c5c5c5": "c5c5c5", + "ffffff": "ffffff" + } +} \ No newline at end of file diff --git a/public/images/pokemon/variant/331.json b/public/images/pokemon/variant/331.json new file mode 100644 index 00000000000..abe5e0cfa6d --- /dev/null +++ b/public/images/pokemon/variant/331.json @@ -0,0 +1,30 @@ +{ + "1": { + "4a7310": "9f2a3f", + "ffe63a": "7aa1df", + "31944a": "b73736", + "215200": "69102c", + "003a10": "4e29c6", + "f7bd19": "448bc3", + "63bd6b": "dd6754", + "196b31": "891d2c", + "94c552": "d76868", + "739c3a": "d74f4f", + "8c6b3a": "123a5a", + "bdde7b": "e67f7f" + }, + "2": { + "4a7310": "6d3494", + "ffe63a": "eaa5c6", + "31944a": "caac82", + "215200": "694426", + "003a10": "5e223f", + "f7bd19": "d979b2", + "63bd6b": "e1d39d", + "196b31": "946e51", + "94c552": "9364a5", + "739c3a": "7c558d", + "8c6b3a": "983364", + "bdde7b": "a772bd" + } +} \ No newline at end of file diff --git a/public/images/pokemon/variant/332.json b/public/images/pokemon/variant/332.json new file mode 100644 index 00000000000..e9b487bca25 --- /dev/null +++ b/public/images/pokemon/variant/332.json @@ -0,0 +1,34 @@ +{ + "1": { + "319452": "831a1f", + "4a7310": "982443", + "7ba563": "b44040", + "bdef84": "ec8c8c", + "8cbd63": "c54b4b", + "215200": "710f2e", + "a5d674": "e16363", + "196b21": "891222", + "f7ce00": "7aa1df", + "525252": "123a5a", + "63b56b": "b2332f", + "a5d673": "df5252", + "8c6b3a": "448bc3", + "4aa552": "9f2f2c" + }, + "2": { + "319452": "b08d72", + "4a7310": "4f3956", + "7ba563": "704e7e", + "bdef84": "a779ba", + "8cbd63": "e3d7a6", + "215200": "583823", + "a5d674": "8c669b", + "196b21": "78582c", + "f7ce00": "f2aacd", + "525252": "a53b6f", + "63b56b": "cfc191", + "a5d673": "d7cda7", + "8c6b3a": "df87bb", + "4aa552": "c5a77f" + } +} \ No newline at end of file diff --git a/public/images/pokemon/variant/34.json b/public/images/pokemon/variant/34.json new file mode 100644 index 00000000000..748658a6a90 --- /dev/null +++ b/public/images/pokemon/variant/34.json @@ -0,0 +1,44 @@ +{ + "1": { + "101010": "101010", + "5a296b": "7a411d", + "004a63": "273161", + "73735a": "3b447a", + "73735b": "73735b", + "ad1000": "ad1000", + "e64231": "e64231", + "297b94": "3b4d7a", + "a55294": "cf863e", + "d673ef": "e0c151", + "4294c5": "55729e", + "c5c5a5": "6272a8", + "c4c4a7": "c4c4a7", + "c7c7a9": "c7c7a9", + "de94f7": "ede4ab", + "e6e6d6": "7687ab", + "fafafa": "8fa2c2", + "fcfcfc": "fcfcfc", + "ffffff": "ffffff" + }, + "2": { + "101010": "101010", + "5a296b": "142440", + "004a63": "b0384a", + "73735a": "85204a", + "73735b": "a37355", + "ad1000": "d98943", + "e64231": "edc85a", + "297b94": "d65e64", + "a55294": "253f5e", + "d673ef": "375c73", + "4294c5": "ed938e", + "c5c5a5": "c43d63", + "c4c4a7": "e0b990", + "c7c7a9": "c7c7a9", + "de94f7": "5d91a1", + "e6e6d6": "d15271", + "fafafa": "de6476", + "fcfcfc": "ede1b4", + "ffffff": "ffffff" + } +} \ No newline at end of file diff --git a/public/images/pokemon/variant/345.json b/public/images/pokemon/variant/345.json new file mode 100644 index 00000000000..dc23adbef64 --- /dev/null +++ b/public/images/pokemon/variant/345.json @@ -0,0 +1,28 @@ +{ + "1": { + "633a84": "611746", + "6b5221": "679e3a", + "efd663": "fcf3a2", + "9c84ce": "bd3167", + "b5ade6": "ff5289", + "d6a531": "d8e374", + "efadb5": "b9f0ff", + "bd5284": "6084bd", + "ce7394": "84aedb", + "843a5a": "394287", + "7363b5": "801f4c" + }, + "2": { + "633a84": "b57c2d", + "6b5221": "661634", + "efd663": "de463e", + "9c84ce": "f5df73", + "b5ade6": "fff8a3", + "d6a531": "942532", + "efadb5": "beed9a", + "bd5284": "429949", + "ce7394": "7fcc68", + "843a5a": "296e47", + "7363b5": "dbb34d" + } +} \ No newline at end of file diff --git a/public/images/pokemon/variant/346.json b/public/images/pokemon/variant/346.json new file mode 100644 index 00000000000..090feeab922 --- /dev/null +++ b/public/images/pokemon/variant/346.json @@ -0,0 +1,32 @@ +{ + "1": { + "ffd6ef": "deffea", + "3a6b52": "7f183f", + "a57b10": "5e8c29", + "a5e68c": "f38460", + "944263": "304459", + "ce6394": "526f84", + "f7d642": "d8e374", + "7bc573": "eb564b", + "ff9cad": "d2faef", + "fff77b": "fcf3a2", + "529c5a": "b32843", + "cea531": "a7c961", + "ef6b8c": "93c6c5" + }, + "2": { + "ffd6ef": "a3ffc3", + "3a6b52": "96483b", + "a57b10": "661634", + "a5e68c": "ffe6b5", + "944263": "17404a", + "ce6394": "32806f", + "f7d642": "de463e", + "7bc573": "efbd8c", + "ff9cad": "7be3b6", + "fff77b": "ff754f", + "529c5a": "bf815c", + "cea531": "942532", + "ef6b8c": "53b491" + } +} \ No newline at end of file diff --git a/public/images/pokemon/variant/396.json b/public/images/pokemon/variant/396.json new file mode 100644 index 00000000000..1881572247b --- /dev/null +++ b/public/images/pokemon/variant/396.json @@ -0,0 +1,44 @@ +{ + "1": { + "000000": "101010", + "3a2129": "07332d", + "3f1e27": "b06421", + "4a4343": "751e23", + "4f4747": "dbb070", + "524a4a": "156146", + "736363": "28854d", + "756565": "144a40", + "ff0000": "90cc58", + "9c4a21": "db963b", + "d67300": "edb651", + "8c7373": "bd453c", + "ff9429": "ffcf5e", + "ad9c9c": "ed7f4c", + "b3b3b3": "b3b3b3", + "b5b5b5": "d1a562", + "d6dede": "e3d09d", + "fcfcfc": "f0ebc5", + "ffffff": "ffffff" + }, + "2": { + "000000": "101010", + "3a2129": "111a36", + "3f1e27": "451915", + "4a4343": "163d4d", + "4f4747": "e5c595", + "524a4a": "1b2745", + "736363": "2f436b", + "756565": "e6a647", + "ff0000": "c4568a", + "9c4a21": "52281f", + "d67300": "63362b", + "8c7373": "307b82", + "ff9429": "8c604c", + "ad9c9c": "4da8a1", + "b3b3b3": "b3b3b3", + "b5b5b5": "debd8c", + "d6dede": "f0deaa", + "fcfcfc": "fcfad2", + "ffffff": "ffffff" + } +} \ No newline at end of file diff --git a/public/images/pokemon/variant/397.json b/public/images/pokemon/variant/397.json new file mode 100644 index 00000000000..e5fa30f65bd --- /dev/null +++ b/public/images/pokemon/variant/397.json @@ -0,0 +1,38 @@ +{ + "1": { + "9c4242": "528a3e", + "362d36": "0d4539", + "f75242": "8bba65", + "735a63": "bd453c", + "bd6300": "db963b", + "362c36": "8f431d", + "595759": "256e54", + "b5b5b5": "d9c798", + "523a4a": "751e23", + "5a525a": "28854d", + "7b4221": "b06421", + "9c848c": "ed7f4c", + "3d343d": "144a40", + "ff9429": "ffcf5e", + "3a3a3a": "156146", + "f9f9f9": "f0ebc5" + }, + "2": { + "9c4242": "c4568a", + "362d36": "162040", + "f75242": "f797ad", + "735a63": "307b82", + "bd6300": "63362b", + "362c36": "421917", + "595759": "edcf87", + "b5b5b5": "debd8c", + "523a4a": "163d4d", + "5a525a": "2f436b", + "7b4221": "52281f", + "9c848c": "4da8a1", + "3d343d": "e6a647", + "ff9429": "8c604c", + "3a3a3a": "152039", + "f9f9f9": "fcfad2" + } +} \ No newline at end of file diff --git a/public/images/pokemon/variant/398.json b/public/images/pokemon/variant/398.json new file mode 100644 index 00000000000..387cddba886 --- /dev/null +++ b/public/images/pokemon/variant/398.json @@ -0,0 +1,36 @@ +{ + "1": { + "735a63": "bd453c", + "5c545c": "144a40", + "5a525a": "156146", + "7b6b7b": "28854d", + "f75242": "90cc58", + "4f3847": "ab5022", + "b5b5b5": "d7be89", + "9c4242": "5fad3b", + "7b4221": "b06421", + "fcfcfc": "e8e3b6", + "3a3a3a": "07332d", + "bd6300": "db963b", + "523a4a": "751e23", + "9c848c": "ed7f4c", + "ff9429": "ffcf5e" + }, + "2": { + "735a63": "307b82", + "5c545c": "e6a647", + "5a525a": "1b2745", + "7b6b7b": "293854", + "f75242": "e6bd4e", + "4f3847": "421917", + "b5b5b5": "debd8c", + "9c4242": "c4833d", + "7b4221": "52281f", + "fcfcfc": "fcfad2", + "3a3a3a": "080d1f", + "bd6300": "63362b", + "523a4a": "163d4d", + "9c848c": "4da8a1", + "ff9429": "8c604c" + } +} \ No newline at end of file diff --git a/public/images/pokemon/variant/403.json b/public/images/pokemon/variant/403.json new file mode 100644 index 00000000000..fac493a40e4 --- /dev/null +++ b/public/images/pokemon/variant/403.json @@ -0,0 +1,26 @@ +{ + "1": { + "b59c5a": "45babf", + "7badf7": "bb5c3a", + "943a52": "472614", + "637bb5": "903325", + "4a4a63": "dcb788", + "ffe65a": "59dcd6", + "313142": "bf8652", + "e64a52": "4f3217", + "42426b": "671919", + "736352": "267789" + }, + "2": { + "b59c5a": "9a31be", + "7badf7": "303465", + "943a52": "614b9a", + "637bb5": "222352", + "4a4a63": "bbc2e5", + "ffe65a": "e25ce8", + "313142": "8883d4", + "e64a52": "6f5dac", + "42426b": "121031", + "736352": "611c7f" + } +} \ No newline at end of file diff --git a/public/images/pokemon/variant/404.json b/public/images/pokemon/variant/404.json new file mode 100644 index 00000000000..b6621d02406 --- /dev/null +++ b/public/images/pokemon/variant/404.json @@ -0,0 +1,28 @@ +{ + "1": { + "736352": "267789", + "4a4a73": "671919", + "63637b": "f1dfb1", + "b59c5a": "45babf", + "637bb5": "903325", + "4a4a63": "dcb788", + "ffe65a": "59dcd6", + "313142": "bf8652", + "943a52": "472614", + "e64a52": "4f3217", + "7badf7": "bb5c3a" + }, + "2": { + "736352": "611c7f", + "4a4a73": "121031", + "63637b": "dee4f4", + "b59c5a": "9a31be", + "637bb5": "222352", + "4a4a63": "bbc2e5", + "ffe65a": "e25ce8", + "313142": "8883d4", + "943a52": "614b9a", + "e64a52": "6f5dac", + "7badf7": "303465" + } +} \ No newline at end of file diff --git a/public/images/pokemon/variant/405.json b/public/images/pokemon/variant/405.json new file mode 100644 index 00000000000..1f6a0590bb8 --- /dev/null +++ b/public/images/pokemon/variant/405.json @@ -0,0 +1,28 @@ +{ + "1": { + "b59c5a": "45babf", + "7badf7": "bb5c3a", + "63637b": "f1dfb1", + "637bb5": "903325", + "943a52": "472614", + "4a4a63": "dcb788", + "ffe65a": "59dcd6", + "313142": "bf8652", + "4a4a73": "671919", + "e64a52": "4f3217", + "736352": "267789" + }, + "2": { + "b59c5a": "9a31be", + "7badf7": "303465", + "63637b": "dee4f4", + "637bb5": "222352", + "943a52": "614b9a", + "4a4a63": "bbc2e5", + "ffe65a": "e25ce8", + "313142": "8883d4", + "4a4a73": "121031", + "e64a52": "6f5dac", + "736352": "611c7f" + } +} \ No newline at end of file diff --git a/public/images/pokemon/variant/417.json b/public/images/pokemon/variant/417.json new file mode 100644 index 00000000000..27f45e74557 --- /dev/null +++ b/public/images/pokemon/variant/417.json @@ -0,0 +1,36 @@ +{ + "1": { + "101010": "101010", + "3e364e": "734430", + "524941": "732e12", + "5a524a": "642f1a", + "4a425a": "5f2618", + "84523a": "9b314f", + "ef845a": "e26e6e", + "c5a563": "e95d6c", + "ffd663": "f17c7c", + "637b9c": "86452b", + "7bb5e6": "a25f37", + "cec5c5": "e8be64", + "f7f7f7": "faeda9", + "ffffff": "ffffff", + "7b7b84": "8e623c" + }, + "2": { + "101010": "101010", + "3e364e": "203243", + "524941": "2d284c", + "5a524a": "0f203a", + "4a425a": "23704c", + "84523a": "693939", + "ef845a": "e1b8ac", + "c5a563": "5ae7f6", + "ffd663": "8ffaff", + "637b9c": "a2dc76", + "7bb5e6": "e4fba1", + "cec5c5": "357577", + "f7f7f7": "5ba297", + "ffffff": "ffffff", + "7b7b84": "1f3f4e" + } +} \ No newline at end of file diff --git a/public/images/pokemon/variant/420.json b/public/images/pokemon/variant/420.json new file mode 100644 index 00000000000..6910d49d9d2 --- /dev/null +++ b/public/images/pokemon/variant/420.json @@ -0,0 +1,32 @@ +{ + "1": { + "101010": "101010", + "423131": "103d47", + "6b3a4a": "09303b", + "314252": "8f3833", + "3a734a": "ab554b", + "843152": "185158", + "ad426b": "368a7f", + "429442": "d98b77", + "52a54a": "f7bfa8", + "73ce5a": "fcdbc7", + "de6384": "51b095", + "ff8cad": "73d9ae", + "ffffff": "ffffff" + }, + "2": { + "101010": "101010", + "423131": "390f26", + "6b3a4a": "29091b", + "314252": "752a4a", + "3a734a": "9c4861", + "843152": "3b0d21", + "ad426b": "571539", + "429442": "a86a79", + "52a54a": "c29597", + "73ce5a": "dec3c3", + "de6384": "752648", + "ff8cad": "ad5168", + "ffffff": "ffffff" + } +} \ No newline at end of file diff --git a/public/images/pokemon/variant/421-overcast.json b/public/images/pokemon/variant/421-overcast.json new file mode 100644 index 00000000000..77c5c18415d --- /dev/null +++ b/public/images/pokemon/variant/421-overcast.json @@ -0,0 +1,34 @@ +{ + "1": { + "101010": "101010", + "105221": "ab554b", + "4a2942": "5e1228", + "7b294a": "103d47", + "7a2a4a": "236e6a", + "427b4a": "d98b77", + "6b427b": "962a3e", + "a53a63": "368a7f", + "ce527b": "51b095", + "52ad5a": "f7bfa8", + "5ac55a": "fcdbc7", + "845aad": "c75058", + "9c7bbd": "db7f7f", + "de7394": "73d9ae" + }, + "2": { + "101010": "101010", + "105221": "995969", + "4a2942": "521d44", + "7b294a": "390f26", + "7a2a4a": "571539", + "427b4a": "ba8087", + "6b427b": "8f4270", + "a53a63": "611c3b", + "ce527b": "752648", + "52ad5a": "cf9d9d", + "5ac55a": "e3cbca", + "845aad": "a86886", + "9c7bbd": "d197ac", + "de7394": "ad5168" + } +} \ No newline at end of file diff --git a/public/images/pokemon/variant/421-sunshine.json b/public/images/pokemon/variant/421-sunshine.json new file mode 100644 index 00000000000..096641576c9 --- /dev/null +++ b/public/images/pokemon/variant/421-sunshine.json @@ -0,0 +1,40 @@ +{ + "1": { + "101010": "101010", + "006310": "e6d590", + "941e3f": "103d47", + "9c6b10": "c4655a", + "941f40": "5c1547", + "942142": "591230", + "ce3a6b": "751a38", + "cf3c6d": "872e5c", + "cf3e6e": "368a7f", + "19943a": "f0f0bd", + "d6b55a": "db8e7d", + "f7de73": "f7bfa8", + "e66394": "51b095", + "de84ad": "962a3e", + "ffa5c5": "c75058", + "ffe6f7": "d0fdf0", + "ffffff": "ffffff" + }, + "2": { + "101010": "101010", + "006310": "72559e", + "941e3f": "390f26", + "9c6b10": "4a2942", + "941f40": "3a234a", + "942142": "804058", + "ce3a6b": "995969", + "cf3c6d": "563666", + "cf3e6e": "571539", + "19943a": "9574b3", + "d6b55a": "914972", + "f7de73": "b35f86", + "e66394": "752648", + "de84ad": "cf9d9d", + "ffa5c5": "e3cbca", + "ffe6f7": "d26393", + "ffffff": "ffffff" + } +} \ No newline at end of file diff --git a/public/images/pokemon/variant/446.json b/public/images/pokemon/variant/446.json new file mode 100644 index 00000000000..60d20fba25a --- /dev/null +++ b/public/images/pokemon/variant/446.json @@ -0,0 +1,38 @@ +{ + "1": { + "000000": "101010", + "104242": "4d0f3f", + "215a73": "701a55", + "317b9c": "943469", + "3194b5": "ad4b70", + "524a10": "91504e", + "73737b": "756363", + "7b5a31": "522663", + "948442": "351b52", + "9c3a42": "714084", + "b5b563": "de9494", + "cccfce": "cbc4c4", + "cecece": "cecece", + "de9494": "a270b5", + "efe684": "f0beb1", + "ffffff": "ffffff" + }, + "2": { + "000000": "101010", + "104242": "6398b7", + "215a73": "a3cacd", + "317b9c": "cbe4e2", + "3194b5": "edf5f4", + "524a10": "233f69", + "73737b": "525266", + "7b5a31": "e6cda1", + "948442": "c2986e", + "9c3a42": "487d43", + "b5b563": "38638f", + "cccfce": "bfc7cb", + "cecece": "cecece", + "de9494": "9cb780", + "efe684": "4781a8", + "ffffff": "ffffff" + } +} \ No newline at end of file diff --git a/public/images/pokemon/variant/472.json b/public/images/pokemon/variant/472.json index 937ea1334de..9e19b9f2353 100644 --- a/public/images/pokemon/variant/472.json +++ b/public/images/pokemon/variant/472.json @@ -1,33 +1,34 @@ { "1": { - "5a63a5": "974d16", - "de3a6b": "4c83a9", - "293163": "5c2a09", - "424252": "2a2752", - "ffde00": "84b8ff", - "b5a5ff": "e9bb57", - "6b6b7b": "48487a", - "737bc5": "b86f27", - "730800": "143262", - "9c8cef": "d28b36", - "ad2131": "2a6197", - "c55294": "5270c5", "ad9400": "4b64ff", - "2a2a2a": "130e27" + "c55294": "5270c5", + "9c8cef": "d28b36", + "424252": "2a2752", + "de3a6b": "4c83a9", + "2a2a2a": "130e27", + "6b6b7b": "48487a", + "b5a5ff": "e9bb57", + "ffde00": "84b8ff", + "ad2131": "2a6197", + "737bc5": "b86f27", + "5a63a5": "974d16", + "293163": "5c2a09", + "730800": "143262" }, "2": { - "5a63a5": "731e37", - "de3a6b": "594b6a", - "293163": "43050d", - "424252": "57b6a6", - "ffde00": "6bffd4", - "b5a5ff": "eb6a64", - "6b6b7b": "81e4c2", - "737bc5": "952b41", - "730800": "262138", - "9c8cef": "b3404a", - "ad2131": "453b57", "ad9400": "16a9c0", - "2a2a2a": "103f47" + "c55294": "e38b3d", + "9c8cef": "b3404a", + "424252": "57b6a6", + "de3a6b": "594b6a", + "2a2a2a": "103f47", + "6b6b7b": "81e4c2", + "b5a5ff": "eb6a64", + "ffde00": "6bffd4", + "ad2131": "453b57", + "737bc5": "952b41", + "5a63a5": "731e37", + "293163": "43050d", + "730800": "262138" } } \ No newline at end of file diff --git a/public/images/pokemon/variant/476.json b/public/images/pokemon/variant/476.json new file mode 100644 index 00000000000..5f54f51d1f9 --- /dev/null +++ b/public/images/pokemon/variant/476.json @@ -0,0 +1,36 @@ +{ + "1": { + "101010": "101010", + "5a2921": "0e291d", + "7b3129": "1e3f30", + "293a4a": "352310", + "3a4a5a": "59452f", + "bd3152": "30594a", + "e65a63": "578b6b", + "194a84": "62230e", + "3a63ad": "9d3a18", + "5a7bce": "c76227", + "ef7b8c": "77b472", + "739ce6": "de7f36", + "84adf7": "e68c43", + "c5cede": "c5cede", + "ffffff": "ffffff" + }, + "2": { + "101010": "101010", + "5a2921": "21132c", + "7b3129": "301b3f", + "293a4a": "111b28", + "3a4a5a": "253142", + "bd3152": "482a5e", + "e65a63": "6a5394", + "194a84": "30578e", + "3a63ad": "5b97c1", + "5a7bce": "92dee8", + "ef7b8c": "747fc4", + "739ce6": "dbfff4", + "84adf7": "c2efe5", + "c5cede": "c5cede", + "ffffff": "ffffff" + } +} \ No newline at end of file diff --git a/public/images/pokemon/variant/498.json b/public/images/pokemon/variant/498.json new file mode 100644 index 00000000000..b23a3afec63 --- /dev/null +++ b/public/images/pokemon/variant/498.json @@ -0,0 +1,44 @@ +{ + "1": { + "101010": "101010", + "2e1e1e": "b1a385", + "2e1f1f": "d1c5ab", + "302020": "11241c", + "312121": "1e2a4d", + "47382f": "472770", + "473830": "f7f5e9", + "4a3a31": "2d405c", + "7a3827": "1c2e1b", + "7b3a29": "194737", + "947310": "cc955e", + "bd6331": "3b805f", + "ce423a": "3e4f37", + "a54a42": "2d452b", + "e66b29": "b5cca5", + "efbd08": "f0cc8b", + "ef843a": "65b57c", + "c5ada5": "c1c5a5", + "ffffff": "ffffff" + }, + "2": { + "101010": "101010", + "2e1e1e": "ac8b61", + "2e1f1f": "c4a884", + "302020": "111424", + "312121": "47150e", + "47382f": "456da8", + "473830": "e0d3ab", + "4a3a31": "733421", + "7a3827": "222742", + "7b3a29": "522e2e", + "947310": "828399", + "bd6331": "85564e", + "ce423a": "323754", + "a54a42": "4c5275", + "e66b29": "778aa6", + "efbd08": "c7c8d9", + "ef843a": "ab8274", + "c5ada5": "dddef0", + "ffffff": "ffffff" + } +} \ No newline at end of file diff --git a/public/images/pokemon/variant/499.json b/public/images/pokemon/variant/499.json new file mode 100644 index 00000000000..ad525f3e114 --- /dev/null +++ b/public/images/pokemon/variant/499.json @@ -0,0 +1,40 @@ +{ + "1": { + "101010": "101010", + "3a2121": "1e2a4d", + "3a3a3a": "122b18", + "523129": "2d405c", + "7a3827": "1c2e1b", + "7b3a29": "234f3d", + "736310": "ab6441", + "4a4a4a": "264524", + "bd5a31": "41785a", + "ce423a": "3e4f37", + "ef7329": "62a174", + "b59421": "cc955e", + "efc53a": "f0cc8b", + "c5ada5": "c5ada5", + "c4aea7": "c4aea7", + "fcfcfc": "fcfcfc", + "ffffff": "ffffff" + }, + "2": { + "101010": "101010", + "3a2121": "47150e", + "3a3a3a": "1c2245", + "523129": "733421", + "7a3827": "222742", + "7b3a29": "533330", + "736310": "3c3e5b", + "4a4a4a": "272d4f", + "bd5a31": "7a5a56", + "ce423a": "323754", + "ef7329": "967a71", + "b59421": "828399", + "efc53a": "c7c8d9", + "c5ada5": "c4a884", + "c4aea7": "c4aea7", + "fcfcfc": "e0d3ab", + "ffffff": "ffffff" + } +} \ No newline at end of file diff --git a/public/images/pokemon/variant/500.json b/public/images/pokemon/variant/500.json new file mode 100644 index 00000000000..028639cf6bb --- /dev/null +++ b/public/images/pokemon/variant/500.json @@ -0,0 +1,56 @@ +{ + "1": { + "101010": "101010", + "1f1f1f": "0e1a10", + "212121": "1e2a4d", + "313131": "2d405c", + "333333": "2c2f35", + "741910": "472770", + "7a1910": "1c2e1b", + "7b1910": "257036", + "7a1a11": "445e3f", + "732900": "2c473e", + "7b5a08": "ab6441", + "a53a31": "3e4f37", + "e62a29": "1d1151", + "e63127": "58db58", + "e63129": "627556", + "bd5221": "3e6952", + "ef6321": "699676", + "b58c21": "cc955e", + "ef8c08": "86e677", + "efbd08": "f0cc8b", + "f0be0a": "c7f797", + "adadad": "a3a6ad", + "b0b0b0": "b0b0b0", + "f7f7f7": "e4eef5", + "fafafa": "fafafa" + }, + "2": { + "101010": "101010", + "1f1f1f": "0f162a", + "212121": "47150e", + "313131": "733421", + "333333": "3b352b", + "741910": "456da8", + "7a1910": "20243d", + "7b1910": "ba843d", + "7a1a11": "3c3f59", + "732900": "522e2e", + "7b5a08": "3c3e5b", + "a53a31": "2d3250", + "e62a29": "1d3f70", + "e63127": "e6ca65", + "e63129": "464a66", + "bd5221": "7a5a56", + "ef6321": "967a71", + "b58c21": "828399", + "ef8c08": "f2d591", + "efbd08": "c7c8d9", + "f0be0a": "faefc7", + "adadad": "c4a884", + "b0b0b0": "b0b0b0", + "f7f7f7": "e0d3ab", + "fafafa": "fafafa" + } +} \ No newline at end of file diff --git a/public/images/pokemon/variant/511.json b/public/images/pokemon/variant/511.json new file mode 100644 index 00000000000..5e278b5e0fc --- /dev/null +++ b/public/images/pokemon/variant/511.json @@ -0,0 +1,26 @@ +{ + "1": { + "ffce7b": "edc293", + "f79cad": "f77e94", + "b5637b": "a3415f", + "84ce9c": "e6c545", + "194a29": "912f1c", + "087331": "c45331", + "087030": "8c5915", + "cea55a": "d9a177", + "735221": "bd7653", + "19a552": "d97b41" + }, + "2": { + "ffce7b": "8ecaed", + "f79cad": "f788cb", + "b5637b": "b5539d", + "84ce9c": "ffa8dc", + "194a29": "4c2d7a", + "087331": "683b8c", + "087030": "d16fb9", + "cea55a": "73acde", + "735221": "3f6aa6", + "19a552": "8a53a6" + } +} \ No newline at end of file diff --git a/public/images/pokemon/variant/512.json b/public/images/pokemon/variant/512.json new file mode 100644 index 00000000000..903ff3906bb --- /dev/null +++ b/public/images/pokemon/variant/512.json @@ -0,0 +1,32 @@ +{ + "1": { + "a57b3a": "a65b3d", + "4f4f4f": "a36e46", + "087331": "c74638", + "194a29": "a12d25", + "c5c5c5": "dbc086", + "735221": "733224", + "ffce7b": "eab68b", + "84ce9c": "ebb54b", + "fcfcfc": "ebe0ab", + "cea55a": "c8895f", + "087030": "9e6426", + "9c9c9c": "cfa067", + "19a552": "ed6f53" + }, + "2": { + "a57b3a": "3762bf", + "4f4f4f": "3073ab", + "087331": "522880", + "194a29": "331961", + "c5c5c5": "5bc6de", + "735221": "2a42a1", + "ffce7b": "58aee0", + "84ce9c": "ffa8dc", + "fcfcfc": "79f7f3", + "cea55a": "4686cf", + "087030": "d16fb9", + "9c9c9c": "4099c2", + "19a552": "6e368f" + } +} \ No newline at end of file diff --git a/public/images/pokemon/variant/513.json b/public/images/pokemon/variant/513.json new file mode 100644 index 00000000000..9a19fbc4977 --- /dev/null +++ b/public/images/pokemon/variant/513.json @@ -0,0 +1,26 @@ +{ + "1": { + "ffce7b": "ffe6c9", + "bd423a": "28629c", + "e65242": "3d9bbe", + "7b3131": "1b3e70", + "a57b3a": "e4907f", + "cea55a": "f9b9a2", + "bd453c": "67bdc7", + "735221": "c3635b", + "f79442": "a6f5e9" + }, + "2": { + "ffce7b": "ed8c7b", + "bd423a": "d5b393", + "e65242": "f4ecd7", + "7b3131": "ad7a63", + "a57b3a": "bc2f2f", + "525252": "22607d", + "cea55a": "d4554c", + "bd453c": "e7613c", + "848484": "368d9e", + "735221": "a1272f", + "f79442": "fe934f" + } +} \ No newline at end of file diff --git a/public/images/pokemon/variant/514.json b/public/images/pokemon/variant/514.json new file mode 100644 index 00000000000..c42a3878cc1 --- /dev/null +++ b/public/images/pokemon/variant/514.json @@ -0,0 +1,37 @@ +{ + "1": { + "999999": "6f94c7", + "bd423a": "265494", + "e65242": "3a7bb5", + "7a3131": "386f94", + "3b3b3b": "465f9e", + "c5c5c5": "97c0e6", + "611b2d": "193170", + "ffce7b": "ffe2bf", + "f79442": "76e2e8", + "fcfcfc": "c0e7fc", + "a57b3a": "d99479", + "cea55a": "edba9a", + "bd4139": "509cbf", + "73572d": "ba6a57" + }, + "2": { + "999999": "cc762b", + "bd423a": "cfb88f", + "e65242": "ede9d1", + "7a3131": "cc592b", + "3b3b3b": "ad4d1d", + "c5c5c5": "e3a13d", + "611b2d": "a88260", + "c7c7c7": "54abb3", + "ffce7b": "cc643b", + "525252": "22607d", + "f79442": "f7ab4d", + "fcfcfc": "f7cc57", + "a57b3a": "782017", + "cea55a": "943722", + "bd4139": "e07a3a", + "9c9c9c": "368d9e", + "73572d": "5c0e0e" + } +} \ No newline at end of file diff --git a/public/images/pokemon/variant/515.json b/public/images/pokemon/variant/515.json new file mode 100644 index 00000000000..66d23ed94da --- /dev/null +++ b/public/images/pokemon/variant/515.json @@ -0,0 +1,28 @@ +{ + "1": { + "ffce7b": "fff187", + "9ce6ef": "add687", + "188bab": "42753d", + "a57b3a": "b5893c", + "9de8f2": "86e387", + "21739c": "136b3b", + "198cad": "219448", + "29b5de": "34c15e", + "cea55a": "e0c265", + "735221": "735f21", + "003a73": "0a4a2d" + }, + "2": { + "ffce7b": "e76092", + "9ce6ef": "afc3fe", + "188bab": "8490e3", + "a57b3a": "b32e77", + "9de8f2": "f2bbd7", + "21739c": "cc70a4", + "198cad": "eb98bf", + "29b5de": "ffc9dd", + "cea55a": "cc4580", + "735221": "8f1f68", + "003a73": "a64e8b" + } +} \ No newline at end of file diff --git a/public/images/pokemon/variant/516.json b/public/images/pokemon/variant/516.json new file mode 100644 index 00000000000..c7c8ce95eb9 --- /dev/null +++ b/public/images/pokemon/variant/516.json @@ -0,0 +1,30 @@ +{ + "1": { + "a57b3a": "9c7935", + "106b8c": "08420d", + "003a73": "13571a", + "c5c5c5": "aecf86", + "735221": "7b5e29", + "ffce7b": "fadd73", + "9ce6ef": "cade6f", + "fcfcfc": "edf7c3", + "2290a8": "568c30", + "218ca5": "3c8c22", + "29b5de": "6fad37", + "cea55a": "c4a148" + }, + "2": { + "a57b3a": "b32e77", + "106b8c": "cc70a4", + "003a73": "a64e8b", + "c5c5c5": "59b7d4", + "735221": "8f1f68", + "ffce7b": "e76092", + "9ce6ef": "afc3fe", + "fcfcfc": "7cfcf7", + "2290a8": "8490e3", + "218ca5": "eb98bf", + "29b5de": "ffc9dd", + "cea55a": "cc4580" + } +} \ No newline at end of file diff --git a/public/images/pokemon/variant/522.json b/public/images/pokemon/variant/522.json new file mode 100644 index 00000000000..ed387dd09bb --- /dev/null +++ b/public/images/pokemon/variant/522.json @@ -0,0 +1,34 @@ +{ + "1": { + "7b7b7b": "505a9b", + "525252": "95355d", + "cecece": "788bcb", + "ffe600": "61e4bf", + "a5a5a5": "7e98dc", + "005a9c": "75c239", + "505050": "3d4488", + "ffffff": "b9cfef", + "191f1f": "2e0d1f", + "3a3a3a": "731f51", + "00adde": "b9e96c", + "8c7321": "33a08a", + "292929": "53173b", + "192121": "43172f" + }, + "2": { + "7b7b7b": "731515", + "525252": "ebc37d", + "cecece": "97221a", + "ffe600": "36c294", + "a5a5a5": "d37047", + "005a9c": "30309d", + "505050": "4e1416", + "ffffff": "c23e2e", + "191f1f": "370b0b", + "3a3a3a": "d3874e", + "00adde": "3e4ddc", + "8c7321": "288278", + "292929": "914824", + "192121": "661212" + } +} \ No newline at end of file diff --git a/public/images/pokemon/variant/523.json b/public/images/pokemon/variant/523.json new file mode 100644 index 00000000000..daf0e7ec6d6 --- /dev/null +++ b/public/images/pokemon/variant/523.json @@ -0,0 +1,42 @@ +{ + "1": { + "777777": "47548f", + "363d3d": "353573", + "005a9c": "75c239", + "ffffff": "b9cfef", + "171f1f": "430f30", + "797979": "7080c6", + "8c7321": "33a08a", + "293131": "6a1d44", + "5b5b5b": "3d467d", + "8a711e": "33a08a", + "3a4242": "84294f", + "353535": "43172f", + "ffe600": "61e4bf", + "3a3a3a": "5d213a", + "00adde": "b9e96c", + "cecece": "7e91d3", + "a5a5a5": "5265a4", + "192121": "57163d" + }, + "2": { + "777777": "731515", + "363d3d": "4e1416", + "005a9c": "30309d", + "ffffff": "c23e2e", + "171f1f": "661212", + "797979": "da7248", + "8c7321": "288278", + "293131": "c89161", + "5b5b5b": "641818", + "8a711e": "85cd99", + "3a4242": "ebc37d", + "353535": "501a19", + "ffe600": "36c294", + "3a3a3a": "682321", + "00adde": "3e4ddc", + "cecece": "97221a", + "a5a5a5": "861816", + "192121": "9e533b" + } +} \ No newline at end of file diff --git a/public/images/pokemon/variant/535.json b/public/images/pokemon/variant/535.json new file mode 100644 index 00000000000..bc44b1280dd --- /dev/null +++ b/public/images/pokemon/variant/535.json @@ -0,0 +1,31 @@ +{ + "1": { + "6bbdff": "a9c4d7", + "5b5959": "801941", + "626262": "615757", + "3f3f3f": "3e3838", + "385f87": "801941", + "292929": "420e2d", + "6c8ec1": "b53a57", + "62b4f6": "d65a5a", + "7394c5": "6f8fb1", + "424242": "5e1a39", + "3a638c": "40567d" + }, + "2": { + "6bbdff": "672a23", + "5b5959": "d76d39", + "626262": "5a6363", + "3f3f3f": "363c3e", + "385f87": "ac6634", + "292929": "7d2414", + "6c8ec1": "cd984a", + "945a4a": "52809b", + "62b4f6": "f3cd69", + "ffdebd": "aadfe0", + "7394c5": "54131a", + "424242": "ac4423", + "c59c84": "7fb8c2", + "3a638c": "420f1d" + } +} \ No newline at end of file diff --git a/public/images/pokemon/variant/536.json b/public/images/pokemon/variant/536.json new file mode 100644 index 00000000000..40d3ea06a02 --- /dev/null +++ b/public/images/pokemon/variant/536.json @@ -0,0 +1,44 @@ +{ + "1": { + "000000": "101010", + "292929": "400a32", + "10427b": "40567d", + "196373": "73163a", + "424242": "5e1246", + "5a5a5a": "58504b", + "615f5f": "906f59", + "636363": "801c4e", + "945a4a": "945a4a", + "296bad": "6f8fb1", + "52a5b5": "b53a57", + "0894d6": "a9c4d7", + "c59c84": "c59c84", + "ffdebd": "e3c998", + "84e6d6": "d65a5a", + "c0c0c0": "c9b38b", + "c5c5c5": "c08031", + "d1d1d1": "ffffff", + "ffffff": "e6b854" + }, + "2": { + "000000": "101010", + "292929": "7d2414", + "10427b": "4a1423", + "196373": "ac6634", + "424242": "ac4423", + "5a5a5a": "114232", + "615f5f": "467692", + "636363": "d76d39", + "945a4a": "44718c", + "296bad": "5d171e", + "52a5b5": "cd984a", + "0894d6": "75332b", + "c59c84": "7fb8c2", + "ffdebd": "aadfe0", + "84e6d6": "f3cd69", + "c0c0c0": "6fa6be", + "c5c5c5": "378c70", + "d1d1d1": "ffffff", + "ffffff": "5bb186" + } +} \ No newline at end of file diff --git a/public/images/pokemon/variant/537.json b/public/images/pokemon/variant/537.json new file mode 100644 index 00000000000..99c9aaf0382 --- /dev/null +++ b/public/images/pokemon/variant/537.json @@ -0,0 +1,33 @@ +{ + "1": { + "404040": "631739", + "196373": "801941", + "10427b": "40567d", + "52a58c": "b53a57", + "636363": "801c4e", + "0894d6": "a9c4d7", + "ef5a3a": "e6b854", + "296bad": "6f8fb1", + "b53a21": "c08031", + "73e6ce": "d65a5a", + "424242": "5e1246", + "363636": "400a32", + "292929": "440f2f" + }, + "2": { + "404040": "323c39", + "196373": "883e24", + "10427b": "370b10", + "52a58c": "bf8d44", + "636363": "d76d39", + "0894d6": "75332b", + "ef5a3a": "5fc592", + "296bad": "561b21", + "b53a21": "33866c", + "73e6ce": "f9d576", + "c5c5c5": "ffffff", + "424242": "ac4423", + "363636": "611d11", + "292929": "7b2a17" + } +} \ No newline at end of file diff --git a/public/images/pokemon/variant/554.json b/public/images/pokemon/variant/554.json new file mode 100644 index 00000000000..85cee2b5e73 --- /dev/null +++ b/public/images/pokemon/variant/554.json @@ -0,0 +1,36 @@ +{ + "1": { + "101010": "101010", + "3a2919": "946344", + "571515": "2e3573", + "5a1919": "a16012", + "634231": "b0895f", + "5a5a5a": "5a5a5a", + "9c2929": "4e5aa3", + "ce3131": "6c7ec4", + "947310": "bda373", + "ad5a29": "d19628", + "cea519": "cfc191", + "ffce21": "e3e2ba", + "ff9452": "e8c661", + "a5a5ad": "a5a5ad", + "ffffff": "ffffff" + }, + "2": { + "101010": "101010", + "3a2919": "3a2919", + "571515": "bf7558", + "5a1919": "291d1b", + "634231": "941c32", + "5a5a5a": "5a5a5a", + "9c2929": "d6a376", + "ce3131": "f0e2b9", + "947310": "9c1c2b", + "ad5a29": "4a3021", + "cea519": "ba343d", + "ffce21": "d14949", + "ff9452": "614b38", + "a5a5ad": "a5a5ad", + "ffffff": "ffffff" + } +} \ No newline at end of file diff --git a/public/images/pokemon/variant/555-zen.json b/public/images/pokemon/variant/555-zen.json new file mode 100644 index 00000000000..da85df60fdb --- /dev/null +++ b/public/images/pokemon/variant/555-zen.json @@ -0,0 +1,32 @@ +{ + "1": { + "101010": "101010", + "215263": "592226", + "3a7b8c": "7d3e3d", + "425a63": "b5775b", + "4a4a52": "4a4a52", + "529cad": "8c5b54", + "7b5229": "3b3f87", + "7ba5bd": "c99d7b", + "9c9ca5": "9c9ca5", + "ad6b29": "5e65b5", + "b5d6ef": "e0c19b", + "e6a563": "7b8dd4", + "f7f7f7": "f7f7f7" + }, + "2": { + "101010": "101010", + "215263": "523273", + "3a7b8c": "805a9c", + "425a63": "2e2a51", + "4a4a52": "4a4a52", + "529cad": "a278b0", + "7b5229": "9e907e", + "7ba5bd": "494162", + "9c9ca5": "9c9ca5", + "ad6b29": "bab5a6", + "b5d6ef": "605375", + "e6a563": "f5f3e9", + "f7f7f7": "f7f7f7" + } +} \ No newline at end of file diff --git a/public/images/pokemon/variant/555.json b/public/images/pokemon/variant/555.json new file mode 100644 index 00000000000..97d623f0d7d --- /dev/null +++ b/public/images/pokemon/variant/555.json @@ -0,0 +1,36 @@ +{ + "1": { + "101010": "101010", + "4a4a52": "4a4a52", + "523a21": "a65f33", + "631919": "222675", + "6b5a10": "b04a21", + "8c1929": "2d3685", + "8c8c9c": "8c8c9c", + "ad2119": "3a4c94", + "b57b4a": "d9a455", + "bd0000": "cfc191", + "bd9429": "c26932", + "ef1010": "e3e2ba", + "efa56b": "e8cd7b", + "efce10": "d9944a", + "f7f7f7": "f7f7f7" + }, + "2": { + "101010": "101010", + "4a4a52": "4a4a52", + "523a21": "291b19", + "631919": "a86722", + "6b5a10": "941c32", + "8c1929": "d6993e", + "8c8c9c": "8c8c9c", + "ad2119": "e8ca5d", + "b57b4a": "4a3021", + "bd0000": "bab5a6", + "bd9429": "ba343d", + "ef1010": "f5f3e9", + "efa56b": "614b38", + "efce10": "d14949", + "f7f7f7": "f7f7f7" + } +} \ No newline at end of file diff --git a/public/images/pokemon/variant/566.json b/public/images/pokemon/variant/566.json new file mode 100644 index 00000000000..cb2601d4a93 --- /dev/null +++ b/public/images/pokemon/variant/566.json @@ -0,0 +1,32 @@ +{ + "1": { + "101010": "101010", + "10316b": "1c4943", + "31529c": "336d60", + "3184f7": "4f9279", + "3a3a3a": "3a3a3a", + "523131": "641b49", + "524229": "2f6934", + "944242": "aa3c79", + "9c9cad": "9c9cad", + "bd9452": "66b562", + "de524a": "eb7fae", + "e6e6e6": "e6e6e6", + "f7ce63": "9be08b" + }, + "2": { + "101010": "101010", + "10316b": "283957", + "31529c": "929bdf", + "3184f7": "c4d3ff", + "3a3a3a": "3a3a3a", + "523131": "284452", + "524229": "211f69", + "944242": "44988f", + "9c9cad": "9c9cad", + "bd9452": "3b4bad", + "de524a": "65cda4", + "e6e6e6": "e6e6e6", + "f7ce63": "557ecd" + } +} \ No newline at end of file diff --git a/public/images/pokemon/variant/567.json b/public/images/pokemon/variant/567.json new file mode 100644 index 00000000000..f4bb6a76111 --- /dev/null +++ b/public/images/pokemon/variant/567.json @@ -0,0 +1,37 @@ +{ + "1": { + "101010": "101010", + "523131": "454f52", + "635229": "2f6934", + "10316b": "1c4943", + "086b5a": "b3296b", + "9c4a4a": "7b8687", + "844252": "844252", + "de524a": "abb3b3", + "bd9452": "66b562", + "f7ce63": "9be08b", + "31529c": "336d60", + "10a594": "ee609d", + "3184f7": "4f9279", + "9c9cad": "9c9cad", + "ffffff": "ffffff" + }, + "2": { + "101010": "101010", + "523131": "284452", + "635229": "211f69", + "10316b": "283957", + "086b5a": "462d7e", + "9c4a4a": "44988f", + "844252": "844252", + "de524a": "65cda4", + "bd9452": "3b4bad", + "f7ce63": "557ecd", + "31529c": "929bdf", + "10a594": "7346a1", + "3184f7": "c4d3ff", + "9c9cad": "9c9cad", + "ffffff": "ffffff" + + } +} diff --git a/public/images/pokemon/variant/572.json b/public/images/pokemon/variant/572.json index 87200b60097..84a300c590d 100644 --- a/public/images/pokemon/variant/572.json +++ b/public/images/pokemon/variant/572.json @@ -1,24 +1,28 @@ { "1": { - "8c847b": "b2af6e", - "524a42": "525042", - "ffffff": "ffffff", - "decec5": "decec5", - "bdb5a5": "dad7a1", - "bd2929": "f28989", - "101010": "101010", - "d65252": "f8c1c1", - "ef8484": "fab7b7" + "4f473f": "113026", + "4d443e": "428066", + "918b83": "60a37b", + "d65252": "458256", + "47403b": "802b50", + "faf5f5": "b3e8ba", + "8c847b": "b34967", + "decec5": "87cc9a", + "bdb5a5": "cf6b77", + "bd2929": "256145", + "ef8484": "63a86a" }, "2": { - "8c847b": "5f807e", - "524a42": "5f807e", - "ffffff": "d7e8e6", - "decec5": "cbdcda", - "bdb5a5": "aec8c6", - "bd2929": "b08631", - "101010": "101010", - "d65252": "e6c88d", - "ef8484": "dab977" + "4f473f": "19d684", + "4d443e": "466336", + "918b83": "67824d", + "d65252": "82a65e", + "47403b": "101931", + "faf5f5": "d9e3aa", + "8c847b": "193457", + "decec5": "7f915e", + "bdb5a5": "294a6b", + "bd2929": "558f45", + "ef8484": "b4cf88" } } \ No newline at end of file diff --git a/public/images/pokemon/variant/573.json b/public/images/pokemon/variant/573.json new file mode 100644 index 00000000000..3f4ce9e186f --- /dev/null +++ b/public/images/pokemon/variant/573.json @@ -0,0 +1,26 @@ +{ + "1": { + "bdb5b5": "60a67c", + "877e76": "458766", + "decec5": "87cc9a", + "4f473f": "113026", + "bdad9c": "cf6b77", + "faf5f5": "b3e8ba", + "d65252": "256145", + "4d453f": "802b50", + "8a8078": "b34967", + "ef8484": "58a672" + }, + "2": { + "bdb5b5": "597041", + "877e76": "3d542d", + "decec5": "7f915e", + "4f473f": "19d684", + "bdad9c": "294a6b", + "faf5f5": "d9e3aa", + "d65252": "558f45", + "4d453f": "101931", + "8a8078": "193457", + "ef8484": "b4cf88" + } +} \ No newline at end of file diff --git a/public/images/pokemon/variant/626.json b/public/images/pokemon/variant/626.json new file mode 100644 index 00000000000..2f23c357b34 --- /dev/null +++ b/public/images/pokemon/variant/626.json @@ -0,0 +1,52 @@ +{ + "1": { + "101010": "101010", + "2b231c": "342b22", + "312921": "303120", + "4a3119": "122119", + "593b24": "362126", + "4a4231": "4a4831", + "6b4a29": "565796", + "694b2c": "513236", + "694b2d": "5f3539", + "714d29": "2d4a3a", + "3a3a42": "4d150f", + "6b6b73": "802d1f", + "946b31": "4d6650", + "966d34": "983525", + "ad8c29": "8580c4", + "9c845a": "9e655c", + "9c845c": "9e655e", + "9c855d": "9e655cx", + "bda57b": "bd8c7b", + "ffc54a": "c0b5eb", + "9ca5a5": "a34933", + "f7d69c": "f38d5d", + "fff7ce": "fed292" + }, + "2": { + "101010": "101010", + "2b231c": "443520", + "312921": "962430", + "4a3119": "855168", + "593b24": "905932", + "4a4231": "cc4545", + "6b4a29": "678db8", + "694b2c": "907532", + "694b2d": "907d32", + "714d29": "c17c95", + "3a3a42": "7f5310", + "6b6b73": "d49612", + "946b31": "e4b3b3", + "966d34": "92bcd4", + "ad8c29": "ca8928", + "9c845a": "beab6c", + "9c845c": "d2c084", + "9c855d": "db9a39", + "bda57b": "efeac2", + "ffc54a": "c2e5f0", + "9ca5a5": "e9ca5a", + "f7d69c": "f5cc51", + "fff7ce": "fff1be" + } +} \ No newline at end of file diff --git a/public/images/pokemon/variant/643.json b/public/images/pokemon/variant/643.json new file mode 100644 index 00000000000..32afc3ef939 --- /dev/null +++ b/public/images/pokemon/variant/643.json @@ -0,0 +1,52 @@ +{ + "1": { + "4b4b6b": "a58419", + "faf5f5": "7b7e8a", + "ff6331": "ffee6b", + "3f3e5c": "374052", + "f7f8ff": "414659", + "616587": "2c2d45", + "ffa531": "fcfade", + "757b96": "d6c563", + "31314d": "1f2230", + "6e7491": "212236", + "3ab5f7": "e0912f", + "454166": "232738", + "de2908": "ffca0a", + "b8b9d1": "f0edc2", + "c1c1d6": "565a69", + "686d8c": "596675", + "424061": "0d0d1a", + "afb1cc": "2f3247", + "d6c5b5": "f2f2d8", + "afb1c7": "97a5b0", + "e6b573": "f2ecaa", + "767e9c": "3c4154", + "f5ebeb": "e6e7ef" + }, + "2": { + "4b4b6b": "19323c", + "faf5f5": "7a8fe7", + "ff6331": "9df377", + "3f3e5c": "19143f", + "f7f8ff": "a9bbff", + "616587": "2d3984", + "ffa531": "5cdca6", + "757b96": "3a6d71", + "31314d": "160837", + "6e7491": "3c50a1", + "3ab5f7": "d95486", + "454166": "2d3984", + "de2908": "3e947c", + "b8b9d1": "4f9290", + "c1c1d6": "647bd9", + "686d8c": "2b2871", + "424061": "18225f", + "afb1cc": "647bd9", + "d6c5b5": "3d8073", + "afb1c7": "343d8e", + "e6b573": "4ba789", + "767e9c": "3c50a1", + "f5ebeb": "4459a2" + } +} \ No newline at end of file diff --git a/public/images/pokemon/variant/643_2.png b/public/images/pokemon/variant/643_2.png new file mode 100644 index 00000000000..fbd2a6e109c Binary files /dev/null and b/public/images/pokemon/variant/643_2.png differ diff --git a/public/images/pokemon/variant/644.json b/public/images/pokemon/variant/644.json new file mode 100644 index 00000000000..e84e7373389 --- /dev/null +++ b/public/images/pokemon/variant/644.json @@ -0,0 +1,48 @@ +{ + "1": { + "1a1a21": "35296b", + "2c2c35": "c1c8e8", + "103a52": "251076", + "191921": "686c99", + "22222e": "705ba8", + "005da4": "4800e3", + "31313a": "cfd0e6", + "6bf7ff": "b77dff", + "00c5ff": "7626ff", + "1a1821": "7888c2", + "23232f": "8c9bd1", + "ce0000": "a44bf2", + "121212": "54428f", + "940000": "762fcc", + "52525a": "e6e7f2", + "003682": "4c29ab", + "08528c": "3b1899", + "212129": "9b9fc4", + "111111": "5b5f8c", + "009cde": "dbbaff", + "101010": "49568f" + }, + "2": { + "1a1a21": "350707", + "2c2c35": "9c5fa4", + "103a52": "671212", + "191921": "843172", + "22222e": "350707", + "005da4": "c8433a", + "31313a": "ef9dae", + "6bf7ff": "f5e5da", + "00c5ff": "fbd3a8", + "1a1821": "5e286f", + "23232f": "763e7f", + "ce0000": "f3d32c", + "121212": "210214", + "940000": "aa5d0e", + "52525a": "ffc5d1", + "003682": "671212", + "08528c": "821b1b", + "212129": "ca6c94", + "111111": "4a1a4c", + "009cde": "ef806b", + "101010": "3b1a4c" + } +} \ No newline at end of file diff --git a/public/images/pokemon/variant/646-black.json b/public/images/pokemon/variant/646-black.json new file mode 100644 index 00000000000..70094ae228b --- /dev/null +++ b/public/images/pokemon/variant/646-black.json @@ -0,0 +1,59 @@ +{ + "1": { + "2f2f38": "112240", + "6b8c7b": "2b4366", + "524a31": "203c5c", + "191921": "6a6a94", + "648776": "905dcf", + "315a42": "1a2b4d", + "e3e3dc": "d4c3f7", + "e8e8dc": "e6a18a", + "35353d": "c8c9e0", + "786655": "5482b0", + "ededeb": "ebd4c3", + "b3ac8b": "c77161", + "006b94": "4c13a1", + "3b3b42": "9e463f", + "2e5942": "484873", + "addec5": "426585", + "b59400": "b35a3e", + "004b6f": "4c13a1", + "7d6d5b": "b2bdd4", + "ada584": "78a9cc", + "ffff4a": "db966b", + "deddd3": "edc9ff", + "282830": "9b9bc2", + "23232b": "0c142e", + "1e1e26": "15213b", + "00b5ff": "a033ff", + "b6e3ca": "bb8ae3" + }, + "2": { + "2f2f38": "550f0f", + "6b8c7b": "be6e34", + "524a31": "550f0f", + "191921": "3d0d38", + "648776": "ea93a5", + "315a42": "7b2d25", + "e3e3dc": "ffadbe", + "e8e8dc": "e0e0cc", + "35353d": "913a7d", + "786655": "982222", + "b3ac8b": "cec7a7", + "006b94": "6b3773", + "3b3b42": "423f30", + "2e5942": "ca6c94", + "addec5": "e6b45b", + "b59400": "166a2d", + "004b6f": "411d46", + "7d6d5b": "982222", + "ada584": "c23232", + "ffff4a": "6ae649", + "deddd3": "ffc5d1", + "282830": "6c245b", + "23232b": "521610", + "1e1e26": "480b0b", + "00b5ff": "b464bf", + "b6e3ca": "ea93a5" + } +} \ No newline at end of file diff --git a/public/images/pokemon/variant/646-white.json b/public/images/pokemon/variant/646-white.json new file mode 100644 index 00000000000..ff46920d000 --- /dev/null +++ b/public/images/pokemon/variant/646-white.json @@ -0,0 +1,52 @@ +{ + "1": { + "101010": "101010", + "741a18": "9c5528", + "4a4a29": "2a446b", + "4a4a2d": "181930", + "4c4a2c": "1b2547", + "315a42": "1b2547", + "7b7b5a": "779fbf", + "73737b": "222342", + "942921": "d49748", + "e64a42": "ffe587", + "6b8c7b": "2e466b", + "cc9827": "b35a3e", + "ffde38": "db966b", + "ffde3a": "ffde3a", + "ffad63": "fff7c4", + "ada584": "b7dbeb", + "bdbdc5": "292b40", + "addec5": "45678a", + "f7f3f3": "f7f3f3", + "fbf8f8": "414659", + "fdf9f9": "fcfcfc", + "fcfcfc": "fcfcfc", + "ffffff": "ffffff" + }, + "2": { + "101010": "101010", + "741a18": "1f504d", + "4a4a29": "550f0f", + "4a4a2d": "1f1544", + "4c4a2c": "7b2d25", + "315a42": "7b2d25", + "7b7b5a": "982222", + "73737b": "2b2871", + "942921": "3d8073", + "e64a42": "4ba789", + "6b8c7b": "be6e34", + "cc9827": "166a2d", + "ffde38": "6ae649", + "ffde3a": "9df377", + "ffad63": "5cdca6", + "ada584": "c23232", + "bdbdc5": "3d458f", + "addec5": "e6b45b", + "f7f3f3": "f7f3f3", + "fbf8f8": "5870c4", + "fdf9f9": "4f9290", + "fcfcfc": "e2f9b5", + "ffffff": "ffffff" + } +} \ No newline at end of file diff --git a/public/images/pokemon/variant/646.json b/public/images/pokemon/variant/646.json new file mode 100644 index 00000000000..c8a0453a135 --- /dev/null +++ b/public/images/pokemon/variant/646.json @@ -0,0 +1,38 @@ +{ + "1": { + "8c7329": "b35a3e", + "949cad": "a6cfe0", + "3b3b4a": "39444c", + "103a52": "121836", + "ffe600": "db966b", + "73737b": "6394b0", + "373746": "121836", + "bde6ff": "3c5878", + "424252": "3d6285", + "696973": "606a73", + "ceb500": "a55c39", + "cecece": "bec9ce", + "def7ff": "577c96", + "6d737b": "a55c39", + "6b8494": "1a2647", + "ffffff": "edfcff", + "a5b5ce": "293c5e" + }, + "2": { + "8c7329": "166a2d", + "949cad": "c23232", + "3b3b4a": "4a3b3b", + "103a52": "7b2d25", + "ffe600": "6ae649", + "73737b": "982222", + "373746": "7b2d25", + "bde6ff": "e6b45b", + "424252": "550f0f", + "696973": "736969", + "ceb500": "2aac2b", + "def7ff": "f7ec88", + "6d737b": "2aac2b", + "6b8494": "974626", + "a5b5ce": "be6e34" + } +} \ No newline at end of file diff --git a/public/images/pokemon/variant/692.json b/public/images/pokemon/variant/692.json new file mode 100644 index 00000000000..954dcffb3e9 --- /dev/null +++ b/public/images/pokemon/variant/692.json @@ -0,0 +1,26 @@ +{ + "1": { + "b3f2ff": "fada7f", + "44a2b4": "af6a37", + "2f7280": "783a1d", + "cd9d3a": "53be53", + "575757": "c85b5b", + "72561c": "20734c", + "60dbf2": "e1ac53", + "b4b4b4": "c8ba6d", + "3d3d3d": "7d182d", + "ffc549": "a9f076" + }, + "2": { + "b3f2ff": "faf8d7", + "44a2b4": "968144", + "2f7280": "5f3c23", + "cd9d3a": "7743be", + "575757": "88cd56", + "72561c": "371c72", + "60dbf2": "e1d6b6", + "b4b4b4": "68a7aa", + "3d3d3d": "1c873e", + "ffc549": "a36feb" + } +} \ No newline at end of file diff --git a/public/images/pokemon/variant/693.json b/public/images/pokemon/variant/693.json new file mode 100644 index 00000000000..2e80795d2a0 --- /dev/null +++ b/public/images/pokemon/variant/693.json @@ -0,0 +1,30 @@ +{ + "1": { + "23a2c8": "c87a23", + "ffc859": "6ccd80", + "224b73": "552813", + "404040": "3c171b", + "262626": "230808", + "5f5f5f": "6e2e3b", + "cc9c3d": "1b3c17", + "61daf2": "f2bd61", + "735822": "08230e", + "3674b3": "7d3e21", + "ffc44c": "426e2e", + "4595e5": "aa6839" + }, + "2": { + "23a2c8": "beb099", + "ffc859": "f5b281", + "224b73": "5f463a", + "404040": "2a8c53", + "262626": "295a1c", + "5f5f5f": "51c85d", + "cc9c3d": "6259af", + "61daf2": "f0eadb", + "735822": "36235f", + "3674b3": "9b8265", + "ffc44c": "a39afa", + "4595e5": "c8b493" + } +} \ No newline at end of file diff --git a/public/images/pokemon/variant/746-school.json b/public/images/pokemon/variant/746-school.json new file mode 100644 index 00000000000..a76aca2921f --- /dev/null +++ b/public/images/pokemon/variant/746-school.json @@ -0,0 +1,40 @@ +{ + "1": { + "101010": "101010", + "0a1627": "5f2112", + "113650": "0b3d3a", + "123954": "75351b", + "10437d": "16574d", + "134884": "934f26", + "1766c6": "b77736", + "3d66d8": "d39c63", + "416adf": "2c9572", + "79848a": "a67834", + "749cf6": "5ce09d", + "43ebf3": "824388", + "72f0f6": "27133f", + "9cd3fd": "78f389", + "a6c5f7": "aafe94", + "cfd1d3": "d5ab51", + "fbfbfb": "f7d76b" + }, + "2": { + "101010": "101010", + "0a1627": "160523", + "113650": "846228", + "123954": "28071a", + "10437d": "b7904d", + "134884": "350b19", + "1766c6": "4a1111", + "3d66d8": "622222", + "416adf": "dec284", + "79848a": "4a1111", + "749cf6": "f8ecc5", + "43ebf3": "4378eb", + "72f0f6": "31238e", + "9cd3fd": "fefed9", + "a6c5f7": "fefeef", + "cfd1d3": "5f291c", + "fbfbfb": "844232" + } +} \ No newline at end of file diff --git a/public/images/pokemon/variant/746.json b/public/images/pokemon/variant/746.json new file mode 100644 index 00000000000..5b183b10e5d --- /dev/null +++ b/public/images/pokemon/variant/746.json @@ -0,0 +1,40 @@ +{ + "1": { + "101010": "101010", + "1f2161": "16574d", + "5d666d": "75391b", + "616b72": "a67834", + "9c455b": "308c9d", + "374793": "2c9572", + "4764c9": "5ce09d", + "3e9cbb": "27133f", + "61c8de": "824388", + "8c9c9d": "935926", + "8d9c9d": "c69b3f", + "d88394": "65cfe2", + "b0c5c6": "d5ab51", + "ccd2ce": "b77736", + "d8d9da": "d8d9da", + "eeeeee": "f7d76b", + "fefefe": "fefefe" + }, + "2": { + "101010": "101010", + "1f2161": "b7904d", + "5d666d": "1e0726", + "616b72": "4a1111", + "9c455b": "b9682d", + "374793": "dec284", + "4764c9": "f8ecc5", + "3e9cbb": "4378eb", + "61c8de": "5787f1", + "8c9c9d": "350b19", + "8d9c9d": "531917", + "d88394": "e4d85f", + "b0c5c6": "5f291c", + "ccd2ce": "4a1111", + "d8d9da": "d8d9da", + "eeeeee": "844232", + "fefefe": "fefefe" + } +} \ No newline at end of file diff --git a/public/images/pokemon/variant/780.json b/public/images/pokemon/variant/780.json new file mode 100644 index 00000000000..0399d3567bf --- /dev/null +++ b/public/images/pokemon/variant/780.json @@ -0,0 +1,40 @@ +{ + "1": { + "8d541b": "bd8955", + "297b8b": "1a316b", + "606f55": "496375", + "ffc4d7": "f29d9d", + "105262": "0e194a", + "b4cda4": "9ab5b8", + "f5ae07": "e8c987", + "ce5b9b": "cf4654", + "faf550": "faf0b1", + "e67b9c": "e65757", + "bd3983": "bd3341", + "eea6bc": "f06e6e", + "5aa4a4": "284c80", + "b8b7a3": "cf8d38", + "726d5c": "a36026", + "91a37c": "7798a1", + "eeeeee": "e6c15e" + }, + "2": { + "8d541b": "157d36", + "297b8b": "4e4f73", + "606f55": "8f825d", + "ffc4d7": "f2e396", + "105262": "3f3c61", + "b4cda4": "d6dbba", + "f5ae07": "24ab2b", + "ce5b9b": "d9ae5d", + "faf550": "3ec435", + "e67b9c": "e3b656", + "bd3983": "c27529", + "eea6bc": "f2d98d", + "5aa4a4": "6a708a", + "b8b7a3": "254e59", + "726d5c": "162d3d", + "91a37c": "b5b48b", + "eeeeee": "3e7a76" + } +} \ No newline at end of file diff --git a/public/images/pokemon/variant/782.json b/public/images/pokemon/variant/782.json new file mode 100644 index 00000000000..bd04ccc0c70 --- /dev/null +++ b/public/images/pokemon/variant/782.json @@ -0,0 +1,34 @@ +{ + "1": { + "f13035": "48bd8c", + "bec6cb": "e8cea0", + "fdfdfd": "fcf2ca", + "f8f236": "e77b57", + "504e4b": "2b130b", + "aba5ad": "336340", + "7b766f": "472d1d", + "7a756d": "a67e5b", + "726475": "214a33", + "4f4d4b": "8a5b41", + "940a0d": "258067", + "dbdbdb": "4e8759", + "957509": "a63424", + "fff7cc": "f7c4b5" + }, + "2": { + "f13035": "b8c0fc", + "bec6cb": "b7ddeb", + "fdfdfd": "d5f4f7", + "f8f236": "52d9ac", + "504e4b": "132040", + "aba5ad": "5e3e75", + "7b766f": "273959", + "7a756d": "8ab7cf", + "726475": "412959", + "4f4d4b": "567496", + "940a0d": "636a94", + "dbdbdb": "855d99", + "957509": "258085", + "fff7cc": "baf7dc" + } +} \ No newline at end of file diff --git a/public/images/pokemon/variant/783.json b/public/images/pokemon/variant/783.json new file mode 100644 index 00000000000..0748d5ff79e --- /dev/null +++ b/public/images/pokemon/variant/783.json @@ -0,0 +1,32 @@ +{ + "1": { + "f13035": "48bd8c", + "6c6968": "472d1d", + "97938c": "2a573e", + "4d4644": "2b130b", + "940a0d": "258067", + "fdfdfd": "fcf2ca", + "6e6a69": "8a5b41", + "fff5ae": "f7c4b5", + "c2c1c0": "42754f", + "d7aa22": "c25236", + "957509": "a63424", + "69625c": "133027", + "f4da42": "e77b57" + }, + "2": { + "f13035": "d9ddfc", + "6c6968": "2e4266", + "97938c": "543666", + "4d4644": "151e38", + "940a0d": "636a94", + "fdfdfd": "d5f4f7", + "6e6a69": "567496", + "fff5ae": "baf7dc", + "c2c1c0": "744e87", + "d7aa22": "37ad94", + "957509": "258085", + "69625c": "2d1c3d", + "f4da42": "52d9ac" + } +} \ No newline at end of file diff --git a/public/images/pokemon/variant/784.json b/public/images/pokemon/variant/784.json new file mode 100644 index 00000000000..0bd28476e98 --- /dev/null +++ b/public/images/pokemon/variant/784.json @@ -0,0 +1,50 @@ +{ + "1": { + "c99f21": "c25236", + "4b4657": "8a5b41", + "544747": "517d37", + "d0d2d5": "77a353", + "fafafa": "f7c4b5", + "d4d6d9": "e8cea0", + "9d6702": "9c3c27", + "f4da42": "e77b57", + "f13035": "48bd8c", + "2d2b28": "2b130b", + "c59c21": "b5482f", + "cb0e12": "258067", + "47444e": "472d1d", + "f7f7f7": "fcf2ca", + "a7a29e": "336142", + "807673": "a67e5b", + "504444": "123028", + "885902": "a63424", + "7e7572": "204736", + "d7d9db": "548752", + "4d4946": "447835", + "fdfdfd": "bbd477" + }, + "2": { + "c99f21": "37ad94", + "4b4657": "567496", + "544747": "558ea3", + "d0d2d5": "7ec2cc", + "fafafa": "daf2e7", + "d4d6d9": "b7ddeb", + "9d6702": "227880", + "f4da42": "52d9ac", + "f13035": "d9ddfc", + "2d2b28": "151e38", + "c59c21": "34a897", + "cb0e12": "636a94", + "47444e": "2e4266", + "f7f7f7": "d5f4f7", + "a7a29e": "6c457a", + "807673": "8ab7cf", + "504444": "2d1840", + "885902": "2b8c8b", + "7e7572": "4e2e61", + "d7d9db": "ac7fb3", + "4d4946": "558fa6", + "fdfdfd": "adedf0" + } +} \ No newline at end of file diff --git a/public/images/pokemon/variant/840.json b/public/images/pokemon/variant/840.json new file mode 100644 index 00000000000..255e2e7689a --- /dev/null +++ b/public/images/pokemon/variant/840.json @@ -0,0 +1,34 @@ +{ + "1": { + "e2244a": "70a2c5", + "8d4229": "570749", + "94d84a": "e5e8ee", + "5fab1d": "7a7c9e", + "d39a52": "9c2e72", + "e32b50": "4e77a2", + "357912": "313846", + "fe455c": "abd7e2", + "5bab1d": "acb0c3", + "247912": "48485d", + "a50534": "3e6085", + "a4d84a": "9aa0b3", + "f2c171": "c55885", + "fa6f8b": "c1f3f3" + }, + "2": { + "e2244a": "bfb5ab", + "8d4229": "230808", + "94d84a": "589df3", + "5fab1d": "a8546e", + "d39a52": "291411", + "e32b50": "807770", + "357912": "823455", + "fe455c": "dcd9d1", + "5bab1d": "354dbf", + "247912": "2e2246", + "a50534": "68645f", + "a4d84a": "e28c95", + "f2c171": "463731", + "fa6f8b": "eeedea" + } +} \ No newline at end of file diff --git a/public/images/pokemon/variant/841-gigantamax.json b/public/images/pokemon/variant/841-gigantamax.json new file mode 100644 index 00000000000..5d3b8c49133 --- /dev/null +++ b/public/images/pokemon/variant/841-gigantamax.json @@ -0,0 +1,52 @@ +{ + "1": { + "101010": "101010", + "772628": "3e6085", + "2c4828": "291634", + "427638": "7a7c9e", + "872d23": "460c4d", + "8b3329": "2c255d", + "913c3c": "5b4585", + "a63139": "70a2c5", + "8d4229": "272a52", + "bf6c31": "b668a0", + "d2394d": "abd7e2", + "d54456": "751680", + "c57741": "9c2e72", + "e84466": "8666ae", + "39a43d": "9aa0b3", + "b3ac62": "95aec9", + "c68a48": "2b526f", + "e2bb56": "c55885", + "e9c558": "397880", + "ffc66a": "eeb4cb", + "dad08b": "dcebf9", + "fff1ab": "63b9b9", + "f9f9f9": "f9f9f9" + }, + "2": { + "101010": "101010", + "772628": "695d57", + "2c4828": "341c1c", + "427638": "a54e69", + "872d23": "2e2246", + "8b3329": "3a2222", + "913c3c": "682d2d", + "a63139": "baada1", + "8d4229": "9c564c", + "bf6c31": "354dbf", + "d2394d": "dcd9d1", + "d54456": "2e38bf", + "c57741": "291411", + "e84466": "915a41", + "39a43d": "e28c95", + "b3ac62": "c1a39c", + "c68a48": "d1a87e", + "e2bb56": "463731", + "e9c558": "eee0bc", + "ffc66a": "589df3", + "dad08b": "e2dcd6", + "fff1ab": "fdf3c0", + "f9f9f9": "f9f9f9" + } +} \ No newline at end of file diff --git a/public/images/pokemon/variant/841.json b/public/images/pokemon/variant/841.json new file mode 100644 index 00000000000..3f1c756da5e --- /dev/null +++ b/public/images/pokemon/variant/841.json @@ -0,0 +1,38 @@ +{ + "1": { + "df6655": "c55885", + "b5915b": "34123a", + "9b2629": "70a2c5", + "8d764b": "110723", + "56ab32": "a59ab3", + "f0bda6": "c1f3f3", + "c3a965": "b3b1d6", + "f1c950": "f3c5dd", + "ccca71": "e6dcf9", + "ccb468": "5d2654", + "612324": "3e6085", + "d72d31": "abd7e2", + "874c23": "613863", + "ebe381": "854774", + "488235": "8e7a9e", + "395a2e": "383146" + }, + "2": { + "df6655": "463731", + "b5915b": "541711", + "9b2629": "bfb5ab", + "8d764b": "230313", + "56ab32": "e28c95", + "f0bda6": "eeedea", + "c3a965": "cbb4af", + "f1c950": "589df3", + "ccca71": "e2dcd6", + "ccb468": "8b4332", + "612324": "68645f", + "d72d31": "dcd9d1", + "874c23": "2e2246", + "ebe381": "c68862", + "488235": "a8546e", + "395a2e": "4f0e30" + } +} \ No newline at end of file diff --git a/public/images/pokemon/variant/842-gigantamax.json b/public/images/pokemon/variant/842-gigantamax.json new file mode 100644 index 00000000000..5d3b8c49133 --- /dev/null +++ b/public/images/pokemon/variant/842-gigantamax.json @@ -0,0 +1,52 @@ +{ + "1": { + "101010": "101010", + "772628": "3e6085", + "2c4828": "291634", + "427638": "7a7c9e", + "872d23": "460c4d", + "8b3329": "2c255d", + "913c3c": "5b4585", + "a63139": "70a2c5", + "8d4229": "272a52", + "bf6c31": "b668a0", + "d2394d": "abd7e2", + "d54456": "751680", + "c57741": "9c2e72", + "e84466": "8666ae", + "39a43d": "9aa0b3", + "b3ac62": "95aec9", + "c68a48": "2b526f", + "e2bb56": "c55885", + "e9c558": "397880", + "ffc66a": "eeb4cb", + "dad08b": "dcebf9", + "fff1ab": "63b9b9", + "f9f9f9": "f9f9f9" + }, + "2": { + "101010": "101010", + "772628": "695d57", + "2c4828": "341c1c", + "427638": "a54e69", + "872d23": "2e2246", + "8b3329": "3a2222", + "913c3c": "682d2d", + "a63139": "baada1", + "8d4229": "9c564c", + "bf6c31": "354dbf", + "d2394d": "dcd9d1", + "d54456": "2e38bf", + "c57741": "291411", + "e84466": "915a41", + "39a43d": "e28c95", + "b3ac62": "c1a39c", + "c68a48": "d1a87e", + "e2bb56": "463731", + "e9c558": "eee0bc", + "ffc66a": "589df3", + "dad08b": "e2dcd6", + "fff1ab": "fdf3c0", + "f9f9f9": "f9f9f9" + } +} \ No newline at end of file diff --git a/public/images/pokemon/variant/842.json b/public/images/pokemon/variant/842.json new file mode 100644 index 00000000000..9563715745e --- /dev/null +++ b/public/images/pokemon/variant/842.json @@ -0,0 +1,40 @@ +{ + "1": { + "101010": "101010", + "1f4329": "313846", + "1f5829": "852560", + "2c743e": "7a7c9e", + "9f7034": "9aa0b3", + "ac6b20": "110723", + "af2348": "67829e", + "e75574": "70a2c5", + "39a45f": "92cbd9", + "7de755": "9aa0b3", + "e78422": "1f1946", + "ffa63b": "2d3d68", + "f1cf6d": "a3b9d0", + "f9d56d": "698db4", + "ffc575": "2b526f", + "f18e8e": "c1f3f3", + "fcff86": "397880" + }, + "2": { + "101010": "101010", + "1f4329": "511c2d", + "1f5829": "2e2246", + "2c743e": "a8546e", + "9f7034": "3a130d", + "ac6b20": "68645f", + "af2348": "bfb5ab", + "e75574": "dcd9d1", + "39a45f": "e28c95", + "7de755": "589df3", + "e78422": "4b211b", + "ffa63b": "63473b", + "f1cf6d": "cbb4af", + "f9d56d": "b9937a", + "ffc575": "d1a87e", + "f18e8e": "eeedea", + "fcff86": "eee0bc" + } +} \ No newline at end of file diff --git a/public/images/pokemon/variant/871.json b/public/images/pokemon/variant/871.json new file mode 100644 index 00000000000..5004d3013b5 --- /dev/null +++ b/public/images/pokemon/variant/871.json @@ -0,0 +1,32 @@ +{ + "1": { + "101010": "101010", + "2e2732": "1b3334", + "281f2e": "2a2732", + "46384c": "504540", + "493d4e": "3a5d57", + "665272": "62857c", + "544947": "7d320e", + "7a7270": "a8501b", + "9e9a96": "cd7930", + "7b4e1c": "5b0d3f", + "d58815": "a02c58", + "fdba2f": "c45858", + "fdf22f": "f1e8e8" + }, + "2": { + "101010": "101010", + "2e2732": "8b4738", + "281f2e": "212232", + "46384c": "504740", + "493d4e": "ce8a66", + "665272": "eac69b", + "544947": "1a1730", + "7a7270": "27223b", + "9e9a96": "3a3449", + "7b4e1c": "222c58", + "d58815": "343f7f", + "fdba2f": "67729f", + "fdf22f": "8e9fc9" + } +} \ No newline at end of file diff --git a/public/images/pokemon/variant/88.json b/public/images/pokemon/variant/88.json new file mode 100644 index 00000000000..61b7ca3b802 --- /dev/null +++ b/public/images/pokemon/variant/88.json @@ -0,0 +1,28 @@ +{ + "1": { + "101010": "101010", + "424a5a": "5b3a1d", + "5a3173": "6a010c", + "848c9c": "9b7c48", + "944a9c": "b1160e", + "adb5bd": "e9de8c", + "bd7bbd": "d55021", + "ce8cc5": "e98a47", + "d6d6de": "ded7ce", + "ffffff": "ffffff", + "efade6": "f8be70" + }, + "2": { + "101010": "101010", + "424a5a": "2d7351", + "5a3173": "a21851", + "848c9c": "69b17b", + "944a9c": "d04569", + "adb5bd": "b0e4a9", + "bd7bbd": "ed8ea2", + "ce8cc5": "f4bfbf", + "d6d6de": "d6d6de", + "ffffff": "ffffff", + "efade6": "f8d8cf" + } +} \ No newline at end of file diff --git a/public/images/pokemon/variant/89.json b/public/images/pokemon/variant/89.json new file mode 100644 index 00000000000..eda3558d7c2 --- /dev/null +++ b/public/images/pokemon/variant/89.json @@ -0,0 +1,30 @@ +{ + "1": { + "101010": "101010", + "424a5a": "5b3a1d", + "5a3173": "6a010c", + "848c9c": "9b7c48", + "944a9c": "b1160e", + "adb5bd": "e9de8c", + "bd7bbd": "d55021", + "ce8cc5": "e98a47", + "d6d6de": "ded7ce", + "ffffff": "ffffff", + "efade6": "f8be70", + "ad63ad": "c63a17" + }, + "2": { + "101010": "101010", + "424a5a": "2d7351", + "5a3173": "a21851", + "848c9c": "69b17b", + "944a9c": "d04569", + "adb5bd": "b0e4a9", + "bd7bbd": "ed8ea2", + "ce8cc5": "f4bfbf", + "d6d6de": "d6d6de", + "ffffff": "ffffff", + "efade6": "f8d8cf", + "ad63ad": "e5728a" + } +} \ No newline at end of file diff --git a/public/images/pokemon/variant/_exp_masterlist.json b/public/images/pokemon/variant/_exp_masterlist.json index 0ef5f209439..88c6f4a95c1 100644 --- a/public/images/pokemon/variant/_exp_masterlist.json +++ b/public/images/pokemon/variant/_exp_masterlist.json @@ -94,6 +94,8 @@ "689": [0, 1, 1], "690": [0, 1, 1], "691": [0, 1, 1], + "692": [0, 1, 1], + "693": [0, 1, 1], "696": [0, 1, 1], "697": [0, 1, 1], "699": [0, 1, 1], @@ -120,6 +122,8 @@ "735": [0, 1, 1], "742": [0, 2, 2], "743": [0, 2, 2], + "746": [0, 1, 1], + "746-school": [0, 1, 1], "747": [0, 2, 2], "748": [0, 1, 1], "751": [0, 1, 1], @@ -159,6 +163,7 @@ "778-busted": [0, 1, 1], "778-disguised": [0, 1, 1], "779": [0, 1, 1], + "780": [0, 1, 1], "789": [1, 1, 1], "790": [0, 1, 1], "791": [2, 1, 1], @@ -186,6 +191,9 @@ "830": [0, 1, 1], "835": [0, 1, 1], "836": [0, 2, 2], + "840": [0, 1, 1], + "841": [0, 1, 1], + "842": [0, 1, 1], "850": [0, 1, 1], "851": [0, 1, 1], "854": [0, 1, 1], @@ -200,6 +208,7 @@ "863": [0, 1, 1], "864": [0, 1, 1], "867": [0, 1, 1], + "871": [0, 1, 1], "872": [1, 1, 1], "873": [1, 1, 1], "876-female": [0, 1, 1], @@ -247,9 +256,6 @@ "932": [0, 2, 2], "933": [0, 2, 2], "934": [0, 1, 1], - "935": [1, 1, 2], - "936": [2, 2, 2], - "937": [2, 2, 2], "940": [0, 1, 1], "941": [0, 1, 1], "944": [0, 1, 1], @@ -297,6 +303,8 @@ "2026": [0, 1, 1], "2027": [0, 1, 1], "2028": [0, 1, 1], + "2037": [0, 1, 1], + "2038": [0, 1, 1], "2052": [0, 1, 1], "2053": [0, 1, 0], "2103": [0, 1, 1], @@ -422,6 +430,8 @@ "689": [0, 1, 1], "690": [0, 1, 1], "691": [0, 1, 1], + "692": [0, 1, 1], + "693": [0, 1, 1], "696": [0, 1, 1], "697": [0, 1, 1], "699": [0, 2, 2], @@ -448,6 +458,8 @@ "735": [0, 1, 1], "742": [0, 2, 2], "743": [0, 2, 2], + "746": [0, 1, 1], + "746-school": [0, 1, 1], "747": [0, 2, 2], "748": [0, 1, 1], "751": [0, 1, 1], @@ -486,6 +498,7 @@ "778-busted": [0, 1, 1], "778-disguised": [0, 1, 1], "779": [0, 1, 1], + "780": [0, 1, 1], "789": [1, 1, 1], "790": [0, 1, 1], "791": [1, 1, 1], @@ -513,6 +526,9 @@ "830": [0, 1, 1], "835": [0, 1, 1], "836": [0, 1, 1], + "840": [0, 1, 1], + "841": [0, 1, 1], + "842": [0, 1, 1], "850": [0, 1, 1], "851": [0, 1, 1], "854": [0, 1, 1], @@ -527,6 +543,7 @@ "863": [0, 1, 1], "864": [0, 1, 1], "867": [0, 1, 1], + "871": [0, 1, 1], "872": [1, 1, 1], "873": [1, 1, 1], "876-female": [0, 1, 1], @@ -573,9 +590,6 @@ "932": [0, 1, 1], "933": [0, 1, 1], "934": [0, 1, 1], - "935": [2, 2, 2], - "936": [2, 2, 2], - "937": [2, 2, 2], "940": [0, 1, 1], "941": [0, 1, 1], "944": [0, 1, 1], @@ -623,6 +637,8 @@ "2026": [0, 1, 1], "2027": [0, 1, 1], "2028": [0, 1, 1], + "2037": [0, 1, 1], + "2038": [0, 1, 1], "2052": [0, 1, 1], "2053": [0, 1, 1], "2103": [0, 1, 1], @@ -653,4 +669,4 @@ "6215": [0, 1, 1] } } -} \ No newline at end of file +} diff --git a/public/images/pokemon/variant/_masterlist.json b/public/images/pokemon/variant/_masterlist.json index ac683d9544e..719f3db3d86 100644 --- a/public/images/pokemon/variant/_masterlist.json +++ b/public/images/pokemon/variant/_masterlist.json @@ -32,6 +32,9 @@ "29": [0, 1, 1], "30": [0, 1, 1], "31": [1, 1, 1], + "32": [0, 1, 1], + "33": [0, 1, 1], + "34": [0, 1, 1], "35": [0, 1, 2], "36": [0, 1, 1], "37": [0, 1, 1], @@ -67,6 +70,8 @@ "85": [1, 1, 1], "86": [1, 1, 1], "87": [1, 1, 1], + "88": [0, 1, 1], + "89": [0, 1, 1], "92": [2, 2, 2], "93": [1, 1, 1], "94-gigantamax": [1, 2, 2], @@ -113,6 +118,8 @@ "141": [0, 2, 2], "142-mega": [0, 1, 1], "142": [0, 1, 1], + "143-gigantamax": [0, 1, 1], + "143": [0, 1, 1], "144": [1, 2, 2], "145": [1, 1, 1], "146": [1, 1, 1], @@ -154,6 +161,9 @@ "183": [0, 1, 2], "184": [0, 2, 2], "185": [0, 1, 1], + "187": [0, 1, 1], + "188": [0, 1, 1], + "189": [0, 1, 1], "190": [0, 1, 1], "193": [0, 1, 1], "194": [0, 1, 1], @@ -192,6 +202,8 @@ "201-w": [0, 1, 1], "201-o": [0, 1, 1], "203": [0, 1, 1], + "204": [0, 1, 1], + "205": [0, 1, 1], "206": [0, 1, 1], "207": [0, 1, 1], "211": [0, 1, 1], @@ -247,6 +259,7 @@ "291": [2, 2, 2], "292": [2, 1, 2], "298": [0, 2, 2], + "299": [0, 1, 1], "300": [1, 1, 1], "301": [1, 1, 1], "302": [0, 1, 1], @@ -265,13 +278,19 @@ "310": [0, 1, 1], "311": [1, 1, 1], "312": [0, 1, 1], + "313": [0, 1, 1], + "314": [0, 1, 1], "315": [0, 1, 1], "320": [0, 1, 1], "321": [0, 1, 1], + "325": [0, 1, 1], + "326": [0, 1, 1], "327": [0, 1, 1], "328": [0, 1, 1], "329": [0, 1, 2], "330": [0, 1, 1], + "331": [0, 1, 1], + "332": [0, 1, 1], "333": [0, 1, 1], "334-mega": [0, 2, 1], "334": [0, 2, 2], @@ -283,6 +302,8 @@ "340": [0, 1, 2], "341": [0, 2, 2], "342": [0, 2, 2], + "345": [0, 1, 1], + "346": [0, 1, 1], "351-rainy": [1, 2, 2], "351-snowy": [1, 1, 1], "351-sunny": [1, 2, 2], @@ -331,10 +352,16 @@ "393": [0, 1, 1], "394": [0, 1, 1], "395": [0, 1, 1], + "396": [0, 1, 1], + "397": [0, 1, 1], + "398": [0, 1, 1], "399": [0, 1, 1], "400": [0, 1, 1], "401": [0, 1, 1], "402": [0, 1, 1], + "403": [0, 1, 1], + "404": [0, 1, 1], + "405": [0, 1, 1], "406": [0, 1, 1], "407": [0, 1, 1], "412-sandy": [2, 2, 2], @@ -344,8 +371,12 @@ "413-trash": [1, 1, 1], "413-sandy": [1, 1, 1], "414": [0, 1, 1], + "417": [0, 1, 1], "418": [0, 1, 1], "419": [0, 1, 1], + "420": [0, 1, 1], + "421-overcast": [0, 1, 1], + "421-sunshine": [0, 1, 1], "422-west": [1, 1, 1], "422-east": [1, 1, 1], "423-west": [1, 1, 1], @@ -369,6 +400,7 @@ "444": [1, 1, 1], "445-mega": [1, 1, 1], "445": [1, 1, 1], + "446": [0, 1, 1], "447": [1, 1, 1], "448-mega": [1, 1, 1], "448": [1, 1, 1], @@ -392,6 +424,7 @@ "474": [0, 1, 1], "475-mega": [0, 2, 2], "475": [0, 1, 1], + "476": [0, 1, 1], "478": [0, 2, 1], "479-heat": [0, 1, 1], "479-wash": [0, 1, 1], @@ -416,11 +449,22 @@ "495": [0, 1, 1], "496": [0, 1, 1], "497": [0, 1, 1], + "498": [0, 1, 1], + "499": [0, 1, 1], + "500": [0, 1, 1], "501": [0, 1, 1], "502": [0, 1, 1], "503": [0, 1, 1], + "511": [0, 1, 1], + "512": [0, 1, 1], + "513": [0, 1, 1], + "514": [0, 1, 1], + "515": [0, 1, 1], + "516": [0, 1, 1], "517": [0, 1, 1], "518": [0, 1, 1], + "522": [0, 1, 1], + "523": [0, 1, 1], "524": [0, 1, 1], "525": [0, 1, 1], "526": [0, 2, 2], @@ -433,6 +477,9 @@ "532": [0, 1, 1], "533": [0, 1, 1], "534": [0, 1, 1], + "535": [0, 1, 1], + "536": [0, 1, 1], + "537": [0, 1, 1], "538": [0, 1, 1], "539": [0, 2, 2], "540": [0, 1, 1], @@ -448,17 +495,23 @@ "551": [0, 1, 1], "552": [0, 1, 1], "553": [0, 1, 1], + "554": [0, 1, 1], + "555": [0, 1, 1], + "555-zen": [0, 1, 1], "556": [0, 1, 1], "559": [1, 1, 1], "560": [1, 1, 1], "562": [0, 1, 1], "563": [0, 1, 1], + "566": [0, 1, 1], + "567": [0, 1, 1], "568": [0, 2, 2], "569-gigantamax": [0, 1, 1], "569": [0, 1, 1], "570": [0, 1, 1], "571": [0, 1, 1], "572": [0, 1, 1], + "573": [0, 1, 1], "577": [1, 1, 1], "578": [1, 1, 1], "579": [1, 1, 1], @@ -499,6 +552,7 @@ "621": [0, 1, 1], "622": [0, 1, 1], "623": [0, 1, 1], + "626": [0, 1, 1], "631": [0, 2, 2], "632": [0, 1, 1], "633": [0, 1, 1], @@ -507,6 +561,11 @@ "636": [0, 1, 1], "637": [0, 1, 1], "640": [0, 1, 1], + "643": [0, 1, 1], + "644": [0, 1, 1], + "646-black": [0, 1, 1], + "646-white": [0, 1, 1], + "646": [0, 1, 1], "647-resolute": [0, 1, 1], "647-ordinary": [0, 1, 1], "648-aria": [0, 1, 1], @@ -583,6 +642,8 @@ "689": [0, 1, 1], "690": [0, 1, 1], "691": [0, 1, 1], + "692": [0, 1, 1], + "693": [0, 1, 1], "696": [0, 1, 1], "697": [0, 1, 1], "698": [0, 1, 1], @@ -613,6 +674,8 @@ "735": [0, 1, 1], "742": [0, 2, 2], "743": [0, 2, 2], + "746": [0, 1, 1], + "746-school": [0, 1, 1], "747": [0, 1, 1], "748": [0, 1, 1], "751": [0, 1, 1], @@ -651,6 +714,10 @@ "778-busted": [0, 1, 1], "778-disguised": [0, 1, 1], "779": [0, 1, 1], + "780": [0, 1, 1], + "782": [0, 1, 1], + "783": [0, 1, 1], + "784": [0, 1, 1], "789": [1, 1, 1], "790": [0, 1, 1], "791-radiant-sun": [0, 1, 1], @@ -683,6 +750,11 @@ "830": [0, 1, 1], "835": [0, 1, 1], "836": [0, 2, 2], + "840": [0, 1, 1], + "841-gigantamax": [0, 1, 1], + "841": [0, 1, 1], + "842-gigantamax": [0, 1, 1], + "842": [0, 1, 1], "850": [0, 1, 1], "851-gigantamax": [0, 1, 1], "851": [0, 1, 1], @@ -700,6 +772,7 @@ "863": [0, 1, 1], "864": [0, 1, 1], "867": [0, 1, 1], + "871": [0, 1, 1], "872": [1, 1, 1], "873": [1, 1, 1], "876-female": [0, 1, 1], @@ -798,14 +871,18 @@ "1007-apex-build": [0, 2, 2], "1008-ultimate-mode": [1, 1, 1], "1010": [0, 1, 1], + "1011": [0, 1, 1], "1012-counterfeit": [0, 1, 1], "1013-unremarkable": [0, 1, 1], "1018": [0, 1, 1], + "1019": [0, 1, 1], "1022": [0, 1, 1], "1023": [0, 1, 1], "2026": [0, 1, 1], "2027": [0, 1, 1], "2028": [0, 1, 1], + "2037": [0, 1, 1], + "2038": [0, 1, 1], "2052": [0, 1, 1], "2053": [0, 1, 1], "2103": [0, 1, 1], @@ -880,12 +957,20 @@ "307": [0, 1, 1], "308": [0, 1, 1], "315": [0, 1, 1], + "332": [0, 1, 1], "369": [0, 1, 1], + "396": [0, 1, 1], + "397": [0, 1, 1], + "398": [0, 1, 1], "399": [0, 1, 1], "400": [0, 1, 1], "401": [0, 1, 1], "402": [0, 2, 2], + "403": [0, 1, 1], + "404": [0, 1, 1], + "405": [0, 1, 1], "407": [0, 1, 1], + "417": [0, 1, 1], "418": [0, 1, 1], "419": [0, 2, 1], "424": [0, 1, 1], @@ -937,6 +1022,9 @@ "29": [0, 1, 1], "30": [0, 1, 1], "31": [1, 1, 1], + "32": [0, 1, 1], + "33": [0, 1, 1], + "34": [0, 1, 1], "35": [0, 1, 1], "36": [0, 2, 1], "37": [0, 1, 1], @@ -972,6 +1060,8 @@ "85": [1, 1, 1], "86": [1, 1, 1], "87": [1, 1, 1], + "88": [0, 1, 1], + "89": [0, 1, 1], "92": [2, 2, 2], "93": [1, 1, 1], "94-gigantamax": [1, 1, 1], @@ -1018,6 +1108,8 @@ "141": [0, 1, 1], "142-mega": [0, 1, 1], "142": [0, 1, 1], + "143-gigantamax": [0, 1, 1], + "143": [0, 1, 1], "144": [1, 1, 1], "145": [1, 1, 1], "146": [1, 1, 1], @@ -1059,6 +1151,9 @@ "183": [0, 1, 1], "184": [0, 1, 1], "185": [0, 1, 1], + "187": [0, 1, 1], + "188": [0, 1, 1], + "189": [0, 1, 1], "190": [0, 1, 1], "193": [0, 1, 1], "194": [0, 1, 1], @@ -1097,6 +1192,8 @@ "201-w": [0, 1, 1], "201-o": [0, 1, 1], "203": [0, 1, 1], + "204": [0, 1, 1], + "205": [0, 1, 1], "206": [0, 1, 1], "207": [0, 1, 1], "211": [0, 1, 1], @@ -1152,6 +1249,7 @@ "291": [2, 2, 2], "292": [2, 2, 2], "298": [0, 1, 1], + "299": [0, 1, 1], "300": [1, 1, 1], "301": [1, 1, 1], "302": [0, 1, 1], @@ -1170,13 +1268,19 @@ "310": [0, 1, 1], "311": [1, 1, 1], "312": [0, 1, 1], + "313": [0, 1, 1], + "314": [0, 1, 1], "315": [0, 1, 1], "320": [0, 1, 1], "321": [0, 1, 1], + "325": [0, 1, 1], + "326": [0, 1, 1], "327": [0, 1, 1], "328": [0, 1, 1], "329": [0, 1, 1], "330": [0, 1, 1], + "331": [0, 1, 1], + "332": [0, 1, 1], "333": [0, 1, 1], "334-mega": [0, 1, 1], "334": [0, 1, 1], @@ -1188,6 +1292,8 @@ "340": [0, 1, 2], "341": [0, 1, 1], "342": [0, 2, 2], + "345": [0, 1, 1], + "346": [0, 1, 1], "351-rainy": [1, 1, 1], "351-snowy": [1, 1, 1], "351-sunny": [1, 1, 2], @@ -1236,10 +1342,16 @@ "393": [0, 1, 1], "394": [0, 1, 1], "395": [0, 1, 1], + "396": [0, 1, 1], + "397": [0, 1, 1], + "398": [0, 1, 1], "399": [0, 2, 1], "400": [0, 1, 1], "401": [0, 1, 1], "402": [0, 1, 1], + "403": [0, 1, 1], + "404": [0, 1, 1], + "405": [0, 1, 1], "406": [0, 1, 1], "407": [0, 1, 1], "412-sandy": [2, 2, 2], @@ -1249,8 +1361,12 @@ "413-trash": [1, 1, 1], "413-sandy": [1, 1, 1], "414": [0, 1, 1], + "417": [0, 1, 1], "418": [0, 1, 1], "419": [0, 1, 1], + "420": [0, 1, 1], + "421-overcast": [0, 1, 1], + "421-sunshine": [0, 1, 1], "422-west": [1, 1, 1], "422-east": [1, 1, 1], "423-west": [1, 1, 1], @@ -1274,6 +1390,7 @@ "444": [1, 1, 1], "445-mega": [1, 1, 1], "445": [1, 1, 1], + "446": [0, 1, 1], "447": [1, 1, 1], "448-mega": [1, 1, 1], "448": [1, 1, 1], @@ -1297,6 +1414,7 @@ "474": [0, 1, 1], "475-mega": [0, 2, 2], "475": [0, 1, 1], + "476": [0, 1, 1], "478": [0, 2, 1], "479-heat": [0, 1, 1], "479-wash": [0, 1, 1], @@ -1307,8 +1425,9 @@ "480": [1, 1, 1], "481": [1, 1, 1], "482": [1, 1, 1], - "485": [0, 1, 1], "486": [0, 1 , 1 - ] ,"487-altered": [0, 1, 1], + "485": [0, 1, 1], + "486": [0, 1 , 1] , + "487-altered": [0, 1, 1], "487-origin": [0, 1, 1], "488": [0, 1, 1], "489": [1, 1, 1], @@ -1320,11 +1439,22 @@ "495": [0, 1, 1], "496": [0, 1, 1], "497": [0, 1, 1], + "498": [0, 1, 1], + "499": [0, 1, 1], + "500": [0, 1, 1], "501": [0, 1, 1], "502": [0, 1, 1], "503": [0, 1, 1], + "511": [0, 1, 1], + "512": [0, 1, 1], + "513": [0, 1, 1], + "514": [0, 1, 1], + "515": [0, 1, 1], + "516": [0, 1, 1], "517": [0, 1, 1], "518": [0, 1, 1], + "522": [0, 1, 1], + "523": [0, 1, 1], "524": [0, 1, 1], "525": [0, 1, 1], "526": [0, 1, 1], @@ -1337,6 +1467,9 @@ "532": [0, 1, 1], "533": [0, 1, 1], "534": [0, 1, 1], + "535": [0, 1, 1], + "536": [0, 1, 1], + "537": [0, 1, 1], "538": [0, 1, 1], "539": [0, 2, 2], "540": [0, 1, 1], @@ -1352,17 +1485,23 @@ "551": [0, 1, 1], "552": [0, 1, 1], "553": [0, 1, 1], + "554": [0, 1, 1], + "555": [0, 1, 1], + "555-zen": [0, 1, 1], "556": [0, 1, 1], "559": [1, 1, 1], "560": [1, 1, 1], "562": [0, 1, 1], "563": [0, 1, 1], + "566": [0, 1, 1], + "567": [0, 1, 1], "568": [0, 1, 1], "569-gigantamax": [0, 1, 1], "569": [0, 1, 1], "570": [0, 1, 1], "571": [0, 1, 1], "572": [0, 1, 1], + "573": [0, 1, 1], "577": [1, 1, 1], "578": [1, 1, 1], "579": [1, 1, 1], @@ -1403,6 +1542,7 @@ "621": [0, 1, 1], "622": [0, 1, 1], "623": [0, 1, 1], + "626": [0, 1, 1], "631": [0, 2, 2], "632": [0, 1, 1], "633": [0, 1, 1], @@ -1411,12 +1551,11 @@ "636": [0, 1, 1], "637": [0, 1, 1], "640": [0, 1, 1], - "641-incarnate": [0, 0, 0], - "641-therian": [0, 0, 0], - "642-incarnate": [0, 0, 0], - "642-therian": [0, 0, 0], - "645-incarnate": [0, 0, 0], - "645-therian": [0, 0, 0], + "643": [0, 1, 1], + "644": [0, 1, 1], + "646-black": [0, 1, 1], + "646-white": [0, 1, 1], + "646": [0, 1, 1], "647-resolute": [0, 1, 1], "647-ordinary": [0, 1, 1], "648-aria": [0, 1, 1], @@ -1493,6 +1632,8 @@ "689": [0, 1, 1], "690": [0, 1, 1], "691": [0, 1, 1], + "692": [0, 1, 1], + "693": [0, 1, 1], "696": [0, 1, 1], "697": [0, 1, 1], "698": [0, 1, 1], @@ -1523,6 +1664,8 @@ "735": [0, 1, 1], "742": [0, 2, 2], "743": [0, 2, 2], + "746": [0, 1, 1], + "746-school": [0, 1, 1], "747": [0, 1, 1], "748": [0, 1, 1], "751": [0, 1, 1], @@ -1561,6 +1704,10 @@ "778-busted": [0, 1, 1], "778-disguised": [0, 1, 1], "779": [0, 1, 1], + "780": [0, 1, 1], + "782": [0, 1, 1], + "783": [0, 1, 1], + "784": [0, 1, 1], "789": [1, 1, 1], "790": [0, 1, 1], "791-radiant-sun": [0, 1, 1], @@ -1593,6 +1740,11 @@ "830": [0, 1, 1], "835": [0, 1, 1], "836": [0, 1, 1], + "840": [0, 1, 1], + "841-gigantamax": [0, 1, 1], + "841": [0, 1, 1], + "842-gigantamax": [0, 1, 1], + "842": [0, 1, 1], "850": [0, 1, 1], "851-gigantamax": [0, 1, 1], "851": [0, 1, 1], @@ -1610,6 +1762,7 @@ "863": [0, 1, 1], "864": [0, 1, 1], "867": [0, 1, 1], + "871": [0, 1, 1], "872": [1, 1, 1], "873": [1, 1, 1], "876-female": [0, 1, 1], @@ -1708,14 +1861,18 @@ "1007-apex-build": [0, 2, 2], "1008-ultimate-mode": [1, 1, 1], "1010": [0, 1, 1], + "1011": [0, 1, 1], "1012-counterfeit": [0, 1, 1], "1013-unremarkable": [0, 1, 1], "1018": [0, 1, 1], + "1019": [0, 1, 1], "1022": [0, 2, 2], "1023": [0, 1, 1], "2026": [0, 1, 1], "2027": [0, 1, 1], "2028": [0, 1, 1], + "2037": [0, 1, 1], + "2038": [0, 1, 1], "2052": [0, 1, 1], "2053": [0, 1, 1], "2103": [0, 1, 1], @@ -1790,12 +1947,20 @@ "307": [0, 1, 1], "308": [0, 1, 1], "315": [0, 1, 1], + "332": [0, 1, 1], "369": [0, 1, 1], + "396": [0, 1, 1], + "397": [0, 1, 1], + "398": [0, 1, 1], "399": [0, 2, 1], "400": [0, 1, 1], "401": [0, 1, 1], "402": [0, 1, 1], + "403": [0, 1, 1], + "404": [0, 1, 1], + "405": [0, 1, 1], "407": [0, 1, 1], + "417": [0, 1, 1], "418": [0, 2, 2], "419": [0, 1, 1], "424": [0, 1, 1], diff --git a/public/images/pokemon/variant/back/1011.json b/public/images/pokemon/variant/back/1011.json new file mode 100644 index 00000000000..d8cffc4d587 --- /dev/null +++ b/public/images/pokemon/variant/back/1011.json @@ -0,0 +1,29 @@ +{ + "1": { + "b09579": "7b91a7", + "253922": "232b3a", + "fd9477": "63b9b9", + "345539": "313d4b", + "9c1e2a": "272a52", + "7eb36a": "9aa0b3", + "9fc164": "9aa0b3", + "8e9960": "67698b", + "c73030": "2b526f", + "e64d3c": "397880", + "477d45": "67698b", + "61071f": "190e2e" + }, + "2": { + "253922": "2e0920", + "fd9477": "f3efde", + "345539": "4f162a", + "9c1e2a": "9c564c", + "7eb36a": "e8838d", + "9fc164": "e28c95", + "8e9960": "9e4553", + "c73030": "d1a87e", + "e64d3c": "eee0bc", + "477d45": "903c4e", + "61071f": "4f0a1d" + } +} \ No newline at end of file diff --git a/public/images/pokemon/variant/back/1019.json b/public/images/pokemon/variant/back/1019.json new file mode 100644 index 00000000000..b8e674f2357 --- /dev/null +++ b/public/images/pokemon/variant/back/1019.json @@ -0,0 +1,44 @@ +{ + "1": { + "8b1313": "302752", + "746739": "582c74", + "6ba835": "7a7c9e", + "b49779": "9c2e72", + "9ce05f": "9aa0b3", + "bf2b2e": "abd7e2", + "d43e2d": "4e969e", + "841111": "302752", + "ae2124": "663267", + "ff7a59": "69c5c5", + "680606": "27103c", + "b72629": "2b526f", + "b59a7d": "a3b9d0", + "3e662b": "313846", + "e8cfb4": "c55885", + "82664a": "48476c", + "a60b0b": "70a2c5", + "e9cfb3": "dcebf9", + "3c9b3e": "e8edff" + }, + "2": { + "8b1313": "413534", + "746739": "312374", + "6ba835": "a8546e", + "b49779": "402622", + "9ce05f": "e28c95", + "bf2b2e": "e8e5de", + "d43e2d": "eedfb8", + "841111": "4b211b", + "ae2124": "63473b", + "ff7a59": "f3efde", + "680606": "4b211b", + "b72629": "bf9870", + "b59a7d": "cbb4af", + "3e662b": "341c1c", + "e8cfb4": "5d4c45", + "82664a": "613838", + "a60b0b": "c7c2bc", + "e9cfb3": "e2dcd6", + "3c9b3e": "5e75e2" + } +} \ No newline at end of file diff --git a/public/images/pokemon/variant/back/143-gigantamax.json b/public/images/pokemon/variant/back/143-gigantamax.json new file mode 100644 index 00000000000..ffe8e7a31cd --- /dev/null +++ b/public/images/pokemon/variant/back/143-gigantamax.json @@ -0,0 +1,62 @@ +{ + "1": { + "101010": "101010", + "624120": "544a41", + "5e3e1d": "351b52", + "31573f": "7b59ba", + "54792b": "c06386", + "103941": "701a55", + "315a7b": "943469", + "bd3740": "c94489", + "a3704e": "522663", + "a47352": "6b6357", + "ad7f5f": "b56564", + "de5656": "d65a8a", + "069f5f": "b083de", + "89b432": "f1a1b2", + "bbe35b": "f1a1b2", + "98a0a0": "98a0a0", + "a0a0a0": "a0a0a0", + "fc8b9f": "ed7794", + "e6c5ac": "cf8880", + "f6e6bd": "f0beb1", + "c9c9c9": "c9c9c9", + "f4f4f4": "f4f4f4", + "4d6e27": "5c9bb8", + "91ba3d": "6bc7c7", + "93bf39": "74c2cf", + "bee366": "8de3d7", + "d95b7f": "c24a6c", + "fc92a6": "fc92a6" + }, + "2": { + "101010": "101010", + "624120": "ba6632", + "5e3e1d": "c2986e", + "31573f": "4b4c52", + "54792b": "208073", + "103941": "93b5c2", + "315a7b": "b6d6d9", + "bd3740": "9e4619", + "a3704e": "e6cda1", + "a47352": "cf9d48", + "ad7f5f": "284878", + "de5656": "bd742b", + "069f5f": "7c7c82", + "89b432": "37ad82", + "bbe35b": "79e0a2", + "98a0a0": "53738a", + "a0a0a0": "abd1cc", + "fc8b9f": "d9a443", + "e6c5ac": "27538a", + "f6e6bd": "36719c", + "c9c9c9": "b4d3d9", + "f4f4f4": "f4f4f4", + "4d6e27": "964117", + "91ba3d": "d9a65b", + "93bf39": "d9a250", + "bee366": "e6cf5e", + "d95b7f": "b77727", + "fc92a6": "d9b64c" + } +} \ No newline at end of file diff --git a/public/images/pokemon/variant/back/143.json b/public/images/pokemon/variant/back/143.json new file mode 100644 index 00000000000..7dc08d72559 --- /dev/null +++ b/public/images/pokemon/variant/back/143.json @@ -0,0 +1,32 @@ +{ + "1": { + "000000": "101010", + "103a42": "701a55", + "315a7b": "943469", + "528cad": "ad4b70", + "735a21": "91504e", + "737373": "756363", + "a57352": "b36462", + "c59c5a": "b36462", + "cecece": "cbc4c4", + "e6c5ad": "cf8880", + "f7d6bd": "e09f96", + "f7e6bd": "f0beb1", + "ffffff": "ffffff" + }, + "2": { + "000000": "101010", + "103a42": "93b5c2", + "315a7b": "b6d6d9", + "528cad": "d5e8e7", + "735a21": "1b2e61", + "737373": "525266", + "a57352": "1b2e61", + "c59c5a": "20386e", + "cecece": "bfc7cb", + "e6c5ad": "284878", + "f7d6bd": "38638f", + "f7e6bd": "457ca8", + "ffffff": "ffffff" + } +} \ No newline at end of file diff --git a/public/images/pokemon/variant/back/187.json b/public/images/pokemon/variant/back/187.json new file mode 100644 index 00000000000..7e0d1dca511 --- /dev/null +++ b/public/images/pokemon/variant/back/187.json @@ -0,0 +1,28 @@ +{ + "1": { + "101010": "101010", + "425a10": "934200", + "52843a": "c27600", + "63bd5a": "efac00", + "8c083a": "012a3e", + "9cde5a": "ffdc46", + "b56373": "003e53", + "ff7b94": "006d7f", + "f79cb5": "00a59b", + "ffc500": "e3396c", + "ffff00": "ffa8b6" + }, + "2": { + "101010": "101010", + "425a10": "5f0052", + "52843a": "960070", + "63bd5a": "960070", + "8c083a": "802600", + "9cde5a": "e01c75", + "b56373": "d8591c", + "ff7b94": "fa9600", + "f79cb5": "ffc93b", + "ffc500": "5ec0ec", + "ffff00": "94ecf9" + } +} \ No newline at end of file diff --git a/public/images/pokemon/variant/back/188.json b/public/images/pokemon/variant/back/188.json new file mode 100644 index 00000000000..a674bbf244e --- /dev/null +++ b/public/images/pokemon/variant/back/188.json @@ -0,0 +1,30 @@ +{ + "1": { + "000000": "101010", + "196b00": "c66b31", + "42b521": "e99f23", + "63d631": "ffd953", + "8c5200": "004269", + "8cf74a": "fef579", + "b5d6de": "fa9600", + "ce8400": "075976", + "f7a519": "005883", + "ffd600": "046c90", + "ffef00": "007b9a", + "ffffff": "ffc93b" + }, + "2": { + "000000": "101010", + "196b00": "2659ad", + "42b521": "5293d5", + "63d631": "79d5fa", + "8c5200": "5f0052", + "8cf74a": "a6eafa", + "b5d6de": "fa9600", + "ce8400": "9d0562", + "f7a519": "960070", + "ffd600": "ba0071", + "ffef00": "e01c75", + "ffffff": "ffc93b" + } +} \ No newline at end of file diff --git a/public/images/pokemon/variant/back/189.json b/public/images/pokemon/variant/back/189.json new file mode 100644 index 00000000000..ed1e40ed4b3 --- /dev/null +++ b/public/images/pokemon/variant/back/189.json @@ -0,0 +1,32 @@ +{ + "1": { + "101010": "101010", + "194a73": "b64d21", + "29844a": "83839f", + "3a73c5": "e19903", + "739cff": "fcd936", + "84ce7b": "c1bdd1", + "8cb5ff": "f9f870", + "b58c31": "071a3c", + "d6bd5a": "282773", + "ded67b": "2192b2", + "efe69c": "104f80", + "fff7b5": "1379a0", + "ffffde": "2faac4" + }, + "2": { + "101010": "101010", + "194a73": "680054", + "29844a": "3887d3", + "3a73c5": "980062", + "739cff": "d20d6a", + "84ce7b": "58c1eb", + "8cb5ff": "e4486a", + "b58c31": "da5014", + "d6bd5a": "f06f22", + "ded67b": "fce37b", + "efe69c": "ffa747", + "fff7b5": "ffd45a", + "ffffde": "f9f29b" + } +} \ No newline at end of file diff --git a/public/images/pokemon/variant/back/2037.json b/public/images/pokemon/variant/back/2037.json new file mode 100644 index 00000000000..0d2c02cf980 --- /dev/null +++ b/public/images/pokemon/variant/back/2037.json @@ -0,0 +1,22 @@ +{ + "1": { + "151515": "101010", + "558b9f": "9f435d", + "648082": "6e67b0", + "97bdd2": "ffa8b8", + "c1d1d2": "b3b8ea", + "d9e9f4": "ffd3e1", + "fdfdfd": "d7d9f9", + "ffffff": "ffffff" + }, + "2": { + "151515": "101010", + "558b9f": "90215e", + "648082": "bf4747", + "97bdd2": "da4e75", + "c1d1d2": "ffc07b", + "d9e9f4": "ff8489", + "fdfdfd": "ffe6a0", + "ffffff": "ffffff" + } +} \ No newline at end of file diff --git a/public/images/pokemon/variant/back/2038.json b/public/images/pokemon/variant/back/2038.json new file mode 100644 index 00000000000..845c45f7887 --- /dev/null +++ b/public/images/pokemon/variant/back/2038.json @@ -0,0 +1,36 @@ +{ + "1": { + "101010": "101010", + "4d5c78": "394880", + "516077": "9f435d", + "007ab5": "2380c4", + "38858d": "e35ea2", + "7a8a9c": "6172ab", + "66b3d7": "3dbfe0", + "86a8c0": "e27495", + "81c2c5": "ff89c0", + "bdcbd7": "a7ade7", + "a1e1de": "ffb6e5", + "b0d3ea": "ffa8b8", + "eafefe": "ffd3e1", + "fdfdfd": "bec6ef", + "ffffff": "ffffff" + }, + "2": { + "101010": "101010", + "4d5c78": "73174a", + "516077": "bb3c3c", + "007ab5": "882493", + "38858d": "572746", + "7a8a9c": "90215e", + "66b3d7": "a044ab", + "86a8c0": "ff824c", + "81c2c5": "75355e", + "bdcbd7": "da426d", + "a1e1de": "93547c", + "b0d3ea": "ffbf6b", + "eafefe": "ffe28c", + "fdfdfd": "ff6f86", + "ffffff": "ffffff" + } +} \ No newline at end of file diff --git a/public/images/pokemon/variant/back/204.json b/public/images/pokemon/variant/back/204.json new file mode 100644 index 00000000000..1e4007149cb --- /dev/null +++ b/public/images/pokemon/variant/back/204.json @@ -0,0 +1,16 @@ +{ + "1": { + "52adb5": "a4b76b", + "84d6d6": "c1cd7d", + "294a7b": "4b7641", + "b5eff7": "e3e796", + "3a73a5": "74a057" + }, + "2": { + "52adb5": "d46b84", + "84d6d6": "eda6ae", + "294a7b": "700a4b", + "b5eff7": "f7dcd7", + "3a73a5": "b43469" + } +} \ No newline at end of file diff --git a/public/images/pokemon/variant/back/205.json b/public/images/pokemon/variant/back/205.json new file mode 100644 index 00000000000..5a3e2d61606 --- /dev/null +++ b/public/images/pokemon/variant/back/205.json @@ -0,0 +1,22 @@ +{ + "1": { + "847b9c": "103b2c", + "e6cef7": "3e7745", + "ff9c9c": "ffb356", + "c5a5de": "205639", + "f76373": "f68b31", + "bd2942": "d8681e", + "524263": "04211a", + "841031": "af3b11" + }, + "2": { + "847b9c": "962a41", + "e6cef7": "e9b1a0", + "ff9c9c": "b0f5ee", + "c5a5de": "c86554", + "f76373": "6bbfd2", + "bd2942": "2c6094", + "524263": "691338", + "841031": "0e2667" + } +} \ No newline at end of file diff --git a/public/images/pokemon/variant/back/299.json b/public/images/pokemon/variant/back/299.json new file mode 100644 index 00000000000..3b2cd15e3cd --- /dev/null +++ b/public/images/pokemon/variant/back/299.json @@ -0,0 +1,28 @@ +{ + "1": { + "000000": "101010", + "5a1921": "1f3a30", + "31314a": "6b2710", + "9c314a": "30594a", + "de5252": "487c60", + "ff6b7b": "5a9170", + "42529c": "a14020", + "637bbd": "c66831", + "ff9494": "7fbc7a", + "8ca5e6": "db8644", + "adbdf7": "e09a65" + }, + "2": { + "000000": "101010", + "5a1921": "28163a", + "31314a": "38619e", + "9c314a": "452b5e", + "de5252": "584282", + "ff6b7b": "675398", + "42529c": "68a2cd", + "637bbd": "99e4ee", + "ff9494": "7282c4", + "8ca5e6": "dcfff8", + "adbdf7": "f3fff6" + } +} \ No newline at end of file diff --git a/public/images/pokemon/variant/back/313.json b/public/images/pokemon/variant/back/313.json new file mode 100644 index 00000000000..65a1cfe9eae --- /dev/null +++ b/public/images/pokemon/variant/back/313.json @@ -0,0 +1,28 @@ +{ + "1": { + "a5b5c5": "eea256", + "4a4a52": "9c1200", + "deb552": "ffda31", + "7b8ca5": "d66d38", + "ce3a52": "491c22", + "f78473": "643a35", + "8c6b52": "845c46", + "ffe652": "fffa52", + "8c314a": "2b1419", + "8c8c94": "ff3b21", + "e65263": "57272c" + }, + "2": { + "a5b5c5": "3a767b", + "4a4a52": "175614", + "deb552": "b6d479", + "7b8ca5": "1e5256", + "ce3a52": "1585cc", + "f78473": "77d4ee", + "8c6b52": "5c713d", + "ffe652": "dde6b1", + "8c314a": "0c4275", + "8c8c94": "0ba905", + "e65263": "32b0ff" + } +} \ No newline at end of file diff --git a/public/images/pokemon/variant/back/314.json b/public/images/pokemon/variant/back/314.json new file mode 100644 index 00000000000..f77165c7b15 --- /dev/null +++ b/public/images/pokemon/variant/back/314.json @@ -0,0 +1,30 @@ +{ + "1": { + "9c8452": "ac6f0e", + "5a6b8c": "9a4013", + "8cadce": "d66d38", + "ce8cde": "6a342c", + "ffe673": "fbf650", + "7b7b7b": "b82b18", + "e6b54a": "efcb26", + "3a3a3a": "6b180d", + "9c52bd": "57272c", + "adc5ef": "eea256", + "3a3152": "2d0723", + "6b5a94": "2b1419" + }, + "2": { + "9c8452": "074656", + "5a6b8c": "70a84f", + "8cadce": "c1db9c", + "ce8cde": "77d4ee", + "ffe673": "3dc5d3", + "7b7b7b": "155870", + "e6b54a": "019792", + "3a3a3a": "0a2934", + "9c52bd": "43a3df", + "adc5ef": "e5edcc", + "3a3152": "051b37", + "6b5a94": "255b95" + } +} \ No newline at end of file diff --git a/public/images/pokemon/variant/back/32.json b/public/images/pokemon/variant/back/32.json new file mode 100644 index 00000000000..473edcae2af --- /dev/null +++ b/public/images/pokemon/variant/back/32.json @@ -0,0 +1,34 @@ +{ + "1": { + "101010": "101010", + "006342": "273161", + "63426b": "944f25", + "b51900": "28678a", + "de4229": "42adc1", + "ff6b52": "78d6d3", + "00a573": "3b4d7a", + "9c4aad": "ab5c24", + "bd63c5": "cf863e", + "19ce9c": "55729e", + "e69cd6": "e0c151", + "efbdef": "ede4ab", + "cecece": "cecece", + "ffffff": "ffffff" + }, + "2": { + "101010": "101010", + "006342": "b0384a", + "63426b": "142440", + "b51900": "b86527", + "de4229": "e1b13b", + "ff6b52": "eddd95", + "00a573": "d65e64", + "9c4aad": "133257", + "bd63c5": "253f5e", + "19ce9c": "ed938e", + "e69cd6": "375c73", + "efbdef": "5d91a1", + "cecece": "cecece", + "ffffff": "ffffff" + } +} \ No newline at end of file diff --git a/public/images/pokemon/variant/back/325.json b/public/images/pokemon/variant/back/325.json new file mode 100644 index 00000000000..1918b48adfd --- /dev/null +++ b/public/images/pokemon/variant/back/325.json @@ -0,0 +1,24 @@ +{ + "1": { + "ef84ad": "5ca0b5", + "f7a5bd": "6ac5c8", + "c5637b": "3c6b95", + "ffd6e6": "b4e6e7", + "7b7b8c": "559b43", + "5a5a73": "2e7320", + "a5a5ad": "b5d780", + "a53a42": "2b4d7d", + "3a4252": "18340c" + }, + "2": { + "ef84ad": "1f6759", + "f7a5bd": "379a85", + "c5637b": "144844", + "ffd6e6": "8dd6ab", + "7b7b8c": "dca878", + "5a5a73": "a7724a", + "a5a5ad": "fbe3a3", + "a53a42": "0c2625", + "3a4252": "72442d" + } +} \ No newline at end of file diff --git a/public/images/pokemon/variant/back/326.json b/public/images/pokemon/variant/back/326.json new file mode 100644 index 00000000000..eb1c4954208 --- /dev/null +++ b/public/images/pokemon/variant/back/326.json @@ -0,0 +1,30 @@ +{ + "1": { + "9c9ca5": "7ecdd1", + "d684ce": "7bb15b", + "636373": "3c6b95", + "6b426b": "559b43", + "ce5a7b": "d06d50", + "a5425a": "a84331", + "f7a5b5": "f7d1a0", + "ef7b94": "e99e76", + "bd63ad": "559b43", + "e6a5de": "b5d780", + "4a4a52": "2b4d7d", + "7b7b84": "5ca0b5" + }, + "2": { + "9c9ca5": "fffade", + "d684ce": "67508c", + "636373": "e8bc75", + "6b426b": "081f19", + "ce5a7b": "1f6759", + "a5425a": "144844", + "f7a5b5": "5cba98", + "ef7b94": "379a85", + "bd63ad": "574285", + "e6a5de": "7a649c", + "4a4a52": "d08f55", + "7b7b84": "fbefb3" + } +} \ No newline at end of file diff --git a/public/images/pokemon/variant/back/33.json b/public/images/pokemon/variant/back/33.json new file mode 100644 index 00000000000..331220de9ef --- /dev/null +++ b/public/images/pokemon/variant/back/33.json @@ -0,0 +1,32 @@ +{ + "1": { + "101010": "101010", + "5a3a63": "944f25", + "b51900": "b51900", + "de4229": "de4229", + "845a52": "42adc1", + "009463": "273161", + "945ab5": "cf863e", + "4acea5": "55729e", + "848484": "848484", + "ce84de": "e0c151", + "e6adef": "ede4ab", + "c5c5c5": "c5c5c5", + "ffffff": "ffffff" + }, + "2": { + "101010": "101010", + "5a3a63": "142440", + "b51900": "d98943", + "de4229": "edc85a", + "845a52": "e1b13b", + "009463": "b0384a", + "945ab5": "253f5e", + "4acea5": "ed938e", + "848484": "848484", + "ce84de": "375c73", + "e6adef": "5d91a1", + "c5c5c5": "c5c5c5", + "ffffff": "ffffff" + } +} \ No newline at end of file diff --git a/public/images/pokemon/variant/back/331.json b/public/images/pokemon/variant/back/331.json new file mode 100644 index 00000000000..7dcb633affb --- /dev/null +++ b/public/images/pokemon/variant/back/331.json @@ -0,0 +1,30 @@ +{ + "1": { + "003a10": "601130", + "ffe63a": "7aa1df", + "31944a": "b73736", + "215200": "69102c", + "63bd6b": "dd6754", + "f7bd19": "448bc3", + "4a7310": "9f2a3f", + "196b31": "891d2c", + "94c552": "d76868", + "739c3a": "d74f4f", + "8c6b3a": "123a5a", + "bdde7b": "e67f7f" + }, + "2": { + "003a10": "684531", + "ffe63a": "eaa5c6", + "31944a": "c09e6c", + "215200": "694426", + "63bd6b": "d9c985", + "f7bd19": "d979b2", + "4a7310": "6d3494", + "196b31": "946e51", + "94c552": "9364a5", + "739c3a": "7c558d", + "8c6b3a": "983364", + "bdde7b": "a772bd" + } +} \ No newline at end of file diff --git a/public/images/pokemon/variant/back/332.json b/public/images/pokemon/variant/back/332.json new file mode 100644 index 00000000000..c13c07c34b4 --- /dev/null +++ b/public/images/pokemon/variant/back/332.json @@ -0,0 +1,28 @@ +{ + "1": { + "319452": "831a1f", + "4aa552": "9f2f2c", + "7ba563": "b44040", + "8cbd63": "c54b4b", + "215200": "710f2f", + "196b21": "831a1f", + "a5d674": "df5252", + "4a7310": "982443", + "a5d673": "e16363", + "63b56b": "b2332f", + "215201": "630d28" + }, + "2": { + "319452": "b08d72", + "4aa552": "c5a77f", + "7ba563": "704e7e", + "8cbd63": "e3d7a6", + "215200": "3f3249", + "196b21": "b08d72", + "a5d674": "d7cda7", + "4a7310": "4f3956", + "a5d673": "8c669b", + "63b56b": "cfc191", + "215201": "583823" + } +} \ No newline at end of file diff --git a/public/images/pokemon/variant/back/34.json b/public/images/pokemon/variant/back/34.json new file mode 100644 index 00000000000..953d0276777 --- /dev/null +++ b/public/images/pokemon/variant/back/34.json @@ -0,0 +1,32 @@ +{ + "1": { + "101010": "101010", + "5a296b": "7a411d", + "73735a": "696342", + "73735b": "73735b", + "73735c": "3b447a", + "a55294": "cf863e", + "d673ef": "e0c151", + "c5c5a5": "6272a8", + "c7c7a9": "c7c7a9", + "c4c4a7": "c4c4a7", + "de94f7": "ede4ab", + "fcfcfc": "fcfcfc", + "ffffff": "ffffff" + }, + "2": { + "101010": "101010", + "5a296b": "142440", + "73735a": "a37355", + "73735b": "73735b", + "73735c": "85204a", + "a55294": "253f5e", + "d673ef": "375c73", + "c5c5a5": "c43d63", + "c7c7a9": "e0b990", + "c4c4a7": "c4c4a7", + "de94f7": "5d91a1", + "fcfcfc": "fcfcfc", + "ffffff": "ede1b4" + } +} \ No newline at end of file diff --git a/public/images/pokemon/variant/back/345.json b/public/images/pokemon/variant/back/345.json new file mode 100644 index 00000000000..c7b0d665e29 --- /dev/null +++ b/public/images/pokemon/variant/back/345.json @@ -0,0 +1,28 @@ +{ + "1": { + "633a84": "611746", + "efd663": "fcf3a2", + "bd5284": "6084bd", + "6b5221": "679e3a", + "b5ade6": "ff5289", + "d6a531": "d8e374", + "efadb5": "b9f0ff", + "7363b5": "801f4c", + "ce7394": "84aedb", + "843a5a": "394287", + "9c84ce": "bd3167" + }, + "2": { + "633a84": "b57c2d", + "efd663": "de463e", + "bd5284": "429949", + "6b5221": "661634", + "b5ade6": "fff8a3", + "d6a531": "942532", + "efadb5": "beed9a", + "7363b5": "dbb34d", + "ce7394": "7fcc68", + "843a5a": "296e47", + "9c84ce": "f5df73" + } +} \ No newline at end of file diff --git a/public/images/pokemon/variant/back/346.json b/public/images/pokemon/variant/back/346.json new file mode 100644 index 00000000000..d2b5406f75a --- /dev/null +++ b/public/images/pokemon/variant/back/346.json @@ -0,0 +1,30 @@ +{ + "1": { + "ffd6ef": "deffea", + "3a6b52": "7f183f", + "a57b10": "5e8c29", + "a5e68c": "f38460", + "ce6394": "526f84", + "ef6b8c": "93c6c5", + "7bc573": "eb564b", + "ff9cad": "d2faef", + "f7d642": "d8e374", + "cea531": "a7c961", + "944263": "304459", + "529c5a": "b32843" + }, + "2": { + "ffd6ef": "a3ffc3", + "3a6b52": "96483b", + "a57b10": "661634", + "a5e68c": "ffe6b5", + "ce6394": "32806f", + "ef6b8c": "53b491", + "7bc573": "efbd8c", + "ff9cad": "7be3b6", + "f7d642": "de463e", + "cea531": "942532", + "944263": "17404a", + "529c5a": "bf815c" + } +} \ No newline at end of file diff --git a/public/images/pokemon/variant/back/396.json b/public/images/pokemon/variant/back/396.json new file mode 100644 index 00000000000..00ffa97fd19 --- /dev/null +++ b/public/images/pokemon/variant/back/396.json @@ -0,0 +1,36 @@ +{ + "1": { + "d6dede": "e3d09d", + "949494": "dbb070", + "736363": "28854d", + "ffffff": "f0ecd3", + "382028": "751e23", + "d67300": "db963b", + "b5b5b5": "d4b27f", + "808080": "c48c51", + "9c4a21": "b06421", + "8c7373": "bd453c", + "3a2129": "07332d", + "524a4a": "156146", + "4f4747": "144a40", + "ad9c9c": "ed7f4c", + "ff9429": "ffcf5e" + }, + "2": { + "d6dede": "f0deaa", + "949494": "c29b72", + "736363": "2f436b", + "ffffff": "fcfad2", + "382028": "163d4d", + "d67300": "52281f", + "b5b5b5": "debd8c", + "808080": "a67c5d", + "9c4a21": "451915", + "8c7373": "307b82", + "3a2129": "0f1730", + "524a4a": "1b2745", + "4f4747": "e6a647", + "ad9c9c": "4da8a1", + "ff9429": "8c604c" + } +} \ No newline at end of file diff --git a/public/images/pokemon/variant/back/397.json b/public/images/pokemon/variant/back/397.json new file mode 100644 index 00000000000..d1f7e646649 --- /dev/null +++ b/public/images/pokemon/variant/back/397.json @@ -0,0 +1,36 @@ +{ + "1": { + "735a63": "bd453c", + "574f57": "144a40", + "5a525a": "28854d", + "f75242": "8bba65", + "878787": "bda377", + "b5b5b5": "d9c798", + "ff9429": "ffcf5e", + "382f38": "0c3331", + "3a313a": "156146", + "362d36": "572e14", + "fcfcfc": "f0ebc5", + "bd6300": "994c1c", + "7b4221": "c47a2f", + "523a4a": "751e23", + "9c848c": "ed7f4c" + }, + "2": { + "735a63": "307b82", + "574f57": "e6a647", + "5a525a": "2f436b", + "f75242": "f797ad", + "878787": "ba946e", + "b5b5b5": "debd8c", + "ff9429": "8c604c", + "382f38": "c27b34", + "3a313a": "1b2745", + "362d36": "421917", + "fcfcfc": "fcfad2", + "bd6300": "63362b", + "7b4221": "52281f", + "523a4a": "163d4d", + "9c848c": "4da8a1" + } +} \ No newline at end of file diff --git a/public/images/pokemon/variant/back/398.json b/public/images/pokemon/variant/back/398.json new file mode 100644 index 00000000000..ed678a4c4f3 --- /dev/null +++ b/public/images/pokemon/variant/back/398.json @@ -0,0 +1,35 @@ +{ + "1": { + "9c4242": "5fad3b", + "5c545c": "144a40", + "3a313a": "0b3634", + "7b4221": "b06421", + "bd6300": "db963b", + "5a525a": "156146", + "7b6b7b": "28854d", + "f75242": "90cc58", + "735a63": "bd453c", + "ffffff": "e8e3b6", + "523a4a": "751e23", + "3a3a3a": "07332d", + "b5b5b5": "d7be89", + "9c848c": "ed7f4c", + "ff9429": "ffcf5e" + }, + "2": { + "9c4242": "c4833d", + "5c545c": "e6a647", + "7b4221": "421917", + "bd6300": "63362b", + "5a525a": "1b2745", + "7b6b7b": "293854", + "f75242": "e6bd4e", + "735a63": "307b82", + "ffffff": "fcfad2", + "523a4a": "163d4d", + "3a3a3a": "080d1f", + "b5b5b5": "debd8c", + "9c848c": "4da8a1", + "ff9429": "8c604c" + } +} \ No newline at end of file diff --git a/public/images/pokemon/variant/back/403.json b/public/images/pokemon/variant/back/403.json new file mode 100644 index 00000000000..4b8d7b52070 --- /dev/null +++ b/public/images/pokemon/variant/back/403.json @@ -0,0 +1,22 @@ +{ + "1": { + "b59c5a": "45babf", + "7badf7": "bb5c3a", + "637bb5": "903325", + "4a4a63": "dcb788", + "ffe65a": "59dcd6", + "313142": "bf8652", + "42426b": "671919", + "736352": "267789" + }, + "2": { + "b59c5a": "9a31be", + "7badf7": "303465", + "637bb5": "222352", + "4a4a63": "bbc2e5", + "ffe65a": "e25ce8", + "313142": "8883d4", + "42426b": "121031", + "736352": "611c7f" + } +} \ No newline at end of file diff --git a/public/images/pokemon/variant/back/404.json b/public/images/pokemon/variant/back/404.json new file mode 100644 index 00000000000..32ab9ea8a1d --- /dev/null +++ b/public/images/pokemon/variant/back/404.json @@ -0,0 +1,24 @@ +{ + "1": { + "736352": "267789", + "4a4a73": "671919", + "63637b": "f1dfb1", + "637bb5": "903325", + "4a4a63": "dcb788", + "ffe65a": "59dcd6", + "313142": "bf8652", + "b59c5a": "45babf", + "7badf7": "bb5c3a" + }, + "2": { + "736352": "611c7f", + "4a4a73": "121031", + "63637b": "dee4f4", + "637bb5": "222352", + "4a4a63": "bbc2e5", + "ffe65a": "e25ce8", + "313142": "8883d4", + "b59c5a": "9a31be", + "7badf7": "303465" + } +} \ No newline at end of file diff --git a/public/images/pokemon/variant/back/405.json b/public/images/pokemon/variant/back/405.json new file mode 100644 index 00000000000..46a38cfd243 --- /dev/null +++ b/public/images/pokemon/variant/back/405.json @@ -0,0 +1,30 @@ +{ + "1": { + "b59c5a": "45babf", + "7badf7": "bb5c3a", + "63637b": "f1dfb1", + "4a4a73": "671919", + "637bb5": "903325", + "353255": "4a0e15", + "4a4a63": "dcb788", + "ffe65a": "59dcd6", + "313142": "bf8652", + "943a52": "472614", + "e64a52": "4f3217", + "736352": "267789" + }, + "2": { + "b59c5a": "9a31be", + "7badf7": "303465", + "63637b": "dee4f4", + "4a4a73": "121031", + "637bb5": "222352", + "353255": "06051b", + "4a4a63": "bbc2e5", + "ffe65a": "e25ce8", + "313142": "8883d4", + "943a52": "614b9a", + "e64a52": "6f5dac", + "736352": "611c7f" + } +} \ No newline at end of file diff --git a/public/images/pokemon/variant/back/417.json b/public/images/pokemon/variant/back/417.json new file mode 100644 index 00000000000..27f45e74557 --- /dev/null +++ b/public/images/pokemon/variant/back/417.json @@ -0,0 +1,36 @@ +{ + "1": { + "101010": "101010", + "3e364e": "734430", + "524941": "732e12", + "5a524a": "642f1a", + "4a425a": "5f2618", + "84523a": "9b314f", + "ef845a": "e26e6e", + "c5a563": "e95d6c", + "ffd663": "f17c7c", + "637b9c": "86452b", + "7bb5e6": "a25f37", + "cec5c5": "e8be64", + "f7f7f7": "faeda9", + "ffffff": "ffffff", + "7b7b84": "8e623c" + }, + "2": { + "101010": "101010", + "3e364e": "203243", + "524941": "2d284c", + "5a524a": "0f203a", + "4a425a": "23704c", + "84523a": "693939", + "ef845a": "e1b8ac", + "c5a563": "5ae7f6", + "ffd663": "8ffaff", + "637b9c": "a2dc76", + "7bb5e6": "e4fba1", + "cec5c5": "357577", + "f7f7f7": "5ba297", + "ffffff": "ffffff", + "7b7b84": "1f3f4e" + } +} \ No newline at end of file diff --git a/public/images/pokemon/variant/back/420.json b/public/images/pokemon/variant/back/420.json new file mode 100644 index 00000000000..3177603d799 --- /dev/null +++ b/public/images/pokemon/variant/back/420.json @@ -0,0 +1,32 @@ +{ + "1": { + "101010": "101010", + "423131": "103d47", + "6b3a4a": "09303b", + "314252": "8f3833", + "3a734a": "ab554b", + "843152": "185158", + "ad426b": "368a7f", + "429442": "d98b77", + "52a54a": "f7bfa8", + "73ce5a": "fcdbc7", + "de6384": "51b095", + "ff8cad": "73d9ae", + "ffffff": "ffffff" + }, + "2": { + "101010": "101010", + "423131": "390f26", + "6b3a4a": "29091b", + "314252": "752a4a", + "3a734a": "9c4861", + "843152": "3b0d21", + "ad426b": "571539", + "429442": "a86a79", + "52a54a": "c29597", + "73ce5a": "dec3c3", + "de6384": "752648", + "ff8cad": "ad5168", + "ffffff": "ffffff" + } + } \ No newline at end of file diff --git a/public/images/pokemon/variant/back/421-overcast.json b/public/images/pokemon/variant/back/421-overcast.json new file mode 100644 index 00000000000..77c5c18415d --- /dev/null +++ b/public/images/pokemon/variant/back/421-overcast.json @@ -0,0 +1,34 @@ +{ + "1": { + "101010": "101010", + "105221": "ab554b", + "4a2942": "5e1228", + "7b294a": "103d47", + "7a2a4a": "236e6a", + "427b4a": "d98b77", + "6b427b": "962a3e", + "a53a63": "368a7f", + "ce527b": "51b095", + "52ad5a": "f7bfa8", + "5ac55a": "fcdbc7", + "845aad": "c75058", + "9c7bbd": "db7f7f", + "de7394": "73d9ae" + }, + "2": { + "101010": "101010", + "105221": "995969", + "4a2942": "521d44", + "7b294a": "390f26", + "7a2a4a": "571539", + "427b4a": "ba8087", + "6b427b": "8f4270", + "a53a63": "611c3b", + "ce527b": "752648", + "52ad5a": "cf9d9d", + "5ac55a": "e3cbca", + "845aad": "a86886", + "9c7bbd": "d197ac", + "de7394": "ad5168" + } +} \ No newline at end of file diff --git a/public/images/pokemon/variant/back/421-sunshine.json b/public/images/pokemon/variant/back/421-sunshine.json new file mode 100644 index 00000000000..096641576c9 --- /dev/null +++ b/public/images/pokemon/variant/back/421-sunshine.json @@ -0,0 +1,40 @@ +{ + "1": { + "101010": "101010", + "006310": "e6d590", + "941e3f": "103d47", + "9c6b10": "c4655a", + "941f40": "5c1547", + "942142": "591230", + "ce3a6b": "751a38", + "cf3c6d": "872e5c", + "cf3e6e": "368a7f", + "19943a": "f0f0bd", + "d6b55a": "db8e7d", + "f7de73": "f7bfa8", + "e66394": "51b095", + "de84ad": "962a3e", + "ffa5c5": "c75058", + "ffe6f7": "d0fdf0", + "ffffff": "ffffff" + }, + "2": { + "101010": "101010", + "006310": "72559e", + "941e3f": "390f26", + "9c6b10": "4a2942", + "941f40": "3a234a", + "942142": "804058", + "ce3a6b": "995969", + "cf3c6d": "563666", + "cf3e6e": "571539", + "19943a": "9574b3", + "d6b55a": "914972", + "f7de73": "b35f86", + "e66394": "752648", + "de84ad": "cf9d9d", + "ffa5c5": "e3cbca", + "ffe6f7": "d26393", + "ffffff": "ffffff" + } +} \ No newline at end of file diff --git a/public/images/pokemon/variant/back/446.json b/public/images/pokemon/variant/back/446.json new file mode 100644 index 00000000000..1f6d43127bb --- /dev/null +++ b/public/images/pokemon/variant/back/446.json @@ -0,0 +1,38 @@ +{ + "1": { + "000000": "101010", + "104242": "4d0f3f", + "215a73": "701a55", + "317b9c": "943469", + "3194b5": "ad4b70", + "524a10": "91504e", + "73737b": "756363", + "7b5a31": "522663", + "948442": "bf777a", + "9c3a42": "714084", + "b5b563": "de9494", + "cccfce": "cbc4c4", + "cecece": "cecece", + "de9494": "a270b5", + "efe684": "f0beb1", + "ffffff": "ffffff" + }, + "2": { + "000000": "101010", + "104242": "6398b7", + "215a73": "a3cacd", + "317b9c": "cbe4e2", + "3194b5": "edf5f4", + "524a10": "233f69", + "73737b": "525266", + "7b5a31": "e6cda1", + "948442": "2f4d80", + "9c3a42": "487d43", + "b5b563": "38638f", + "cccfce": "bfc7cb", + "cecece": "cecece", + "de9494": "9cb780", + "efe684": "4781a8", + "ffffff": "ffffff" + } +} \ No newline at end of file diff --git a/public/images/pokemon/variant/back/476.json b/public/images/pokemon/variant/back/476.json new file mode 100644 index 00000000000..5f54f51d1f9 --- /dev/null +++ b/public/images/pokemon/variant/back/476.json @@ -0,0 +1,36 @@ +{ + "1": { + "101010": "101010", + "5a2921": "0e291d", + "7b3129": "1e3f30", + "293a4a": "352310", + "3a4a5a": "59452f", + "bd3152": "30594a", + "e65a63": "578b6b", + "194a84": "62230e", + "3a63ad": "9d3a18", + "5a7bce": "c76227", + "ef7b8c": "77b472", + "739ce6": "de7f36", + "84adf7": "e68c43", + "c5cede": "c5cede", + "ffffff": "ffffff" + }, + "2": { + "101010": "101010", + "5a2921": "21132c", + "7b3129": "301b3f", + "293a4a": "111b28", + "3a4a5a": "253142", + "bd3152": "482a5e", + "e65a63": "6a5394", + "194a84": "30578e", + "3a63ad": "5b97c1", + "5a7bce": "92dee8", + "ef7b8c": "747fc4", + "739ce6": "dbfff4", + "84adf7": "c2efe5", + "c5cede": "c5cede", + "ffffff": "ffffff" + } +} \ No newline at end of file diff --git a/public/images/pokemon/variant/back/498.json b/public/images/pokemon/variant/back/498.json new file mode 100644 index 00000000000..ecc0ccf7a98 --- /dev/null +++ b/public/images/pokemon/variant/back/498.json @@ -0,0 +1,44 @@ +{ + "1": { + "101010": "101010", + "2e1e1e": "b1a385", + "2e1f1f": "d1c5ab", + "302020": "194737", + "312121": "1e2a4d", + "473830": "f7f5e9", + "4a3a31": "2d405c", + "7a3827": "1c2e1b", + "7b3a29": "194737", + "947310": "cc955e", + "bd6331": "3b805f", + "ce423a": "3e4f37", + "a54a42": "2d452b", + "e66b29": "b5cca5", + "efbd08": "f0cc8b", + "ef843a": "65b57c", + "c5ada5": "c1c5a5", + "ffffff": "ffffff", + "47382f": "472770" + }, + "2": { + "101010": "101010", + "2e1e1e": "ac8b61", + "2e1f1f": "c4a884", + "302020": "522e2e", + "312121": "47150e", + "473830": "e0d3ab", + "4a3a31": "733421", + "7a3827": "222742", + "7b3a29": "522e2e", + "947310": "828399", + "bd6331": "85564e", + "ce423a": "323754", + "a54a42": "4c5275", + "e66b29": "778aa6", + "efbd08": "c7c8d9", + "ef843a": "ab8274", + "c5ada5": "dddef0", + "ffffff": "ffffff", + "47382f": "456da8" + } +} \ No newline at end of file diff --git a/public/images/pokemon/variant/back/499.json b/public/images/pokemon/variant/back/499.json new file mode 100644 index 00000000000..ad525f3e114 --- /dev/null +++ b/public/images/pokemon/variant/back/499.json @@ -0,0 +1,40 @@ +{ + "1": { + "101010": "101010", + "3a2121": "1e2a4d", + "3a3a3a": "122b18", + "523129": "2d405c", + "7a3827": "1c2e1b", + "7b3a29": "234f3d", + "736310": "ab6441", + "4a4a4a": "264524", + "bd5a31": "41785a", + "ce423a": "3e4f37", + "ef7329": "62a174", + "b59421": "cc955e", + "efc53a": "f0cc8b", + "c5ada5": "c5ada5", + "c4aea7": "c4aea7", + "fcfcfc": "fcfcfc", + "ffffff": "ffffff" + }, + "2": { + "101010": "101010", + "3a2121": "47150e", + "3a3a3a": "1c2245", + "523129": "733421", + "7a3827": "222742", + "7b3a29": "533330", + "736310": "3c3e5b", + "4a4a4a": "272d4f", + "bd5a31": "7a5a56", + "ce423a": "323754", + "ef7329": "967a71", + "b59421": "828399", + "efc53a": "c7c8d9", + "c5ada5": "c4a884", + "c4aea7": "c4aea7", + "fcfcfc": "e0d3ab", + "ffffff": "ffffff" + } +} \ No newline at end of file diff --git a/public/images/pokemon/variant/back/500.json b/public/images/pokemon/variant/back/500.json new file mode 100644 index 00000000000..55e8d8b6548 --- /dev/null +++ b/public/images/pokemon/variant/back/500.json @@ -0,0 +1,46 @@ +{ + "1": { + "101010": "101010", + "212121": "1e2a4d", + "313131": "2d405c", + "333333": "2c2f35", + "7b1910": "257036", + "7a1a11": "1c2e1b", + "732900": "2c473e", + "7b5a08": "ab6441", + "a33a31": "35963e", + "a53a31": "3e4f37", + "bd5221": "3e6952", + "ef6321": "699676", + "b58c21": "cc955e", + "ef8c08": "86e677", + "efbd08": "c7f797", + "f0be0a": "f0cc8b", + "adadad": "a3a6ad", + "f7f7f7": "e4eef5", + "e63129": "58db58", + "e33229": "627556" + }, + "2": { + "101010": "101010", + "212121": "47150e", + "313131": "733421", + "333333": "3b352b", + "7b1910": "ba843d", + "7a1a11": "20243d", + "732900": "522e2e", + "7b5a08": "3c3e5b", + "a33a31": "cfa255", + "a53a31": "2d3250", + "bd5221": "7a5a56", + "ef6321": "967a71", + "b58c21": "828399", + "ef8c08": "f2d591", + "efbd08": "faefc7", + "f0be0a": "c7c8d9", + "adadad": "c4a884", + "f7f7f7": "e0d3ab", + "e63129": "e3c65c", + "e33229": "464a66" + } +} \ No newline at end of file diff --git a/public/images/pokemon/variant/back/511.json b/public/images/pokemon/variant/back/511.json new file mode 100644 index 00000000000..a5ca6fa862f --- /dev/null +++ b/public/images/pokemon/variant/back/511.json @@ -0,0 +1,20 @@ +{ + "1": { + "a57b3a": "c58869", + "ffce7b": "edc293", + "735221": "bd7653", + "cea55a": "d9a177", + "194a29": "912f1c", + "087331": "c45331", + "19a552": "d97b41" + }, + "2": { + "a57b3a": "5580bf", + "ffce7b": "8ecaed", + "735221": "3f6aa6", + "cea55a": "73acde", + "194a29": "4c2d7a", + "087331": "683b8c", + "19a552": "8a53a6" + } +} \ No newline at end of file diff --git a/public/images/pokemon/variant/back/512.json b/public/images/pokemon/variant/back/512.json new file mode 100644 index 00000000000..8d75727c3f0 --- /dev/null +++ b/public/images/pokemon/variant/back/512.json @@ -0,0 +1,26 @@ +{ + "1": { + "ffce7b": "eab68b", + "525252": "a36e46", + "087331": "c74638", + "194a29": "a12d25", + "ffffff": "dbc086", + "a57b3a": "a65b3d", + "cea55a": "c8895f", + "9c9c9c": "cfa067", + "735221": "733224", + "19a552": "ed6f53" + }, + "2": { + "ffce7b": "58aee0", + "525252": "3073ab", + "087331": "522880", + "194a29": "331961", + "ffffff": "5bc6de", + "a57b3a": "3762bf", + "cea55a": "4686cf", + "9c9c9c": "4099c2", + "735221": "2a42a1", + "19a552": "6e368f" + } +} \ No newline at end of file diff --git a/public/images/pokemon/variant/back/513.json b/public/images/pokemon/variant/back/513.json new file mode 100644 index 00000000000..5a8f4847bc9 --- /dev/null +++ b/public/images/pokemon/variant/back/513.json @@ -0,0 +1,20 @@ +{ + "1": { + "a57b3a": "e4907f", + "ffce7b": "ffe6c9", + "bd423a": "28629c", + "e65242": "3d9bbe", + "7b3131": "1b3e70", + "735221": "c3635b", + "cea55a": "f9b9a2" + }, + "2": { + "a57b3a": "bc2f2f", + "ffce7b": "ed8c7b", + "bd423a": "d5b393", + "e65242": "f4ecd7", + "7b3131": "ad7a63", + "735221": "a1272f", + "cea55a": "d4554c" + } +} \ No newline at end of file diff --git a/public/images/pokemon/variant/back/514.json b/public/images/pokemon/variant/back/514.json new file mode 100644 index 00000000000..90e7c698f29 --- /dev/null +++ b/public/images/pokemon/variant/back/514.json @@ -0,0 +1,27 @@ +{ + "1": { + "ffce7b": "ffe2bf", + "bd423a": "265494", + "e65242": "3a7bb5", + "7b3131": "193170", + "ffffff": "c0e7fc", + "735221": "ba6a57", + "c5c5c5": "97c0e6", + "cea55a": "edba9a", + "9c9c9c": "6f94c7", + "525252": "465f9e" + }, + "2": { + "ffce7b": "cc643b", + "bd423a": "cfb88f", + "e65242": "ede9d1", + "7b3131": "a88260", + "a57b3a": "782017", + "ffffff": "f7cc57", + "735221": "5c0e0e", + "c5c5c5": "e3a13d", + "cea55a": "943722", + "9c9c9c": "cc762b", + "525252": "ad4d1d" + } +} \ No newline at end of file diff --git a/public/images/pokemon/variant/back/515.json b/public/images/pokemon/variant/back/515.json new file mode 100644 index 00000000000..d8a7c4e9136 --- /dev/null +++ b/public/images/pokemon/variant/back/515.json @@ -0,0 +1,22 @@ +{ + "1": { + "ffce7b": "fff187", + "003a73": "0a4a2d", + "21739c": "136b3b", + "198cad": "219448", + "29b5de": "34c15e", + "cea55a": "e0c265", + "735221": "735f21", + "a57b3a": "b5893c" + }, + "2": { + "ffce7b": "e76092", + "003a73": "a64e8b", + "21739c": "cc70a4", + "198cad": "eb98bf", + "29b5de": "ffc9dd", + "cea55a": "cc4580", + "735221": "8f1f68", + "a57b3a": "b32e77" + } +} \ No newline at end of file diff --git a/public/images/pokemon/variant/back/516.json b/public/images/pokemon/variant/back/516.json new file mode 100644 index 00000000000..ae188e87625 --- /dev/null +++ b/public/images/pokemon/variant/back/516.json @@ -0,0 +1,24 @@ +{ + "1": { + "ffce7b": "fadd73", + "106b8c": "13571a", + "003a73": "08420d", + "9c9c9c": "aecf86", + "a57b3a": "9c7935", + "cea55a": "c4a148", + "218ca5": "3c8c22", + "735221": "7b5e29", + "29b5de": "6fad37" + }, + "2": { + "ffce7b": "e76092", + "106b8c": "cc70a4", + "003a73": "a64e8b", + "9c9c9c": "59b7d4", + "a57b3a": "b32e77", + "cea55a": "cc4580", + "218ca5": "eb98bf", + "735221": "8f1f68", + "29b5de": "ffc9dd" + } +} \ No newline at end of file diff --git a/public/images/pokemon/variant/back/522.json b/public/images/pokemon/variant/back/522.json new file mode 100644 index 00000000000..9c301bca713 --- /dev/null +++ b/public/images/pokemon/variant/back/522.json @@ -0,0 +1,36 @@ +{ + "1": { + "a5a5a5": "676fc2", + "7b7b7b": "505a9b", + "525252": "95355d", + "cecece": "788bcb", + "161d1d": "2e0d1f", + "797878": "676fc2", + "005a9c": "75c239", + "505050": "3d4488", + "ffffff": "b9cfef", + "ffe600": "61e4bf", + "3a3a3a": "731f51", + "00adde": "b9e96c", + "8c7321": "33a08a", + "292929": "53173b", + "192121": "43172f" + }, + "2": { + "a5a5a5": "cb6a3a", + "7b7b7b": "731515", + "525252": "ebc37d", + "cecece": "97221a", + "161d1d": "370b0b", + "797878": "cb6a3a", + "005a9c": "30309d", + "505050": "4e1416", + "ffffff": "c23e2e", + "ffe600": "36c294", + "3a3a3a": "cd8a58", + "00adde": "3e4ddc", + "8c7321": "288278", + "292929": "914824", + "192121": "661212" + } +} \ No newline at end of file diff --git a/public/images/pokemon/variant/back/523.json b/public/images/pokemon/variant/back/523.json new file mode 100644 index 00000000000..e8e37d6b7ab --- /dev/null +++ b/public/images/pokemon/variant/back/523.json @@ -0,0 +1,44 @@ +{ + "1": { + "373737": "43172f", + "373f3f": "353573", + "a5a5a5": "7080c6", + "5d4802": "1f8076", + "ffffff": "b9cfef", + "181f1f": "3d467d", + "8c7321": "33a08a", + "293131": "6a1d44", + "8c721f": "3d9197", + "7b7b7b": "5265a4", + "797878": "5265a4", + "182121": "430f30", + "cecece": "7e91d3", + "5a5a5a": "47548f", + "ffe600": "61e4bf", + "3a3a3a": "5d213a", + "00adde": "b9e96c", + "3a4242": "84294f", + "192121": "57163d" + }, + "2": { + "373737": "501a19", + "373f3f": "4e1416", + "a5a5a5": "861816", + "5d4802": "145b5d", + "ffffff": "c23e2e", + "181f1f": "5e1717", + "8c7321": "288278", + "293131": "c89161", + "8c721f": "54a48a", + "7b7b7b": "731515", + "797878": "da7248", + "182121": "661212", + "cecece": "97221a", + "5a5a5a": "611616", + "ffe600": "36c294", + "3a3a3a": "682321", + "00adde": "3e4ddc", + "3a4242": "ebc37d", + "192121": "9e533b" + } +} \ No newline at end of file diff --git a/public/images/pokemon/variant/back/535.json b/public/images/pokemon/variant/back/535.json new file mode 100644 index 00000000000..2d1a18e3b9a --- /dev/null +++ b/public/images/pokemon/variant/back/535.json @@ -0,0 +1,26 @@ +{ + "1": { + "6bbdff": "a9c4d7", + "366089": "801941", + "636363": "8b2b4b", + "66bafd": "d65a5a", + "3a638c": "40567d", + "191919": "330821", + "7394c5": "6f8fb1", + "6f90c1": "b53a57", + "292929": "420e2d", + "424242": "671e3f" + }, + "2": { + "6bbdff": "672a23", + "366089": "ac6634", + "636363": "d76d39", + "66bafd": "f3cd69", + "3a638c": "420f1d", + "191919": "4f150a", + "7394c5": "54131a", + "6f90c1": "cd984a", + "292929": "7d2414", + "424242": "ac4423" + } +} \ No newline at end of file diff --git a/public/images/pokemon/variant/back/536.json b/public/images/pokemon/variant/back/536.json new file mode 100644 index 00000000000..78a59fb699c --- /dev/null +++ b/public/images/pokemon/variant/back/536.json @@ -0,0 +1,32 @@ +{ + "1": { + "196373": "801941", + "404040": "874330", + "84e6d6": "d65a5a", + "10427b": "40567d", + "52a5b5": "b53a57", + "292929": "400a32", + "5e5e5e": "a96147", + "ffffff": "e3c998", + "296bad": "6f8fb1", + "c5c5c5": "ca9470", + "424242": "5e1246", + "0894d6": "a9c4d7", + "636363": "801c4e" + }, + "2": { + "196373": "ac6634", + "404040": "365a72", + "84e6d6": "f3cd69", + "10427b": "4a1423", + "52a5b5": "cd984a", + "292929": "7d2414", + "5e5e5e": "52809b", + "ffffff": "aadfe0", + "296bad": "5d171e", + "c5c5c5": "7fb8c2", + "424242": "ac4423", + "0894d6": "75332b", + "636363": "d76d39" + } +} \ No newline at end of file diff --git a/public/images/pokemon/variant/back/537.json b/public/images/pokemon/variant/back/537.json new file mode 100644 index 00000000000..757d692bd40 --- /dev/null +++ b/public/images/pokemon/variant/back/537.json @@ -0,0 +1,24 @@ +{ + "1": { + "196373": "801941", + "52a58c": "b53a57", + "636363": "801c4e", + "10427b": "40567d", + "73e6ce": "d65a5a", + "292929": "400a32", + "424242": "5e1246", + "296bad": "6f8fb1", + "0894d6": "a9c4d7" + }, + "2": { + "196373": "ac6634", + "52a58c": "cd984a", + "636363": "d76d39", + "10427b": "4a1423", + "73e6ce": "f3cd69", + "292929": "7d2414", + "424242": "ac4423", + "296bad": "5d171e", + "0894d6": "75332b" + } +} \ No newline at end of file diff --git a/public/images/pokemon/variant/back/554.json b/public/images/pokemon/variant/back/554.json new file mode 100644 index 00000000000..803721e4f0d --- /dev/null +++ b/public/images/pokemon/variant/back/554.json @@ -0,0 +1,32 @@ +{ + "1": { + "101010": "101010", + "5a1919": "2e3573", + "66311a": "a16012", + "634231": "946344", + "9c2929": "4e5aa3", + "ce3131": "6c7ec4", + "947310": "b0895f", + "ad5a2b": "a17a50", + "a75625": "d19628", + "cea519": "bda373", + "ffce21": "e3e2ba", + "ff9452": "e8c661", + "b15c29": "a17a50" + }, + "2": { + "101010": "101010", + "5a1919": "bf7558", + "66311a": "291d1b", + "634231": "75102a", + "9c2929": "d6a376", + "ce3131": "f0e2b9", + "947310": "9c1c2b", + "ad5a2b": "4a3021", + "a75625": "4a3021", + "cea519": "ba343d", + "ffce21": "d14949", + "ff9452": "614b38", + "b15c29": "b15c29" + } +} \ No newline at end of file diff --git a/public/images/pokemon/variant/back/555-zen.json b/public/images/pokemon/variant/back/555-zen.json new file mode 100644 index 00000000000..9df761c1833 --- /dev/null +++ b/public/images/pokemon/variant/back/555-zen.json @@ -0,0 +1,24 @@ +{ + "1": { + "101010": "101010", + "215263": "592226", + "3a7b8c": "7d3e3d", + "425a63": "b5775b", + "529cad": "8c5b54", + "7ba5bd": "c99d7b", + "ad6b29": "3b3f87", + "b5d6ef": "e0c19b", + "e6a563": "7b8dd4" + }, + "2": { + "101010": "101010", + "215263": "523273", + "3a7b8c": "805a9c", + "425a63": "2e2a51", + "529cad": "a278b0", + "7ba5bd": "494162", + "ad6b29": "9e907e", + "b5d6ef": "605375", + "e6a563": "f5f3e9" + } +} \ No newline at end of file diff --git a/public/images/pokemon/variant/back/555.json b/public/images/pokemon/variant/back/555.json new file mode 100644 index 00000000000..b83ca9fb88b --- /dev/null +++ b/public/images/pokemon/variant/back/555.json @@ -0,0 +1,30 @@ +{ + "1": { + "101010": "101010", + "523a21": "a65f33", + "631919": "222675", + "6b5a10": "b04a21", + "8c1929": "2d3685", + "ad2119": "3a4c94", + "b57b4a": "d9a455", + "bd0000": "cfc191", + "bd9429": "c26932", + "ef1010": "e3e2ba", + "efa56b": "e8cd7b", + "efce10": "d9944a" + }, + "2": { + "101010": "101010", + "523a21": "291b19", + "631919": "a86722", + "6b5a10": "941c32", + "8c1929": "d6993e", + "ad2119": "e8ca5d", + "b57b4a": "4a3021", + "bd0000": "bab5a6", + "bd9429": "ba343d", + "ef1010": "f5f3e9", + "efa56b": "614b38", + "efce10": "d14949" + } +} \ No newline at end of file diff --git a/public/images/pokemon/variant/back/566.json b/public/images/pokemon/variant/back/566.json new file mode 100644 index 00000000000..cb2601d4a93 --- /dev/null +++ b/public/images/pokemon/variant/back/566.json @@ -0,0 +1,32 @@ +{ + "1": { + "101010": "101010", + "10316b": "1c4943", + "31529c": "336d60", + "3184f7": "4f9279", + "3a3a3a": "3a3a3a", + "523131": "641b49", + "524229": "2f6934", + "944242": "aa3c79", + "9c9cad": "9c9cad", + "bd9452": "66b562", + "de524a": "eb7fae", + "e6e6e6": "e6e6e6", + "f7ce63": "9be08b" + }, + "2": { + "101010": "101010", + "10316b": "283957", + "31529c": "929bdf", + "3184f7": "c4d3ff", + "3a3a3a": "3a3a3a", + "523131": "284452", + "524229": "211f69", + "944242": "44988f", + "9c9cad": "9c9cad", + "bd9452": "3b4bad", + "de524a": "65cda4", + "e6e6e6": "e6e6e6", + "f7ce63": "557ecd" + } +} \ No newline at end of file diff --git a/public/images/pokemon/variant/back/567.json b/public/images/pokemon/variant/back/567.json new file mode 100644 index 00000000000..f4bb6a76111 --- /dev/null +++ b/public/images/pokemon/variant/back/567.json @@ -0,0 +1,37 @@ +{ + "1": { + "101010": "101010", + "523131": "454f52", + "635229": "2f6934", + "10316b": "1c4943", + "086b5a": "b3296b", + "9c4a4a": "7b8687", + "844252": "844252", + "de524a": "abb3b3", + "bd9452": "66b562", + "f7ce63": "9be08b", + "31529c": "336d60", + "10a594": "ee609d", + "3184f7": "4f9279", + "9c9cad": "9c9cad", + "ffffff": "ffffff" + }, + "2": { + "101010": "101010", + "523131": "284452", + "635229": "211f69", + "10316b": "283957", + "086b5a": "462d7e", + "9c4a4a": "44988f", + "844252": "844252", + "de524a": "65cda4", + "bd9452": "3b4bad", + "f7ce63": "557ecd", + "31529c": "929bdf", + "10a594": "7346a1", + "3184f7": "c4d3ff", + "9c9cad": "9c9cad", + "ffffff": "ffffff" + + } +} diff --git a/public/images/pokemon/variant/back/572.json b/public/images/pokemon/variant/back/572.json index e305e231ec0..5e74f55850d 100644 --- a/public/images/pokemon/variant/back/572.json +++ b/public/images/pokemon/variant/back/572.json @@ -1,18 +1,20 @@ { "1": { - "8c847b": "b2af6e", - "524a42": "524a42", - "ffffff": "feffd9", - "decec5": "decec5", - "bdb5a5": "dad7a1", - "101010": "101010" + "ffffff": "b3e8ba", + "4d473d": "802b50", + "524940": "428066", + "decec5": "87cc9a", + "bdb5a5": "cf6b77", + "918a83": "60a37b", + "8c847b": "b34967" }, "2": { - "8c847b": "86aaa7", - "524a42": "5f807e", - "ffffff": "ffffff", - "decec5": "d7e8e6", - "bdb5a5": "aec8c6", - "101010": "101010" + "ffffff": "d9e3aa", + "4d473d": "101931", + "524940": "466336", + "decec5": "7f915e", + "bdb5a5": "294a6b", + "918a83": "67824d", + "8c847b": "193457" } } \ No newline at end of file diff --git a/public/images/pokemon/variant/back/573.json b/public/images/pokemon/variant/back/573.json new file mode 100644 index 00000000000..d3ceaf257b4 --- /dev/null +++ b/public/images/pokemon/variant/back/573.json @@ -0,0 +1,24 @@ +{ + "1": { + "524a42": "802b50", + "bdb5b5": "60a67c", + "847b73": "b34967", + "ffffff": "b3e8ba", + "bdad9c": "cf6b77", + "decec5": "87cc9a", + "d65252": "256145", + "807871": "458766", + "ef8484": "58a672" + }, + "2": { + "524a42": "101931", + "bdb5b5": "597041", + "847b73": "193457", + "ffffff": "d9e3aa", + "bdad9c": "294a6b", + "decec5": "7f915e", + "d65252": "558f45", + "807871": "3d542d", + "ef8484": "b4cf88" + } +} \ No newline at end of file diff --git a/public/images/pokemon/variant/back/626.json b/public/images/pokemon/variant/back/626.json new file mode 100644 index 00000000000..3a709763542 --- /dev/null +++ b/public/images/pokemon/variant/back/626.json @@ -0,0 +1,46 @@ +{ + "1": { + "101010": "101010", + "312921": "303120", + "36363c": "362126", + "4a3119": "122119", + "4a4131": "4a4831", + "6b4a29": "2d4a3a", + "6b4a2a": "5f3539", + "6e4c2a": "565796", + "3a3a42": "4d150f", + "6b6b73": "802d1f", + "946a31": "4d6650", + "946a33": "513236", + "9a6f33": "716fab", + "ad8c29": "8580c4", + "9c845a": "9e655c", + "9c845c": "9e655c", + "bda57b": "bd8c7b", + "ffc54a": "c0b5eb", + "9ca5a5": "a34933", + "f7d69c": "f38d5d" + }, + "2": { + "101010": "101010", + "312921": "962430", + "36363c": "905932", + "4a3119": "855168", + "4a4131": "cc4545", + "6b4a29": "c17c95", + "6b4a2a": "907d32", + "6e4c2a": "678db8", + "3a3a42": "7f5310", + "6b6b73": "d49612", + "946a31": "e4b3b3", + "946a33": "946a33", + "9a6f33": "7da2c5", + "ad8c29": "92bcd4", + "9c845a": "beab6c", + "9c845c": "db9a39", + "bda57b": "efeac2", + "ffc54a": "c2e5f0", + "9ca5a5": "e9ca5a", + "f7d69c": "f5cc51" + } +} \ No newline at end of file diff --git a/public/images/pokemon/variant/back/643.json b/public/images/pokemon/variant/back/643.json new file mode 100644 index 00000000000..08e6a2dd694 --- /dev/null +++ b/public/images/pokemon/variant/back/643.json @@ -0,0 +1,50 @@ +{ + "1": { + "196ba5": "e0912f", + "857c9c": "3c4154", + "54517a": "232738", + "c2c1db": "e6e7ef", + "fffffa": "fffffc", + "767ca8": "97a5b0", + "4a4a6b": "0d0d1a", + "504f75": "a58419", + "c3c1e0": "f0edc2", + "ffa531": "fcfade", + "767da3": "d6c563", + "d3d3e0": "2f3247", + "fff5f9": "565a69", + "c1c1d6": "454959", + "cacadb": "bfbfd6", + "ff6331": "ffee6b", + "d6c5b5": "f2f2d8", + "757d9e": "212236", + "e6b573": "f2ecaa", + "565280": "596675", + "ffffff": "414659", + "de2908": "ffca0a" + }, + "2": { + "196ba5": "b33a68", + "857c9c": "3c50a1", + "54517a": "2d3984", + "c2c1db": "343d8e", + "fffffa": "4459a2", + "767ca8": "2b2871", + "4a4a6b": "2d3984", + "504f75": "19323c", + "c3c1e0": "4f9290", + "ffa531": "e2f9b5", + "767da3": "3a6d71", + "d3d3e0": "647bd9", + "fff5f9": "a9bbff", + "c1c1d6": "647bd9", + "cacadb": "ffffff", + "ff6331": "9df377", + "d6c5b5": "3d8073", + "757d9e": "3c50a1", + "e6b573": "4ba789", + "565280": "19143f", + "ffffff": "a9bbff", + "de2908": "5cdca6" + } +} \ No newline at end of file diff --git a/public/images/pokemon/variant/back/644.json b/public/images/pokemon/variant/back/644.json new file mode 100644 index 00000000000..01475c838c7 --- /dev/null +++ b/public/images/pokemon/variant/back/644.json @@ -0,0 +1,44 @@ +{ + "1": { + "1a1a21": "705ba8", + "2c2c35": "c1c8e8", + "103a52": "251076", + "191921": "686c99", + "16161d": "7687c2", + "6bf7ff": "dbbaff", + "00c5ff": "b77dff", + "0f0d13": "49568f", + "006bbd": "4800e3", + "121212": "54428f", + "940000": "762fcc", + "52525a": "7175a3", + "ce0000": "a44bf2", + "31313a": "cfd0e6", + "08528c": "3b1899", + "004275": "8742ff", + "111111": "5b5f8c", + "009cde": "7626ff", + "212129": "9b9fc4" + }, + "2": { + "1a1a21": "350707", + "2c2c35": "884290", + "103a52": "671212", + "191921": "843172", + "16161d": "5e286f", + "6bf7ff": "f5e5da", + "00c5ff": "f5b698", + "0f0d13": "3b1a4c", + "006bbd": "c8433a", + "121212": "210214", + "940000": "cc8215", + "52525a": "ffc5d1", + "ce0000": "f3d32c", + "31313a": "ef9dae", + "08528c": "821b1b", + "004275": "821b1b", + "111111": "4a1a4c", + "009cde": "ef806b", + "212129": "ca6c94" + } +} \ No newline at end of file diff --git a/public/images/pokemon/variant/back/646-black.json b/public/images/pokemon/variant/back/646-black.json new file mode 100644 index 00000000000..28baffd5690 --- /dev/null +++ b/public/images/pokemon/variant/back/646-black.json @@ -0,0 +1,49 @@ +{ + "1": { + "ebebe8": "edc9ff", + "6b8c7b": "2b4366", + "7b6b5a": "5482b0", + "315a42": "1a2b4d", + "292930": "9b9bc2", + "31313a": "c8c9e0", + "e6e6de": "e6a18a", + "006b94": "4c13a1", + "23232b": "1c1c24", + "191921": "6a6a94", + "addec5": "426585", + "b59400": "b35a3e", + "355e45": "484873", + "2c2c36": "15213b", + "00b5ff": "a033ff", + "ffff4a": "db966b", + "524a31": "112240", + "b6e3c7": "bb8ae3", + "004b6f": "2f0e75", + "1e1e26": "1b1b24", + "719180": "905dcf", + "ada584": "78a9cc" + }, + "2": { + "ebebe8": "ffc5d1", + "6b8c7b": "be6e34", + "7b6b5a": "982222", + "315a42": "7b2d25", + "292930": "6c245b", + "31313a": "913a7d", + "006b94": "6b3773", + "23232b": "2b050a", + "191921": "3d0d38", + "addec5": "e6b45b", + "b59400": "166a2d", + "355e45": "ca6c94", + "2c2c36": "480b0b", + "00b5ff": "b464bf", + "ffff4a": "6ae649", + "524a31": "550f0f", + "b6e3c7": "ffadbe", + "004b6f": "411d46", + "1e1e26": "7b2d25", + "719180": "ea93a5", + "ada584": "c23232" + } +} \ No newline at end of file diff --git a/public/images/pokemon/variant/back/646-white.json b/public/images/pokemon/variant/back/646-white.json new file mode 100644 index 00000000000..b2951e6fc38 --- /dev/null +++ b/public/images/pokemon/variant/back/646-white.json @@ -0,0 +1,46 @@ +{ + "1": { + "101010": "101010", + "741a18": "7a3418", + "4a4a29": "2a446b", + "4c4a2c": "0d0d1a", + "4a4a2d": "0d1030", + "315a42": "172247", + "7b7b5a": "779fbf", + "73737b": "120e1f", + "942921": "d49748", + "e64a42": "ffe587", + "6b8c7b": "2e466b", + "cc9827": "cc9827", + "ffde3a": "f0d897", + "ffad63": "fff7c4", + "ada584": "b7dbeb", + "bdbdc5": "232538", + "addec5": "45678a", + "e6e8f2": "414659", + "f5f5fa": "f5f5fa", + "ffffff": "ffffff" + }, + "2": { + "101010": "101010", + "741a18": "1f504d", + "4a4a29": "550f0f", + "4c4a2c": "1f1544", + "4a4a2d": "7b2d25", + "315a42": "7b2d25", + "7b7b5a": "982222", + "73737b": "2b2871", + "942921": "3d8073", + "e64a42": "4ba789", + "6b8c7b": "be6e34", + "cc9827": "166a2d", + "ffde3a": "9df377", + "ffad63": "5cdca6", + "ada584": "c23232", + "bdbdc5": "3d458f", + "addec5": "e6b45b", + "e6e8f2": "5870c4", + "f5f5fa": "f5f5fa", + "ffffff": "e2f9b5" + } +} \ No newline at end of file diff --git a/public/images/pokemon/variant/back/646.json b/public/images/pokemon/variant/back/646.json new file mode 100644 index 00000000000..c509a0cda9c --- /dev/null +++ b/public/images/pokemon/variant/back/646.json @@ -0,0 +1,33 @@ +{ + "1": { + "8c7329": "b35a3e", + "949cad": "a6cfe0", + "6d737b": "a55c39", + "103a52": "121836", + "ffe600": "db966b", + "73737b": "6394b0", + "bde6ff": "3c5878", + "424252": "3d6285", + "696973": "6394b0", + "ceb500": "c46f52", + "a5b5ce": "293c5e", + "3b3b4a": "3d6285", + "6b8494": "1a2647" + }, + "2": { + "8c7329": "166a2d", + "949cad": "c23232", + "6d737b": "1a791b", + "103a52": "7b2d25", + "ffe600": "6ae649", + "73737b": "982222", + "bde6ff": "e6b45b", + "424252": "550f0f", + "696973": "736969", + "ceb500": "2aac2b", + "def7ff": "f7ec88", + "a5b5ce": "be6e34", + "3b3b4a": "4a3b3b", + "6b8494": "974626" + } +} \ No newline at end of file diff --git a/public/images/pokemon/variant/back/692.json b/public/images/pokemon/variant/back/692.json new file mode 100644 index 00000000000..d4c85f37c9d --- /dev/null +++ b/public/images/pokemon/variant/back/692.json @@ -0,0 +1,28 @@ +{ + "1": { + "337380": "783a1d", + "b3b3b3": "c8ba6d", + "595959": "c85b5b", + "61daf2": "e1ac53", + "cc9c3d": "53be53", + "404040": "7d182d", + "ffc44c": "a9f076", + "b2f2ff": "fada7f", + "47a1b3": "af6a37", + "101010": "070707", + "735822": "20734c" + }, + "2": { + "337380": "5f3c23", + "b3b3b3": "68a7aa", + "595959": "88cd56", + "61daf2": "e1d6b6", + "cc9c3d": "7743be", + "404040": "1c873e", + "ffc44c": "a36feb", + "b2f2ff": "faf8d7", + "47a1b3": "968144", + "101010": "070707", + "735822": "371c72" + } +} \ No newline at end of file diff --git a/public/images/pokemon/variant/back/693.json b/public/images/pokemon/variant/back/693.json new file mode 100644 index 00000000000..3187a81e0c0 --- /dev/null +++ b/public/images/pokemon/variant/back/693.json @@ -0,0 +1,28 @@ +{ + "1": { + "224b73": "552813", + "4595e5": "aa6839", + "23a2c8": "c87a23", + "262626": "230808", + "cc9c3d": "1b3c17", + "404040": "3c171b", + "5f5f5f": "6e2e3b", + "61daf2": "f2bd61", + "3674b3": "7d3e21", + "ffc44c": "426e2e", + "735822": "08230e" + }, + "2": { + "224b73": "5f463a", + "4595e5": "c8b493", + "23a2c8": "beb099", + "262626": "295a1c", + "cc9c3d": "6259af", + "404040": "2a8c53", + "5f5f5f": "51c85d", + "61daf2": "f0eadb", + "3674b3": "9b8265", + "ffc44c": "a39afa", + "735822": "36235f" + } +} \ No newline at end of file diff --git a/public/images/pokemon/variant/back/746-school.json b/public/images/pokemon/variant/back/746-school.json new file mode 100644 index 00000000000..d8fa61a3829 --- /dev/null +++ b/public/images/pokemon/variant/back/746-school.json @@ -0,0 +1,38 @@ +{ + "1": { + "101010": "101010", + "0a1627": "5f2112", + "123954": "75391b", + "134884": "935926", + "134d84": "16574d", + "1766c6": "b77736", + "416adf": "2c9572", + "79848a": "a67834", + "749cf6": "5ce09d", + "73dcf5": "27133f", + "73e5f5": "552b64", + "72f0f6": "824388", + "9cd3fd": "aafe94", + "a6c5f7": "78f389", + "cfd1d3": "d5ab51", + "fbfbfb": "f7d76b" + }, + "2": { + "101010": "101010", + "0a1627": "0f0523", + "123954": "28071a", + "134884": "350b19", + "134d84": "b7904d", + "1766c6": "4a1111", + "416adf": "dec284", + "79848a": "4a1111", + "749cf6": "f8ecc5", + "73dcf5": "31238e", + "73e5f5": "3a4ebd", + "72f0f6": "6492f7", + "9cd3fd": "fefeef", + "a6c5f7": "fefed9", + "cfd1d3": "5f291c", + "fbfbfb": "844232" + } +} \ No newline at end of file diff --git a/public/images/pokemon/variant/back/746.json b/public/images/pokemon/variant/back/746.json new file mode 100644 index 00000000000..5b183b10e5d --- /dev/null +++ b/public/images/pokemon/variant/back/746.json @@ -0,0 +1,40 @@ +{ + "1": { + "101010": "101010", + "1f2161": "16574d", + "5d666d": "75391b", + "616b72": "a67834", + "9c455b": "308c9d", + "374793": "2c9572", + "4764c9": "5ce09d", + "3e9cbb": "27133f", + "61c8de": "824388", + "8c9c9d": "935926", + "8d9c9d": "c69b3f", + "d88394": "65cfe2", + "b0c5c6": "d5ab51", + "ccd2ce": "b77736", + "d8d9da": "d8d9da", + "eeeeee": "f7d76b", + "fefefe": "fefefe" + }, + "2": { + "101010": "101010", + "1f2161": "b7904d", + "5d666d": "1e0726", + "616b72": "4a1111", + "9c455b": "b9682d", + "374793": "dec284", + "4764c9": "f8ecc5", + "3e9cbb": "4378eb", + "61c8de": "5787f1", + "8c9c9d": "350b19", + "8d9c9d": "531917", + "d88394": "e4d85f", + "b0c5c6": "5f291c", + "ccd2ce": "4a1111", + "d8d9da": "d8d9da", + "eeeeee": "844232", + "fefefe": "fefefe" + } +} \ No newline at end of file diff --git a/public/images/pokemon/variant/back/780.json b/public/images/pokemon/variant/back/780.json new file mode 100644 index 00000000000..f55158dcabb --- /dev/null +++ b/public/images/pokemon/variant/back/780.json @@ -0,0 +1,28 @@ +{ + "1": { + "8d541b": "bd8955", + "297b8b": "1a316b", + "5aa4a4": "284c80", + "f5ae07": "faf0b1", + "606f55": "496375", + "726d5c": "a36026", + "105262": "0e194a", + "b8b7a3": "cf8d38", + "b4cda4": "9ab5b8", + "91a37c": "7798a1", + "eeeeee": "e6c15e" + }, + "2": { + "8d541b": "157d36", + "297b8b": "4e4f73", + "5aa4a4": "6a708a", + "f5ae07": "3ec435", + "606f55": "8f825d", + "726d5c": "162d3d", + "105262": "3f3c61", + "b8b7a3": "254e59", + "b4cda4": "d6dbba", + "91a37c": "b5b48b", + "eeeeee": "3e7a76" + } +} \ No newline at end of file diff --git a/public/images/pokemon/variant/back/782.json b/public/images/pokemon/variant/back/782.json new file mode 100644 index 00000000000..f2bc20ecfba --- /dev/null +++ b/public/images/pokemon/variant/back/782.json @@ -0,0 +1,30 @@ +{ + "1": { + "f13035": "48bd8c", + "f8f236": "e77b57", + "504e4b": "472d1d", + "aba5ad": "336340", + "7b766f": "a67e5b", + "fdfdfd": "fcf2ca", + "726475": "214a33", + "bec6cb": "e8cea0", + "957509": "a63424", + "dbdbdb": "4e8759", + "940a0d": "258067", + "4d4b48": "8a5b41" + }, + "2": { + "f13035": "b8c0fc", + "f8f236": "52d9ac", + "504e4b": "273959", + "aba5ad": "5e3e75", + "7b766f": "8ab7cf", + "fdfdfd": "d5f4f7", + "726475": "412959", + "bec6cb": "b7ddeb", + "957509": "258085", + "dbdbdb": "855d99", + "940a0d": "636a94", + "4d4b48": "567496" + } +} \ No newline at end of file diff --git a/public/images/pokemon/variant/back/783.json b/public/images/pokemon/variant/back/783.json new file mode 100644 index 00000000000..d91ccb51133 --- /dev/null +++ b/public/images/pokemon/variant/back/783.json @@ -0,0 +1,32 @@ +{ + "1": { + "f13035": "48bd8c", + "6c6968": "472d1d", + "97938c": "2a573e", + "957509": "a63424", + "fff5ae": "f7c4b5", + "4d4644": "2b130b", + "fdfdfd": "fcf2ca", + "6b6968": "8a5b41", + "940a0d": "258067", + "c2c1c0": "42754f", + "d7aa22": "c25236", + "69625c": "133027", + "f4da42": "e77b57" + }, + "2": { + "f13035": "d9ddfc", + "6c6968": "2e4266", + "97938c": "543666", + "957509": "258085", + "fff5ae": "baf7dc", + "4d4644": "151e38", + "fdfdfd": "d5f4f7", + "6b6968": "567496", + "940a0d": "636a94", + "c2c1c0": "744e87", + "d7aa22": "37ad94", + "69625c": "2d1c3d", + "f4da42": "52d9ac" + } +} \ No newline at end of file diff --git a/public/images/pokemon/variant/back/784.json b/public/images/pokemon/variant/back/784.json new file mode 100644 index 00000000000..74a18ff0d3d --- /dev/null +++ b/public/images/pokemon/variant/back/784.json @@ -0,0 +1,42 @@ +{ + "1": { + "c99f21": "bf5841", + "2d2b28": "2b130b", + "d0d2d5": "77a353", + "a8a4a0": "517d37", + "fafafa": "fcf2ca", + "d4d6d9": "e8cea0", + "4a4743": "8a5b41", + "f4da42": "e77b57", + "f13035": "48bd8c", + "cb0e12": "258067", + "4d4040": "123028", + "a7a29e": "336142", + "523e41": "447835", + "885902": "87281b", + "9d6702": "993d26", + "7e7572": "204736", + "fdfdfd": "bbd477", + "4b4845": "472d1d" + }, + "2": { + "c99f21": "3aba9c", + "2d2b28": "151e38", + "d0d2d5": "7ec2cc", + "a8a4a0": "558ea3", + "fafafa": "d5f4f7", + "d4d6d9": "b7ddeb", + "4a4743": "567496", + "f4da42": "2a918e", + "f13035": "d9ddfc", + "cb0e12": "636a94", + "4d4040": "2d1840", + "a7a29e": "6c457a", + "523e41": "558fa6", + "885902": "1f6b6e", + "9d6702": "37ad94", + "7e7572": "4e2e61", + "fdfdfd": "adedf0", + "4b4845": "2e4266" + } +} \ No newline at end of file diff --git a/public/images/pokemon/variant/back/840.json b/public/images/pokemon/variant/back/840.json new file mode 100644 index 00000000000..3129592abb3 --- /dev/null +++ b/public/images/pokemon/variant/back/840.json @@ -0,0 +1,28 @@ +{ + "1": { + "e2244a": "70a2c5", + "5fab1d": "7a7c9e", + "d39a52": "a22f76", + "e32b50": "4e77a2", + "fe455c": "abd7e2", + "fa6f8b": "c1f3f3", + "a4d84a": "9aa0b3", + "357912": "48485d", + "d3ee77": "d2d8df", + "8d4229": "741163", + "a50534": "3e6085" + }, + "2": { + "e2244a": "bfb5ab", + "5fab1d": "993c63", + "d39a52": "463731", + "e32b50": "807770", + "fe455c": "dcd9d1", + "fa6f8b": "eeedea", + "a4d84a": "c76886", + "357912": "6b2041", + "d3ee77": "e28c95", + "8d4229": "291411", + "a50534": "68645f" + } +} \ No newline at end of file diff --git a/public/images/pokemon/variant/back/841-gigantamax.json b/public/images/pokemon/variant/back/841-gigantamax.json new file mode 100644 index 00000000000..6526fec9b4d --- /dev/null +++ b/public/images/pokemon/variant/back/841-gigantamax.json @@ -0,0 +1,36 @@ +{ + "1": { + "39a43d": "9aa0b3", + "d2394d": "abd7e2", + "61112d": "2c255d", + "a63139": "70a2c5", + "d54456": "8666ae", + "427638": "7a7c9e", + "c68a48": "9c2e72", + "8d4229": "272a52", + "eec856": "397880", + "cb8a42": "2b526f", + "b3ac62": "a3b9d0", + "dad08b": "dcebf9", + "2c4828": "243c63", + "e9c558": "c55885", + "772628": "1e1a4a" + }, + "2": { + "39a43d": "e28c95", + "d2394d": "dcd9d1", + "61112d": "3a2222", + "a63139": "bfb5ab", + "d54456": "915a41", + "427638": "b04f6d", + "c68a48": "2a1310", + "8d4229": "79392f", + "eec856": "eee0bc", + "cb8a42": "d1a87e", + "b3ac62": "cbb4af", + "dad08b": "e2dcd6", + "2c4828": "2e2246", + "e9c558": "463731", + "772628": "4f4840" + } +} \ No newline at end of file diff --git a/public/images/pokemon/variant/back/841.json b/public/images/pokemon/variant/back/841.json new file mode 100644 index 00000000000..8cccd7dd76b --- /dev/null +++ b/public/images/pokemon/variant/back/841.json @@ -0,0 +1,34 @@ +{ + "1": { + "df6655": "c1f3f3", + "56ab32": "a59ab3", + "9b2629": "70a2c5", + "488235": "8e7a9e", + "ebe381": "854774", + "ccb468": "5d2654", + "ccca71": "cbb4af", + "8d764b": "110723", + "612324": "3e6085", + "da5245": "c55885", + "c3a965": "e2dcd6", + "b5915b": "34123a", + "d72d31": "abd7e2", + "395a2e": "383146" + }, + "2": { + "df6655": "e2dcd6", + "56ab32": "e28c95", + "9b2629": "bfb5ab", + "488235": "a8546e", + "ebe381": "be7b53", + "ccb468": "743527", + "ccca71": "cbb4af", + "8d764b": "230313", + "612324": "68645f", + "da5245": "463731", + "c3a965": "e2dcd6", + "b5915b": "541711", + "d72d31": "dcd9d1", + "395a2e": "4f0e30" + } +} \ No newline at end of file diff --git a/public/images/pokemon/variant/back/842-gigantamax.json b/public/images/pokemon/variant/back/842-gigantamax.json new file mode 100644 index 00000000000..6526fec9b4d --- /dev/null +++ b/public/images/pokemon/variant/back/842-gigantamax.json @@ -0,0 +1,36 @@ +{ + "1": { + "39a43d": "9aa0b3", + "d2394d": "abd7e2", + "61112d": "2c255d", + "a63139": "70a2c5", + "d54456": "8666ae", + "427638": "7a7c9e", + "c68a48": "9c2e72", + "8d4229": "272a52", + "eec856": "397880", + "cb8a42": "2b526f", + "b3ac62": "a3b9d0", + "dad08b": "dcebf9", + "2c4828": "243c63", + "e9c558": "c55885", + "772628": "1e1a4a" + }, + "2": { + "39a43d": "e28c95", + "d2394d": "dcd9d1", + "61112d": "3a2222", + "a63139": "bfb5ab", + "d54456": "915a41", + "427638": "b04f6d", + "c68a48": "2a1310", + "8d4229": "79392f", + "eec856": "eee0bc", + "cb8a42": "d1a87e", + "b3ac62": "cbb4af", + "dad08b": "e2dcd6", + "2c4828": "2e2246", + "e9c558": "463731", + "772628": "4f4840" + } +} \ No newline at end of file diff --git a/public/images/pokemon/variant/back/842.json b/public/images/pokemon/variant/back/842.json new file mode 100644 index 00000000000..3fdccc629c8 --- /dev/null +++ b/public/images/pokemon/variant/back/842.json @@ -0,0 +1,36 @@ +{ + "1": { + "39a45f": "9aa0b3", + "ffcd88": "698db4", + "621522": "3e6085", + "9f7034": "110723", + "f9be6b": "a3b9d0", + "fcff86": "397880", + "2c743e": "7a7c9e", + "af2348": "70a2c5", + "1f4329": "313846", + "ffc575": "2b526f", + "ffa63b": "2d3d68", + "275734": "852560", + "e78422": "1f1946", + "e75574": "abd7e2", + "7de755": "d66f9a" + }, + "2": { + "39a45f": "e28c95", + "ffcd88": "b9937a", + "621522": "68645f", + "9f7034": "2e0e09", + "f9be6b": "cbb4af", + "fcff86": "eee0bc", + "2c743e": "a8546e", + "af2348": "bfb5ab", + "1f4329": "341c1c", + "ffc575": "d1a87e", + "ffa63b": "63473b", + "275734": "2e2246", + "e78422": "4b211b", + "e75574": "dcd9d1", + "7de755": "589df3" + } +} \ No newline at end of file diff --git a/public/images/pokemon/variant/back/871.json b/public/images/pokemon/variant/back/871.json new file mode 100644 index 00000000000..5004d3013b5 --- /dev/null +++ b/public/images/pokemon/variant/back/871.json @@ -0,0 +1,32 @@ +{ + "1": { + "101010": "101010", + "2e2732": "1b3334", + "281f2e": "2a2732", + "46384c": "504540", + "493d4e": "3a5d57", + "665272": "62857c", + "544947": "7d320e", + "7a7270": "a8501b", + "9e9a96": "cd7930", + "7b4e1c": "5b0d3f", + "d58815": "a02c58", + "fdba2f": "c45858", + "fdf22f": "f1e8e8" + }, + "2": { + "101010": "101010", + "2e2732": "8b4738", + "281f2e": "212232", + "46384c": "504740", + "493d4e": "ce8a66", + "665272": "eac69b", + "544947": "1a1730", + "7a7270": "27223b", + "9e9a96": "3a3449", + "7b4e1c": "222c58", + "d58815": "343f7f", + "fdba2f": "67729f", + "fdf22f": "8e9fc9" + } +} \ No newline at end of file diff --git a/public/images/pokemon/variant/back/88.json b/public/images/pokemon/variant/back/88.json new file mode 100644 index 00000000000..61b7ca3b802 --- /dev/null +++ b/public/images/pokemon/variant/back/88.json @@ -0,0 +1,28 @@ +{ + "1": { + "101010": "101010", + "424a5a": "5b3a1d", + "5a3173": "6a010c", + "848c9c": "9b7c48", + "944a9c": "b1160e", + "adb5bd": "e9de8c", + "bd7bbd": "d55021", + "ce8cc5": "e98a47", + "d6d6de": "ded7ce", + "ffffff": "ffffff", + "efade6": "f8be70" + }, + "2": { + "101010": "101010", + "424a5a": "2d7351", + "5a3173": "a21851", + "848c9c": "69b17b", + "944a9c": "d04569", + "adb5bd": "b0e4a9", + "bd7bbd": "ed8ea2", + "ce8cc5": "f4bfbf", + "d6d6de": "d6d6de", + "ffffff": "ffffff", + "efade6": "f8d8cf" + } +} \ No newline at end of file diff --git a/public/images/pokemon/variant/back/89.json b/public/images/pokemon/variant/back/89.json new file mode 100644 index 00000000000..eda3558d7c2 --- /dev/null +++ b/public/images/pokemon/variant/back/89.json @@ -0,0 +1,30 @@ +{ + "1": { + "101010": "101010", + "424a5a": "5b3a1d", + "5a3173": "6a010c", + "848c9c": "9b7c48", + "944a9c": "b1160e", + "adb5bd": "e9de8c", + "bd7bbd": "d55021", + "ce8cc5": "e98a47", + "d6d6de": "ded7ce", + "ffffff": "ffffff", + "efade6": "f8be70", + "ad63ad": "c63a17" + }, + "2": { + "101010": "101010", + "424a5a": "2d7351", + "5a3173": "a21851", + "848c9c": "69b17b", + "944a9c": "d04569", + "adb5bd": "b0e4a9", + "bd7bbd": "ed8ea2", + "ce8cc5": "f4bfbf", + "d6d6de": "d6d6de", + "ffffff": "ffffff", + "efade6": "f8d8cf", + "ad63ad": "e5728a" + } +} \ No newline at end of file diff --git a/public/images/pokemon/variant/back/female/207.json b/public/images/pokemon/variant/back/female/207.json index 52c582cf1a8..89ed15e95c5 100644 --- a/public/images/pokemon/variant/back/female/207.json +++ b/public/images/pokemon/variant/back/female/207.json @@ -1,16 +1,14 @@ { "1": { - "63314a": "7f4812", - "e6a5ce": "f8dd84", - "de84b5": "daa93f", - "101010": "101010", - "ad6394": "b67322" + "de84b5": "e3784d", + "e6a5ce": "f7a565", + "63314a": "802019", + "ad6394": "ba4732" }, "2": { - "63314a": "5f1723", - "e6a5ce": "ef6b58", - "de84b5": "c04144", - "101010": "101010", - "ad6394": "97343c" + "de84b5": "42bca0", + "e6a5ce": "70e0b7", + "63314a": "134e5e", + "ad6394": "27868a" } } \ No newline at end of file diff --git a/public/images/pokemon/variant/back/female/332.json b/public/images/pokemon/variant/back/female/332.json new file mode 100644 index 00000000000..9ec50cb7e92 --- /dev/null +++ b/public/images/pokemon/variant/back/female/332.json @@ -0,0 +1,28 @@ +{ + "1": { + "319452": "780d4a", + "4aa552": "8a1652", + "7ba563": "b44040", + "8cbd63": "bf3d64", + "215200": "710f2f", + "196b21": "780d4a", + "a5d674": "de5b6f", + "4a7310": "982443", + "a5d673": "e16363", + "63b56b": "9e2056", + "215201": "710f2e" + }, + "2": { + "319452": "b59c72", + "4aa552": "c9b991", + "7ba563": "805a9c", + "8cbd63": "ebe9ca", + "215200": "41334d", + "196b21": "b59c72", + "a5d674": "f6f7df", + "4a7310": "4f3956", + "a5d673": "a473ba", + "63b56b": "e3ddb8", + "215201": "694d37" + } +} \ No newline at end of file diff --git a/public/images/pokemon/variant/back/female/396.json b/public/images/pokemon/variant/back/female/396.json new file mode 100644 index 00000000000..429adbc8791 --- /dev/null +++ b/public/images/pokemon/variant/back/female/396.json @@ -0,0 +1,36 @@ +{ + "1": { + "d6dede": "e3d09d", + "949494": "dbb070", + "736363": "89ad57", + "ffffff": "f0ecd3", + "382028": "731e22", + "d67300": "db963b", + "b5b5b5": "d4b27f", + "808080": "c48c51", + "9c4a21": "b06421", + "8c7373": "b53f36", + "3a2129": "2a4f19", + "524a4a": "558033", + "4f4747": "144a40", + "ad9c9c": "ed7b61", + "ff9429": "ffcf5e" + }, + "2": { + "d6dede": "f0deaa", + "949494": "cca472", + "736363": "4da8a1", + "ffffff": "fcfad2", + "382028": "0d142e", + "d67300": "52281f", + "b5b5b5": "debd8c", + "808080": "bf8d62", + "9c4a21": "451915", + "8c7373": "1b2745", + "3a2129": "235a6b", + "524a4a": "307b82", + "4f4747": "e0703d", + "ad9c9c": "2f436b", + "ff9429": "8c604c" + } +} \ No newline at end of file diff --git a/public/images/pokemon/variant/back/female/397.json b/public/images/pokemon/variant/back/female/397.json new file mode 100644 index 00000000000..0eef3be33d9 --- /dev/null +++ b/public/images/pokemon/variant/back/female/397.json @@ -0,0 +1,36 @@ +{ + "1": { + "735a63": "b53f36", + "574f57": "144a40", + "5a525a": "739e49", + "f75242": "8bba65", + "878787": "baa277", + "b5b5b5": "d9c798", + "ff9429": "ffcf5e", + "382f38": "0c3330", + "3a313a": "496e2e", + "362d36": "612e10", + "fcfcfc": "f0ebc5", + "bd6300": "b06421", + "7b4221": "965318", + "523a4a": "731e22", + "9c848c": "ed7b61" + }, + "2": { + "735a63": "1b2745", + "574f57": "e0703d", + "5a525a": "4da8a1", + "f75242": "f797ad", + "878787": "d4b885", + "b5b5b5": "f0deaa", + "ff9429": "8c604c", + "382f38": "b04a28", + "3a313a": "307b82", + "362d36": "421917", + "fcfcfc": "fcfad2", + "bd6300": "66362b", + "7b4221": "52281f", + "523a4a": "0d142e", + "9c848c": "2f436b" + } +} \ No newline at end of file diff --git a/public/images/pokemon/variant/back/female/398.json b/public/images/pokemon/variant/back/female/398.json new file mode 100644 index 00000000000..0c987cf37b0 --- /dev/null +++ b/public/images/pokemon/variant/back/female/398.json @@ -0,0 +1,36 @@ +{ + "1": { + "9c4242": "09302d", + "5c545c": "144a40", + "3a313a": "0d3236", + "7b4221": "965318", + "bd6300": "db963b", + "5a525a": "558033", + "7b6b7b": "89ad57", + "f75242": "144a40", + "735a63": "d94f45", + "ffffff": "e8e3b6", + "523a4a": "872328", + "3a3a3a": "2a4f19", + "b5b5b5": "d7be89", + "9c848c": "ed7b61", + "ff9429": "ffcf5e" + }, + "2": { + "9c4242": "c94a2a", + "5c545c": "e0703d", + "3a313a": "a64221", + "7b4221": "421917", + "bd6300": "63362b", + "5a525a": "307b82", + "7b6b7b": "4da8a1", + "f75242": "f78a4a", + "735a63": "1b2745", + "ffffff": "fcfad2", + "523a4a": "080d1f", + "3a3a3a": "235a6b", + "b5b5b5": "f0deaa", + "9c848c": "293854", + "ff9429": "8c604c" + } +} \ No newline at end of file diff --git a/public/images/pokemon/variant/back/female/403.json b/public/images/pokemon/variant/back/female/403.json new file mode 100644 index 00000000000..4eb1da93a49 --- /dev/null +++ b/public/images/pokemon/variant/back/female/403.json @@ -0,0 +1,22 @@ +{ + "1": { + "b59c5a": "3763b8", + "7badf7": "bf403a", + "637bb5": "962a2f", + "4a4a63": "dcb788", + "ffe65a": "4881cc", + "313142": "bd8254", + "42426b": "63121d", + "736352": "234085" + }, + "2": { + "b59c5a": "36b88a", + "7badf7": "324663", + "637bb5": "222f4d", + "4a4a63": "bbe5e5", + "ffe65a": "46d382", + "313142": "73bec9", + "42426b": "161b36", + "736352": "298e7d" + } +} \ No newline at end of file diff --git a/public/images/pokemon/variant/back/female/404.json b/public/images/pokemon/variant/back/female/404.json new file mode 100644 index 00000000000..1ebec7af6be --- /dev/null +++ b/public/images/pokemon/variant/back/female/404.json @@ -0,0 +1,24 @@ +{ + "1": { + "736352": "234085", + "4a4a73": "63121d", + "63637b": "f1dbb1", + "637bb5": "962a2f", + "4a4a63": "dcb788", + "ffe65a": "4881cc", + "313142": "bd8254", + "b59c5a": "3763b8", + "7badf7": "bf403a" + }, + "2": { + "736352": "298e7d", + "4a4a73": "161b36", + "63637b": "def4f0", + "637bb5": "222f4d", + "4a4a63": "bbe5e5", + "ffe65a": "46d382", + "313142": "73bec9", + "b59c5a": "36b88a", + "7badf7": "324663" + } +} \ No newline at end of file diff --git a/public/images/pokemon/variant/back/female/405.json b/public/images/pokemon/variant/back/female/405.json new file mode 100644 index 00000000000..c70567e0728 --- /dev/null +++ b/public/images/pokemon/variant/back/female/405.json @@ -0,0 +1,30 @@ +{ + "1": { + "b59c5a": "3763b8", + "7badf7": "bf403a", + "63637b": "f1dbb1", + "3a3859": "430917", + "637bb5": "962a2f", + "4a4a73": "63121d", + "4a4a63": "dcb488", + "ffe65a": "4881cc", + "313142": "bd7e54", + "943a52": "5a2d0f", + "e64a52": "3e2711", + "736352": "234085" + }, + "2": { + "b59c5a": "36b88a", + "7badf7": "324663", + "63637b": "def4f0", + "3a3859": "0f0f26", + "637bb5": "222f4d", + "4a4a73": "161b36", + "4a4a63": "bbe5e5", + "ffe65a": "46d382", + "313142": "73bec9", + "943a52": "3a5e80", + "e64a52": "4a7c92", + "736352": "298e7d" + } +} \ No newline at end of file diff --git a/public/images/pokemon/variant/back/female/417.json b/public/images/pokemon/variant/back/female/417.json new file mode 100644 index 00000000000..42b3180ee3c --- /dev/null +++ b/public/images/pokemon/variant/back/female/417.json @@ -0,0 +1,36 @@ +{ + "1": { + "101010": "101010", + "3e364e": "734430", + "524941": "732e12", + "5a524a": "642f1a", + "4a425a": "5f2618", + "84523a": "9b314f", + "ef845a": "e26e6e", + "c5a563": "e95d6c", + "ffd663": "f17c7c", + "637b9c": "86452b", + "7bb5e6": "a25f37", + "cec5c5": "e8be64", + "f7f7f7": "faeda9", + "ffffff": "ffffff", + "7b7b84": "8e623c" + }, + "2": { + "101010": "101010", + "3e364e": "203243", + "524941": "2d284c", + "5a524a": "0f203a", + "4a425a": "23704c", + "84523a": "693939", + "ef845a": "e1b8ac", + "c5a563": "8fecf7", + "ffd663": "d0fdff", + "637b9c": "a2dc76", + "7bb5e6": "e4fba1", + "cec5c5": "357577", + "f7f7f7": "5ba297", + "ffffff": "ffffff", + "7b7b84": "1f3f4e" + } +} \ No newline at end of file diff --git a/public/images/pokemon/variant/exp/2037.json b/public/images/pokemon/variant/exp/2037.json new file mode 100644 index 00000000000..2c190d5d36a --- /dev/null +++ b/public/images/pokemon/variant/exp/2037.json @@ -0,0 +1,26 @@ +{ + "1": { + "151515": "101010", + "2d57bb": "235dc4", + "558b9f": "9f435d", + "648082": "6e67b0", + "6cb1db": "3daae0", + "97bdd2": "ffa8b8", + "c1d1d2": "b3b8ea", + "d9e9f4": "ffd3e1", + "fdfdfd": "d7d9f9", + "ffffff": "ffffff" + }, + "2": { + "151515": "101010", + "2d57bb": "6e1179", + "558b9f": "90215e", + "648082": "bf4747", + "6cb1db": "8832a0", + "97bdd2": "da4e75", + "c1d1d2": "ffc07b", + "d9e9f4": "ff8489", + "fdfdfd": "ffe6a0", + "ffffff": "ffffff" + } +} \ No newline at end of file diff --git a/public/images/pokemon/variant/exp/2038.json b/public/images/pokemon/variant/exp/2038.json new file mode 100644 index 00000000000..845c45f7887 --- /dev/null +++ b/public/images/pokemon/variant/exp/2038.json @@ -0,0 +1,36 @@ +{ + "1": { + "101010": "101010", + "4d5c78": "394880", + "516077": "9f435d", + "007ab5": "2380c4", + "38858d": "e35ea2", + "7a8a9c": "6172ab", + "66b3d7": "3dbfe0", + "86a8c0": "e27495", + "81c2c5": "ff89c0", + "bdcbd7": "a7ade7", + "a1e1de": "ffb6e5", + "b0d3ea": "ffa8b8", + "eafefe": "ffd3e1", + "fdfdfd": "bec6ef", + "ffffff": "ffffff" + }, + "2": { + "101010": "101010", + "4d5c78": "73174a", + "516077": "bb3c3c", + "007ab5": "882493", + "38858d": "572746", + "7a8a9c": "90215e", + "66b3d7": "a044ab", + "86a8c0": "ff824c", + "81c2c5": "75355e", + "bdcbd7": "da426d", + "a1e1de": "93547c", + "b0d3ea": "ffbf6b", + "eafefe": "ffe28c", + "fdfdfd": "ff6f86", + "ffffff": "ffffff" + } +} \ No newline at end of file diff --git a/public/images/pokemon/variant/exp/692.json b/public/images/pokemon/variant/exp/692.json new file mode 100644 index 00000000000..954dcffb3e9 --- /dev/null +++ b/public/images/pokemon/variant/exp/692.json @@ -0,0 +1,26 @@ +{ + "1": { + "b3f2ff": "fada7f", + "44a2b4": "af6a37", + "2f7280": "783a1d", + "cd9d3a": "53be53", + "575757": "c85b5b", + "72561c": "20734c", + "60dbf2": "e1ac53", + "b4b4b4": "c8ba6d", + "3d3d3d": "7d182d", + "ffc549": "a9f076" + }, + "2": { + "b3f2ff": "faf8d7", + "44a2b4": "968144", + "2f7280": "5f3c23", + "cd9d3a": "7743be", + "575757": "88cd56", + "72561c": "371c72", + "60dbf2": "e1d6b6", + "b4b4b4": "68a7aa", + "3d3d3d": "1c873e", + "ffc549": "a36feb" + } +} \ No newline at end of file diff --git a/public/images/pokemon/variant/exp/693.json b/public/images/pokemon/variant/exp/693.json new file mode 100644 index 00000000000..2e80795d2a0 --- /dev/null +++ b/public/images/pokemon/variant/exp/693.json @@ -0,0 +1,30 @@ +{ + "1": { + "23a2c8": "c87a23", + "ffc859": "6ccd80", + "224b73": "552813", + "404040": "3c171b", + "262626": "230808", + "5f5f5f": "6e2e3b", + "cc9c3d": "1b3c17", + "61daf2": "f2bd61", + "735822": "08230e", + "3674b3": "7d3e21", + "ffc44c": "426e2e", + "4595e5": "aa6839" + }, + "2": { + "23a2c8": "beb099", + "ffc859": "f5b281", + "224b73": "5f463a", + "404040": "2a8c53", + "262626": "295a1c", + "5f5f5f": "51c85d", + "cc9c3d": "6259af", + "61daf2": "f0eadb", + "735822": "36235f", + "3674b3": "9b8265", + "ffc44c": "a39afa", + "4595e5": "c8b493" + } +} \ No newline at end of file diff --git a/public/images/pokemon/variant/exp/746-school.json b/public/images/pokemon/variant/exp/746-school.json new file mode 100644 index 00000000000..a76aca2921f --- /dev/null +++ b/public/images/pokemon/variant/exp/746-school.json @@ -0,0 +1,40 @@ +{ + "1": { + "101010": "101010", + "0a1627": "5f2112", + "113650": "0b3d3a", + "123954": "75351b", + "10437d": "16574d", + "134884": "934f26", + "1766c6": "b77736", + "3d66d8": "d39c63", + "416adf": "2c9572", + "79848a": "a67834", + "749cf6": "5ce09d", + "43ebf3": "824388", + "72f0f6": "27133f", + "9cd3fd": "78f389", + "a6c5f7": "aafe94", + "cfd1d3": "d5ab51", + "fbfbfb": "f7d76b" + }, + "2": { + "101010": "101010", + "0a1627": "160523", + "113650": "846228", + "123954": "28071a", + "10437d": "b7904d", + "134884": "350b19", + "1766c6": "4a1111", + "3d66d8": "622222", + "416adf": "dec284", + "79848a": "4a1111", + "749cf6": "f8ecc5", + "43ebf3": "4378eb", + "72f0f6": "31238e", + "9cd3fd": "fefed9", + "a6c5f7": "fefeef", + "cfd1d3": "5f291c", + "fbfbfb": "844232" + } +} \ No newline at end of file diff --git a/public/images/pokemon/variant/exp/746.json b/public/images/pokemon/variant/exp/746.json new file mode 100644 index 00000000000..5b183b10e5d --- /dev/null +++ b/public/images/pokemon/variant/exp/746.json @@ -0,0 +1,40 @@ +{ + "1": { + "101010": "101010", + "1f2161": "16574d", + "5d666d": "75391b", + "616b72": "a67834", + "9c455b": "308c9d", + "374793": "2c9572", + "4764c9": "5ce09d", + "3e9cbb": "27133f", + "61c8de": "824388", + "8c9c9d": "935926", + "8d9c9d": "c69b3f", + "d88394": "65cfe2", + "b0c5c6": "d5ab51", + "ccd2ce": "b77736", + "d8d9da": "d8d9da", + "eeeeee": "f7d76b", + "fefefe": "fefefe" + }, + "2": { + "101010": "101010", + "1f2161": "b7904d", + "5d666d": "1e0726", + "616b72": "4a1111", + "9c455b": "b9682d", + "374793": "dec284", + "4764c9": "f8ecc5", + "3e9cbb": "4378eb", + "61c8de": "5787f1", + "8c9c9d": "350b19", + "8d9c9d": "531917", + "d88394": "e4d85f", + "b0c5c6": "5f291c", + "ccd2ce": "4a1111", + "d8d9da": "d8d9da", + "eeeeee": "844232", + "fefefe": "fefefe" + } +} \ No newline at end of file diff --git a/public/images/pokemon/variant/exp/780.json b/public/images/pokemon/variant/exp/780.json new file mode 100644 index 00000000000..0399d3567bf --- /dev/null +++ b/public/images/pokemon/variant/exp/780.json @@ -0,0 +1,40 @@ +{ + "1": { + "8d541b": "bd8955", + "297b8b": "1a316b", + "606f55": "496375", + "ffc4d7": "f29d9d", + "105262": "0e194a", + "b4cda4": "9ab5b8", + "f5ae07": "e8c987", + "ce5b9b": "cf4654", + "faf550": "faf0b1", + "e67b9c": "e65757", + "bd3983": "bd3341", + "eea6bc": "f06e6e", + "5aa4a4": "284c80", + "b8b7a3": "cf8d38", + "726d5c": "a36026", + "91a37c": "7798a1", + "eeeeee": "e6c15e" + }, + "2": { + "8d541b": "157d36", + "297b8b": "4e4f73", + "606f55": "8f825d", + "ffc4d7": "f2e396", + "105262": "3f3c61", + "b4cda4": "d6dbba", + "f5ae07": "24ab2b", + "ce5b9b": "d9ae5d", + "faf550": "3ec435", + "e67b9c": "e3b656", + "bd3983": "c27529", + "eea6bc": "f2d98d", + "5aa4a4": "6a708a", + "b8b7a3": "254e59", + "726d5c": "162d3d", + "91a37c": "b5b48b", + "eeeeee": "3e7a76" + } +} \ No newline at end of file diff --git a/public/images/pokemon/variant/exp/840.json b/public/images/pokemon/variant/exp/840.json new file mode 100644 index 00000000000..5a6a81a887e --- /dev/null +++ b/public/images/pokemon/variant/exp/840.json @@ -0,0 +1,34 @@ +{ + "1": { + "e2244a": "70a2c5", + "8d4229": "570749", + "94d84a": "fefefe", + "a4d84a": "9aa0b3", + "d39a52": "9c2e72", + "e32b50": "4e77a2", + "5fab1d": "7a7c9e", + "fe455c": "abd7e2", + "5bab1d": "acb0c3", + "247912": "48485d", + "a50534": "3e6085", + "357912": "313846", + "f2c171": "c55885", + "fa6f8b": "c1f3f3" + }, + "2": { + "e2244a": "bfb5ab", + "8d4229": "230808", + "94d84a": "589df3", + "a4d84a": "9aa0b3", + "d39a52": "291411", + "e32b50": "807770", + "5fab1d": "7a7c9e", + "fe455c": "dcd9d1", + "5bab1d": "354dbf", + "247912": "2e2246", + "a50534": "68645f", + "357912": "313846", + "f2c171": "463731", + "fa6f8b": "eeedea" + } +} \ No newline at end of file diff --git a/public/images/pokemon/variant/exp/841.json b/public/images/pokemon/variant/exp/841.json new file mode 100644 index 00000000000..aa68f322f29 --- /dev/null +++ b/public/images/pokemon/variant/exp/841.json @@ -0,0 +1,42 @@ +{ + "1": { + "101010": "101010", + "612324": "3e6085", + "395a2e": "383146", + "9b2629": "70a2c5", + "d72d31": "abd7e2", + "874c23": "453157", + "8d764b": "110723", + "d9695a": "c55885", + "488235": "8e7a9e", + "56ab32": "a59ab3", + "b08c51": "b3b1d6", + "b5915b": "34123a", + "ccb468": "5d2654", + "f1c950": "f3c5dd", + "ccca71": "e6dcf9", + "f0bda6": "c1f3f3", + "ebe381": "854774", + "fcfcfc": "fcfcfc" + }, + "2": { + "101010": "101010", + "612324": "827466", + "395a2e": "4f0e30", + "9b2629": "bfb5ab", + "d72d31": "dcd9d1", + "874c23": "2e2246", + "8d764b": "230313", + "d9695a": "463731", + "488235": "a8546e", + "56ab32": "e28c95", + "b08c51": "cbb4af", + "b5915b": "541711", + "ccb468": "8b4332", + "f1c950": "589df3", + "ccca71": "e2dcd6", + "f0bda6": "eeedea", + "ebe381": "c68862", + "fcfcfc": "fcfcfc" + } +} \ No newline at end of file diff --git a/public/images/pokemon/variant/exp/842.json b/public/images/pokemon/variant/exp/842.json new file mode 100644 index 00000000000..0629adc139a --- /dev/null +++ b/public/images/pokemon/variant/exp/842.json @@ -0,0 +1,43 @@ +{ + "1": { + "101010": "101010", + "1f4329": "313846", + "1f5829": "852560", + "2c743e": "7a7c9e", + "9f7034": "230f47", + "ac6b20": "110723", + "af2348": "67829e", + "e75574": "70a2c5", + "39a45f": "92cbd9", + "7de755": "d66f9a", + "e78422": "1f1946", + "ffa63b": "2d3d68", + "f1cf6d": "a3b9d0", + "f9d56d": "698db4", + "ffc575": "2b526f", + "f18e8e": "c1f3f3", + "fcff86": "397880", + "621522": "204063" + + }, + "2": { + "101010": "101010", + "1f4329": "511c2d", + "1f5829": "2e2246", + "2c743e": "a8546e", + "9f7034": "3a130d", + "ac6b20": "68645f", + "af2348": "bfb5ab", + "e75574": "dcd9d1", + "39a45f": "e28c95", + "7de755": "589df3", + "e78422": "4b211b", + "ffa63b": "63473b", + "f1cf6d": "cbb4af", + "f9d56d": "b9937a", + "ffc575": "d1a87e", + "f18e8e": "eeedea", + "fcff86": "eee0bc", + "621522": "68645f" + } +} \ No newline at end of file diff --git a/public/images/pokemon/variant/exp/871.json b/public/images/pokemon/variant/exp/871.json new file mode 100644 index 00000000000..5004d3013b5 --- /dev/null +++ b/public/images/pokemon/variant/exp/871.json @@ -0,0 +1,32 @@ +{ + "1": { + "101010": "101010", + "2e2732": "1b3334", + "281f2e": "2a2732", + "46384c": "504540", + "493d4e": "3a5d57", + "665272": "62857c", + "544947": "7d320e", + "7a7270": "a8501b", + "9e9a96": "cd7930", + "7b4e1c": "5b0d3f", + "d58815": "a02c58", + "fdba2f": "c45858", + "fdf22f": "f1e8e8" + }, + "2": { + "101010": "101010", + "2e2732": "8b4738", + "281f2e": "212232", + "46384c": "504740", + "493d4e": "ce8a66", + "665272": "eac69b", + "544947": "1a1730", + "7a7270": "27223b", + "9e9a96": "3a3449", + "7b4e1c": "222c58", + "d58815": "343f7f", + "fdba2f": "67729f", + "fdf22f": "8e9fc9" + } +} \ No newline at end of file diff --git a/public/images/pokemon/variant/exp/935.json b/public/images/pokemon/variant/exp/935.json deleted file mode 100644 index 8aa02017aca..00000000000 --- a/public/images/pokemon/variant/exp/935.json +++ /dev/null @@ -1,46 +0,0 @@ -{ - "0": { - "3681e4": "cfac07", - "df00df": "b168ca", - "82afee": "fdcd0d", - "ff51ff": "e589b5", - "ca0d33": "5ba0cc", - "ee0d23": "93d6b7", - "801313": "212982", - "b33630": "4861a5", - "0f0f0f": "0f0f0f", - "464444": "4d3467", - "636161": "885aa3", - "f38f07": "b885d6", - "8c8a8a": "c79ace", - "f32e42": "93d6b7", - "1b2123": "1b2123", - "c77505": "795bd3", - "f3bd03": "a59fdf", - "ffffff": "ffffff", - "bbb9b9": "bbb9b9", - "5c5d64": "5c5d64" - }, - "1": { - "3681e4": "a3bfcc", - "df00df": "88a0cc", - "82afee": "dbf5ff", - "ff51ff": "bbccea", - "ca0d33": "41accd", - "ee0d23": "96f5ff", - "801313": "0b3060", - "b33630": "205b82", - "0f0f0f": "0f0f0f", - "464444": "2d2c35", - "636161": "3b4149", - "f38f07": "e0734c", - "8c8a8a": "888989", - "f32e42": "87c1e5", - "1b2123": "1b2123", - "c77505": "d33830", - "f3bd03": "f4b766", - "ffffff": "ffffff", - "bbb9b9": "bbb9b9", - "5c5d64": "5c5d64" - } -} \ No newline at end of file diff --git a/public/images/pokemon/variant/exp/935_1.png b/public/images/pokemon/variant/exp/935_1.png deleted file mode 100644 index 06c09657444..00000000000 Binary files a/public/images/pokemon/variant/exp/935_1.png and /dev/null differ diff --git a/public/images/pokemon/variant/exp/935_2.png b/public/images/pokemon/variant/exp/935_2.png deleted file mode 100644 index 87d88ad2a74..00000000000 Binary files a/public/images/pokemon/variant/exp/935_2.png and /dev/null differ diff --git a/public/images/pokemon/variant/exp/935_3.json b/public/images/pokemon/variant/exp/935_3.json deleted file mode 100644 index 019ec7ab1de..00000000000 --- a/public/images/pokemon/variant/exp/935_3.json +++ /dev/null @@ -1,440 +0,0 @@ -{ - "textures": [ - { - "image": "935_3.png", - "format": "RGBA8888", - "size": { - "w": 165, - "h": 165 - }, - "scale": 1, - "frames": [ - { - "filename": "0001.png", - "rotated": false, - "trimmed": false, - "sourceSize": { - "w": 35, - "h": 55 - }, - "spriteSourceSize": { - "x": 0, - "y": 0, - "w": 35, - "h": 55 - }, - "frame": { - "x": 0, - "y": 0, - "w": 35, - "h": 55 - } - }, - { - "filename": "0005.png", - "rotated": false, - "trimmed": false, - "sourceSize": { - "w": 35, - "h": 55 - }, - "spriteSourceSize": { - "x": 0, - "y": 0, - "w": 35, - "h": 55 - }, - "frame": { - "x": 0, - "y": 0, - "w": 35, - "h": 55 - } - }, - { - "filename": "0009.png", - "rotated": false, - "trimmed": false, - "sourceSize": { - "w": 35, - "h": 55 - }, - "spriteSourceSize": { - "x": 0, - "y": 0, - "w": 35, - "h": 55 - }, - "frame": { - "x": 0, - "y": 0, - "w": 35, - "h": 55 - } - }, - { - "filename": "0002.png", - "rotated": false, - "trimmed": false, - "sourceSize": { - "w": 35, - "h": 55 - }, - "spriteSourceSize": { - "x": 0, - "y": 0, - "w": 35, - "h": 55 - }, - "frame": { - "x": 0, - "y": 55, - "w": 35, - "h": 55 - } - }, - { - "filename": "0006.png", - "rotated": false, - "trimmed": false, - "sourceSize": { - "w": 35, - "h": 55 - }, - "spriteSourceSize": { - "x": 0, - "y": 0, - "w": 35, - "h": 55 - }, - "frame": { - "x": 0, - "y": 55, - "w": 35, - "h": 55 - } - }, - { - "filename": "0010.png", - "rotated": false, - "trimmed": false, - "sourceSize": { - "w": 35, - "h": 55 - }, - "spriteSourceSize": { - "x": 0, - "y": 0, - "w": 35, - "h": 55 - }, - "frame": { - "x": 0, - "y": 55, - "w": 35, - "h": 55 - } - }, - { - "filename": "0003.png", - "rotated": false, - "trimmed": false, - "sourceSize": { - "w": 35, - "h": 55 - }, - "spriteSourceSize": { - "x": 0, - "y": 0, - "w": 35, - "h": 55 - }, - "frame": { - "x": 0, - "y": 110, - "w": 35, - "h": 55 - } - }, - { - "filename": "0007.png", - "rotated": false, - "trimmed": false, - "sourceSize": { - "w": 35, - "h": 55 - }, - "spriteSourceSize": { - "x": 0, - "y": 0, - "w": 35, - "h": 55 - }, - "frame": { - "x": 0, - "y": 110, - "w": 35, - "h": 55 - } - }, - { - "filename": "0011.png", - "rotated": false, - "trimmed": false, - "sourceSize": { - "w": 35, - "h": 55 - }, - "spriteSourceSize": { - "x": 0, - "y": 0, - "w": 35, - "h": 55 - }, - "frame": { - "x": 0, - "y": 110, - "w": 35, - "h": 55 - } - }, - { - "filename": "0004.png", - "rotated": false, - "trimmed": false, - "sourceSize": { - "w": 35, - "h": 55 - }, - "spriteSourceSize": { - "x": 0, - "y": 0, - "w": 35, - "h": 55 - }, - "frame": { - "x": 35, - "y": 0, - "w": 35, - "h": 55 - } - }, - { - "filename": "0008.png", - "rotated": false, - "trimmed": false, - "sourceSize": { - "w": 35, - "h": 55 - }, - "spriteSourceSize": { - "x": 0, - "y": 0, - "w": 35, - "h": 55 - }, - "frame": { - "x": 35, - "y": 0, - "w": 35, - "h": 55 - } - }, - { - "filename": "0012.png", - "rotated": false, - "trimmed": false, - "sourceSize": { - "w": 35, - "h": 55 - }, - "spriteSourceSize": { - "x": 0, - "y": 0, - "w": 35, - "h": 55 - }, - "frame": { - "x": 35, - "y": 0, - "w": 35, - "h": 55 - } - }, - { - "filename": "0013.png", - "rotated": false, - "trimmed": false, - "sourceSize": { - "w": 35, - "h": 55 - }, - "spriteSourceSize": { - "x": 0, - "y": 0, - "w": 35, - "h": 55 - }, - "frame": { - "x": 35, - "y": 55, - "w": 35, - "h": 55 - } - }, - { - "filename": "0014.png", - "rotated": false, - "trimmed": false, - "sourceSize": { - "w": 35, - "h": 55 - }, - "spriteSourceSize": { - "x": 0, - "y": 0, - "w": 35, - "h": 55 - }, - "frame": { - "x": 35, - "y": 110, - "w": 35, - "h": 55 - } - }, - { - "filename": "0015.png", - "rotated": false, - "trimmed": false, - "sourceSize": { - "w": 35, - "h": 55 - }, - "spriteSourceSize": { - "x": 0, - "y": 0, - "w": 35, - "h": 55 - }, - "frame": { - "x": 70, - "y": 0, - "w": 35, - "h": 55 - } - }, - { - "filename": "0016.png", - "rotated": false, - "trimmed": false, - "sourceSize": { - "w": 35, - "h": 55 - }, - "spriteSourceSize": { - "x": 0, - "y": 0, - "w": 35, - "h": 55 - }, - "frame": { - "x": 105, - "y": 0, - "w": 35, - "h": 55 - } - }, - { - "filename": "0017.png", - "rotated": false, - "trimmed": false, - "sourceSize": { - "w": 35, - "h": 55 - }, - "spriteSourceSize": { - "x": 0, - "y": 0, - "w": 35, - "h": 55 - }, - "frame": { - "x": 70, - "y": 55, - "w": 35, - "h": 55 - } - }, - { - "filename": "0018.png", - "rotated": false, - "trimmed": false, - "sourceSize": { - "w": 35, - "h": 55 - }, - "spriteSourceSize": { - "x": 0, - "y": 0, - "w": 35, - "h": 55 - }, - "frame": { - "x": 70, - "y": 110, - "w": 35, - "h": 55 - } - }, - { - "filename": "0019.png", - "rotated": false, - "trimmed": false, - "sourceSize": { - "w": 35, - "h": 55 - }, - "spriteSourceSize": { - "x": 0, - "y": 0, - "w": 35, - "h": 55 - }, - "frame": { - "x": 105, - "y": 55, - "w": 35, - "h": 55 - } - }, - { - "filename": "0020.png", - "rotated": false, - "trimmed": false, - "sourceSize": { - "w": 35, - "h": 55 - }, - "spriteSourceSize": { - "x": 0, - "y": 0, - "w": 35, - "h": 55 - }, - "frame": { - "x": 105, - "y": 110, - "w": 35, - "h": 55 - } - } - ] - } - ], - "meta": { - "app": "https://www.codeandweb.com/texturepacker", - "version": "3.0", - "smartupdate": "$TexturePacker:SmartUpdate:06750fe617b2ad66c1af576e0074e016:b59cf22eea90e9839062adc1f728c00a:077dcf06dc5fc347497b59afe6126a5e$" - } -} \ No newline at end of file diff --git a/public/images/pokemon/variant/exp/935_3.png b/public/images/pokemon/variant/exp/935_3.png deleted file mode 100644 index 2ffcbac799e..00000000000 Binary files a/public/images/pokemon/variant/exp/935_3.png and /dev/null differ diff --git a/public/images/pokemon/variant/exp/936_1.json b/public/images/pokemon/variant/exp/936_1.json deleted file mode 100644 index f3c45278c91..00000000000 --- a/public/images/pokemon/variant/exp/936_1.json +++ /dev/null @@ -1,524 +0,0 @@ -{ - "textures": [ - { - "image": "936_1.png", - "format": "RGBA8888", - "size": { - "w": 323, - "h": 323 - }, - "scale": 1, - "frames": [ - { - "filename": "0016.png", - "rotated": false, - "trimmed": false, - "sourceSize": { - "w": 76, - "h": 99 - }, - "spriteSourceSize": { - "x": 0, - "y": 0, - "w": 76, - "h": 99 - }, - "frame": { - "x": 0, - "y": 0, - "w": 76, - "h": 99 - } - }, - { - "filename": "0017.png", - "rotated": false, - "trimmed": false, - "sourceSize": { - "w": 76, - "h": 99 - }, - "spriteSourceSize": { - "x": 0, - "y": 0, - "w": 76, - "h": 99 - }, - "frame": { - "x": 0, - "y": 99, - "w": 76, - "h": 99 - } - }, - { - "filename": "0018.png", - "rotated": false, - "trimmed": false, - "sourceSize": { - "w": 76, - "h": 99 - }, - "spriteSourceSize": { - "x": 0, - "y": 0, - "w": 76, - "h": 99 - }, - "frame": { - "x": 0, - "y": 198, - "w": 76, - "h": 99 - } - }, - { - "filename": "0015.png", - "rotated": false, - "trimmed": true, - "sourceSize": { - "w": 76, - "h": 99 - }, - "spriteSourceSize": { - "x": 0, - "y": 1, - "w": 76, - "h": 98 - }, - "frame": { - "x": 76, - "y": 0, - "w": 76, - "h": 98 - } - }, - { - "filename": "0019.png", - "rotated": false, - "trimmed": true, - "sourceSize": { - "w": 76, - "h": 99 - }, - "spriteSourceSize": { - "x": 0, - "y": 1, - "w": 76, - "h": 98 - }, - "frame": { - "x": 152, - "y": 0, - "w": 76, - "h": 98 - } - }, - { - "filename": "0014.png", - "rotated": false, - "trimmed": true, - "sourceSize": { - "w": 76, - "h": 99 - }, - "spriteSourceSize": { - "x": 2, - "y": 0, - "w": 70, - "h": 99 - }, - "frame": { - "x": 228, - "y": 0, - "w": 70, - "h": 99 - } - }, - { - "filename": "0020.png", - "rotated": false, - "trimmed": true, - "sourceSize": { - "w": 76, - "h": 99 - }, - "spriteSourceSize": { - "x": 2, - "y": 0, - "w": 70, - "h": 99 - }, - "frame": { - "x": 76, - "y": 98, - "w": 70, - "h": 99 - } - }, - { - "filename": "0001.png", - "rotated": false, - "trimmed": true, - "sourceSize": { - "w": 76, - "h": 99 - }, - "spriteSourceSize": { - "x": 9, - "y": 0, - "w": 59, - "h": 99 - }, - "frame": { - "x": 146, - "y": 98, - "w": 59, - "h": 99 - } - }, - { - "filename": "0005.png", - "rotated": false, - "trimmed": true, - "sourceSize": { - "w": 76, - "h": 99 - }, - "spriteSourceSize": { - "x": 9, - "y": 0, - "w": 59, - "h": 99 - }, - "frame": { - "x": 146, - "y": 98, - "w": 59, - "h": 99 - } - }, - { - "filename": "0021.png", - "rotated": false, - "trimmed": true, - "sourceSize": { - "w": 76, - "h": 99 - }, - "spriteSourceSize": { - "x": 9, - "y": 0, - "w": 59, - "h": 99 - }, - "frame": { - "x": 146, - "y": 98, - "w": 59, - "h": 99 - } - }, - { - "filename": "0002.png", - "rotated": false, - "trimmed": true, - "sourceSize": { - "w": 76, - "h": 99 - }, - "spriteSourceSize": { - "x": 9, - "y": 0, - "w": 59, - "h": 99 - }, - "frame": { - "x": 76, - "y": 197, - "w": 59, - "h": 99 - } - }, - { - "filename": "0006.png", - "rotated": false, - "trimmed": true, - "sourceSize": { - "w": 76, - "h": 99 - }, - "spriteSourceSize": { - "x": 9, - "y": 0, - "w": 59, - "h": 99 - }, - "frame": { - "x": 76, - "y": 197, - "w": 59, - "h": 99 - } - }, - { - "filename": "0010.png", - "rotated": false, - "trimmed": true, - "sourceSize": { - "w": 76, - "h": 99 - }, - "spriteSourceSize": { - "x": 9, - "y": 0, - "w": 59, - "h": 99 - }, - "frame": { - "x": 76, - "y": 197, - "w": 59, - "h": 99 - } - }, - { - "filename": "0022.png", - "rotated": false, - "trimmed": true, - "sourceSize": { - "w": 76, - "h": 99 - }, - "spriteSourceSize": { - "x": 9, - "y": 0, - "w": 59, - "h": 99 - }, - "frame": { - "x": 76, - "y": 197, - "w": 59, - "h": 99 - } - }, - { - "filename": "0004.png", - "rotated": false, - "trimmed": true, - "sourceSize": { - "w": 76, - "h": 99 - }, - "spriteSourceSize": { - "x": 9, - "y": 0, - "w": 59, - "h": 99 - }, - "frame": { - "x": 135, - "y": 197, - "w": 59, - "h": 99 - } - }, - { - "filename": "0012.png", - "rotated": false, - "trimmed": true, - "sourceSize": { - "w": 76, - "h": 99 - }, - "spriteSourceSize": { - "x": 9, - "y": 0, - "w": 59, - "h": 99 - }, - "frame": { - "x": 135, - "y": 197, - "w": 59, - "h": 99 - } - }, - { - "filename": "0024.png", - "rotated": false, - "trimmed": true, - "sourceSize": { - "w": 76, - "h": 99 - }, - "spriteSourceSize": { - "x": 9, - "y": 0, - "w": 59, - "h": 99 - }, - "frame": { - "x": 135, - "y": 197, - "w": 59, - "h": 99 - } - }, - { - "filename": "0008.png", - "rotated": false, - "trimmed": true, - "sourceSize": { - "w": 76, - "h": 99 - }, - "spriteSourceSize": { - "x": 9, - "y": 0, - "w": 59, - "h": 99 - }, - "frame": { - "x": 194, - "y": 197, - "w": 59, - "h": 99 - } - }, - { - "filename": "0003.png", - "rotated": false, - "trimmed": true, - "sourceSize": { - "w": 76, - "h": 99 - }, - "spriteSourceSize": { - "x": 9, - "y": 1, - "w": 59, - "h": 98 - }, - "frame": { - "x": 205, - "y": 99, - "w": 59, - "h": 98 - } - }, - { - "filename": "0007.png", - "rotated": false, - "trimmed": true, - "sourceSize": { - "w": 76, - "h": 99 - }, - "spriteSourceSize": { - "x": 9, - "y": 1, - "w": 59, - "h": 98 - }, - "frame": { - "x": 205, - "y": 99, - "w": 59, - "h": 98 - } - }, - { - "filename": "0011.png", - "rotated": false, - "trimmed": true, - "sourceSize": { - "w": 76, - "h": 99 - }, - "spriteSourceSize": { - "x": 9, - "y": 1, - "w": 59, - "h": 98 - }, - "frame": { - "x": 205, - "y": 99, - "w": 59, - "h": 98 - } - }, - { - "filename": "0023.png", - "rotated": false, - "trimmed": true, - "sourceSize": { - "w": 76, - "h": 99 - }, - "spriteSourceSize": { - "x": 9, - "y": 1, - "w": 59, - "h": 98 - }, - "frame": { - "x": 205, - "y": 99, - "w": 59, - "h": 98 - } - }, - { - "filename": "0013.png", - "rotated": false, - "trimmed": true, - "sourceSize": { - "w": 76, - "h": 99 - }, - "spriteSourceSize": { - "x": 9, - "y": 0, - "w": 59, - "h": 99 - }, - "frame": { - "x": 264, - "y": 99, - "w": 59, - "h": 99 - } - }, - { - "filename": "0009.png", - "rotated": false, - "trimmed": true, - "sourceSize": { - "w": 76, - "h": 99 - }, - "spriteSourceSize": { - "x": 9, - "y": 1, - "w": 59, - "h": 98 - }, - "frame": { - "x": 253, - "y": 198, - "w": 59, - "h": 98 - } - } - ] - } - ], - "meta": { - "app": "https://www.codeandweb.com/texturepacker", - "version": "3.0", - "smartupdate": "$TexturePacker:SmartUpdate:2943281264e8142bbdb55f3a34167d72:322e92870c690e237c7a5e4a4a5f8e84:1a0490303f9626f92e787c567cd10feb$" - } -} \ No newline at end of file diff --git a/public/images/pokemon/variant/exp/936_1.png b/public/images/pokemon/variant/exp/936_1.png deleted file mode 100644 index cdc333ab841..00000000000 Binary files a/public/images/pokemon/variant/exp/936_1.png and /dev/null differ diff --git a/public/images/pokemon/variant/exp/936_2.json b/public/images/pokemon/variant/exp/936_2.json deleted file mode 100644 index dfe48120a67..00000000000 --- a/public/images/pokemon/variant/exp/936_2.json +++ /dev/null @@ -1,524 +0,0 @@ -{ - "textures": [ - { - "image": "936_2.png", - "format": "RGBA8888", - "size": { - "w": 323, - "h": 323 - }, - "scale": 1, - "frames": [ - { - "filename": "0016.png", - "rotated": false, - "trimmed": false, - "sourceSize": { - "w": 76, - "h": 99 - }, - "spriteSourceSize": { - "x": 0, - "y": 0, - "w": 76, - "h": 99 - }, - "frame": { - "x": 0, - "y": 0, - "w": 76, - "h": 99 - } - }, - { - "filename": "0017.png", - "rotated": false, - "trimmed": false, - "sourceSize": { - "w": 76, - "h": 99 - }, - "spriteSourceSize": { - "x": 0, - "y": 0, - "w": 76, - "h": 99 - }, - "frame": { - "x": 0, - "y": 99, - "w": 76, - "h": 99 - } - }, - { - "filename": "0018.png", - "rotated": false, - "trimmed": false, - "sourceSize": { - "w": 76, - "h": 99 - }, - "spriteSourceSize": { - "x": 0, - "y": 0, - "w": 76, - "h": 99 - }, - "frame": { - "x": 0, - "y": 198, - "w": 76, - "h": 99 - } - }, - { - "filename": "0015.png", - "rotated": false, - "trimmed": true, - "sourceSize": { - "w": 76, - "h": 99 - }, - "spriteSourceSize": { - "x": 0, - "y": 1, - "w": 76, - "h": 98 - }, - "frame": { - "x": 76, - "y": 0, - "w": 76, - "h": 98 - } - }, - { - "filename": "0019.png", - "rotated": false, - "trimmed": true, - "sourceSize": { - "w": 76, - "h": 99 - }, - "spriteSourceSize": { - "x": 0, - "y": 1, - "w": 76, - "h": 98 - }, - "frame": { - "x": 152, - "y": 0, - "w": 76, - "h": 98 - } - }, - { - "filename": "0014.png", - "rotated": false, - "trimmed": true, - "sourceSize": { - "w": 76, - "h": 99 - }, - "spriteSourceSize": { - "x": 2, - "y": 0, - "w": 70, - "h": 99 - }, - "frame": { - "x": 228, - "y": 0, - "w": 70, - "h": 99 - } - }, - { - "filename": "0020.png", - "rotated": false, - "trimmed": true, - "sourceSize": { - "w": 76, - "h": 99 - }, - "spriteSourceSize": { - "x": 2, - "y": 0, - "w": 70, - "h": 99 - }, - "frame": { - "x": 76, - "y": 98, - "w": 70, - "h": 99 - } - }, - { - "filename": "0001.png", - "rotated": false, - "trimmed": true, - "sourceSize": { - "w": 76, - "h": 99 - }, - "spriteSourceSize": { - "x": 9, - "y": 0, - "w": 59, - "h": 99 - }, - "frame": { - "x": 146, - "y": 98, - "w": 59, - "h": 99 - } - }, - { - "filename": "0005.png", - "rotated": false, - "trimmed": true, - "sourceSize": { - "w": 76, - "h": 99 - }, - "spriteSourceSize": { - "x": 9, - "y": 0, - "w": 59, - "h": 99 - }, - "frame": { - "x": 146, - "y": 98, - "w": 59, - "h": 99 - } - }, - { - "filename": "0021.png", - "rotated": false, - "trimmed": true, - "sourceSize": { - "w": 76, - "h": 99 - }, - "spriteSourceSize": { - "x": 9, - "y": 0, - "w": 59, - "h": 99 - }, - "frame": { - "x": 146, - "y": 98, - "w": 59, - "h": 99 - } - }, - { - "filename": "0002.png", - "rotated": false, - "trimmed": true, - "sourceSize": { - "w": 76, - "h": 99 - }, - "spriteSourceSize": { - "x": 9, - "y": 0, - "w": 59, - "h": 99 - }, - "frame": { - "x": 76, - "y": 197, - "w": 59, - "h": 99 - } - }, - { - "filename": "0006.png", - "rotated": false, - "trimmed": true, - "sourceSize": { - "w": 76, - "h": 99 - }, - "spriteSourceSize": { - "x": 9, - "y": 0, - "w": 59, - "h": 99 - }, - "frame": { - "x": 76, - "y": 197, - "w": 59, - "h": 99 - } - }, - { - "filename": "0010.png", - "rotated": false, - "trimmed": true, - "sourceSize": { - "w": 76, - "h": 99 - }, - "spriteSourceSize": { - "x": 9, - "y": 0, - "w": 59, - "h": 99 - }, - "frame": { - "x": 76, - "y": 197, - "w": 59, - "h": 99 - } - }, - { - "filename": "0022.png", - "rotated": false, - "trimmed": true, - "sourceSize": { - "w": 76, - "h": 99 - }, - "spriteSourceSize": { - "x": 9, - "y": 0, - "w": 59, - "h": 99 - }, - "frame": { - "x": 76, - "y": 197, - "w": 59, - "h": 99 - } - }, - { - "filename": "0004.png", - "rotated": false, - "trimmed": true, - "sourceSize": { - "w": 76, - "h": 99 - }, - "spriteSourceSize": { - "x": 9, - "y": 0, - "w": 59, - "h": 99 - }, - "frame": { - "x": 135, - "y": 197, - "w": 59, - "h": 99 - } - }, - { - "filename": "0012.png", - "rotated": false, - "trimmed": true, - "sourceSize": { - "w": 76, - "h": 99 - }, - "spriteSourceSize": { - "x": 9, - "y": 0, - "w": 59, - "h": 99 - }, - "frame": { - "x": 135, - "y": 197, - "w": 59, - "h": 99 - } - }, - { - "filename": "0024.png", - "rotated": false, - "trimmed": true, - "sourceSize": { - "w": 76, - "h": 99 - }, - "spriteSourceSize": { - "x": 9, - "y": 0, - "w": 59, - "h": 99 - }, - "frame": { - "x": 135, - "y": 197, - "w": 59, - "h": 99 - } - }, - { - "filename": "0008.png", - "rotated": false, - "trimmed": true, - "sourceSize": { - "w": 76, - "h": 99 - }, - "spriteSourceSize": { - "x": 9, - "y": 0, - "w": 59, - "h": 99 - }, - "frame": { - "x": 194, - "y": 197, - "w": 59, - "h": 99 - } - }, - { - "filename": "0003.png", - "rotated": false, - "trimmed": true, - "sourceSize": { - "w": 76, - "h": 99 - }, - "spriteSourceSize": { - "x": 9, - "y": 1, - "w": 59, - "h": 98 - }, - "frame": { - "x": 205, - "y": 99, - "w": 59, - "h": 98 - } - }, - { - "filename": "0007.png", - "rotated": false, - "trimmed": true, - "sourceSize": { - "w": 76, - "h": 99 - }, - "spriteSourceSize": { - "x": 9, - "y": 1, - "w": 59, - "h": 98 - }, - "frame": { - "x": 205, - "y": 99, - "w": 59, - "h": 98 - } - }, - { - "filename": "0011.png", - "rotated": false, - "trimmed": true, - "sourceSize": { - "w": 76, - "h": 99 - }, - "spriteSourceSize": { - "x": 9, - "y": 1, - "w": 59, - "h": 98 - }, - "frame": { - "x": 205, - "y": 99, - "w": 59, - "h": 98 - } - }, - { - "filename": "0023.png", - "rotated": false, - "trimmed": true, - "sourceSize": { - "w": 76, - "h": 99 - }, - "spriteSourceSize": { - "x": 9, - "y": 1, - "w": 59, - "h": 98 - }, - "frame": { - "x": 205, - "y": 99, - "w": 59, - "h": 98 - } - }, - { - "filename": "0013.png", - "rotated": false, - "trimmed": true, - "sourceSize": { - "w": 76, - "h": 99 - }, - "spriteSourceSize": { - "x": 9, - "y": 0, - "w": 59, - "h": 99 - }, - "frame": { - "x": 264, - "y": 99, - "w": 59, - "h": 99 - } - }, - { - "filename": "0009.png", - "rotated": false, - "trimmed": true, - "sourceSize": { - "w": 76, - "h": 99 - }, - "spriteSourceSize": { - "x": 9, - "y": 1, - "w": 59, - "h": 98 - }, - "frame": { - "x": 253, - "y": 198, - "w": 59, - "h": 98 - } - } - ] - } - ], - "meta": { - "app": "https://www.codeandweb.com/texturepacker", - "version": "3.0", - "smartupdate": "$TexturePacker:SmartUpdate:2943281264e8142bbdb55f3a34167d72:322e92870c690e237c7a5e4a4a5f8e84:1a0490303f9626f92e787c567cd10feb$" - } -} \ No newline at end of file diff --git a/public/images/pokemon/variant/exp/936_2.png b/public/images/pokemon/variant/exp/936_2.png deleted file mode 100644 index 4d5bfb25268..00000000000 Binary files a/public/images/pokemon/variant/exp/936_2.png and /dev/null differ diff --git a/public/images/pokemon/variant/exp/936_3.json b/public/images/pokemon/variant/exp/936_3.json deleted file mode 100644 index e80ca73deb5..00000000000 --- a/public/images/pokemon/variant/exp/936_3.json +++ /dev/null @@ -1,524 +0,0 @@ -{ - "textures": [ - { - "image": "936_3.png", - "format": "RGBA8888", - "size": { - "w": 323, - "h": 323 - }, - "scale": 1, - "frames": [ - { - "filename": "0016.png", - "rotated": false, - "trimmed": false, - "sourceSize": { - "w": 76, - "h": 99 - }, - "spriteSourceSize": { - "x": 0, - "y": 0, - "w": 76, - "h": 99 - }, - "frame": { - "x": 0, - "y": 0, - "w": 76, - "h": 99 - } - }, - { - "filename": "0017.png", - "rotated": false, - "trimmed": false, - "sourceSize": { - "w": 76, - "h": 99 - }, - "spriteSourceSize": { - "x": 0, - "y": 0, - "w": 76, - "h": 99 - }, - "frame": { - "x": 0, - "y": 99, - "w": 76, - "h": 99 - } - }, - { - "filename": "0018.png", - "rotated": false, - "trimmed": false, - "sourceSize": { - "w": 76, - "h": 99 - }, - "spriteSourceSize": { - "x": 0, - "y": 0, - "w": 76, - "h": 99 - }, - "frame": { - "x": 0, - "y": 198, - "w": 76, - "h": 99 - } - }, - { - "filename": "0015.png", - "rotated": false, - "trimmed": true, - "sourceSize": { - "w": 76, - "h": 99 - }, - "spriteSourceSize": { - "x": 0, - "y": 1, - "w": 76, - "h": 98 - }, - "frame": { - "x": 76, - "y": 0, - "w": 76, - "h": 98 - } - }, - { - "filename": "0019.png", - "rotated": false, - "trimmed": true, - "sourceSize": { - "w": 76, - "h": 99 - }, - "spriteSourceSize": { - "x": 0, - "y": 1, - "w": 76, - "h": 98 - }, - "frame": { - "x": 152, - "y": 0, - "w": 76, - "h": 98 - } - }, - { - "filename": "0014.png", - "rotated": false, - "trimmed": true, - "sourceSize": { - "w": 76, - "h": 99 - }, - "spriteSourceSize": { - "x": 2, - "y": 0, - "w": 70, - "h": 99 - }, - "frame": { - "x": 228, - "y": 0, - "w": 70, - "h": 99 - } - }, - { - "filename": "0020.png", - "rotated": false, - "trimmed": true, - "sourceSize": { - "w": 76, - "h": 99 - }, - "spriteSourceSize": { - "x": 2, - "y": 0, - "w": 70, - "h": 99 - }, - "frame": { - "x": 76, - "y": 98, - "w": 70, - "h": 99 - } - }, - { - "filename": "0001.png", - "rotated": false, - "trimmed": true, - "sourceSize": { - "w": 76, - "h": 99 - }, - "spriteSourceSize": { - "x": 9, - "y": 0, - "w": 59, - "h": 99 - }, - "frame": { - "x": 146, - "y": 98, - "w": 59, - "h": 99 - } - }, - { - "filename": "0005.png", - "rotated": false, - "trimmed": true, - "sourceSize": { - "w": 76, - "h": 99 - }, - "spriteSourceSize": { - "x": 9, - "y": 0, - "w": 59, - "h": 99 - }, - "frame": { - "x": 146, - "y": 98, - "w": 59, - "h": 99 - } - }, - { - "filename": "0021.png", - "rotated": false, - "trimmed": true, - "sourceSize": { - "w": 76, - "h": 99 - }, - "spriteSourceSize": { - "x": 9, - "y": 0, - "w": 59, - "h": 99 - }, - "frame": { - "x": 146, - "y": 98, - "w": 59, - "h": 99 - } - }, - { - "filename": "0002.png", - "rotated": false, - "trimmed": true, - "sourceSize": { - "w": 76, - "h": 99 - }, - "spriteSourceSize": { - "x": 9, - "y": 0, - "w": 59, - "h": 99 - }, - "frame": { - "x": 76, - "y": 197, - "w": 59, - "h": 99 - } - }, - { - "filename": "0006.png", - "rotated": false, - "trimmed": true, - "sourceSize": { - "w": 76, - "h": 99 - }, - "spriteSourceSize": { - "x": 9, - "y": 0, - "w": 59, - "h": 99 - }, - "frame": { - "x": 76, - "y": 197, - "w": 59, - "h": 99 - } - }, - { - "filename": "0010.png", - "rotated": false, - "trimmed": true, - "sourceSize": { - "w": 76, - "h": 99 - }, - "spriteSourceSize": { - "x": 9, - "y": 0, - "w": 59, - "h": 99 - }, - "frame": { - "x": 76, - "y": 197, - "w": 59, - "h": 99 - } - }, - { - "filename": "0022.png", - "rotated": false, - "trimmed": true, - "sourceSize": { - "w": 76, - "h": 99 - }, - "spriteSourceSize": { - "x": 9, - "y": 0, - "w": 59, - "h": 99 - }, - "frame": { - "x": 76, - "y": 197, - "w": 59, - "h": 99 - } - }, - { - "filename": "0004.png", - "rotated": false, - "trimmed": true, - "sourceSize": { - "w": 76, - "h": 99 - }, - "spriteSourceSize": { - "x": 9, - "y": 0, - "w": 59, - "h": 99 - }, - "frame": { - "x": 135, - "y": 197, - "w": 59, - "h": 99 - } - }, - { - "filename": "0012.png", - "rotated": false, - "trimmed": true, - "sourceSize": { - "w": 76, - "h": 99 - }, - "spriteSourceSize": { - "x": 9, - "y": 0, - "w": 59, - "h": 99 - }, - "frame": { - "x": 135, - "y": 197, - "w": 59, - "h": 99 - } - }, - { - "filename": "0024.png", - "rotated": false, - "trimmed": true, - "sourceSize": { - "w": 76, - "h": 99 - }, - "spriteSourceSize": { - "x": 9, - "y": 0, - "w": 59, - "h": 99 - }, - "frame": { - "x": 135, - "y": 197, - "w": 59, - "h": 99 - } - }, - { - "filename": "0008.png", - "rotated": false, - "trimmed": true, - "sourceSize": { - "w": 76, - "h": 99 - }, - "spriteSourceSize": { - "x": 9, - "y": 0, - "w": 59, - "h": 99 - }, - "frame": { - "x": 194, - "y": 197, - "w": 59, - "h": 99 - } - }, - { - "filename": "0003.png", - "rotated": false, - "trimmed": true, - "sourceSize": { - "w": 76, - "h": 99 - }, - "spriteSourceSize": { - "x": 9, - "y": 1, - "w": 59, - "h": 98 - }, - "frame": { - "x": 205, - "y": 99, - "w": 59, - "h": 98 - } - }, - { - "filename": "0007.png", - "rotated": false, - "trimmed": true, - "sourceSize": { - "w": 76, - "h": 99 - }, - "spriteSourceSize": { - "x": 9, - "y": 1, - "w": 59, - "h": 98 - }, - "frame": { - "x": 205, - "y": 99, - "w": 59, - "h": 98 - } - }, - { - "filename": "0011.png", - "rotated": false, - "trimmed": true, - "sourceSize": { - "w": 76, - "h": 99 - }, - "spriteSourceSize": { - "x": 9, - "y": 1, - "w": 59, - "h": 98 - }, - "frame": { - "x": 205, - "y": 99, - "w": 59, - "h": 98 - } - }, - { - "filename": "0023.png", - "rotated": false, - "trimmed": true, - "sourceSize": { - "w": 76, - "h": 99 - }, - "spriteSourceSize": { - "x": 9, - "y": 1, - "w": 59, - "h": 98 - }, - "frame": { - "x": 205, - "y": 99, - "w": 59, - "h": 98 - } - }, - { - "filename": "0013.png", - "rotated": false, - "trimmed": true, - "sourceSize": { - "w": 76, - "h": 99 - }, - "spriteSourceSize": { - "x": 9, - "y": 0, - "w": 59, - "h": 99 - }, - "frame": { - "x": 264, - "y": 99, - "w": 59, - "h": 99 - } - }, - { - "filename": "0009.png", - "rotated": false, - "trimmed": true, - "sourceSize": { - "w": 76, - "h": 99 - }, - "spriteSourceSize": { - "x": 9, - "y": 1, - "w": 59, - "h": 98 - }, - "frame": { - "x": 253, - "y": 198, - "w": 59, - "h": 98 - } - } - ] - } - ], - "meta": { - "app": "https://www.codeandweb.com/texturepacker", - "version": "3.0", - "smartupdate": "$TexturePacker:SmartUpdate:2943281264e8142bbdb55f3a34167d72:322e92870c690e237c7a5e4a4a5f8e84:1a0490303f9626f92e787c567cd10feb$" - } -} \ No newline at end of file diff --git a/public/images/pokemon/variant/exp/936_3.png b/public/images/pokemon/variant/exp/936_3.png deleted file mode 100644 index 27874a25886..00000000000 Binary files a/public/images/pokemon/variant/exp/936_3.png and /dev/null differ diff --git a/public/images/pokemon/variant/exp/937_1.json b/public/images/pokemon/variant/exp/937_1.json deleted file mode 100644 index d8039af99c7..00000000000 --- a/public/images/pokemon/variant/exp/937_1.json +++ /dev/null @@ -1,125 +0,0 @@ -{ - "textures": [ - { - "image": "937_1.png", - "format": "RGBA8888", - "size": { - "w": 247, - "h": 247 - }, - "scale": 1, - "frames": [ - { - "filename": "0002.png", - "rotated": false, - "trimmed": true, - "sourceSize": { - "w": 86, - "h": 99 - }, - "spriteSourceSize": { - "x": 1, - "y": 1, - "w": 83, - "h": 98 - }, - "frame": { - "x": 0, - "y": 0, - "w": 83, - "h": 98 - } - }, - { - "filename": "0001.png", - "rotated": false, - "trimmed": true, - "sourceSize": { - "w": 86, - "h": 99 - }, - "spriteSourceSize": { - "x": 2, - "y": 0, - "w": 81, - "h": 99 - }, - "frame": { - "x": 83, - "y": 0, - "w": 81, - "h": 99 - } - }, - { - "filename": "0003.png", - "rotated": false, - "trimmed": true, - "sourceSize": { - "w": 86, - "h": 99 - }, - "spriteSourceSize": { - "x": 1, - "y": 0, - "w": 83, - "h": 99 - }, - "frame": { - "x": 164, - "y": 0, - "w": 83, - "h": 99 - } - }, - { - "filename": "0004.png", - "rotated": false, - "trimmed": false, - "sourceSize": { - "w": 86, - "h": 99 - }, - "spriteSourceSize": { - "x": 0, - "y": 0, - "w": 86, - "h": 99 - }, - "frame": { - "x": 0, - "y": 99, - "w": 86, - "h": 99 - } - }, - { - "filename": "0005.png", - "rotated": false, - "trimmed": false, - "sourceSize": { - "w": 86, - "h": 99 - }, - "spriteSourceSize": { - "x": 0, - "y": 0, - "w": 86, - "h": 99 - }, - "frame": { - "x": 86, - "y": 99, - "w": 86, - "h": 99 - } - } - ] - } - ], - "meta": { - "app": "https://www.codeandweb.com/texturepacker", - "version": "3.0", - "smartupdate": "$TexturePacker:SmartUpdate:492182e4e32e5cddaa9dfc2c2c08b684:084d0317f824a0d082ba0ffcfebc407b:1d4b4f8d62307c37457ba974879b47d0$" - } -} \ No newline at end of file diff --git a/public/images/pokemon/variant/exp/937_1.png b/public/images/pokemon/variant/exp/937_1.png deleted file mode 100644 index 82fa70b0c5b..00000000000 Binary files a/public/images/pokemon/variant/exp/937_1.png and /dev/null differ diff --git a/public/images/pokemon/variant/exp/937_2.json b/public/images/pokemon/variant/exp/937_2.json deleted file mode 100644 index 58792129101..00000000000 --- a/public/images/pokemon/variant/exp/937_2.json +++ /dev/null @@ -1,125 +0,0 @@ -{ - "textures": [ - { - "image": "937_2.png", - "format": "RGBA8888", - "size": { - "w": 247, - "h": 247 - }, - "scale": 1, - "frames": [ - { - "filename": "0002.png", - "rotated": false, - "trimmed": true, - "sourceSize": { - "w": 86, - "h": 99 - }, - "spriteSourceSize": { - "x": 1, - "y": 1, - "w": 83, - "h": 98 - }, - "frame": { - "x": 0, - "y": 0, - "w": 83, - "h": 98 - } - }, - { - "filename": "0001.png", - "rotated": false, - "trimmed": true, - "sourceSize": { - "w": 86, - "h": 99 - }, - "spriteSourceSize": { - "x": 2, - "y": 0, - "w": 81, - "h": 99 - }, - "frame": { - "x": 83, - "y": 0, - "w": 81, - "h": 99 - } - }, - { - "filename": "0003.png", - "rotated": false, - "trimmed": true, - "sourceSize": { - "w": 86, - "h": 99 - }, - "spriteSourceSize": { - "x": 1, - "y": 0, - "w": 83, - "h": 99 - }, - "frame": { - "x": 164, - "y": 0, - "w": 83, - "h": 99 - } - }, - { - "filename": "0004.png", - "rotated": false, - "trimmed": false, - "sourceSize": { - "w": 86, - "h": 99 - }, - "spriteSourceSize": { - "x": 0, - "y": 0, - "w": 86, - "h": 99 - }, - "frame": { - "x": 0, - "y": 99, - "w": 86, - "h": 99 - } - }, - { - "filename": "0005.png", - "rotated": false, - "trimmed": false, - "sourceSize": { - "w": 86, - "h": 99 - }, - "spriteSourceSize": { - "x": 0, - "y": 0, - "w": 86, - "h": 99 - }, - "frame": { - "x": 86, - "y": 99, - "w": 86, - "h": 99 - } - } - ] - } - ], - "meta": { - "app": "https://www.codeandweb.com/texturepacker", - "version": "3.0", - "smartupdate": "$TexturePacker:SmartUpdate:492182e4e32e5cddaa9dfc2c2c08b684:084d0317f824a0d082ba0ffcfebc407b:1d4b4f8d62307c37457ba974879b47d0$" - } -} \ No newline at end of file diff --git a/public/images/pokemon/variant/exp/937_2.png b/public/images/pokemon/variant/exp/937_2.png deleted file mode 100644 index 43e2b060319..00000000000 Binary files a/public/images/pokemon/variant/exp/937_2.png and /dev/null differ diff --git a/public/images/pokemon/variant/exp/937_3.json b/public/images/pokemon/variant/exp/937_3.json deleted file mode 100644 index 213c017c1e0..00000000000 --- a/public/images/pokemon/variant/exp/937_3.json +++ /dev/null @@ -1,125 +0,0 @@ -{ - "textures": [ - { - "image": "937_3.png", - "format": "RGBA8888", - "size": { - "w": 247, - "h": 247 - }, - "scale": 1, - "frames": [ - { - "filename": "0002.png", - "rotated": false, - "trimmed": true, - "sourceSize": { - "w": 86, - "h": 99 - }, - "spriteSourceSize": { - "x": 1, - "y": 1, - "w": 83, - "h": 98 - }, - "frame": { - "x": 0, - "y": 0, - "w": 83, - "h": 98 - } - }, - { - "filename": "0001.png", - "rotated": false, - "trimmed": true, - "sourceSize": { - "w": 86, - "h": 99 - }, - "spriteSourceSize": { - "x": 2, - "y": 0, - "w": 81, - "h": 99 - }, - "frame": { - "x": 83, - "y": 0, - "w": 81, - "h": 99 - } - }, - { - "filename": "0003.png", - "rotated": false, - "trimmed": true, - "sourceSize": { - "w": 86, - "h": 99 - }, - "spriteSourceSize": { - "x": 1, - "y": 0, - "w": 83, - "h": 99 - }, - "frame": { - "x": 164, - "y": 0, - "w": 83, - "h": 99 - } - }, - { - "filename": "0004.png", - "rotated": false, - "trimmed": false, - "sourceSize": { - "w": 86, - "h": 99 - }, - "spriteSourceSize": { - "x": 0, - "y": 0, - "w": 86, - "h": 99 - }, - "frame": { - "x": 0, - "y": 99, - "w": 86, - "h": 99 - } - }, - { - "filename": "0005.png", - "rotated": false, - "trimmed": false, - "sourceSize": { - "w": 86, - "h": 99 - }, - "spriteSourceSize": { - "x": 0, - "y": 0, - "w": 86, - "h": 99 - }, - "frame": { - "x": 86, - "y": 99, - "w": 86, - "h": 99 - } - } - ] - } - ], - "meta": { - "app": "https://www.codeandweb.com/texturepacker", - "version": "3.0", - "smartupdate": "$TexturePacker:SmartUpdate:492182e4e32e5cddaa9dfc2c2c08b684:084d0317f824a0d082ba0ffcfebc407b:1d4b4f8d62307c37457ba974879b47d0$" - } -} \ No newline at end of file diff --git a/public/images/pokemon/variant/exp/937_3.png b/public/images/pokemon/variant/exp/937_3.png deleted file mode 100644 index 9a208ba1457..00000000000 Binary files a/public/images/pokemon/variant/exp/937_3.png and /dev/null differ diff --git a/public/images/pokemon/variant/exp/back/2037.json b/public/images/pokemon/variant/exp/back/2037.json new file mode 100644 index 00000000000..0d2c02cf980 --- /dev/null +++ b/public/images/pokemon/variant/exp/back/2037.json @@ -0,0 +1,22 @@ +{ + "1": { + "151515": "101010", + "558b9f": "9f435d", + "648082": "6e67b0", + "97bdd2": "ffa8b8", + "c1d1d2": "b3b8ea", + "d9e9f4": "ffd3e1", + "fdfdfd": "d7d9f9", + "ffffff": "ffffff" + }, + "2": { + "151515": "101010", + "558b9f": "90215e", + "648082": "bf4747", + "97bdd2": "da4e75", + "c1d1d2": "ffc07b", + "d9e9f4": "ff8489", + "fdfdfd": "ffe6a0", + "ffffff": "ffffff" + } +} \ No newline at end of file diff --git a/public/images/pokemon/variant/exp/back/2038.json b/public/images/pokemon/variant/exp/back/2038.json new file mode 100644 index 00000000000..845c45f7887 --- /dev/null +++ b/public/images/pokemon/variant/exp/back/2038.json @@ -0,0 +1,36 @@ +{ + "1": { + "101010": "101010", + "4d5c78": "394880", + "516077": "9f435d", + "007ab5": "2380c4", + "38858d": "e35ea2", + "7a8a9c": "6172ab", + "66b3d7": "3dbfe0", + "86a8c0": "e27495", + "81c2c5": "ff89c0", + "bdcbd7": "a7ade7", + "a1e1de": "ffb6e5", + "b0d3ea": "ffa8b8", + "eafefe": "ffd3e1", + "fdfdfd": "bec6ef", + "ffffff": "ffffff" + }, + "2": { + "101010": "101010", + "4d5c78": "73174a", + "516077": "bb3c3c", + "007ab5": "882493", + "38858d": "572746", + "7a8a9c": "90215e", + "66b3d7": "a044ab", + "86a8c0": "ff824c", + "81c2c5": "75355e", + "bdcbd7": "da426d", + "a1e1de": "93547c", + "b0d3ea": "ffbf6b", + "eafefe": "ffe28c", + "fdfdfd": "ff6f86", + "ffffff": "ffffff" + } +} \ No newline at end of file diff --git a/public/images/pokemon/variant/exp/back/692.json b/public/images/pokemon/variant/exp/back/692.json new file mode 100644 index 00000000000..d4c85f37c9d --- /dev/null +++ b/public/images/pokemon/variant/exp/back/692.json @@ -0,0 +1,28 @@ +{ + "1": { + "337380": "783a1d", + "b3b3b3": "c8ba6d", + "595959": "c85b5b", + "61daf2": "e1ac53", + "cc9c3d": "53be53", + "404040": "7d182d", + "ffc44c": "a9f076", + "b2f2ff": "fada7f", + "47a1b3": "af6a37", + "101010": "070707", + "735822": "20734c" + }, + "2": { + "337380": "5f3c23", + "b3b3b3": "68a7aa", + "595959": "88cd56", + "61daf2": "e1d6b6", + "cc9c3d": "7743be", + "404040": "1c873e", + "ffc44c": "a36feb", + "b2f2ff": "faf8d7", + "47a1b3": "968144", + "101010": "070707", + "735822": "371c72" + } +} \ No newline at end of file diff --git a/public/images/pokemon/variant/exp/back/693.json b/public/images/pokemon/variant/exp/back/693.json new file mode 100644 index 00000000000..3187a81e0c0 --- /dev/null +++ b/public/images/pokemon/variant/exp/back/693.json @@ -0,0 +1,28 @@ +{ + "1": { + "224b73": "552813", + "4595e5": "aa6839", + "23a2c8": "c87a23", + "262626": "230808", + "cc9c3d": "1b3c17", + "404040": "3c171b", + "5f5f5f": "6e2e3b", + "61daf2": "f2bd61", + "3674b3": "7d3e21", + "ffc44c": "426e2e", + "735822": "08230e" + }, + "2": { + "224b73": "5f463a", + "4595e5": "c8b493", + "23a2c8": "beb099", + "262626": "295a1c", + "cc9c3d": "6259af", + "404040": "2a8c53", + "5f5f5f": "51c85d", + "61daf2": "f0eadb", + "3674b3": "9b8265", + "ffc44c": "a39afa", + "735822": "36235f" + } +} \ No newline at end of file diff --git a/public/images/pokemon/variant/exp/back/746-school.json b/public/images/pokemon/variant/exp/back/746-school.json new file mode 100644 index 00000000000..d8fa61a3829 --- /dev/null +++ b/public/images/pokemon/variant/exp/back/746-school.json @@ -0,0 +1,38 @@ +{ + "1": { + "101010": "101010", + "0a1627": "5f2112", + "123954": "75391b", + "134884": "935926", + "134d84": "16574d", + "1766c6": "b77736", + "416adf": "2c9572", + "79848a": "a67834", + "749cf6": "5ce09d", + "73dcf5": "27133f", + "73e5f5": "552b64", + "72f0f6": "824388", + "9cd3fd": "aafe94", + "a6c5f7": "78f389", + "cfd1d3": "d5ab51", + "fbfbfb": "f7d76b" + }, + "2": { + "101010": "101010", + "0a1627": "0f0523", + "123954": "28071a", + "134884": "350b19", + "134d84": "b7904d", + "1766c6": "4a1111", + "416adf": "dec284", + "79848a": "4a1111", + "749cf6": "f8ecc5", + "73dcf5": "31238e", + "73e5f5": "3a4ebd", + "72f0f6": "6492f7", + "9cd3fd": "fefeef", + "a6c5f7": "fefed9", + "cfd1d3": "5f291c", + "fbfbfb": "844232" + } +} \ No newline at end of file diff --git a/public/images/pokemon/variant/exp/back/746.json b/public/images/pokemon/variant/exp/back/746.json new file mode 100644 index 00000000000..5b183b10e5d --- /dev/null +++ b/public/images/pokemon/variant/exp/back/746.json @@ -0,0 +1,40 @@ +{ + "1": { + "101010": "101010", + "1f2161": "16574d", + "5d666d": "75391b", + "616b72": "a67834", + "9c455b": "308c9d", + "374793": "2c9572", + "4764c9": "5ce09d", + "3e9cbb": "27133f", + "61c8de": "824388", + "8c9c9d": "935926", + "8d9c9d": "c69b3f", + "d88394": "65cfe2", + "b0c5c6": "d5ab51", + "ccd2ce": "b77736", + "d8d9da": "d8d9da", + "eeeeee": "f7d76b", + "fefefe": "fefefe" + }, + "2": { + "101010": "101010", + "1f2161": "b7904d", + "5d666d": "1e0726", + "616b72": "4a1111", + "9c455b": "b9682d", + "374793": "dec284", + "4764c9": "f8ecc5", + "3e9cbb": "4378eb", + "61c8de": "5787f1", + "8c9c9d": "350b19", + "8d9c9d": "531917", + "d88394": "e4d85f", + "b0c5c6": "5f291c", + "ccd2ce": "4a1111", + "d8d9da": "d8d9da", + "eeeeee": "844232", + "fefefe": "fefefe" + } +} \ No newline at end of file diff --git a/public/images/pokemon/variant/exp/back/780.json b/public/images/pokemon/variant/exp/back/780.json new file mode 100644 index 00000000000..f55158dcabb --- /dev/null +++ b/public/images/pokemon/variant/exp/back/780.json @@ -0,0 +1,28 @@ +{ + "1": { + "8d541b": "bd8955", + "297b8b": "1a316b", + "5aa4a4": "284c80", + "f5ae07": "faf0b1", + "606f55": "496375", + "726d5c": "a36026", + "105262": "0e194a", + "b8b7a3": "cf8d38", + "b4cda4": "9ab5b8", + "91a37c": "7798a1", + "eeeeee": "e6c15e" + }, + "2": { + "8d541b": "157d36", + "297b8b": "4e4f73", + "5aa4a4": "6a708a", + "f5ae07": "3ec435", + "606f55": "8f825d", + "726d5c": "162d3d", + "105262": "3f3c61", + "b8b7a3": "254e59", + "b4cda4": "d6dbba", + "91a37c": "b5b48b", + "eeeeee": "3e7a76" + } +} \ No newline at end of file diff --git a/public/images/pokemon/variant/exp/back/840.json b/public/images/pokemon/variant/exp/back/840.json new file mode 100644 index 00000000000..c60e9aaa3a7 --- /dev/null +++ b/public/images/pokemon/variant/exp/back/840.json @@ -0,0 +1,28 @@ +{ + "1": { + "e2244a": "4e77a2", + "5fab1d": "7a7c9e", + "d39a52": "c55885", + "e32b50": "70a2c5", + "fe455c": "abd7e2", + "fa6f8b": "c1f3f3", + "a4d84a": "9aa0b3", + "357912": "313846", + "d3ee77": "c0cbd6", + "8d4229": "9c2e72", + "a50534": "3e6085" + }, + "2": { + "e2244a": "bfb5ab", + "5fab1d": "7a7c9e", + "d39a52": "463731", + "e32b50": "807770", + "fe455c": "dcd9d1", + "fa6f8b": "eeedea", + "a4d84a": "9aa0b3", + "357912": "313846", + "d3ee77": "afc6d2", + "8d4229": "291411", + "a50534": "68645f" + } +} \ No newline at end of file diff --git a/public/images/pokemon/variant/exp/back/841.json b/public/images/pokemon/variant/exp/back/841.json new file mode 100644 index 00000000000..11e45f3fc34 --- /dev/null +++ b/public/images/pokemon/variant/exp/back/841.json @@ -0,0 +1,34 @@ +{ + "1": { + "df6655": "c1f3f3", + "56ab32": "a59ab3", + "9b2629": "70a2c5", + "d9695a": "c55885", + "ebe381": "854774", + "ccb468": "5d2654", + "8d764b": "110723", + "ccca71": "b3b1d6", + "612324": "3e6085", + "488235": "8e7a9e", + "c3a965": "e6dcf9", + "b5915b": "34123a", + "d72d31": "abd7e2", + "395a2e": "383146" + }, + "2": { + "df6655": "eeedea", + "56ab32": "e28c95", + "9b2629": "bfb5ab", + "d9695a": "463731", + "ebe381": "854774", + "ccb468": "5d2654", + "8d764b": "110723", + "ccca71": "e2dcd6", + "612324": "68645f", + "488235": "a8546e", + "c3a965": "cbb4af", + "b5915b": "34123a", + "d72d31": "dcd9d1", + "395a2e": "4f0e30" + } +} \ No newline at end of file diff --git a/public/images/pokemon/variant/exp/back/842.json b/public/images/pokemon/variant/exp/back/842.json new file mode 100644 index 00000000000..926d558357b --- /dev/null +++ b/public/images/pokemon/variant/exp/back/842.json @@ -0,0 +1,38 @@ +{ + "1": { + "ac6b20": "101010", + "1f4329": "313846", + "9f7034": "110723", + "cfb07a": "a3b9d0", + "fcff86": "397880", + "7de755": "d66f9a", + "244d1f": "852560", + "fed26e": "698db4", + "39a45f": "9aa0b3", + "ffa63b": "2d3d68", + "e78422": "1f1946", + "e75574": "abd7e2", + "af2348": "70a2c5", + "621522": "3e6085", + "ffc575": "2b526f", + "2c743e": "7a7c9e" + }, + "2": { + "ac6b20": "101010", + "1f4329": "341c1c", + "9f7034": "2e0e09", + "cfb07a": "cbb4af", + "fcff86": "eee0bc", + "7de755": "589df3", + "244d1f": "2e2246", + "fed26e": "b9937a", + "39a45f": "e28c95", + "ffa63b": "63473b", + "e78422": "4b211b", + "e75574": "dcd9d1", + "af2348": "bfb5ab", + "621522": "68645f", + "ffc575": "d1a87e", + "2c743e": "a8546e" + } +} \ No newline at end of file diff --git a/public/images/pokemon/variant/exp/back/871.json b/public/images/pokemon/variant/exp/back/871.json new file mode 100644 index 00000000000..5004d3013b5 --- /dev/null +++ b/public/images/pokemon/variant/exp/back/871.json @@ -0,0 +1,32 @@ +{ + "1": { + "101010": "101010", + "2e2732": "1b3334", + "281f2e": "2a2732", + "46384c": "504540", + "493d4e": "3a5d57", + "665272": "62857c", + "544947": "7d320e", + "7a7270": "a8501b", + "9e9a96": "cd7930", + "7b4e1c": "5b0d3f", + "d58815": "a02c58", + "fdba2f": "c45858", + "fdf22f": "f1e8e8" + }, + "2": { + "101010": "101010", + "2e2732": "8b4738", + "281f2e": "212232", + "46384c": "504740", + "493d4e": "ce8a66", + "665272": "eac69b", + "544947": "1a1730", + "7a7270": "27223b", + "9e9a96": "3a3449", + "7b4e1c": "222c58", + "d58815": "343f7f", + "fdba2f": "67729f", + "fdf22f": "8e9fc9" + } +} \ No newline at end of file diff --git a/public/images/pokemon/variant/exp/back/935_1.json b/public/images/pokemon/variant/exp/back/935_1.json deleted file mode 100644 index 8f78d4f4569..00000000000 --- a/public/images/pokemon/variant/exp/back/935_1.json +++ /dev/null @@ -1,356 +0,0 @@ -{ - "textures": [ - { - "image": "935_1.png", - "format": "RGBA8888", - "size": { - "w": 133, - "h": 133 - }, - "scale": 1, - "frames": [ - { - "filename": "0006.png", - "rotated": false, - "trimmed": true, - "sourceSize": { - "w": 32, - "h": 49 - }, - "spriteSourceSize": { - "x": 1, - "y": 0, - "w": 29, - "h": 49 - }, - "frame": { - "x": 0, - "y": 0, - "w": 29, - "h": 49 - } - }, - { - "filename": "0012.png", - "rotated": false, - "trimmed": true, - "sourceSize": { - "w": 32, - "h": 49 - }, - "spriteSourceSize": { - "x": 1, - "y": 0, - "w": 29, - "h": 49 - }, - "frame": { - "x": 0, - "y": 0, - "w": 29, - "h": 49 - } - }, - { - "filename": "0007.png", - "rotated": false, - "trimmed": true, - "sourceSize": { - "w": 32, - "h": 49 - }, - "spriteSourceSize": { - "x": 0, - "y": 0, - "w": 29, - "h": 49 - }, - "frame": { - "x": 29, - "y": 0, - "w": 29, - "h": 49 - } - }, - { - "filename": "0011.png", - "rotated": false, - "trimmed": true, - "sourceSize": { - "w": 32, - "h": 49 - }, - "spriteSourceSize": { - "x": 0, - "y": 0, - "w": 29, - "h": 49 - }, - "frame": { - "x": 29, - "y": 0, - "w": 29, - "h": 49 - } - }, - { - "filename": "0005.png", - "rotated": false, - "trimmed": true, - "sourceSize": { - "w": 32, - "h": 49 - }, - "spriteSourceSize": { - "x": 2, - "y": 0, - "w": 28, - "h": 49 - }, - "frame": { - "x": 58, - "y": 0, - "w": 28, - "h": 49 - } - }, - { - "filename": "0013.png", - "rotated": false, - "trimmed": true, - "sourceSize": { - "w": 32, - "h": 49 - }, - "spriteSourceSize": { - "x": 2, - "y": 0, - "w": 28, - "h": 49 - }, - "frame": { - "x": 58, - "y": 0, - "w": 28, - "h": 49 - } - }, - { - "filename": "0008.png", - "rotated": false, - "trimmed": true, - "sourceSize": { - "w": 32, - "h": 49 - }, - "spriteSourceSize": { - "x": 0, - "y": 0, - "w": 28, - "h": 49 - }, - "frame": { - "x": 86, - "y": 0, - "w": 28, - "h": 49 - } - }, - { - "filename": "0010.png", - "rotated": false, - "trimmed": true, - "sourceSize": { - "w": 32, - "h": 49 - }, - "spriteSourceSize": { - "x": 0, - "y": 0, - "w": 28, - "h": 49 - }, - "frame": { - "x": 86, - "y": 0, - "w": 28, - "h": 49 - } - }, - { - "filename": "0004.png", - "rotated": false, - "trimmed": true, - "sourceSize": { - "w": 32, - "h": 49 - }, - "spriteSourceSize": { - "x": 3, - "y": 1, - "w": 28, - "h": 48 - }, - "frame": { - "x": 0, - "y": 49, - "w": 28, - "h": 48 - } - }, - { - "filename": "0014.png", - "rotated": false, - "trimmed": true, - "sourceSize": { - "w": 32, - "h": 49 - }, - "spriteSourceSize": { - "x": 3, - "y": 1, - "w": 28, - "h": 48 - }, - "frame": { - "x": 0, - "y": 49, - "w": 28, - "h": 48 - } - }, - { - "filename": "0009.png", - "rotated": false, - "trimmed": true, - "sourceSize": { - "w": 32, - "h": 49 - }, - "spriteSourceSize": { - "x": 0, - "y": 1, - "w": 27, - "h": 48 - }, - "frame": { - "x": 28, - "y": 49, - "w": 27, - "h": 48 - } - }, - { - "filename": "0003.png", - "rotated": false, - "trimmed": true, - "sourceSize": { - "w": 32, - "h": 49 - }, - "spriteSourceSize": { - "x": 5, - "y": 2, - "w": 27, - "h": 47 - }, - "frame": { - "x": 55, - "y": 49, - "w": 27, - "h": 47 - } - }, - { - "filename": "0015.png", - "rotated": false, - "trimmed": true, - "sourceSize": { - "w": 32, - "h": 49 - }, - "spriteSourceSize": { - "x": 5, - "y": 2, - "w": 27, - "h": 47 - }, - "frame": { - "x": 55, - "y": 49, - "w": 27, - "h": 47 - } - }, - { - "filename": "0002.png", - "rotated": false, - "trimmed": true, - "sourceSize": { - "w": 32, - "h": 49 - }, - "spriteSourceSize": { - "x": 6, - "y": 3, - "w": 26, - "h": 46 - }, - "frame": { - "x": 82, - "y": 49, - "w": 26, - "h": 46 - } - }, - { - "filename": "0016.png", - "rotated": false, - "trimmed": true, - "sourceSize": { - "w": 32, - "h": 49 - }, - "spriteSourceSize": { - "x": 6, - "y": 3, - "w": 26, - "h": 46 - }, - "frame": { - "x": 82, - "y": 49, - "w": 26, - "h": 46 - } - }, - { - "filename": "0001.png", - "rotated": false, - "trimmed": true, - "sourceSize": { - "w": 32, - "h": 49 - }, - "spriteSourceSize": { - "x": 7, - "y": 4, - "w": 25, - "h": 45 - }, - "frame": { - "x": 108, - "y": 49, - "w": 25, - "h": 45 - } - } - ] - } - ], - "meta": { - "app": "https://www.codeandweb.com/texturepacker", - "version": "3.0", - "smartupdate": "$TexturePacker:SmartUpdate:2880dad5e3c550bb25e02ab0ab8d58c8:9dc0340440df25f20b3f006422b7a238:077dcf06dc5fc347497b59afe6126a5e$" - } -} \ No newline at end of file diff --git a/public/images/pokemon/variant/exp/back/935_1.png b/public/images/pokemon/variant/exp/back/935_1.png deleted file mode 100644 index 6f98dfa371e..00000000000 Binary files a/public/images/pokemon/variant/exp/back/935_1.png and /dev/null differ diff --git a/public/images/pokemon/variant/exp/back/935_2.json b/public/images/pokemon/variant/exp/back/935_2.json deleted file mode 100644 index 44fc56f8621..00000000000 --- a/public/images/pokemon/variant/exp/back/935_2.json +++ /dev/null @@ -1,356 +0,0 @@ -{ - "textures": [ - { - "image": "935_2.png", - "format": "RGBA8888", - "size": { - "w": 133, - "h": 133 - }, - "scale": 1, - "frames": [ - { - "filename": "0006.png", - "rotated": false, - "trimmed": true, - "sourceSize": { - "w": 32, - "h": 49 - }, - "spriteSourceSize": { - "x": 1, - "y": 0, - "w": 29, - "h": 49 - }, - "frame": { - "x": 0, - "y": 0, - "w": 29, - "h": 49 - } - }, - { - "filename": "0012.png", - "rotated": false, - "trimmed": true, - "sourceSize": { - "w": 32, - "h": 49 - }, - "spriteSourceSize": { - "x": 1, - "y": 0, - "w": 29, - "h": 49 - }, - "frame": { - "x": 0, - "y": 0, - "w": 29, - "h": 49 - } - }, - { - "filename": "0007.png", - "rotated": false, - "trimmed": true, - "sourceSize": { - "w": 32, - "h": 49 - }, - "spriteSourceSize": { - "x": 0, - "y": 0, - "w": 29, - "h": 49 - }, - "frame": { - "x": 29, - "y": 0, - "w": 29, - "h": 49 - } - }, - { - "filename": "0011.png", - "rotated": false, - "trimmed": true, - "sourceSize": { - "w": 32, - "h": 49 - }, - "spriteSourceSize": { - "x": 0, - "y": 0, - "w": 29, - "h": 49 - }, - "frame": { - "x": 29, - "y": 0, - "w": 29, - "h": 49 - } - }, - { - "filename": "0005.png", - "rotated": false, - "trimmed": true, - "sourceSize": { - "w": 32, - "h": 49 - }, - "spriteSourceSize": { - "x": 2, - "y": 0, - "w": 28, - "h": 49 - }, - "frame": { - "x": 58, - "y": 0, - "w": 28, - "h": 49 - } - }, - { - "filename": "0013.png", - "rotated": false, - "trimmed": true, - "sourceSize": { - "w": 32, - "h": 49 - }, - "spriteSourceSize": { - "x": 2, - "y": 0, - "w": 28, - "h": 49 - }, - "frame": { - "x": 58, - "y": 0, - "w": 28, - "h": 49 - } - }, - { - "filename": "0008.png", - "rotated": false, - "trimmed": true, - "sourceSize": { - "w": 32, - "h": 49 - }, - "spriteSourceSize": { - "x": 0, - "y": 0, - "w": 28, - "h": 49 - }, - "frame": { - "x": 86, - "y": 0, - "w": 28, - "h": 49 - } - }, - { - "filename": "0010.png", - "rotated": false, - "trimmed": true, - "sourceSize": { - "w": 32, - "h": 49 - }, - "spriteSourceSize": { - "x": 0, - "y": 0, - "w": 28, - "h": 49 - }, - "frame": { - "x": 86, - "y": 0, - "w": 28, - "h": 49 - } - }, - { - "filename": "0004.png", - "rotated": false, - "trimmed": true, - "sourceSize": { - "w": 32, - "h": 49 - }, - "spriteSourceSize": { - "x": 3, - "y": 1, - "w": 28, - "h": 48 - }, - "frame": { - "x": 0, - "y": 49, - "w": 28, - "h": 48 - } - }, - { - "filename": "0014.png", - "rotated": false, - "trimmed": true, - "sourceSize": { - "w": 32, - "h": 49 - }, - "spriteSourceSize": { - "x": 3, - "y": 1, - "w": 28, - "h": 48 - }, - "frame": { - "x": 0, - "y": 49, - "w": 28, - "h": 48 - } - }, - { - "filename": "0009.png", - "rotated": false, - "trimmed": true, - "sourceSize": { - "w": 32, - "h": 49 - }, - "spriteSourceSize": { - "x": 0, - "y": 1, - "w": 27, - "h": 48 - }, - "frame": { - "x": 28, - "y": 49, - "w": 27, - "h": 48 - } - }, - { - "filename": "0003.png", - "rotated": false, - "trimmed": true, - "sourceSize": { - "w": 32, - "h": 49 - }, - "spriteSourceSize": { - "x": 5, - "y": 2, - "w": 27, - "h": 47 - }, - "frame": { - "x": 55, - "y": 49, - "w": 27, - "h": 47 - } - }, - { - "filename": "0015.png", - "rotated": false, - "trimmed": true, - "sourceSize": { - "w": 32, - "h": 49 - }, - "spriteSourceSize": { - "x": 5, - "y": 2, - "w": 27, - "h": 47 - }, - "frame": { - "x": 55, - "y": 49, - "w": 27, - "h": 47 - } - }, - { - "filename": "0002.png", - "rotated": false, - "trimmed": true, - "sourceSize": { - "w": 32, - "h": 49 - }, - "spriteSourceSize": { - "x": 6, - "y": 3, - "w": 26, - "h": 46 - }, - "frame": { - "x": 82, - "y": 49, - "w": 26, - "h": 46 - } - }, - { - "filename": "0016.png", - "rotated": false, - "trimmed": true, - "sourceSize": { - "w": 32, - "h": 49 - }, - "spriteSourceSize": { - "x": 6, - "y": 3, - "w": 26, - "h": 46 - }, - "frame": { - "x": 82, - "y": 49, - "w": 26, - "h": 46 - } - }, - { - "filename": "0001.png", - "rotated": false, - "trimmed": true, - "sourceSize": { - "w": 32, - "h": 49 - }, - "spriteSourceSize": { - "x": 7, - "y": 4, - "w": 25, - "h": 45 - }, - "frame": { - "x": 108, - "y": 49, - "w": 25, - "h": 45 - } - } - ] - } - ], - "meta": { - "app": "https://www.codeandweb.com/texturepacker", - "version": "3.0", - "smartupdate": "$TexturePacker:SmartUpdate:2880dad5e3c550bb25e02ab0ab8d58c8:9dc0340440df25f20b3f006422b7a238:077dcf06dc5fc347497b59afe6126a5e$" - } -} \ No newline at end of file diff --git a/public/images/pokemon/variant/exp/back/935_2.png b/public/images/pokemon/variant/exp/back/935_2.png deleted file mode 100644 index 08789758184..00000000000 Binary files a/public/images/pokemon/variant/exp/back/935_2.png and /dev/null differ diff --git a/public/images/pokemon/variant/exp/back/935_3.json b/public/images/pokemon/variant/exp/back/935_3.json deleted file mode 100644 index b2d13ca9909..00000000000 --- a/public/images/pokemon/variant/exp/back/935_3.json +++ /dev/null @@ -1,356 +0,0 @@ -{ - "textures": [ - { - "image": "935_3.png", - "format": "RGBA8888", - "size": { - "w": 133, - "h": 133 - }, - "scale": 1, - "frames": [ - { - "filename": "0006.png", - "rotated": false, - "trimmed": true, - "sourceSize": { - "w": 32, - "h": 49 - }, - "spriteSourceSize": { - "x": 1, - "y": 0, - "w": 29, - "h": 49 - }, - "frame": { - "x": 0, - "y": 0, - "w": 29, - "h": 49 - } - }, - { - "filename": "0012.png", - "rotated": false, - "trimmed": true, - "sourceSize": { - "w": 32, - "h": 49 - }, - "spriteSourceSize": { - "x": 1, - "y": 0, - "w": 29, - "h": 49 - }, - "frame": { - "x": 0, - "y": 0, - "w": 29, - "h": 49 - } - }, - { - "filename": "0007.png", - "rotated": false, - "trimmed": true, - "sourceSize": { - "w": 32, - "h": 49 - }, - "spriteSourceSize": { - "x": 0, - "y": 0, - "w": 29, - "h": 49 - }, - "frame": { - "x": 29, - "y": 0, - "w": 29, - "h": 49 - } - }, - { - "filename": "0011.png", - "rotated": false, - "trimmed": true, - "sourceSize": { - "w": 32, - "h": 49 - }, - "spriteSourceSize": { - "x": 0, - "y": 0, - "w": 29, - "h": 49 - }, - "frame": { - "x": 29, - "y": 0, - "w": 29, - "h": 49 - } - }, - { - "filename": "0005.png", - "rotated": false, - "trimmed": true, - "sourceSize": { - "w": 32, - "h": 49 - }, - "spriteSourceSize": { - "x": 2, - "y": 0, - "w": 28, - "h": 49 - }, - "frame": { - "x": 58, - "y": 0, - "w": 28, - "h": 49 - } - }, - { - "filename": "0013.png", - "rotated": false, - "trimmed": true, - "sourceSize": { - "w": 32, - "h": 49 - }, - "spriteSourceSize": { - "x": 2, - "y": 0, - "w": 28, - "h": 49 - }, - "frame": { - "x": 58, - "y": 0, - "w": 28, - "h": 49 - } - }, - { - "filename": "0008.png", - "rotated": false, - "trimmed": true, - "sourceSize": { - "w": 32, - "h": 49 - }, - "spriteSourceSize": { - "x": 0, - "y": 0, - "w": 28, - "h": 49 - }, - "frame": { - "x": 86, - "y": 0, - "w": 28, - "h": 49 - } - }, - { - "filename": "0010.png", - "rotated": false, - "trimmed": true, - "sourceSize": { - "w": 32, - "h": 49 - }, - "spriteSourceSize": { - "x": 0, - "y": 0, - "w": 28, - "h": 49 - }, - "frame": { - "x": 86, - "y": 0, - "w": 28, - "h": 49 - } - }, - { - "filename": "0004.png", - "rotated": false, - "trimmed": true, - "sourceSize": { - "w": 32, - "h": 49 - }, - "spriteSourceSize": { - "x": 3, - "y": 1, - "w": 28, - "h": 48 - }, - "frame": { - "x": 0, - "y": 49, - "w": 28, - "h": 48 - } - }, - { - "filename": "0014.png", - "rotated": false, - "trimmed": true, - "sourceSize": { - "w": 32, - "h": 49 - }, - "spriteSourceSize": { - "x": 3, - "y": 1, - "w": 28, - "h": 48 - }, - "frame": { - "x": 0, - "y": 49, - "w": 28, - "h": 48 - } - }, - { - "filename": "0009.png", - "rotated": false, - "trimmed": true, - "sourceSize": { - "w": 32, - "h": 49 - }, - "spriteSourceSize": { - "x": 0, - "y": 1, - "w": 27, - "h": 48 - }, - "frame": { - "x": 28, - "y": 49, - "w": 27, - "h": 48 - } - }, - { - "filename": "0003.png", - "rotated": false, - "trimmed": true, - "sourceSize": { - "w": 32, - "h": 49 - }, - "spriteSourceSize": { - "x": 5, - "y": 2, - "w": 27, - "h": 47 - }, - "frame": { - "x": 55, - "y": 49, - "w": 27, - "h": 47 - } - }, - { - "filename": "0015.png", - "rotated": false, - "trimmed": true, - "sourceSize": { - "w": 32, - "h": 49 - }, - "spriteSourceSize": { - "x": 5, - "y": 2, - "w": 27, - "h": 47 - }, - "frame": { - "x": 55, - "y": 49, - "w": 27, - "h": 47 - } - }, - { - "filename": "0002.png", - "rotated": false, - "trimmed": true, - "sourceSize": { - "w": 32, - "h": 49 - }, - "spriteSourceSize": { - "x": 6, - "y": 3, - "w": 26, - "h": 46 - }, - "frame": { - "x": 82, - "y": 49, - "w": 26, - "h": 46 - } - }, - { - "filename": "0016.png", - "rotated": false, - "trimmed": true, - "sourceSize": { - "w": 32, - "h": 49 - }, - "spriteSourceSize": { - "x": 6, - "y": 3, - "w": 26, - "h": 46 - }, - "frame": { - "x": 82, - "y": 49, - "w": 26, - "h": 46 - } - }, - { - "filename": "0001.png", - "rotated": false, - "trimmed": true, - "sourceSize": { - "w": 32, - "h": 49 - }, - "spriteSourceSize": { - "x": 7, - "y": 4, - "w": 25, - "h": 45 - }, - "frame": { - "x": 108, - "y": 49, - "w": 25, - "h": 45 - } - } - ] - } - ], - "meta": { - "app": "https://www.codeandweb.com/texturepacker", - "version": "3.0", - "smartupdate": "$TexturePacker:SmartUpdate:2880dad5e3c550bb25e02ab0ab8d58c8:9dc0340440df25f20b3f006422b7a238:077dcf06dc5fc347497b59afe6126a5e$" - } -} \ No newline at end of file diff --git a/public/images/pokemon/variant/exp/back/935_3.png b/public/images/pokemon/variant/exp/back/935_3.png deleted file mode 100644 index e58a17ead33..00000000000 Binary files a/public/images/pokemon/variant/exp/back/935_3.png and /dev/null differ diff --git a/public/images/pokemon/variant/exp/back/936_1.json b/public/images/pokemon/variant/exp/back/936_1.json deleted file mode 100644 index ca0f37cffb2..00000000000 --- a/public/images/pokemon/variant/exp/back/936_1.json +++ /dev/null @@ -1,356 +0,0 @@ -{ - "textures": [ - { - "image": "936_1.png", - "format": "RGBA8888", - "size": { - "w": 283, - "h": 283 - }, - "scale": 1, - "frames": [ - { - "filename": "0004.png", - "rotated": false, - "trimmed": true, - "sourceSize": { - "w": 67, - "h": 97 - }, - "spriteSourceSize": { - "x": 5, - "y": 0, - "w": 59, - "h": 97 - }, - "frame": { - "x": 0, - "y": 0, - "w": 59, - "h": 97 - } - }, - { - "filename": "0014.png", - "rotated": false, - "trimmed": true, - "sourceSize": { - "w": 67, - "h": 97 - }, - "spriteSourceSize": { - "x": 5, - "y": 0, - "w": 59, - "h": 97 - }, - "frame": { - "x": 0, - "y": 0, - "w": 59, - "h": 97 - } - }, - { - "filename": "0005.png", - "rotated": false, - "trimmed": true, - "sourceSize": { - "w": 67, - "h": 97 - }, - "spriteSourceSize": { - "x": 3, - "y": 0, - "w": 59, - "h": 97 - }, - "frame": { - "x": 0, - "y": 97, - "w": 59, - "h": 97 - } - }, - { - "filename": "0013.png", - "rotated": false, - "trimmed": true, - "sourceSize": { - "w": 67, - "h": 97 - }, - "spriteSourceSize": { - "x": 3, - "y": 0, - "w": 59, - "h": 97 - }, - "frame": { - "x": 0, - "y": 97, - "w": 59, - "h": 97 - } - }, - { - "filename": "0006.png", - "rotated": false, - "trimmed": true, - "sourceSize": { - "w": 67, - "h": 97 - }, - "spriteSourceSize": { - "x": 2, - "y": 0, - "w": 59, - "h": 97 - }, - "frame": { - "x": 59, - "y": 0, - "w": 59, - "h": 97 - } - }, - { - "filename": "0012.png", - "rotated": false, - "trimmed": true, - "sourceSize": { - "w": 67, - "h": 97 - }, - "spriteSourceSize": { - "x": 2, - "y": 0, - "w": 59, - "h": 97 - }, - "frame": { - "x": 59, - "y": 0, - "w": 59, - "h": 97 - } - }, - { - "filename": "0002.png", - "rotated": false, - "trimmed": true, - "sourceSize": { - "w": 67, - "h": 97 - }, - "spriteSourceSize": { - "x": 8, - "y": 0, - "w": 58, - "h": 97 - }, - "frame": { - "x": 59, - "y": 97, - "w": 58, - "h": 97 - } - }, - { - "filename": "0016.png", - "rotated": false, - "trimmed": true, - "sourceSize": { - "w": 67, - "h": 97 - }, - "spriteSourceSize": { - "x": 8, - "y": 0, - "w": 58, - "h": 97 - }, - "frame": { - "x": 59, - "y": 97, - "w": 58, - "h": 97 - } - }, - { - "filename": "0007.png", - "rotated": false, - "trimmed": true, - "sourceSize": { - "w": 67, - "h": 97 - }, - "spriteSourceSize": { - "x": 2, - "y": 0, - "w": 58, - "h": 97 - }, - "frame": { - "x": 117, - "y": 97, - "w": 58, - "h": 97 - } - }, - { - "filename": "0011.png", - "rotated": false, - "trimmed": true, - "sourceSize": { - "w": 67, - "h": 97 - }, - "spriteSourceSize": { - "x": 2, - "y": 0, - "w": 58, - "h": 97 - }, - "frame": { - "x": 117, - "y": 97, - "w": 58, - "h": 97 - } - }, - { - "filename": "0003.png", - "rotated": false, - "trimmed": true, - "sourceSize": { - "w": 67, - "h": 97 - }, - "spriteSourceSize": { - "x": 7, - "y": 1, - "w": 57, - "h": 96 - }, - "frame": { - "x": 118, - "y": 0, - "w": 57, - "h": 96 - } - }, - { - "filename": "0015.png", - "rotated": false, - "trimmed": true, - "sourceSize": { - "w": 67, - "h": 97 - }, - "spriteSourceSize": { - "x": 7, - "y": 1, - "w": 57, - "h": 96 - }, - "frame": { - "x": 118, - "y": 0, - "w": 57, - "h": 96 - } - }, - { - "filename": "0008.png", - "rotated": false, - "trimmed": true, - "sourceSize": { - "w": 67, - "h": 97 - }, - "spriteSourceSize": { - "x": 1, - "y": 2, - "w": 58, - "h": 95 - }, - "frame": { - "x": 175, - "y": 0, - "w": 58, - "h": 95 - } - }, - { - "filename": "0010.png", - "rotated": false, - "trimmed": true, - "sourceSize": { - "w": 67, - "h": 97 - }, - "spriteSourceSize": { - "x": 1, - "y": 2, - "w": 58, - "h": 95 - }, - "frame": { - "x": 175, - "y": 0, - "w": 58, - "h": 95 - } - }, - { - "filename": "0009.png", - "rotated": false, - "trimmed": true, - "sourceSize": { - "w": 67, - "h": 97 - }, - "spriteSourceSize": { - "x": 0, - "y": 3, - "w": 58, - "h": 94 - }, - "frame": { - "x": 175, - "y": 95, - "w": 58, - "h": 94 - } - }, - { - "filename": "0001.png", - "rotated": false, - "trimmed": true, - "sourceSize": { - "w": 67, - "h": 97 - }, - "spriteSourceSize": { - "x": 10, - "y": 3, - "w": 57, - "h": 94 - }, - "frame": { - "x": 175, - "y": 189, - "w": 57, - "h": 94 - } - } - ] - } - ], - "meta": { - "app": "https://www.codeandweb.com/texturepacker", - "version": "3.0", - "smartupdate": "$TexturePacker:SmartUpdate:973448a7633a4dceb9828d95556ed3c2:09d8ad02433d8015e4665464587b1259:1a0490303f9626f92e787c567cd10feb$" - } -} \ No newline at end of file diff --git a/public/images/pokemon/variant/exp/back/936_1.png b/public/images/pokemon/variant/exp/back/936_1.png deleted file mode 100644 index 154c4e86364..00000000000 Binary files a/public/images/pokemon/variant/exp/back/936_1.png and /dev/null differ diff --git a/public/images/pokemon/variant/exp/back/936_2.json b/public/images/pokemon/variant/exp/back/936_2.json deleted file mode 100644 index 282d9823ab7..00000000000 --- a/public/images/pokemon/variant/exp/back/936_2.json +++ /dev/null @@ -1,356 +0,0 @@ -{ - "textures": [ - { - "image": "936_2.png", - "format": "RGBA8888", - "size": { - "w": 283, - "h": 283 - }, - "scale": 1, - "frames": [ - { - "filename": "0004.png", - "rotated": false, - "trimmed": true, - "sourceSize": { - "w": 67, - "h": 97 - }, - "spriteSourceSize": { - "x": 5, - "y": 0, - "w": 59, - "h": 97 - }, - "frame": { - "x": 0, - "y": 0, - "w": 59, - "h": 97 - } - }, - { - "filename": "0014.png", - "rotated": false, - "trimmed": true, - "sourceSize": { - "w": 67, - "h": 97 - }, - "spriteSourceSize": { - "x": 5, - "y": 0, - "w": 59, - "h": 97 - }, - "frame": { - "x": 0, - "y": 0, - "w": 59, - "h": 97 - } - }, - { - "filename": "0005.png", - "rotated": false, - "trimmed": true, - "sourceSize": { - "w": 67, - "h": 97 - }, - "spriteSourceSize": { - "x": 3, - "y": 0, - "w": 59, - "h": 97 - }, - "frame": { - "x": 0, - "y": 97, - "w": 59, - "h": 97 - } - }, - { - "filename": "0013.png", - "rotated": false, - "trimmed": true, - "sourceSize": { - "w": 67, - "h": 97 - }, - "spriteSourceSize": { - "x": 3, - "y": 0, - "w": 59, - "h": 97 - }, - "frame": { - "x": 0, - "y": 97, - "w": 59, - "h": 97 - } - }, - { - "filename": "0006.png", - "rotated": false, - "trimmed": true, - "sourceSize": { - "w": 67, - "h": 97 - }, - "spriteSourceSize": { - "x": 2, - "y": 0, - "w": 59, - "h": 97 - }, - "frame": { - "x": 59, - "y": 0, - "w": 59, - "h": 97 - } - }, - { - "filename": "0012.png", - "rotated": false, - "trimmed": true, - "sourceSize": { - "w": 67, - "h": 97 - }, - "spriteSourceSize": { - "x": 2, - "y": 0, - "w": 59, - "h": 97 - }, - "frame": { - "x": 59, - "y": 0, - "w": 59, - "h": 97 - } - }, - { - "filename": "0002.png", - "rotated": false, - "trimmed": true, - "sourceSize": { - "w": 67, - "h": 97 - }, - "spriteSourceSize": { - "x": 8, - "y": 0, - "w": 58, - "h": 97 - }, - "frame": { - "x": 59, - "y": 97, - "w": 58, - "h": 97 - } - }, - { - "filename": "0016.png", - "rotated": false, - "trimmed": true, - "sourceSize": { - "w": 67, - "h": 97 - }, - "spriteSourceSize": { - "x": 8, - "y": 0, - "w": 58, - "h": 97 - }, - "frame": { - "x": 59, - "y": 97, - "w": 58, - "h": 97 - } - }, - { - "filename": "0007.png", - "rotated": false, - "trimmed": true, - "sourceSize": { - "w": 67, - "h": 97 - }, - "spriteSourceSize": { - "x": 2, - "y": 0, - "w": 58, - "h": 97 - }, - "frame": { - "x": 117, - "y": 97, - "w": 58, - "h": 97 - } - }, - { - "filename": "0011.png", - "rotated": false, - "trimmed": true, - "sourceSize": { - "w": 67, - "h": 97 - }, - "spriteSourceSize": { - "x": 2, - "y": 0, - "w": 58, - "h": 97 - }, - "frame": { - "x": 117, - "y": 97, - "w": 58, - "h": 97 - } - }, - { - "filename": "0003.png", - "rotated": false, - "trimmed": true, - "sourceSize": { - "w": 67, - "h": 97 - }, - "spriteSourceSize": { - "x": 7, - "y": 1, - "w": 57, - "h": 96 - }, - "frame": { - "x": 118, - "y": 0, - "w": 57, - "h": 96 - } - }, - { - "filename": "0015.png", - "rotated": false, - "trimmed": true, - "sourceSize": { - "w": 67, - "h": 97 - }, - "spriteSourceSize": { - "x": 7, - "y": 1, - "w": 57, - "h": 96 - }, - "frame": { - "x": 118, - "y": 0, - "w": 57, - "h": 96 - } - }, - { - "filename": "0008.png", - "rotated": false, - "trimmed": true, - "sourceSize": { - "w": 67, - "h": 97 - }, - "spriteSourceSize": { - "x": 1, - "y": 2, - "w": 58, - "h": 95 - }, - "frame": { - "x": 175, - "y": 0, - "w": 58, - "h": 95 - } - }, - { - "filename": "0010.png", - "rotated": false, - "trimmed": true, - "sourceSize": { - "w": 67, - "h": 97 - }, - "spriteSourceSize": { - "x": 1, - "y": 2, - "w": 58, - "h": 95 - }, - "frame": { - "x": 175, - "y": 0, - "w": 58, - "h": 95 - } - }, - { - "filename": "0009.png", - "rotated": false, - "trimmed": true, - "sourceSize": { - "w": 67, - "h": 97 - }, - "spriteSourceSize": { - "x": 0, - "y": 3, - "w": 58, - "h": 94 - }, - "frame": { - "x": 175, - "y": 95, - "w": 58, - "h": 94 - } - }, - { - "filename": "0001.png", - "rotated": false, - "trimmed": true, - "sourceSize": { - "w": 67, - "h": 97 - }, - "spriteSourceSize": { - "x": 10, - "y": 3, - "w": 57, - "h": 94 - }, - "frame": { - "x": 175, - "y": 189, - "w": 57, - "h": 94 - } - } - ] - } - ], - "meta": { - "app": "https://www.codeandweb.com/texturepacker", - "version": "3.0", - "smartupdate": "$TexturePacker:SmartUpdate:973448a7633a4dceb9828d95556ed3c2:09d8ad02433d8015e4665464587b1259:1a0490303f9626f92e787c567cd10feb$" - } -} \ No newline at end of file diff --git a/public/images/pokemon/variant/exp/back/936_2.png b/public/images/pokemon/variant/exp/back/936_2.png deleted file mode 100644 index 442abc72971..00000000000 Binary files a/public/images/pokemon/variant/exp/back/936_2.png and /dev/null differ diff --git a/public/images/pokemon/variant/exp/back/936_3.json b/public/images/pokemon/variant/exp/back/936_3.json deleted file mode 100644 index 24eeb8e705e..00000000000 --- a/public/images/pokemon/variant/exp/back/936_3.json +++ /dev/null @@ -1,356 +0,0 @@ -{ - "textures": [ - { - "image": "936_3.png", - "format": "RGBA8888", - "size": { - "w": 283, - "h": 283 - }, - "scale": 1, - "frames": [ - { - "filename": "0004.png", - "rotated": false, - "trimmed": true, - "sourceSize": { - "w": 67, - "h": 97 - }, - "spriteSourceSize": { - "x": 5, - "y": 0, - "w": 59, - "h": 97 - }, - "frame": { - "x": 0, - "y": 0, - "w": 59, - "h": 97 - } - }, - { - "filename": "0014.png", - "rotated": false, - "trimmed": true, - "sourceSize": { - "w": 67, - "h": 97 - }, - "spriteSourceSize": { - "x": 5, - "y": 0, - "w": 59, - "h": 97 - }, - "frame": { - "x": 0, - "y": 0, - "w": 59, - "h": 97 - } - }, - { - "filename": "0005.png", - "rotated": false, - "trimmed": true, - "sourceSize": { - "w": 67, - "h": 97 - }, - "spriteSourceSize": { - "x": 3, - "y": 0, - "w": 59, - "h": 97 - }, - "frame": { - "x": 0, - "y": 97, - "w": 59, - "h": 97 - } - }, - { - "filename": "0013.png", - "rotated": false, - "trimmed": true, - "sourceSize": { - "w": 67, - "h": 97 - }, - "spriteSourceSize": { - "x": 3, - "y": 0, - "w": 59, - "h": 97 - }, - "frame": { - "x": 0, - "y": 97, - "w": 59, - "h": 97 - } - }, - { - "filename": "0006.png", - "rotated": false, - "trimmed": true, - "sourceSize": { - "w": 67, - "h": 97 - }, - "spriteSourceSize": { - "x": 2, - "y": 0, - "w": 59, - "h": 97 - }, - "frame": { - "x": 59, - "y": 0, - "w": 59, - "h": 97 - } - }, - { - "filename": "0012.png", - "rotated": false, - "trimmed": true, - "sourceSize": { - "w": 67, - "h": 97 - }, - "spriteSourceSize": { - "x": 2, - "y": 0, - "w": 59, - "h": 97 - }, - "frame": { - "x": 59, - "y": 0, - "w": 59, - "h": 97 - } - }, - { - "filename": "0002.png", - "rotated": false, - "trimmed": true, - "sourceSize": { - "w": 67, - "h": 97 - }, - "spriteSourceSize": { - "x": 8, - "y": 0, - "w": 58, - "h": 97 - }, - "frame": { - "x": 59, - "y": 97, - "w": 58, - "h": 97 - } - }, - { - "filename": "0016.png", - "rotated": false, - "trimmed": true, - "sourceSize": { - "w": 67, - "h": 97 - }, - "spriteSourceSize": { - "x": 8, - "y": 0, - "w": 58, - "h": 97 - }, - "frame": { - "x": 59, - "y": 97, - "w": 58, - "h": 97 - } - }, - { - "filename": "0007.png", - "rotated": false, - "trimmed": true, - "sourceSize": { - "w": 67, - "h": 97 - }, - "spriteSourceSize": { - "x": 2, - "y": 0, - "w": 58, - "h": 97 - }, - "frame": { - "x": 117, - "y": 97, - "w": 58, - "h": 97 - } - }, - { - "filename": "0011.png", - "rotated": false, - "trimmed": true, - "sourceSize": { - "w": 67, - "h": 97 - }, - "spriteSourceSize": { - "x": 2, - "y": 0, - "w": 58, - "h": 97 - }, - "frame": { - "x": 117, - "y": 97, - "w": 58, - "h": 97 - } - }, - { - "filename": "0003.png", - "rotated": false, - "trimmed": true, - "sourceSize": { - "w": 67, - "h": 97 - }, - "spriteSourceSize": { - "x": 7, - "y": 1, - "w": 57, - "h": 96 - }, - "frame": { - "x": 118, - "y": 0, - "w": 57, - "h": 96 - } - }, - { - "filename": "0015.png", - "rotated": false, - "trimmed": true, - "sourceSize": { - "w": 67, - "h": 97 - }, - "spriteSourceSize": { - "x": 7, - "y": 1, - "w": 57, - "h": 96 - }, - "frame": { - "x": 118, - "y": 0, - "w": 57, - "h": 96 - } - }, - { - "filename": "0008.png", - "rotated": false, - "trimmed": true, - "sourceSize": { - "w": 67, - "h": 97 - }, - "spriteSourceSize": { - "x": 1, - "y": 2, - "w": 58, - "h": 95 - }, - "frame": { - "x": 175, - "y": 0, - "w": 58, - "h": 95 - } - }, - { - "filename": "0010.png", - "rotated": false, - "trimmed": true, - "sourceSize": { - "w": 67, - "h": 97 - }, - "spriteSourceSize": { - "x": 1, - "y": 2, - "w": 58, - "h": 95 - }, - "frame": { - "x": 175, - "y": 0, - "w": 58, - "h": 95 - } - }, - { - "filename": "0009.png", - "rotated": false, - "trimmed": true, - "sourceSize": { - "w": 67, - "h": 97 - }, - "spriteSourceSize": { - "x": 0, - "y": 3, - "w": 58, - "h": 94 - }, - "frame": { - "x": 175, - "y": 95, - "w": 58, - "h": 94 - } - }, - { - "filename": "0001.png", - "rotated": false, - "trimmed": true, - "sourceSize": { - "w": 67, - "h": 97 - }, - "spriteSourceSize": { - "x": 10, - "y": 3, - "w": 57, - "h": 94 - }, - "frame": { - "x": 175, - "y": 189, - "w": 57, - "h": 94 - } - } - ] - } - ], - "meta": { - "app": "https://www.codeandweb.com/texturepacker", - "version": "3.0", - "smartupdate": "$TexturePacker:SmartUpdate:973448a7633a4dceb9828d95556ed3c2:09d8ad02433d8015e4665464587b1259:1a0490303f9626f92e787c567cd10feb$" - } -} \ No newline at end of file diff --git a/public/images/pokemon/variant/exp/back/936_3.png b/public/images/pokemon/variant/exp/back/936_3.png deleted file mode 100644 index db67191d73e..00000000000 Binary files a/public/images/pokemon/variant/exp/back/936_3.png and /dev/null differ diff --git a/public/images/pokemon/variant/exp/back/937_1.json b/public/images/pokemon/variant/exp/back/937_1.json deleted file mode 100644 index f7f0201b676..00000000000 --- a/public/images/pokemon/variant/exp/back/937_1.json +++ /dev/null @@ -1,650 +0,0 @@ -{ - "textures": [ - { - "image": "937_1.png", - "format": "RGBA8888", - "size": { - "w": 382, - "h": 382 - }, - "scale": 1, - "frames": [ - { - "filename": "0013.png", - "rotated": false, - "trimmed": true, - "sourceSize": { - "w": 95, - "h": 97 - }, - "spriteSourceSize": { - "x": 0, - "y": 0, - "w": 91, - "h": 96 - }, - "frame": { - "x": 0, - "y": 0, - "w": 91, - "h": 96 - } - }, - { - "filename": "0028.png", - "rotated": false, - "trimmed": true, - "sourceSize": { - "w": 95, - "h": 97 - }, - "spriteSourceSize": { - "x": 0, - "y": 0, - "w": 91, - "h": 96 - }, - "frame": { - "x": 91, - "y": 0, - "w": 91, - "h": 96 - } - }, - { - "filename": "0012.png", - "rotated": false, - "trimmed": true, - "sourceSize": { - "w": 95, - "h": 97 - }, - "spriteSourceSize": { - "x": 2, - "y": 0, - "w": 90, - "h": 96 - }, - "frame": { - "x": 182, - "y": 0, - "w": 90, - "h": 96 - } - }, - { - "filename": "0027.png", - "rotated": false, - "trimmed": true, - "sourceSize": { - "w": 95, - "h": 97 - }, - "spriteSourceSize": { - "x": 2, - "y": 0, - "w": 90, - "h": 96 - }, - "frame": { - "x": 182, - "y": 0, - "w": 90, - "h": 96 - } - }, - { - "filename": "0006.png", - "rotated": false, - "trimmed": true, - "sourceSize": { - "w": 95, - "h": 97 - }, - "spriteSourceSize": { - "x": 2, - "y": 0, - "w": 89, - "h": 96 - }, - "frame": { - "x": 272, - "y": 0, - "w": 89, - "h": 96 - } - }, - { - "filename": "0021.png", - "rotated": false, - "trimmed": true, - "sourceSize": { - "w": 95, - "h": 97 - }, - "spriteSourceSize": { - "x": 2, - "y": 0, - "w": 89, - "h": 96 - }, - "frame": { - "x": 272, - "y": 0, - "w": 89, - "h": 96 - } - }, - { - "filename": "0007.png", - "rotated": false, - "trimmed": true, - "sourceSize": { - "w": 95, - "h": 97 - }, - "spriteSourceSize": { - "x": 4, - "y": 1, - "w": 91, - "h": 95 - }, - "frame": { - "x": 0, - "y": 96, - "w": 91, - "h": 95 - } - }, - { - "filename": "0022.png", - "rotated": false, - "trimmed": true, - "sourceSize": { - "w": 95, - "h": 97 - }, - "spriteSourceSize": { - "x": 4, - "y": 1, - "w": 91, - "h": 95 - }, - "frame": { - "x": 0, - "y": 96, - "w": 91, - "h": 95 - } - }, - { - "filename": "0011.png", - "rotated": false, - "trimmed": true, - "sourceSize": { - "w": 95, - "h": 97 - }, - "spriteSourceSize": { - "x": 4, - "y": 1, - "w": 89, - "h": 95 - }, - "frame": { - "x": 91, - "y": 96, - "w": 89, - "h": 95 - } - }, - { - "filename": "0026.png", - "rotated": false, - "trimmed": true, - "sourceSize": { - "w": 95, - "h": 97 - }, - "spriteSourceSize": { - "x": 4, - "y": 1, - "w": 89, - "h": 95 - }, - "frame": { - "x": 91, - "y": 96, - "w": 89, - "h": 95 - } - }, - { - "filename": "0004.png", - "rotated": false, - "trimmed": true, - "sourceSize": { - "w": 95, - "h": 97 - }, - "spriteSourceSize": { - "x": 0, - "y": 0, - "w": 88, - "h": 96 - }, - "frame": { - "x": 180, - "y": 96, - "w": 88, - "h": 96 - } - }, - { - "filename": "0019.png", - "rotated": false, - "trimmed": true, - "sourceSize": { - "w": 95, - "h": 97 - }, - "spriteSourceSize": { - "x": 0, - "y": 0, - "w": 88, - "h": 96 - }, - "frame": { - "x": 180, - "y": 96, - "w": 88, - "h": 96 - } - }, - { - "filename": "0005.png", - "rotated": false, - "trimmed": true, - "sourceSize": { - "w": 95, - "h": 97 - }, - "spriteSourceSize": { - "x": 0, - "y": 0, - "w": 88, - "h": 96 - }, - "frame": { - "x": 0, - "y": 191, - "w": 88, - "h": 96 - } - }, - { - "filename": "0020.png", - "rotated": false, - "trimmed": true, - "sourceSize": { - "w": 95, - "h": 97 - }, - "spriteSourceSize": { - "x": 0, - "y": 0, - "w": 88, - "h": 96 - }, - "frame": { - "x": 0, - "y": 191, - "w": 88, - "h": 96 - } - }, - { - "filename": "0008.png", - "rotated": false, - "trimmed": true, - "sourceSize": { - "w": 95, - "h": 97 - }, - "spriteSourceSize": { - "x": 7, - "y": 0, - "w": 88, - "h": 96 - }, - "frame": { - "x": 88, - "y": 191, - "w": 88, - "h": 96 - } - }, - { - "filename": "0023.png", - "rotated": false, - "trimmed": true, - "sourceSize": { - "w": 95, - "h": 97 - }, - "spriteSourceSize": { - "x": 7, - "y": 0, - "w": 88, - "h": 96 - }, - "frame": { - "x": 88, - "y": 191, - "w": 88, - "h": 96 - } - }, - { - "filename": "0010.png", - "rotated": false, - "trimmed": true, - "sourceSize": { - "w": 95, - "h": 97 - }, - "spriteSourceSize": { - "x": 7, - "y": 0, - "w": 87, - "h": 96 - }, - "frame": { - "x": 176, - "y": 192, - "w": 87, - "h": 96 - } - }, - { - "filename": "0025.png", - "rotated": false, - "trimmed": true, - "sourceSize": { - "w": 95, - "h": 97 - }, - "spriteSourceSize": { - "x": 7, - "y": 0, - "w": 87, - "h": 96 - }, - "frame": { - "x": 176, - "y": 192, - "w": 87, - "h": 96 - } - }, - { - "filename": "0014.png", - "rotated": false, - "trimmed": true, - "sourceSize": { - "w": 95, - "h": 97 - }, - "spriteSourceSize": { - "x": 3, - "y": 1, - "w": 85, - "h": 95 - }, - "frame": { - "x": 0, - "y": 287, - "w": 85, - "h": 95 - } - }, - { - "filename": "0029.png", - "rotated": false, - "trimmed": true, - "sourceSize": { - "w": 95, - "h": 97 - }, - "spriteSourceSize": { - "x": 3, - "y": 1, - "w": 85, - "h": 95 - }, - "frame": { - "x": 0, - "y": 287, - "w": 85, - "h": 95 - } - }, - { - "filename": "0002.png", - "rotated": false, - "trimmed": true, - "sourceSize": { - "w": 95, - "h": 97 - }, - "spriteSourceSize": { - "x": 1, - "y": 3, - "w": 85, - "h": 94 - }, - "frame": { - "x": 85, - "y": 287, - "w": 85, - "h": 94 - } - }, - { - "filename": "0017.png", - "rotated": false, - "trimmed": true, - "sourceSize": { - "w": 95, - "h": 97 - }, - "spriteSourceSize": { - "x": 1, - "y": 3, - "w": 85, - "h": 94 - }, - "frame": { - "x": 85, - "y": 287, - "w": 85, - "h": 94 - } - }, - { - "filename": "0003.png", - "rotated": false, - "trimmed": true, - "sourceSize": { - "w": 95, - "h": 97 - }, - "spriteSourceSize": { - "x": 2, - "y": 1, - "w": 82, - "h": 96 - }, - "frame": { - "x": 263, - "y": 192, - "w": 82, - "h": 96 - } - }, - { - "filename": "0018.png", - "rotated": false, - "trimmed": true, - "sourceSize": { - "w": 95, - "h": 97 - }, - "spriteSourceSize": { - "x": 2, - "y": 1, - "w": 82, - "h": 96 - }, - "frame": { - "x": 263, - "y": 192, - "w": 82, - "h": 96 - } - }, - { - "filename": "0009.png", - "rotated": false, - "trimmed": true, - "sourceSize": { - "w": 95, - "h": 97 - }, - "spriteSourceSize": { - "x": 8, - "y": 3, - "w": 85, - "h": 93 - }, - "frame": { - "x": 268, - "y": 96, - "w": 85, - "h": 93 - } - }, - { - "filename": "0024.png", - "rotated": false, - "trimmed": true, - "sourceSize": { - "w": 95, - "h": 97 - }, - "spriteSourceSize": { - "x": 8, - "y": 3, - "w": 85, - "h": 93 - }, - "frame": { - "x": 268, - "y": 96, - "w": 85, - "h": 93 - } - }, - { - "filename": "0001.png", - "rotated": false, - "trimmed": true, - "sourceSize": { - "w": 95, - "h": 97 - }, - "spriteSourceSize": { - "x": 3, - "y": 3, - "w": 81, - "h": 94 - }, - "frame": { - "x": 170, - "y": 288, - "w": 81, - "h": 94 - } - }, - { - "filename": "0016.png", - "rotated": false, - "trimmed": true, - "sourceSize": { - "w": 95, - "h": 97 - }, - "spriteSourceSize": { - "x": 3, - "y": 3, - "w": 81, - "h": 94 - }, - "frame": { - "x": 170, - "y": 288, - "w": 81, - "h": 94 - } - }, - { - "filename": "0015.png", - "rotated": false, - "trimmed": true, - "sourceSize": { - "w": 95, - "h": 97 - }, - "spriteSourceSize": { - "x": 2, - "y": 3, - "w": 80, - "h": 94 - }, - "frame": { - "x": 251, - "y": 288, - "w": 80, - "h": 94 - } - }, - { - "filename": "0030.png", - "rotated": false, - "trimmed": true, - "sourceSize": { - "w": 95, - "h": 97 - }, - "spriteSourceSize": { - "x": 2, - "y": 3, - "w": 80, - "h": 94 - }, - "frame": { - "x": 251, - "y": 288, - "w": 80, - "h": 94 - } - } - ] - } - ], - "meta": { - "app": "https://www.codeandweb.com/texturepacker", - "version": "3.0", - "smartupdate": "$TexturePacker:SmartUpdate:25759b98c1f7867fe6c4ff54c797c3e2:0076c777d18a4f3d780937118dfb6388:1d4b4f8d62307c37457ba974879b47d0$" - } -} \ No newline at end of file diff --git a/public/images/pokemon/variant/exp/back/937_1.png b/public/images/pokemon/variant/exp/back/937_1.png deleted file mode 100644 index 2d0d58b0912..00000000000 Binary files a/public/images/pokemon/variant/exp/back/937_1.png and /dev/null differ diff --git a/public/images/pokemon/variant/exp/back/937_2.json b/public/images/pokemon/variant/exp/back/937_2.json deleted file mode 100644 index cda51714b93..00000000000 --- a/public/images/pokemon/variant/exp/back/937_2.json +++ /dev/null @@ -1,650 +0,0 @@ -{ - "textures": [ - { - "image": "937_2.png", - "format": "RGBA8888", - "size": { - "w": 382, - "h": 382 - }, - "scale": 1, - "frames": [ - { - "filename": "0013.png", - "rotated": false, - "trimmed": true, - "sourceSize": { - "w": 95, - "h": 97 - }, - "spriteSourceSize": { - "x": 0, - "y": 0, - "w": 91, - "h": 96 - }, - "frame": { - "x": 0, - "y": 0, - "w": 91, - "h": 96 - } - }, - { - "filename": "0028.png", - "rotated": false, - "trimmed": true, - "sourceSize": { - "w": 95, - "h": 97 - }, - "spriteSourceSize": { - "x": 0, - "y": 0, - "w": 91, - "h": 96 - }, - "frame": { - "x": 91, - "y": 0, - "w": 91, - "h": 96 - } - }, - { - "filename": "0012.png", - "rotated": false, - "trimmed": true, - "sourceSize": { - "w": 95, - "h": 97 - }, - "spriteSourceSize": { - "x": 2, - "y": 0, - "w": 90, - "h": 96 - }, - "frame": { - "x": 182, - "y": 0, - "w": 90, - "h": 96 - } - }, - { - "filename": "0027.png", - "rotated": false, - "trimmed": true, - "sourceSize": { - "w": 95, - "h": 97 - }, - "spriteSourceSize": { - "x": 2, - "y": 0, - "w": 90, - "h": 96 - }, - "frame": { - "x": 182, - "y": 0, - "w": 90, - "h": 96 - } - }, - { - "filename": "0006.png", - "rotated": false, - "trimmed": true, - "sourceSize": { - "w": 95, - "h": 97 - }, - "spriteSourceSize": { - "x": 2, - "y": 0, - "w": 89, - "h": 96 - }, - "frame": { - "x": 272, - "y": 0, - "w": 89, - "h": 96 - } - }, - { - "filename": "0021.png", - "rotated": false, - "trimmed": true, - "sourceSize": { - "w": 95, - "h": 97 - }, - "spriteSourceSize": { - "x": 2, - "y": 0, - "w": 89, - "h": 96 - }, - "frame": { - "x": 272, - "y": 0, - "w": 89, - "h": 96 - } - }, - { - "filename": "0007.png", - "rotated": false, - "trimmed": true, - "sourceSize": { - "w": 95, - "h": 97 - }, - "spriteSourceSize": { - "x": 4, - "y": 1, - "w": 91, - "h": 95 - }, - "frame": { - "x": 0, - "y": 96, - "w": 91, - "h": 95 - } - }, - { - "filename": "0022.png", - "rotated": false, - "trimmed": true, - "sourceSize": { - "w": 95, - "h": 97 - }, - "spriteSourceSize": { - "x": 4, - "y": 1, - "w": 91, - "h": 95 - }, - "frame": { - "x": 0, - "y": 96, - "w": 91, - "h": 95 - } - }, - { - "filename": "0011.png", - "rotated": false, - "trimmed": true, - "sourceSize": { - "w": 95, - "h": 97 - }, - "spriteSourceSize": { - "x": 4, - "y": 1, - "w": 89, - "h": 95 - }, - "frame": { - "x": 91, - "y": 96, - "w": 89, - "h": 95 - } - }, - { - "filename": "0026.png", - "rotated": false, - "trimmed": true, - "sourceSize": { - "w": 95, - "h": 97 - }, - "spriteSourceSize": { - "x": 4, - "y": 1, - "w": 89, - "h": 95 - }, - "frame": { - "x": 91, - "y": 96, - "w": 89, - "h": 95 - } - }, - { - "filename": "0004.png", - "rotated": false, - "trimmed": true, - "sourceSize": { - "w": 95, - "h": 97 - }, - "spriteSourceSize": { - "x": 0, - "y": 0, - "w": 88, - "h": 96 - }, - "frame": { - "x": 180, - "y": 96, - "w": 88, - "h": 96 - } - }, - { - "filename": "0019.png", - "rotated": false, - "trimmed": true, - "sourceSize": { - "w": 95, - "h": 97 - }, - "spriteSourceSize": { - "x": 0, - "y": 0, - "w": 88, - "h": 96 - }, - "frame": { - "x": 180, - "y": 96, - "w": 88, - "h": 96 - } - }, - { - "filename": "0005.png", - "rotated": false, - "trimmed": true, - "sourceSize": { - "w": 95, - "h": 97 - }, - "spriteSourceSize": { - "x": 0, - "y": 0, - "w": 88, - "h": 96 - }, - "frame": { - "x": 0, - "y": 191, - "w": 88, - "h": 96 - } - }, - { - "filename": "0020.png", - "rotated": false, - "trimmed": true, - "sourceSize": { - "w": 95, - "h": 97 - }, - "spriteSourceSize": { - "x": 0, - "y": 0, - "w": 88, - "h": 96 - }, - "frame": { - "x": 0, - "y": 191, - "w": 88, - "h": 96 - } - }, - { - "filename": "0008.png", - "rotated": false, - "trimmed": true, - "sourceSize": { - "w": 95, - "h": 97 - }, - "spriteSourceSize": { - "x": 7, - "y": 0, - "w": 88, - "h": 96 - }, - "frame": { - "x": 88, - "y": 191, - "w": 88, - "h": 96 - } - }, - { - "filename": "0023.png", - "rotated": false, - "trimmed": true, - "sourceSize": { - "w": 95, - "h": 97 - }, - "spriteSourceSize": { - "x": 7, - "y": 0, - "w": 88, - "h": 96 - }, - "frame": { - "x": 88, - "y": 191, - "w": 88, - "h": 96 - } - }, - { - "filename": "0010.png", - "rotated": false, - "trimmed": true, - "sourceSize": { - "w": 95, - "h": 97 - }, - "spriteSourceSize": { - "x": 7, - "y": 0, - "w": 87, - "h": 96 - }, - "frame": { - "x": 176, - "y": 192, - "w": 87, - "h": 96 - } - }, - { - "filename": "0025.png", - "rotated": false, - "trimmed": true, - "sourceSize": { - "w": 95, - "h": 97 - }, - "spriteSourceSize": { - "x": 7, - "y": 0, - "w": 87, - "h": 96 - }, - "frame": { - "x": 176, - "y": 192, - "w": 87, - "h": 96 - } - }, - { - "filename": "0014.png", - "rotated": false, - "trimmed": true, - "sourceSize": { - "w": 95, - "h": 97 - }, - "spriteSourceSize": { - "x": 3, - "y": 1, - "w": 85, - "h": 95 - }, - "frame": { - "x": 0, - "y": 287, - "w": 85, - "h": 95 - } - }, - { - "filename": "0029.png", - "rotated": false, - "trimmed": true, - "sourceSize": { - "w": 95, - "h": 97 - }, - "spriteSourceSize": { - "x": 3, - "y": 1, - "w": 85, - "h": 95 - }, - "frame": { - "x": 0, - "y": 287, - "w": 85, - "h": 95 - } - }, - { - "filename": "0002.png", - "rotated": false, - "trimmed": true, - "sourceSize": { - "w": 95, - "h": 97 - }, - "spriteSourceSize": { - "x": 1, - "y": 3, - "w": 85, - "h": 94 - }, - "frame": { - "x": 85, - "y": 287, - "w": 85, - "h": 94 - } - }, - { - "filename": "0017.png", - "rotated": false, - "trimmed": true, - "sourceSize": { - "w": 95, - "h": 97 - }, - "spriteSourceSize": { - "x": 1, - "y": 3, - "w": 85, - "h": 94 - }, - "frame": { - "x": 85, - "y": 287, - "w": 85, - "h": 94 - } - }, - { - "filename": "0003.png", - "rotated": false, - "trimmed": true, - "sourceSize": { - "w": 95, - "h": 97 - }, - "spriteSourceSize": { - "x": 2, - "y": 1, - "w": 82, - "h": 96 - }, - "frame": { - "x": 263, - "y": 192, - "w": 82, - "h": 96 - } - }, - { - "filename": "0018.png", - "rotated": false, - "trimmed": true, - "sourceSize": { - "w": 95, - "h": 97 - }, - "spriteSourceSize": { - "x": 2, - "y": 1, - "w": 82, - "h": 96 - }, - "frame": { - "x": 263, - "y": 192, - "w": 82, - "h": 96 - } - }, - { - "filename": "0009.png", - "rotated": false, - "trimmed": true, - "sourceSize": { - "w": 95, - "h": 97 - }, - "spriteSourceSize": { - "x": 8, - "y": 3, - "w": 85, - "h": 93 - }, - "frame": { - "x": 268, - "y": 96, - "w": 85, - "h": 93 - } - }, - { - "filename": "0024.png", - "rotated": false, - "trimmed": true, - "sourceSize": { - "w": 95, - "h": 97 - }, - "spriteSourceSize": { - "x": 8, - "y": 3, - "w": 85, - "h": 93 - }, - "frame": { - "x": 268, - "y": 96, - "w": 85, - "h": 93 - } - }, - { - "filename": "0001.png", - "rotated": false, - "trimmed": true, - "sourceSize": { - "w": 95, - "h": 97 - }, - "spriteSourceSize": { - "x": 3, - "y": 3, - "w": 81, - "h": 94 - }, - "frame": { - "x": 170, - "y": 288, - "w": 81, - "h": 94 - } - }, - { - "filename": "0016.png", - "rotated": false, - "trimmed": true, - "sourceSize": { - "w": 95, - "h": 97 - }, - "spriteSourceSize": { - "x": 3, - "y": 3, - "w": 81, - "h": 94 - }, - "frame": { - "x": 170, - "y": 288, - "w": 81, - "h": 94 - } - }, - { - "filename": "0015.png", - "rotated": false, - "trimmed": true, - "sourceSize": { - "w": 95, - "h": 97 - }, - "spriteSourceSize": { - "x": 2, - "y": 3, - "w": 80, - "h": 94 - }, - "frame": { - "x": 251, - "y": 288, - "w": 80, - "h": 94 - } - }, - { - "filename": "0030.png", - "rotated": false, - "trimmed": true, - "sourceSize": { - "w": 95, - "h": 97 - }, - "spriteSourceSize": { - "x": 2, - "y": 3, - "w": 80, - "h": 94 - }, - "frame": { - "x": 251, - "y": 288, - "w": 80, - "h": 94 - } - } - ] - } - ], - "meta": { - "app": "https://www.codeandweb.com/texturepacker", - "version": "3.0", - "smartupdate": "$TexturePacker:SmartUpdate:25759b98c1f7867fe6c4ff54c797c3e2:0076c777d18a4f3d780937118dfb6388:1d4b4f8d62307c37457ba974879b47d0$" - } -} \ No newline at end of file diff --git a/public/images/pokemon/variant/exp/back/937_2.png b/public/images/pokemon/variant/exp/back/937_2.png deleted file mode 100644 index 7ba1aa09b97..00000000000 Binary files a/public/images/pokemon/variant/exp/back/937_2.png and /dev/null differ diff --git a/public/images/pokemon/variant/exp/back/937_3.json b/public/images/pokemon/variant/exp/back/937_3.json deleted file mode 100644 index c5fff6bd743..00000000000 --- a/public/images/pokemon/variant/exp/back/937_3.json +++ /dev/null @@ -1,650 +0,0 @@ -{ - "textures": [ - { - "image": "937_3.png", - "format": "RGBA8888", - "size": { - "w": 382, - "h": 382 - }, - "scale": 1, - "frames": [ - { - "filename": "0013.png", - "rotated": false, - "trimmed": true, - "sourceSize": { - "w": 95, - "h": 97 - }, - "spriteSourceSize": { - "x": 0, - "y": 0, - "w": 91, - "h": 96 - }, - "frame": { - "x": 0, - "y": 0, - "w": 91, - "h": 96 - } - }, - { - "filename": "0028.png", - "rotated": false, - "trimmed": true, - "sourceSize": { - "w": 95, - "h": 97 - }, - "spriteSourceSize": { - "x": 0, - "y": 0, - "w": 91, - "h": 96 - }, - "frame": { - "x": 91, - "y": 0, - "w": 91, - "h": 96 - } - }, - { - "filename": "0012.png", - "rotated": false, - "trimmed": true, - "sourceSize": { - "w": 95, - "h": 97 - }, - "spriteSourceSize": { - "x": 2, - "y": 0, - "w": 90, - "h": 96 - }, - "frame": { - "x": 182, - "y": 0, - "w": 90, - "h": 96 - } - }, - { - "filename": "0027.png", - "rotated": false, - "trimmed": true, - "sourceSize": { - "w": 95, - "h": 97 - }, - "spriteSourceSize": { - "x": 2, - "y": 0, - "w": 90, - "h": 96 - }, - "frame": { - "x": 182, - "y": 0, - "w": 90, - "h": 96 - } - }, - { - "filename": "0006.png", - "rotated": false, - "trimmed": true, - "sourceSize": { - "w": 95, - "h": 97 - }, - "spriteSourceSize": { - "x": 2, - "y": 0, - "w": 89, - "h": 96 - }, - "frame": { - "x": 272, - "y": 0, - "w": 89, - "h": 96 - } - }, - { - "filename": "0021.png", - "rotated": false, - "trimmed": true, - "sourceSize": { - "w": 95, - "h": 97 - }, - "spriteSourceSize": { - "x": 2, - "y": 0, - "w": 89, - "h": 96 - }, - "frame": { - "x": 272, - "y": 0, - "w": 89, - "h": 96 - } - }, - { - "filename": "0007.png", - "rotated": false, - "trimmed": true, - "sourceSize": { - "w": 95, - "h": 97 - }, - "spriteSourceSize": { - "x": 4, - "y": 1, - "w": 91, - "h": 95 - }, - "frame": { - "x": 0, - "y": 96, - "w": 91, - "h": 95 - } - }, - { - "filename": "0022.png", - "rotated": false, - "trimmed": true, - "sourceSize": { - "w": 95, - "h": 97 - }, - "spriteSourceSize": { - "x": 4, - "y": 1, - "w": 91, - "h": 95 - }, - "frame": { - "x": 0, - "y": 96, - "w": 91, - "h": 95 - } - }, - { - "filename": "0011.png", - "rotated": false, - "trimmed": true, - "sourceSize": { - "w": 95, - "h": 97 - }, - "spriteSourceSize": { - "x": 4, - "y": 1, - "w": 89, - "h": 95 - }, - "frame": { - "x": 91, - "y": 96, - "w": 89, - "h": 95 - } - }, - { - "filename": "0026.png", - "rotated": false, - "trimmed": true, - "sourceSize": { - "w": 95, - "h": 97 - }, - "spriteSourceSize": { - "x": 4, - "y": 1, - "w": 89, - "h": 95 - }, - "frame": { - "x": 91, - "y": 96, - "w": 89, - "h": 95 - } - }, - { - "filename": "0004.png", - "rotated": false, - "trimmed": true, - "sourceSize": { - "w": 95, - "h": 97 - }, - "spriteSourceSize": { - "x": 0, - "y": 0, - "w": 88, - "h": 96 - }, - "frame": { - "x": 180, - "y": 96, - "w": 88, - "h": 96 - } - }, - { - "filename": "0019.png", - "rotated": false, - "trimmed": true, - "sourceSize": { - "w": 95, - "h": 97 - }, - "spriteSourceSize": { - "x": 0, - "y": 0, - "w": 88, - "h": 96 - }, - "frame": { - "x": 180, - "y": 96, - "w": 88, - "h": 96 - } - }, - { - "filename": "0005.png", - "rotated": false, - "trimmed": true, - "sourceSize": { - "w": 95, - "h": 97 - }, - "spriteSourceSize": { - "x": 0, - "y": 0, - "w": 88, - "h": 96 - }, - "frame": { - "x": 0, - "y": 191, - "w": 88, - "h": 96 - } - }, - { - "filename": "0020.png", - "rotated": false, - "trimmed": true, - "sourceSize": { - "w": 95, - "h": 97 - }, - "spriteSourceSize": { - "x": 0, - "y": 0, - "w": 88, - "h": 96 - }, - "frame": { - "x": 0, - "y": 191, - "w": 88, - "h": 96 - } - }, - { - "filename": "0008.png", - "rotated": false, - "trimmed": true, - "sourceSize": { - "w": 95, - "h": 97 - }, - "spriteSourceSize": { - "x": 7, - "y": 0, - "w": 88, - "h": 96 - }, - "frame": { - "x": 88, - "y": 191, - "w": 88, - "h": 96 - } - }, - { - "filename": "0023.png", - "rotated": false, - "trimmed": true, - "sourceSize": { - "w": 95, - "h": 97 - }, - "spriteSourceSize": { - "x": 7, - "y": 0, - "w": 88, - "h": 96 - }, - "frame": { - "x": 88, - "y": 191, - "w": 88, - "h": 96 - } - }, - { - "filename": "0010.png", - "rotated": false, - "trimmed": true, - "sourceSize": { - "w": 95, - "h": 97 - }, - "spriteSourceSize": { - "x": 7, - "y": 0, - "w": 87, - "h": 96 - }, - "frame": { - "x": 176, - "y": 192, - "w": 87, - "h": 96 - } - }, - { - "filename": "0025.png", - "rotated": false, - "trimmed": true, - "sourceSize": { - "w": 95, - "h": 97 - }, - "spriteSourceSize": { - "x": 7, - "y": 0, - "w": 87, - "h": 96 - }, - "frame": { - "x": 176, - "y": 192, - "w": 87, - "h": 96 - } - }, - { - "filename": "0014.png", - "rotated": false, - "trimmed": true, - "sourceSize": { - "w": 95, - "h": 97 - }, - "spriteSourceSize": { - "x": 3, - "y": 1, - "w": 85, - "h": 95 - }, - "frame": { - "x": 0, - "y": 287, - "w": 85, - "h": 95 - } - }, - { - "filename": "0029.png", - "rotated": false, - "trimmed": true, - "sourceSize": { - "w": 95, - "h": 97 - }, - "spriteSourceSize": { - "x": 3, - "y": 1, - "w": 85, - "h": 95 - }, - "frame": { - "x": 0, - "y": 287, - "w": 85, - "h": 95 - } - }, - { - "filename": "0002.png", - "rotated": false, - "trimmed": true, - "sourceSize": { - "w": 95, - "h": 97 - }, - "spriteSourceSize": { - "x": 1, - "y": 3, - "w": 85, - "h": 94 - }, - "frame": { - "x": 85, - "y": 287, - "w": 85, - "h": 94 - } - }, - { - "filename": "0017.png", - "rotated": false, - "trimmed": true, - "sourceSize": { - "w": 95, - "h": 97 - }, - "spriteSourceSize": { - "x": 1, - "y": 3, - "w": 85, - "h": 94 - }, - "frame": { - "x": 85, - "y": 287, - "w": 85, - "h": 94 - } - }, - { - "filename": "0003.png", - "rotated": false, - "trimmed": true, - "sourceSize": { - "w": 95, - "h": 97 - }, - "spriteSourceSize": { - "x": 2, - "y": 1, - "w": 82, - "h": 96 - }, - "frame": { - "x": 263, - "y": 192, - "w": 82, - "h": 96 - } - }, - { - "filename": "0018.png", - "rotated": false, - "trimmed": true, - "sourceSize": { - "w": 95, - "h": 97 - }, - "spriteSourceSize": { - "x": 2, - "y": 1, - "w": 82, - "h": 96 - }, - "frame": { - "x": 263, - "y": 192, - "w": 82, - "h": 96 - } - }, - { - "filename": "0009.png", - "rotated": false, - "trimmed": true, - "sourceSize": { - "w": 95, - "h": 97 - }, - "spriteSourceSize": { - "x": 8, - "y": 3, - "w": 85, - "h": 93 - }, - "frame": { - "x": 268, - "y": 96, - "w": 85, - "h": 93 - } - }, - { - "filename": "0024.png", - "rotated": false, - "trimmed": true, - "sourceSize": { - "w": 95, - "h": 97 - }, - "spriteSourceSize": { - "x": 8, - "y": 3, - "w": 85, - "h": 93 - }, - "frame": { - "x": 268, - "y": 96, - "w": 85, - "h": 93 - } - }, - { - "filename": "0001.png", - "rotated": false, - "trimmed": true, - "sourceSize": { - "w": 95, - "h": 97 - }, - "spriteSourceSize": { - "x": 3, - "y": 3, - "w": 81, - "h": 94 - }, - "frame": { - "x": 170, - "y": 288, - "w": 81, - "h": 94 - } - }, - { - "filename": "0016.png", - "rotated": false, - "trimmed": true, - "sourceSize": { - "w": 95, - "h": 97 - }, - "spriteSourceSize": { - "x": 3, - "y": 3, - "w": 81, - "h": 94 - }, - "frame": { - "x": 170, - "y": 288, - "w": 81, - "h": 94 - } - }, - { - "filename": "0015.png", - "rotated": false, - "trimmed": true, - "sourceSize": { - "w": 95, - "h": 97 - }, - "spriteSourceSize": { - "x": 2, - "y": 3, - "w": 80, - "h": 94 - }, - "frame": { - "x": 251, - "y": 288, - "w": 80, - "h": 94 - } - }, - { - "filename": "0030.png", - "rotated": false, - "trimmed": true, - "sourceSize": { - "w": 95, - "h": 97 - }, - "spriteSourceSize": { - "x": 2, - "y": 3, - "w": 80, - "h": 94 - }, - "frame": { - "x": 251, - "y": 288, - "w": 80, - "h": 94 - } - } - ] - } - ], - "meta": { - "app": "https://www.codeandweb.com/texturepacker", - "version": "3.0", - "smartupdate": "$TexturePacker:SmartUpdate:25759b98c1f7867fe6c4ff54c797c3e2:0076c777d18a4f3d780937118dfb6388:1d4b4f8d62307c37457ba974879b47d0$" - } -} \ No newline at end of file diff --git a/public/images/pokemon/variant/exp/back/937_3.png b/public/images/pokemon/variant/exp/back/937_3.png deleted file mode 100644 index ee875356334..00000000000 Binary files a/public/images/pokemon/variant/exp/back/937_3.png and /dev/null differ diff --git a/public/images/pokemon/variant/female/207.json b/public/images/pokemon/variant/female/207.json index b0ae8e84102..b1e3582ae5c 100644 --- a/public/images/pokemon/variant/female/207.json +++ b/public/images/pokemon/variant/female/207.json @@ -1,32 +1,26 @@ { "1": { - "63314a": "7f4812", - "e6a5ce": "f8dd84", - "101010": "101010", - "ad6394": "b67322", - "de84b5": "daa93f", - "4a5a73": "4a5a73", - "ffffff": "ffffff", - "adbdc5": "adbdc5", - "bd6b5a": "bd6b5a", + "de84b5": "e3784d", + "e6a5ce": "f7a565", + "63314a": "2b8199", "4a73bd": "3b426f", - "ffa584": "ffa584", "294a7b": "1f2142", - "6b9cef": "596596" + "ad6394": "ba4732", + "612f48": "802019", + "6b9cef": "596596", + "ffa584": "68edca", + "bd6b5a": "44c5c9" }, "2": { - "63314a": "5f1723", - "e6a5ce": "ef6b58", - "101010": "101010", - "ad6394": "97343c", - "de84b5": "c04144", - "4a5a73": "4a5a73", - "ffffff": "ffffff", - "adbdc5": "adbdc5", - "bd6b5a": "c86539", - "4a73bd": "42bca0", + "de84b5": "42bca0", + "e6a5ce": "70e0b7", + "63314a": "752d17", + "4a73bd": "de597e", + "294a7b": "8a2b54", + "ad6394": "27868a", + "612f48": "134e5e", + "6b9cef": "f78f96", "ffa584": "f0a452", - "294a7b": "33817e", - "6b9cef": "81e4b3" + "bd6b5a": "c86539" } } \ No newline at end of file diff --git a/public/images/pokemon/variant/female/332.json b/public/images/pokemon/variant/female/332.json new file mode 100644 index 00000000000..c86429d13c4 --- /dev/null +++ b/public/images/pokemon/variant/female/332.json @@ -0,0 +1,34 @@ +{ + "1": { + "319452": "780d4a", + "4a7310": "982443", + "7ba563": "b44040", + "bdef84": "ec8c8c", + "8cbd63": "bf3d64", + "215200": "710f2e", + "a5d674": "e16363", + "196b21": "7d1157", + "f7ce00": "5bcfc3", + "525252": "20668c", + "63b56b": "9e2056", + "a5d673": "de5b6f", + "8c6b3a": "33a3b0", + "4aa552": "8a1652" + }, + "2": { + "319452": "b59c72", + "4a7310": "4f3956", + "7ba563": "805a9c", + "bdef84": "c193cf", + "8cbd63": "f6f7df", + "215200": "694d37", + "a5d674": "a473ba", + "196b21": "9c805f", + "f7ce00": "f2aab6", + "525252": "983364", + "63b56b": "e3ddb8", + "a5d673": "ebe9ca", + "8c6b3a": "df879f", + "4aa552": "c9b991" + } +} \ No newline at end of file diff --git a/public/images/pokemon/variant/female/396.json b/public/images/pokemon/variant/female/396.json new file mode 100644 index 00000000000..f811a4e002d --- /dev/null +++ b/public/images/pokemon/variant/female/396.json @@ -0,0 +1,38 @@ +{ + "1": { + "d6dede": "e3d09d", + "736363": "89ad57", + "3f1e27": "965318", + "d67300": "edb651", + "b5b5b5": "d1a562", + "9c4a21": "db963b", + "ff9429": "ffcf5e", + "3a2129": "2a4f19", + "524a4a": "558033", + "4f4747": "dbb070", + "fcfcfc": "f0ebc5", + "ff0000": "5da848", + "4a4343": "731e22", + "ad9c9c": "ed7b61", + "756565": "144a40", + "8c7373": "b53f36" + }, + "2": { + "d6dede": "f0deaa", + "736363": "4da8a1", + "3f1e27": "451915", + "d67300": "63362b", + "b5b5b5": "debd8c", + "9c4a21": "52281f", + "ff9429": "8c604c", + "3a2129": "235a6b", + "524a4a": "307b82", + "4f4747": "e3c896", + "fcfcfc": "fcfad2", + "ff0000": "c4568a", + "4a4343": "0d142e", + "ad9c9c": "2f436b", + "756565": "e0703d", + "8c7373": "1b2745" + } +} \ No newline at end of file diff --git a/public/images/pokemon/variant/female/397.json b/public/images/pokemon/variant/female/397.json new file mode 100644 index 00000000000..8f266f191c6 --- /dev/null +++ b/public/images/pokemon/variant/female/397.json @@ -0,0 +1,38 @@ +{ + "1": { + "ff9429": "ffcf5e", + "3a3a3a": "558033", + "7b4221": "965318", + "523a4a": "731e22", + "9c848c": "ed7b61", + "5a525a": "739e49", + "735a63": "b53f36", + "f75242": "8bba65", + "b5b5b5": "d9c798", + "bd6300": "db963b", + "9c4242": "528a3e", + "3b303d": "144a40", + "4d464d": "256e54", + "2e222e": "3c5e24", + "3b333b": "753510", + "fcfcfc": "f0ebc5" + }, + "2": { + "ff9429": "8c604c", + "3a3a3a": "307b82", + "7b4221": "52281f", + "523a4a": "0d142e", + "9c848c": "2f436b", + "5a525a": "4da8a1", + "735a63": "1b2745", + "f75242": "f797ad", + "b5b5b5": "f0deaa", + "bd6300": "63362b", + "9c4242": "c4568a", + "3b303d": "e0703d", + "4d464d": "e68e57", + "2e222e": "235a6b", + "3b333b": "421917", + "fcfcfc": "fcfad2" + } +} \ No newline at end of file diff --git a/public/images/pokemon/variant/female/398.json b/public/images/pokemon/variant/female/398.json new file mode 100644 index 00000000000..d4e72672103 --- /dev/null +++ b/public/images/pokemon/variant/female/398.json @@ -0,0 +1,36 @@ +{ + "1": { + "735a63": "b53f36", + "5c545c": "144a40", + "5a525a": "558033", + "7b6b7b": "89ad57", + "f75242": "156146", + "4f3847": "753510", + "b5b5b5": "d7be89", + "9c4242": "0c403b", + "7b4221": "965318", + "fcfcfc": "e8e3b6", + "3a3a3a": "2a4f19", + "bd6300": "db963b", + "523a4a": "731e22", + "9c848c": "ed7b61", + "ff9429": "ffcf5e" + }, + "2": { + "735a63": "1b2745", + "5c545c": "e0703d", + "5a525a": "307b82", + "7b6b7b": "4da8a1", + "f75242": "f78a4a", + "4f3847": "421917", + "b5b5b5": "f0deaa", + "9c4242": "c94a2a", + "7b4221": "52281f", + "fcfcfc": "fcfad2", + "3a3a3a": "235a6b", + "bd6300": "63362b", + "523a4a": "080d1f", + "9c848c": "293854", + "ff9429": "8c604c" + } +} \ No newline at end of file diff --git a/public/images/pokemon/variant/female/403.json b/public/images/pokemon/variant/female/403.json new file mode 100644 index 00000000000..4f8bd43540c --- /dev/null +++ b/public/images/pokemon/variant/female/403.json @@ -0,0 +1,26 @@ +{ + "1": { + "b59c5a": "3763b8", + "7badf7": "bf403a", + "943a52": "33190a", + "637bb5": "962a2f", + "4a4a63": "dcb788", + "ffe65a": "4881cc", + "313142": "bd8254", + "e64a52": "3e2711", + "42426b": "63121d", + "736352": "234085" + }, + "2": { + "b59c5a": "36b88a", + "7badf7": "324663", + "943a52": "3a5e80", + "637bb5": "222f4d", + "4a4a63": "bbe5e5", + "ffe65a": "46d382", + "313142": "73bec9", + "e64a52": "4a7c92", + "42426b": "161b36", + "736352": "298e7d" + } +} \ No newline at end of file diff --git a/public/images/pokemon/variant/female/404.json b/public/images/pokemon/variant/female/404.json new file mode 100644 index 00000000000..1c96dd11832 --- /dev/null +++ b/public/images/pokemon/variant/female/404.json @@ -0,0 +1,28 @@ +{ + "1": { + "736352": "234085", + "4a4a73": "63121d", + "63637b": "f1dbb1", + "b59c5a": "3763b8", + "637bb5": "962a2f", + "4a4a63": "dcb788", + "ffe65a": "4881cc", + "313142": "bd8254", + "943a52": "5a2d0f", + "e64a52": "3e2711", + "7badf7": "bf403a" + }, + "2": { + "736352": "298e7d", + "4a4a73": "161b36", + "63637b": "def4f0", + "b59c5a": "36b88a", + "637bb5": "222f4d", + "4a4a63": "bbe5e5", + "ffe65a": "46d382", + "313142": "73bec9", + "943a52": "3a5e80", + "e64a52": "4a7c92", + "7badf7": "324663" + } +} \ No newline at end of file diff --git a/public/images/pokemon/variant/female/405.json b/public/images/pokemon/variant/female/405.json new file mode 100644 index 00000000000..c873cceb259 --- /dev/null +++ b/public/images/pokemon/variant/female/405.json @@ -0,0 +1,28 @@ +{ + "1": { + "b59c5a": "3763b8", + "7badf7": "bf403a", + "63637b": "f1dbb1", + "637bb5": "962a2f", + "943a52": "5a2d0f", + "4a4a63": "dcb488", + "ffe65a": "4881cc", + "313142": "bd7e54", + "4a4a73": "63121d", + "e64a52": "3e2711", + "736352": "234085" + }, + "2": { + "b59c5a": "36b88a", + "7badf7": "324663", + "63637b": "def4f0", + "637bb5": "222f4d", + "943a52": "3a5e80", + "4a4a63": "bbe5e5", + "ffe65a": "46d382", + "313142": "73bec9", + "4a4a73": "161b36", + "e64a52": "4a7c92", + "736352": "298e7d" + } +} \ No newline at end of file diff --git a/public/images/pokemon/variant/female/417.json b/public/images/pokemon/variant/female/417.json new file mode 100644 index 00000000000..42b3180ee3c --- /dev/null +++ b/public/images/pokemon/variant/female/417.json @@ -0,0 +1,36 @@ +{ + "1": { + "101010": "101010", + "3e364e": "734430", + "524941": "732e12", + "5a524a": "642f1a", + "4a425a": "5f2618", + "84523a": "9b314f", + "ef845a": "e26e6e", + "c5a563": "e95d6c", + "ffd663": "f17c7c", + "637b9c": "86452b", + "7bb5e6": "a25f37", + "cec5c5": "e8be64", + "f7f7f7": "faeda9", + "ffffff": "ffffff", + "7b7b84": "8e623c" + }, + "2": { + "101010": "101010", + "3e364e": "203243", + "524941": "2d284c", + "5a524a": "0f203a", + "4a425a": "23704c", + "84523a": "693939", + "ef845a": "e1b8ac", + "c5a563": "8fecf7", + "ffd663": "d0fdff", + "637b9c": "a2dc76", + "7bb5e6": "e4fba1", + "cec5c5": "357577", + "f7f7f7": "5ba297", + "ffffff": "ffffff", + "7b7b84": "1f3f4e" + } +} \ No newline at end of file diff --git a/public/images/pokemon_icons_1v.json b/public/images/pokemon_icons_1v.json index de66db65eb7..f5023b98a4b 100644 --- a/public/images/pokemon_icons_1v.json +++ b/public/images/pokemon_icons_1v.json @@ -13,2287 +13,6287 @@ "filename": "1_2", "rotated": false, "trimmed": false, - "sourceSize": {"w": 40, "h": 30}, - "spriteSourceSize": {"x": 0, "y": 0, "w": 40, "h": 30}, - "frame": {"x": 0, "y": 0, "w": 40, "h": 30} + "sourceSize": { + "w": 40, + "h": 30 + }, + "spriteSourceSize": { + "x": 0, + "y": 0, + "w": 40, + "h": 30 + }, + "frame": { + "x": 0, + "y": 0, + "w": 40, + "h": 30 + } }, { "filename": "1_3", "rotated": false, "trimmed": false, - "sourceSize": {"w": 40, "h": 30}, - "spriteSourceSize": {"x": 0, "y": 0, "w": 40, "h": 30}, - "frame": {"x": 40, "y": 0, "w": 40, "h": 30} + "sourceSize": { + "w": 40, + "h": 30 + }, + "spriteSourceSize": { + "x": 0, + "y": 0, + "w": 40, + "h": 30 + }, + "frame": { + "x": 40, + "y": 0, + "w": 40, + "h": 30 + } }, { "filename": "2_2", "rotated": false, "trimmed": false, - "sourceSize": {"w": 40, "h": 30}, - "spriteSourceSize": {"x": 0, "y": 0, "w": 40, "h": 30}, - "frame": {"x": 80, "y": 0, "w": 40, "h": 30} + "sourceSize": { + "w": 40, + "h": 30 + }, + "spriteSourceSize": { + "x": 0, + "y": 0, + "w": 40, + "h": 30 + }, + "frame": { + "x": 80, + "y": 0, + "w": 40, + "h": 30 + } }, { "filename": "2_3", "rotated": false, "trimmed": false, - "sourceSize": {"w": 40, "h": 30}, - "spriteSourceSize": {"x": 0, "y": 0, "w": 40, "h": 30}, - "frame": {"x": 120, "y": 0, "w": 40, "h": 30} + "sourceSize": { + "w": 40, + "h": 30 + }, + "spriteSourceSize": { + "x": 0, + "y": 0, + "w": 40, + "h": 30 + }, + "frame": { + "x": 120, + "y": 0, + "w": 40, + "h": 30 + } }, { "filename": "3-gigantamax_2", "rotated": false, "trimmed": false, - "sourceSize": {"w": 40, "h": 30}, - "spriteSourceSize": {"x": 0, "y": 0, "w": 40, "h": 30}, - "frame": {"x": 160, "y": 0, "w": 40, "h": 30} + "sourceSize": { + "w": 40, + "h": 30 + }, + "spriteSourceSize": { + "x": 0, + "y": 0, + "w": 40, + "h": 30 + }, + "frame": { + "x": 160, + "y": 0, + "w": 40, + "h": 30 + } }, { "filename": "3-gigantamax_3", "rotated": false, "trimmed": false, - "sourceSize": {"w": 40, "h": 30}, - "spriteSourceSize": {"x": 0, "y": 0, "w": 40, "h": 30}, - "frame": {"x": 200, "y": 0, "w": 40, "h": 30} + "sourceSize": { + "w": 40, + "h": 30 + }, + "spriteSourceSize": { + "x": 0, + "y": 0, + "w": 40, + "h": 30 + }, + "frame": { + "x": 200, + "y": 0, + "w": 40, + "h": 30 + } }, { "filename": "3-mega_2", "rotated": false, "trimmed": false, - "sourceSize": {"w": 40, "h": 30}, - "spriteSourceSize": {"x": 0, "y": 0, "w": 40, "h": 30}, - "frame": {"x": 240, "y": 0, "w": 40, "h": 30} + "sourceSize": { + "w": 40, + "h": 30 + }, + "spriteSourceSize": { + "x": 0, + "y": 0, + "w": 40, + "h": 30 + }, + "frame": { + "x": 240, + "y": 0, + "w": 40, + "h": 30 + } }, { "filename": "3-mega_3", "rotated": false, "trimmed": false, - "sourceSize": {"w": 40, "h": 30}, - "spriteSourceSize": {"x": 0, "y": 0, "w": 40, "h": 30}, - "frame": {"x": 280, "y": 0, "w": 40, "h": 30} + "sourceSize": { + "w": 40, + "h": 30 + }, + "spriteSourceSize": { + "x": 0, + "y": 0, + "w": 40, + "h": 30 + }, + "frame": { + "x": 280, + "y": 0, + "w": 40, + "h": 30 + } }, { "filename": "3_2", "rotated": false, "trimmed": false, - "sourceSize": {"w": 40, "h": 30}, - "spriteSourceSize": {"x": 0, "y": 0, "w": 40, "h": 30}, - "frame": {"x": 320, "y": 0, "w": 40, "h": 30} + "sourceSize": { + "w": 40, + "h": 30 + }, + "spriteSourceSize": { + "x": 0, + "y": 0, + "w": 40, + "h": 30 + }, + "frame": { + "x": 320, + "y": 0, + "w": 40, + "h": 30 + } }, { "filename": "3_3", "rotated": false, "trimmed": false, - "sourceSize": {"w": 40, "h": 30}, - "spriteSourceSize": {"x": 0, "y": 0, "w": 40, "h": 30}, - "frame": {"x": 360, "y": 0, "w": 40, "h": 30} + "sourceSize": { + "w": 40, + "h": 30 + }, + "spriteSourceSize": { + "x": 0, + "y": 0, + "w": 40, + "h": 30 + }, + "frame": { + "x": 360, + "y": 0, + "w": 40, + "h": 30 + } }, { "filename": "4_2", "rotated": false, "trimmed": false, - "sourceSize": {"w": 40, "h": 30}, - "spriteSourceSize": {"x": 0, "y": 0, "w": 40, "h": 30}, - "frame": {"x": 400, "y": 0, "w": 40, "h": 30} + "sourceSize": { + "w": 40, + "h": 30 + }, + "spriteSourceSize": { + "x": 0, + "y": 0, + "w": 40, + "h": 30 + }, + "frame": { + "x": 400, + "y": 0, + "w": 40, + "h": 30 + } }, { "filename": "4_3", "rotated": false, "trimmed": false, - "sourceSize": {"w": 40, "h": 30}, - "spriteSourceSize": {"x": 0, "y": 0, "w": 40, "h": 30}, - "frame": {"x": 440, "y": 0, "w": 40, "h": 30} + "sourceSize": { + "w": 40, + "h": 30 + }, + "spriteSourceSize": { + "x": 0, + "y": 0, + "w": 40, + "h": 30 + }, + "frame": { + "x": 440, + "y": 0, + "w": 40, + "h": 30 + } }, { "filename": "5_2", "rotated": false, "trimmed": false, - "sourceSize": {"w": 40, "h": 30}, - "spriteSourceSize": {"x": 0, "y": 0, "w": 40, "h": 30}, - "frame": {"x": 480, "y": 0, "w": 40, "h": 30} + "sourceSize": { + "w": 40, + "h": 30 + }, + "spriteSourceSize": { + "x": 0, + "y": 0, + "w": 40, + "h": 30 + }, + "frame": { + "x": 480, + "y": 0, + "w": 40, + "h": 30 + } }, { "filename": "5_3", "rotated": false, "trimmed": false, - "sourceSize": {"w": 40, "h": 30}, - "spriteSourceSize": {"x": 0, "y": 0, "w": 40, "h": 30}, - "frame": {"x": 520, "y": 0, "w": 40, "h": 30} + "sourceSize": { + "w": 40, + "h": 30 + }, + "spriteSourceSize": { + "x": 0, + "y": 0, + "w": 40, + "h": 30 + }, + "frame": { + "x": 520, + "y": 0, + "w": 40, + "h": 30 + } }, { "filename": "6-gigantamax_2", "rotated": false, "trimmed": false, - "sourceSize": {"w": 40, "h": 30}, - "spriteSourceSize": {"x": 0, "y": 0, "w": 40, "h": 30}, - "frame": {"x": 560, "y": 0, "w": 40, "h": 30} + "sourceSize": { + "w": 40, + "h": 30 + }, + "spriteSourceSize": { + "x": 0, + "y": 0, + "w": 40, + "h": 30 + }, + "frame": { + "x": 560, + "y": 0, + "w": 40, + "h": 30 + } }, { "filename": "6-gigantamax_3", "rotated": false, "trimmed": false, - "sourceSize": {"w": 40, "h": 30}, - "spriteSourceSize": {"x": 0, "y": 0, "w": 40, "h": 30}, - "frame": {"x": 0, "y": 30, "w": 40, "h": 30} + "sourceSize": { + "w": 40, + "h": 30 + }, + "spriteSourceSize": { + "x": 0, + "y": 0, + "w": 40, + "h": 30 + }, + "frame": { + "x": 0, + "y": 30, + "w": 40, + "h": 30 + } }, { "filename": "6-mega-x_2", "rotated": false, "trimmed": false, - "sourceSize": {"w": 40, "h": 30}, - "spriteSourceSize": {"x": 0, "y": 0, "w": 40, "h": 30}, - "frame": {"x": 40, "y": 30, "w": 40, "h": 30} + "sourceSize": { + "w": 40, + "h": 30 + }, + "spriteSourceSize": { + "x": 0, + "y": 0, + "w": 40, + "h": 30 + }, + "frame": { + "x": 40, + "y": 30, + "w": 40, + "h": 30 + } }, { "filename": "6-mega-x_3", "rotated": false, "trimmed": false, - "sourceSize": {"w": 40, "h": 30}, - "spriteSourceSize": {"x": 0, "y": 0, "w": 40, "h": 30}, - "frame": {"x": 80, "y": 30, "w": 40, "h": 30} + "sourceSize": { + "w": 40, + "h": 30 + }, + "spriteSourceSize": { + "x": 0, + "y": 0, + "w": 40, + "h": 30 + }, + "frame": { + "x": 80, + "y": 30, + "w": 40, + "h": 30 + } }, { "filename": "6-mega-y_2", "rotated": false, "trimmed": false, - "sourceSize": {"w": 40, "h": 30}, - "spriteSourceSize": {"x": 0, "y": 0, "w": 40, "h": 30}, - "frame": {"x": 120, "y": 30, "w": 40, "h": 30} + "sourceSize": { + "w": 40, + "h": 30 + }, + "spriteSourceSize": { + "x": 0, + "y": 0, + "w": 40, + "h": 30 + }, + "frame": { + "x": 120, + "y": 30, + "w": 40, + "h": 30 + } }, { "filename": "6-mega-y_3", "rotated": false, "trimmed": false, - "sourceSize": {"w": 40, "h": 30}, - "spriteSourceSize": {"x": 0, "y": 0, "w": 40, "h": 30}, - "frame": {"x": 160, "y": 30, "w": 40, "h": 30} + "sourceSize": { + "w": 40, + "h": 30 + }, + "spriteSourceSize": { + "x": 0, + "y": 0, + "w": 40, + "h": 30 + }, + "frame": { + "x": 160, + "y": 30, + "w": 40, + "h": 30 + } }, { "filename": "6_2", "rotated": false, "trimmed": false, - "sourceSize": {"w": 40, "h": 30}, - "spriteSourceSize": {"x": 0, "y": 0, "w": 40, "h": 30}, - "frame": {"x": 200, "y": 30, "w": 40, "h": 30} + "sourceSize": { + "w": 40, + "h": 30 + }, + "spriteSourceSize": { + "x": 0, + "y": 0, + "w": 40, + "h": 30 + }, + "frame": { + "x": 200, + "y": 30, + "w": 40, + "h": 30 + } }, { "filename": "6_3", "rotated": false, "trimmed": false, - "sourceSize": {"w": 40, "h": 30}, - "spriteSourceSize": {"x": 0, "y": 0, "w": 40, "h": 30}, - "frame": {"x": 240, "y": 30, "w": 40, "h": 30} + "sourceSize": { + "w": 40, + "h": 30 + }, + "spriteSourceSize": { + "x": 0, + "y": 0, + "w": 40, + "h": 30 + }, + "frame": { + "x": 240, + "y": 30, + "w": 40, + "h": 30 + } }, { "filename": "7_2", "rotated": false, "trimmed": false, - "sourceSize": {"w": 40, "h": 30}, - "spriteSourceSize": {"x": 0, "y": 0, "w": 40, "h": 30}, - "frame": {"x": 280, "y": 30, "w": 40, "h": 30} + "sourceSize": { + "w": 40, + "h": 30 + }, + "spriteSourceSize": { + "x": 0, + "y": 0, + "w": 40, + "h": 30 + }, + "frame": { + "x": 280, + "y": 30, + "w": 40, + "h": 30 + } }, { "filename": "7_3", "rotated": false, "trimmed": false, - "sourceSize": {"w": 40, "h": 30}, - "spriteSourceSize": {"x": 0, "y": 0, "w": 40, "h": 30}, - "frame": {"x": 320, "y": 30, "w": 40, "h": 30} + "sourceSize": { + "w": 40, + "h": 30 + }, + "spriteSourceSize": { + "x": 0, + "y": 0, + "w": 40, + "h": 30 + }, + "frame": { + "x": 320, + "y": 30, + "w": 40, + "h": 30 + } }, { "filename": "8_2", "rotated": false, "trimmed": false, - "sourceSize": {"w": 40, "h": 30}, - "spriteSourceSize": {"x": 0, "y": 0, "w": 40, "h": 30}, - "frame": {"x": 360, "y": 30, "w": 40, "h": 30} + "sourceSize": { + "w": 40, + "h": 30 + }, + "spriteSourceSize": { + "x": 0, + "y": 0, + "w": 40, + "h": 30 + }, + "frame": { + "x": 360, + "y": 30, + "w": 40, + "h": 30 + } }, { "filename": "8_3", "rotated": false, "trimmed": false, - "sourceSize": {"w": 40, "h": 30}, - "spriteSourceSize": {"x": 0, "y": 0, "w": 40, "h": 30}, - "frame": {"x": 400, "y": 30, "w": 40, "h": 30} + "sourceSize": { + "w": 40, + "h": 30 + }, + "spriteSourceSize": { + "x": 0, + "y": 0, + "w": 40, + "h": 30 + }, + "frame": { + "x": 400, + "y": 30, + "w": 40, + "h": 30 + } }, { "filename": "9-gigantamax_2", "rotated": false, "trimmed": false, - "sourceSize": {"w": 40, "h": 30}, - "spriteSourceSize": {"x": 0, "y": 0, "w": 40, "h": 30}, - "frame": {"x": 440, "y": 30, "w": 40, "h": 30} + "sourceSize": { + "w": 40, + "h": 30 + }, + "spriteSourceSize": { + "x": 0, + "y": 0, + "w": 40, + "h": 30 + }, + "frame": { + "x": 440, + "y": 30, + "w": 40, + "h": 30 + } }, { "filename": "9-gigantamax_3", "rotated": false, "trimmed": false, - "sourceSize": {"w": 40, "h": 30}, - "spriteSourceSize": {"x": 0, "y": 0, "w": 40, "h": 30}, - "frame": {"x": 480, "y": 30, "w": 40, "h": 30} + "sourceSize": { + "w": 40, + "h": 30 + }, + "spriteSourceSize": { + "x": 0, + "y": 0, + "w": 40, + "h": 30 + }, + "frame": { + "x": 480, + "y": 30, + "w": 40, + "h": 30 + } }, { "filename": "9-mega_2", "rotated": false, "trimmed": false, - "sourceSize": {"w": 40, "h": 30}, - "spriteSourceSize": {"x": 0, "y": 0, "w": 40, "h": 30}, - "frame": {"x": 520, "y": 30, "w": 40, "h": 30} + "sourceSize": { + "w": 40, + "h": 30 + }, + "spriteSourceSize": { + "x": 0, + "y": 0, + "w": 40, + "h": 30 + }, + "frame": { + "x": 520, + "y": 30, + "w": 40, + "h": 30 + } }, { "filename": "9-mega_3", "rotated": false, "trimmed": false, - "sourceSize": {"w": 40, "h": 30}, - "spriteSourceSize": {"x": 0, "y": 0, "w": 40, "h": 30}, - "frame": {"x": 560, "y": 30, "w": 40, "h": 30} + "sourceSize": { + "w": 40, + "h": 30 + }, + "spriteSourceSize": { + "x": 0, + "y": 0, + "w": 40, + "h": 30 + }, + "frame": { + "x": 560, + "y": 30, + "w": 40, + "h": 30 + } }, { "filename": "9_2", "rotated": false, "trimmed": false, - "sourceSize": {"w": 40, "h": 30}, - "spriteSourceSize": {"x": 0, "y": 0, "w": 40, "h": 30}, - "frame": {"x": 0, "y": 60, "w": 40, "h": 30} + "sourceSize": { + "w": 40, + "h": 30 + }, + "spriteSourceSize": { + "x": 0, + "y": 0, + "w": 40, + "h": 30 + }, + "frame": { + "x": 0, + "y": 60, + "w": 40, + "h": 30 + } }, { "filename": "9_3", "rotated": false, "trimmed": false, - "sourceSize": {"w": 40, "h": 30}, - "spriteSourceSize": {"x": 0, "y": 0, "w": 40, "h": 30}, - "frame": {"x": 40, "y": 60, "w": 40, "h": 30} + "sourceSize": { + "w": 40, + "h": 30 + }, + "spriteSourceSize": { + "x": 0, + "y": 0, + "w": 40, + "h": 30 + }, + "frame": { + "x": 40, + "y": 60, + "w": 40, + "h": 30 + } }, { "filename": "19_2", "rotated": false, "trimmed": false, - "sourceSize": {"w": 40, "h": 30}, - "spriteSourceSize": {"x": 0, "y": 0, "w": 40, "h": 30}, - "frame": {"x": 80, "y": 60, "w": 40, "h": 30} + "sourceSize": { + "w": 40, + "h": 30 + }, + "spriteSourceSize": { + "x": 0, + "y": 0, + "w": 40, + "h": 30 + }, + "frame": { + "x": 80, + "y": 60, + "w": 40, + "h": 30 + } }, { "filename": "19_3", "rotated": false, "trimmed": false, - "sourceSize": {"w": 40, "h": 30}, - "spriteSourceSize": {"x": 0, "y": 0, "w": 40, "h": 30}, - "frame": {"x": 120, "y": 60, "w": 40, "h": 30} + "sourceSize": { + "w": 40, + "h": 30 + }, + "spriteSourceSize": { + "x": 0, + "y": 0, + "w": 40, + "h": 30 + }, + "frame": { + "x": 120, + "y": 60, + "w": 40, + "h": 30 + } }, { "filename": "20_2", "rotated": false, "trimmed": false, - "sourceSize": {"w": 40, "h": 30}, - "spriteSourceSize": {"x": 0, "y": 0, "w": 40, "h": 30}, - "frame": {"x": 160, "y": 60, "w": 40, "h": 30} + "sourceSize": { + "w": 40, + "h": 30 + }, + "spriteSourceSize": { + "x": 0, + "y": 0, + "w": 40, + "h": 30 + }, + "frame": { + "x": 160, + "y": 60, + "w": 40, + "h": 30 + } }, { "filename": "20_3", "rotated": false, "trimmed": false, - "sourceSize": {"w": 40, "h": 30}, - "spriteSourceSize": {"x": 0, "y": 0, "w": 40, "h": 30}, - "frame": {"x": 200, "y": 60, "w": 40, "h": 30} + "sourceSize": { + "w": 40, + "h": 30 + }, + "spriteSourceSize": { + "x": 0, + "y": 0, + "w": 40, + "h": 30 + }, + "frame": { + "x": 200, + "y": 60, + "w": 40, + "h": 30 + } }, { "filename": "23_2", "rotated": false, "trimmed": false, - "sourceSize": {"w": 40, "h": 30}, - "spriteSourceSize": {"x": 0, "y": 0, "w": 40, "h": 30}, - "frame": {"x": 240, "y": 60, "w": 40, "h": 30} + "sourceSize": { + "w": 40, + "h": 30 + }, + "spriteSourceSize": { + "x": 0, + "y": 0, + "w": 40, + "h": 30 + }, + "frame": { + "x": 240, + "y": 60, + "w": 40, + "h": 30 + } }, { "filename": "23_3", "rotated": false, "trimmed": false, - "sourceSize": {"w": 40, "h": 30}, - "spriteSourceSize": {"x": 0, "y": 0, "w": 40, "h": 30}, - "frame": {"x": 280, "y": 60, "w": 40, "h": 30} + "sourceSize": { + "w": 40, + "h": 30 + }, + "spriteSourceSize": { + "x": 0, + "y": 0, + "w": 40, + "h": 30 + }, + "frame": { + "x": 280, + "y": 60, + "w": 40, + "h": 30 + } }, { "filename": "24_2", "rotated": false, "trimmed": false, - "sourceSize": {"w": 40, "h": 30}, - "spriteSourceSize": {"x": 0, "y": 0, "w": 40, "h": 30}, - "frame": {"x": 320, "y": 60, "w": 40, "h": 30} + "sourceSize": { + "w": 40, + "h": 30 + }, + "spriteSourceSize": { + "x": 0, + "y": 0, + "w": 40, + "h": 30 + }, + "frame": { + "x": 320, + "y": 60, + "w": 40, + "h": 30 + } }, { "filename": "24_3", "rotated": false, "trimmed": false, - "sourceSize": {"w": 40, "h": 30}, - "spriteSourceSize": {"x": 0, "y": 0, "w": 40, "h": 30}, - "frame": {"x": 360, "y": 60, "w": 40, "h": 30} + "sourceSize": { + "w": 40, + "h": 30 + }, + "spriteSourceSize": { + "x": 0, + "y": 0, + "w": 40, + "h": 30 + }, + "frame": { + "x": 360, + "y": 60, + "w": 40, + "h": 30 + } }, { "filename": "25-beauty-cosplay_2", "rotated": false, "trimmed": false, - "sourceSize": {"w": 40, "h": 30}, - "spriteSourceSize": {"x": 0, "y": 0, "w": 40, "h": 30}, - "frame": {"x": 400, "y": 60, "w": 40, "h": 30} + "sourceSize": { + "w": 40, + "h": 30 + }, + "spriteSourceSize": { + "x": 0, + "y": 0, + "w": 40, + "h": 30 + }, + "frame": { + "x": 400, + "y": 60, + "w": 40, + "h": 30 + } }, { "filename": "25-beauty-cosplay_3", "rotated": false, "trimmed": false, - "sourceSize": {"w": 40, "h": 30}, - "spriteSourceSize": {"x": 0, "y": 0, "w": 40, "h": 30}, - "frame": {"x": 440, "y": 60, "w": 40, "h": 30} + "sourceSize": { + "w": 40, + "h": 30 + }, + "spriteSourceSize": { + "x": 0, + "y": 0, + "w": 40, + "h": 30 + }, + "frame": { + "x": 440, + "y": 60, + "w": 40, + "h": 30 + } }, { "filename": "25-cool-cosplay_2", "rotated": false, "trimmed": false, - "sourceSize": {"w": 40, "h": 30}, - "spriteSourceSize": {"x": 0, "y": 0, "w": 40, "h": 30}, - "frame": {"x": 480, "y": 60, "w": 40, "h": 30} + "sourceSize": { + "w": 40, + "h": 30 + }, + "spriteSourceSize": { + "x": 0, + "y": 0, + "w": 40, + "h": 30 + }, + "frame": { + "x": 480, + "y": 60, + "w": 40, + "h": 30 + } }, { "filename": "25-cool-cosplay_3", "rotated": false, "trimmed": false, - "sourceSize": {"w": 40, "h": 30}, - "spriteSourceSize": {"x": 0, "y": 0, "w": 40, "h": 30}, - "frame": {"x": 520, "y": 60, "w": 40, "h": 30} + "sourceSize": { + "w": 40, + "h": 30 + }, + "spriteSourceSize": { + "x": 0, + "y": 0, + "w": 40, + "h": 30 + }, + "frame": { + "x": 520, + "y": 60, + "w": 40, + "h": 30 + } }, { "filename": "25-cosplay_2", "rotated": false, "trimmed": false, - "sourceSize": {"w": 40, "h": 30}, - "spriteSourceSize": {"x": 0, "y": 0, "w": 40, "h": 30}, - "frame": {"x": 560, "y": 60, "w": 40, "h": 30} + "sourceSize": { + "w": 40, + "h": 30 + }, + "spriteSourceSize": { + "x": 0, + "y": 0, + "w": 40, + "h": 30 + }, + "frame": { + "x": 560, + "y": 60, + "w": 40, + "h": 30 + } }, { "filename": "25-cosplay_3", "rotated": false, "trimmed": false, - "sourceSize": {"w": 40, "h": 30}, - "spriteSourceSize": {"x": 0, "y": 0, "w": 40, "h": 30}, - "frame": {"x": 0, "y": 90, "w": 40, "h": 30} + "sourceSize": { + "w": 40, + "h": 30 + }, + "spriteSourceSize": { + "x": 0, + "y": 0, + "w": 40, + "h": 30 + }, + "frame": { + "x": 0, + "y": 90, + "w": 40, + "h": 30 + } }, { "filename": "25-cute-cosplay_2", "rotated": false, "trimmed": false, - "sourceSize": {"w": 40, "h": 30}, - "spriteSourceSize": {"x": 0, "y": 0, "w": 40, "h": 30}, - "frame": {"x": 40, "y": 90, "w": 40, "h": 30} + "sourceSize": { + "w": 40, + "h": 30 + }, + "spriteSourceSize": { + "x": 0, + "y": 0, + "w": 40, + "h": 30 + }, + "frame": { + "x": 40, + "y": 90, + "w": 40, + "h": 30 + } }, { "filename": "25-cute-cosplay_3", "rotated": false, "trimmed": false, - "sourceSize": {"w": 40, "h": 30}, - "spriteSourceSize": {"x": 0, "y": 0, "w": 40, "h": 30}, - "frame": {"x": 80, "y": 90, "w": 40, "h": 30} + "sourceSize": { + "w": 40, + "h": 30 + }, + "spriteSourceSize": { + "x": 0, + "y": 0, + "w": 40, + "h": 30 + }, + "frame": { + "x": 80, + "y": 90, + "w": 40, + "h": 30 + } }, { "filename": "25-gigantamax_2", "rotated": false, "trimmed": false, - "sourceSize": {"w": 40, "h": 30}, - "spriteSourceSize": {"x": 0, "y": 0, "w": 40, "h": 30}, - "frame": {"x": 120, "y": 90, "w": 40, "h": 30} + "sourceSize": { + "w": 40, + "h": 30 + }, + "spriteSourceSize": { + "x": 0, + "y": 0, + "w": 40, + "h": 30 + }, + "frame": { + "x": 120, + "y": 90, + "w": 40, + "h": 30 + } }, { "filename": "25-gigantamax_3", "rotated": false, "trimmed": false, - "sourceSize": {"w": 40, "h": 30}, - "spriteSourceSize": {"x": 0, "y": 0, "w": 40, "h": 30}, - "frame": {"x": 160, "y": 90, "w": 40, "h": 30} + "sourceSize": { + "w": 40, + "h": 30 + }, + "spriteSourceSize": { + "x": 0, + "y": 0, + "w": 40, + "h": 30 + }, + "frame": { + "x": 160, + "y": 90, + "w": 40, + "h": 30 + } }, { "filename": "25-partner_2", "rotated": false, "trimmed": false, - "sourceSize": {"w": 40, "h": 30}, - "spriteSourceSize": {"x": 0, "y": 0, "w": 40, "h": 30}, - "frame": {"x": 200, "y": 90, "w": 40, "h": 30} + "sourceSize": { + "w": 40, + "h": 30 + }, + "spriteSourceSize": { + "x": 0, + "y": 0, + "w": 40, + "h": 30 + }, + "frame": { + "x": 200, + "y": 90, + "w": 40, + "h": 30 + } }, { "filename": "25-partner_3", "rotated": false, "trimmed": false, - "sourceSize": {"w": 40, "h": 30}, - "spriteSourceSize": {"x": 0, "y": 0, "w": 40, "h": 30}, - "frame": {"x": 240, "y": 90, "w": 40, "h": 30} + "sourceSize": { + "w": 40, + "h": 30 + }, + "spriteSourceSize": { + "x": 0, + "y": 0, + "w": 40, + "h": 30 + }, + "frame": { + "x": 240, + "y": 90, + "w": 40, + "h": 30 + } }, { "filename": "25-smart-cosplay_2", "rotated": false, "trimmed": false, - "sourceSize": {"w": 40, "h": 30}, - "spriteSourceSize": {"x": 0, "y": 0, "w": 40, "h": 30}, - "frame": {"x": 280, "y": 90, "w": 40, "h": 30} + "sourceSize": { + "w": 40, + "h": 30 + }, + "spriteSourceSize": { + "x": 0, + "y": 0, + "w": 40, + "h": 30 + }, + "frame": { + "x": 280, + "y": 90, + "w": 40, + "h": 30 + } }, { "filename": "25-smart-cosplay_3", "rotated": false, "trimmed": false, - "sourceSize": {"w": 40, "h": 30}, - "spriteSourceSize": {"x": 0, "y": 0, "w": 40, "h": 30}, - "frame": {"x": 320, "y": 90, "w": 40, "h": 30} + "sourceSize": { + "w": 40, + "h": 30 + }, + "spriteSourceSize": { + "x": 0, + "y": 0, + "w": 40, + "h": 30 + }, + "frame": { + "x": 320, + "y": 90, + "w": 40, + "h": 30 + } }, { "filename": "25-tough-cosplay_2", "rotated": false, "trimmed": false, - "sourceSize": {"w": 40, "h": 30}, - "spriteSourceSize": {"x": 0, "y": 0, "w": 40, "h": 30}, - "frame": {"x": 360, "y": 90, "w": 40, "h": 30} + "sourceSize": { + "w": 40, + "h": 30 + }, + "spriteSourceSize": { + "x": 0, + "y": 0, + "w": 40, + "h": 30 + }, + "frame": { + "x": 360, + "y": 90, + "w": 40, + "h": 30 + } }, { "filename": "25-tough-cosplay_3", "rotated": false, "trimmed": false, - "sourceSize": {"w": 40, "h": 30}, - "spriteSourceSize": {"x": 0, "y": 0, "w": 40, "h": 30}, - "frame": {"x": 400, "y": 90, "w": 40, "h": 30} + "sourceSize": { + "w": 40, + "h": 30 + }, + "spriteSourceSize": { + "x": 0, + "y": 0, + "w": 40, + "h": 30 + }, + "frame": { + "x": 400, + "y": 90, + "w": 40, + "h": 30 + } }, { "filename": "25_2", "rotated": false, "trimmed": false, - "sourceSize": {"w": 40, "h": 30}, - "spriteSourceSize": {"x": 0, "y": 0, "w": 40, "h": 30}, - "frame": {"x": 440, "y": 90, "w": 40, "h": 30} + "sourceSize": { + "w": 40, + "h": 30 + }, + "spriteSourceSize": { + "x": 0, + "y": 0, + "w": 40, + "h": 30 + }, + "frame": { + "x": 440, + "y": 90, + "w": 40, + "h": 30 + } }, { "filename": "25_3", "rotated": false, "trimmed": false, - "sourceSize": {"w": 40, "h": 30}, - "spriteSourceSize": {"x": 0, "y": 0, "w": 40, "h": 30}, - "frame": {"x": 480, "y": 90, "w": 40, "h": 30} + "sourceSize": { + "w": 40, + "h": 30 + }, + "spriteSourceSize": { + "x": 0, + "y": 0, + "w": 40, + "h": 30 + }, + "frame": { + "x": 480, + "y": 90, + "w": 40, + "h": 30 + } }, { "filename": "26_2", "rotated": false, "trimmed": false, - "sourceSize": {"w": 40, "h": 30}, - "spriteSourceSize": {"x": 0, "y": 0, "w": 40, "h": 30}, - "frame": {"x": 520, "y": 90, "w": 40, "h": 30} + "sourceSize": { + "w": 40, + "h": 30 + }, + "spriteSourceSize": { + "x": 0, + "y": 0, + "w": 40, + "h": 30 + }, + "frame": { + "x": 520, + "y": 90, + "w": 40, + "h": 30 + } }, { "filename": "26_3", "rotated": false, "trimmed": false, - "sourceSize": {"w": 40, "h": 30}, - "spriteSourceSize": {"x": 0, "y": 0, "w": 40, "h": 30}, - "frame": {"x": 560, "y": 90, "w": 40, "h": 30} + "sourceSize": { + "w": 40, + "h": 30 + }, + "spriteSourceSize": { + "x": 0, + "y": 0, + "w": 40, + "h": 30 + }, + "frame": { + "x": 560, + "y": 90, + "w": 40, + "h": 30 + } }, { "filename": "29_1", "rotated": false, "trimmed": false, - "sourceSize": {"w": 40, "h": 30}, - "spriteSourceSize": {"x": 0, "y": 0, "w": 40, "h": 30}, - "frame": {"x": 0, "y": 120, "w": 40, "h": 30} + "sourceSize": { + "w": 40, + "h": 30 + }, + "spriteSourceSize": { + "x": 0, + "y": 0, + "w": 40, + "h": 30 + }, + "frame": { + "x": 0, + "y": 120, + "w": 40, + "h": 30 + } }, { "filename": "29_2", "rotated": false, "trimmed": false, - "sourceSize": {"w": 40, "h": 30}, - "spriteSourceSize": {"x": 0, "y": 0, "w": 40, "h": 30}, - "frame": {"x": 40, "y": 120, "w": 40, "h": 30} + "sourceSize": { + "w": 40, + "h": 30 + }, + "spriteSourceSize": { + "x": 0, + "y": 0, + "w": 40, + "h": 30 + }, + "frame": { + "x": 40, + "y": 120, + "w": 40, + "h": 30 + } }, { "filename": "29_3", "rotated": false, "trimmed": false, - "sourceSize": {"w": 40, "h": 30}, - "spriteSourceSize": {"x": 0, "y": 0, "w": 40, "h": 30}, - "frame": {"x": 80, "y": 120, "w": 40, "h": 30} + "sourceSize": { + "w": 40, + "h": 30 + }, + "spriteSourceSize": { + "x": 0, + "y": 0, + "w": 40, + "h": 30 + }, + "frame": { + "x": 80, + "y": 120, + "w": 40, + "h": 30 + } }, { "filename": "30_2", "rotated": false, "trimmed": false, - "sourceSize": {"w": 40, "h": 30}, - "spriteSourceSize": {"x": 0, "y": 0, "w": 40, "h": 30}, - "frame": {"x": 120, "y": 120, "w": 40, "h": 30} + "sourceSize": { + "w": 40, + "h": 30 + }, + "spriteSourceSize": { + "x": 0, + "y": 0, + "w": 40, + "h": 30 + }, + "frame": { + "x": 120, + "y": 120, + "w": 40, + "h": 30 + } }, { "filename": "30_3", "rotated": false, "trimmed": false, - "sourceSize": {"w": 40, "h": 30}, - "spriteSourceSize": {"x": 0, "y": 0, "w": 40, "h": 30}, - "frame": {"x": 160, "y": 120, "w": 40, "h": 30} + "sourceSize": { + "w": 40, + "h": 30 + }, + "spriteSourceSize": { + "x": 0, + "y": 0, + "w": 40, + "h": 30 + }, + "frame": { + "x": 160, + "y": 120, + "w": 40, + "h": 30 + } }, { "filename": "31_1", "rotated": false, "trimmed": false, - "sourceSize": {"w": 40, "h": 30}, - "spriteSourceSize": {"x": 0, "y": 0, "w": 40, "h": 30}, - "frame": {"x": 200, "y": 120, "w": 40, "h": 30} + "sourceSize": { + "w": 40, + "h": 30 + }, + "spriteSourceSize": { + "x": 0, + "y": 0, + "w": 40, + "h": 30 + }, + "frame": { + "x": 200, + "y": 120, + "w": 40, + "h": 30 + } }, { "filename": "31_2", "rotated": false, "trimmed": false, - "sourceSize": {"w": 40, "h": 30}, - "spriteSourceSize": {"x": 0, "y": 0, "w": 40, "h": 30}, - "frame": {"x": 240, "y": 120, "w": 40, "h": 30} + "sourceSize": { + "w": 40, + "h": 30 + }, + "spriteSourceSize": { + "x": 0, + "y": 0, + "w": 40, + "h": 30 + }, + "frame": { + "x": 240, + "y": 120, + "w": 40, + "h": 30 + } }, { "filename": "31_3", "rotated": false, "trimmed": false, - "sourceSize": {"w": 40, "h": 30}, - "spriteSourceSize": {"x": 0, "y": 0, "w": 40, "h": 30}, - "frame": {"x": 280, "y": 120, "w": 40, "h": 30} + "sourceSize": { + "w": 40, + "h": 30 + }, + "spriteSourceSize": { + "x": 0, + "y": 0, + "w": 40, + "h": 30 + }, + "frame": { + "x": 280, + "y": 120, + "w": 40, + "h": 30 + } + }, + { + "filename": "32_2", + "rotated": false, + "trimmed": false, + "sourceSize": { + "w": 40, + "h": 30 + }, + "spriteSourceSize": { + "x": 0, + "y": 0, + "w": 40, + "h": 30 + }, + "frame": { + "x": 320, + "y": 120, + "w": 40, + "h": 30 + } + }, + { + "filename": "32_3", + "rotated": false, + "trimmed": false, + "sourceSize": { + "w": 40, + "h": 30 + }, + "spriteSourceSize": { + "x": 0, + "y": 0, + "w": 40, + "h": 30 + }, + "frame": { + "x": 360, + "y": 120, + "w": 40, + "h": 30 + } + }, + { + "filename": "33_2", + "rotated": false, + "trimmed": false, + "sourceSize": { + "w": 40, + "h": 30 + }, + "spriteSourceSize": { + "x": 0, + "y": 0, + "w": 40, + "h": 30 + }, + "frame": { + "x": 400, + "y": 120, + "w": 40, + "h": 30 + } + }, + { + "filename": "33_3", + "rotated": false, + "trimmed": false, + "sourceSize": { + "w": 40, + "h": 30 + }, + "spriteSourceSize": { + "x": 0, + "y": 0, + "w": 40, + "h": 30 + }, + "frame": { + "x": 440, + "y": 120, + "w": 40, + "h": 30 + } + }, + { + "filename": "34_2", + "rotated": false, + "trimmed": false, + "sourceSize": { + "w": 40, + "h": 30 + }, + "spriteSourceSize": { + "x": 0, + "y": 0, + "w": 40, + "h": 30 + }, + "frame": { + "x": 480, + "y": 120, + "w": 40, + "h": 30 + } + }, + { + "filename": "34_3", + "rotated": false, + "trimmed": false, + "sourceSize": { + "w": 40, + "h": 30 + }, + "spriteSourceSize": { + "x": 0, + "y": 0, + "w": 40, + "h": 30 + }, + "frame": { + "x": 520, + "y": 120, + "w": 40, + "h": 30 + } }, { "filename": "35_2", "rotated": false, "trimmed": false, - "sourceSize": {"w": 40, "h": 30}, - "spriteSourceSize": {"x": 0, "y": 0, "w": 40, "h": 30}, - "frame": {"x": 320, "y": 120, "w": 40, "h": 30} + "sourceSize": { + "w": 40, + "h": 30 + }, + "spriteSourceSize": { + "x": 0, + "y": 0, + "w": 40, + "h": 30 + }, + "frame": { + "x": 560, + "y": 120, + "w": 40, + "h": 30 + } }, { "filename": "35_3", "rotated": false, "trimmed": false, - "sourceSize": {"w": 40, "h": 30}, - "spriteSourceSize": {"x": 0, "y": 0, "w": 40, "h": 30}, - "frame": {"x": 360, "y": 120, "w": 40, "h": 30} + "sourceSize": { + "w": 40, + "h": 30 + }, + "spriteSourceSize": { + "x": 0, + "y": 0, + "w": 40, + "h": 30 + }, + "frame": { + "x": 0, + "y": 150, + "w": 40, + "h": 30 + } }, { "filename": "36_2", "rotated": false, "trimmed": false, - "sourceSize": {"w": 40, "h": 30}, - "spriteSourceSize": {"x": 0, "y": 0, "w": 40, "h": 30}, - "frame": {"x": 400, "y": 120, "w": 40, "h": 30} + "sourceSize": { + "w": 40, + "h": 30 + }, + "spriteSourceSize": { + "x": 0, + "y": 0, + "w": 40, + "h": 30 + }, + "frame": { + "x": 40, + "y": 150, + "w": 40, + "h": 30 + } }, { "filename": "36_3", "rotated": false, "trimmed": false, - "sourceSize": {"w": 40, "h": 30}, - "spriteSourceSize": {"x": 0, "y": 0, "w": 40, "h": 30}, - "frame": {"x": 440, "y": 120, "w": 40, "h": 30} + "sourceSize": { + "w": 40, + "h": 30 + }, + "spriteSourceSize": { + "x": 0, + "y": 0, + "w": 40, + "h": 30 + }, + "frame": { + "x": 80, + "y": 150, + "w": 40, + "h": 30 + } }, { "filename": "37_2", "rotated": false, "trimmed": false, - "sourceSize": {"w": 40, "h": 30}, - "spriteSourceSize": {"x": 0, "y": 0, "w": 40, "h": 30}, - "frame": {"x": 480, "y": 120, "w": 40, "h": 30} + "sourceSize": { + "w": 40, + "h": 30 + }, + "spriteSourceSize": { + "x": 0, + "y": 0, + "w": 40, + "h": 30 + }, + "frame": { + "x": 120, + "y": 150, + "w": 40, + "h": 30 + } }, { "filename": "37_3", "rotated": false, "trimmed": false, - "sourceSize": {"w": 40, "h": 30}, - "spriteSourceSize": {"x": 0, "y": 0, "w": 40, "h": 30}, - "frame": {"x": 520, "y": 120, "w": 40, "h": 30} + "sourceSize": { + "w": 40, + "h": 30 + }, + "spriteSourceSize": { + "x": 0, + "y": 0, + "w": 40, + "h": 30 + }, + "frame": { + "x": 160, + "y": 150, + "w": 40, + "h": 30 + } }, { "filename": "38_2", "rotated": false, "trimmed": false, - "sourceSize": {"w": 40, "h": 30}, - "spriteSourceSize": {"x": 0, "y": 0, "w": 40, "h": 30}, - "frame": {"x": 560, "y": 120, "w": 40, "h": 30} + "sourceSize": { + "w": 40, + "h": 30 + }, + "spriteSourceSize": { + "x": 0, + "y": 0, + "w": 40, + "h": 30 + }, + "frame": { + "x": 200, + "y": 150, + "w": 40, + "h": 30 + } }, { "filename": "38_3", "rotated": false, "trimmed": false, - "sourceSize": {"w": 40, "h": 30}, - "spriteSourceSize": {"x": 0, "y": 0, "w": 40, "h": 30}, - "frame": {"x": 0, "y": 150, "w": 40, "h": 30} + "sourceSize": { + "w": 40, + "h": 30 + }, + "spriteSourceSize": { + "x": 0, + "y": 0, + "w": 40, + "h": 30 + }, + "frame": { + "x": 240, + "y": 150, + "w": 40, + "h": 30 + } }, { "filename": "39_2", "rotated": false, "trimmed": false, - "sourceSize": {"w": 40, "h": 30}, - "spriteSourceSize": {"x": 0, "y": 0, "w": 40, "h": 30}, - "frame": {"x": 40, "y": 150, "w": 40, "h": 30} + "sourceSize": { + "w": 40, + "h": 30 + }, + "spriteSourceSize": { + "x": 0, + "y": 0, + "w": 40, + "h": 30 + }, + "frame": { + "x": 280, + "y": 150, + "w": 40, + "h": 30 + } }, { "filename": "39_3", "rotated": false, "trimmed": false, - "sourceSize": {"w": 40, "h": 30}, - "spriteSourceSize": {"x": 0, "y": 0, "w": 40, "h": 30}, - "frame": {"x": 80, "y": 150, "w": 40, "h": 30} + "sourceSize": { + "w": 40, + "h": 30 + }, + "spriteSourceSize": { + "x": 0, + "y": 0, + "w": 40, + "h": 30 + }, + "frame": { + "x": 320, + "y": 150, + "w": 40, + "h": 30 + } }, { "filename": "40_2", "rotated": false, "trimmed": false, - "sourceSize": {"w": 40, "h": 30}, - "spriteSourceSize": {"x": 0, "y": 0, "w": 40, "h": 30}, - "frame": {"x": 120, "y": 150, "w": 40, "h": 30} + "sourceSize": { + "w": 40, + "h": 30 + }, + "spriteSourceSize": { + "x": 0, + "y": 0, + "w": 40, + "h": 30 + }, + "frame": { + "x": 360, + "y": 150, + "w": 40, + "h": 30 + } }, { "filename": "40_3", "rotated": false, "trimmed": false, - "sourceSize": {"w": 40, "h": 30}, - "spriteSourceSize": {"x": 0, "y": 0, "w": 40, "h": 30}, - "frame": {"x": 160, "y": 150, "w": 40, "h": 30} + "sourceSize": { + "w": 40, + "h": 30 + }, + "spriteSourceSize": { + "x": 0, + "y": 0, + "w": 40, + "h": 30 + }, + "frame": { + "x": 400, + "y": 150, + "w": 40, + "h": 30 + } }, { "filename": "41_1", "rotated": false, "trimmed": false, - "sourceSize": {"w": 40, "h": 30}, - "spriteSourceSize": {"x": 0, "y": 0, "w": 40, "h": 30}, - "frame": {"x": 200, "y": 150, "w": 40, "h": 30} + "sourceSize": { + "w": 40, + "h": 30 + }, + "spriteSourceSize": { + "x": 0, + "y": 0, + "w": 40, + "h": 30 + }, + "frame": { + "x": 440, + "y": 150, + "w": 40, + "h": 30 + } }, { "filename": "41_2", "rotated": false, "trimmed": false, - "sourceSize": {"w": 40, "h": 30}, - "spriteSourceSize": {"x": 0, "y": 0, "w": 40, "h": 30}, - "frame": {"x": 240, "y": 150, "w": 40, "h": 30} + "sourceSize": { + "w": 40, + "h": 30 + }, + "spriteSourceSize": { + "x": 0, + "y": 0, + "w": 40, + "h": 30 + }, + "frame": { + "x": 480, + "y": 150, + "w": 40, + "h": 30 + } }, { "filename": "41_3", "rotated": false, "trimmed": false, - "sourceSize": {"w": 40, "h": 30}, - "spriteSourceSize": {"x": 0, "y": 0, "w": 40, "h": 30}, - "frame": {"x": 280, "y": 150, "w": 40, "h": 30} + "sourceSize": { + "w": 40, + "h": 30 + }, + "spriteSourceSize": { + "x": 0, + "y": 0, + "w": 40, + "h": 30 + }, + "frame": { + "x": 520, + "y": 150, + "w": 40, + "h": 30 + } }, { "filename": "42_1", "rotated": false, "trimmed": false, - "sourceSize": {"w": 40, "h": 30}, - "spriteSourceSize": {"x": 0, "y": 0, "w": 40, "h": 30}, - "frame": {"x": 320, "y": 150, "w": 40, "h": 30} + "sourceSize": { + "w": 40, + "h": 30 + }, + "spriteSourceSize": { + "x": 0, + "y": 0, + "w": 40, + "h": 30 + }, + "frame": { + "x": 560, + "y": 150, + "w": 40, + "h": 30 + } }, { "filename": "42_2", "rotated": false, "trimmed": false, - "sourceSize": {"w": 40, "h": 30}, - "spriteSourceSize": {"x": 0, "y": 0, "w": 40, "h": 30}, - "frame": {"x": 360, "y": 150, "w": 40, "h": 30} + "sourceSize": { + "w": 40, + "h": 30 + }, + "spriteSourceSize": { + "x": 0, + "y": 0, + "w": 40, + "h": 30 + }, + "frame": { + "x": 0, + "y": 180, + "w": 40, + "h": 30 + } }, { "filename": "42_3", "rotated": false, "trimmed": false, - "sourceSize": {"w": 40, "h": 30}, - "spriteSourceSize": {"x": 0, "y": 0, "w": 40, "h": 30}, - "frame": {"x": 400, "y": 150, "w": 40, "h": 30} + "sourceSize": { + "w": 40, + "h": 30 + }, + "spriteSourceSize": { + "x": 0, + "y": 0, + "w": 40, + "h": 30 + }, + "frame": { + "x": 40, + "y": 180, + "w": 40, + "h": 30 + } }, { "filename": "43_2", "rotated": false, "trimmed": false, - "sourceSize": {"w": 40, "h": 30}, - "spriteSourceSize": {"x": 0, "y": 0, "w": 40, "h": 30}, - "frame": {"x": 440, "y": 150, "w": 40, "h": 30} + "sourceSize": { + "w": 40, + "h": 30 + }, + "spriteSourceSize": { + "x": 0, + "y": 0, + "w": 40, + "h": 30 + }, + "frame": { + "x": 80, + "y": 180, + "w": 40, + "h": 30 + } }, { "filename": "43_3", "rotated": false, "trimmed": false, - "sourceSize": {"w": 40, "h": 30}, - "spriteSourceSize": {"x": 0, "y": 0, "w": 40, "h": 30}, - "frame": {"x": 480, "y": 150, "w": 40, "h": 30} + "sourceSize": { + "w": 40, + "h": 30 + }, + "spriteSourceSize": { + "x": 0, + "y": 0, + "w": 40, + "h": 30 + }, + "frame": { + "x": 120, + "y": 180, + "w": 40, + "h": 30 + } }, { "filename": "44_2", "rotated": false, "trimmed": false, - "sourceSize": {"w": 40, "h": 30}, - "spriteSourceSize": {"x": 0, "y": 0, "w": 40, "h": 30}, - "frame": {"x": 520, "y": 150, "w": 40, "h": 30} + "sourceSize": { + "w": 40, + "h": 30 + }, + "spriteSourceSize": { + "x": 0, + "y": 0, + "w": 40, + "h": 30 + }, + "frame": { + "x": 160, + "y": 180, + "w": 40, + "h": 30 + } }, { "filename": "44_3", "rotated": false, "trimmed": false, - "sourceSize": {"w": 40, "h": 30}, - "spriteSourceSize": {"x": 0, "y": 0, "w": 40, "h": 30}, - "frame": {"x": 560, "y": 150, "w": 40, "h": 30} + "sourceSize": { + "w": 40, + "h": 30 + }, + "spriteSourceSize": { + "x": 0, + "y": 0, + "w": 40, + "h": 30 + }, + "frame": { + "x": 200, + "y": 180, + "w": 40, + "h": 30 + } }, { "filename": "45_2", "rotated": false, "trimmed": false, - "sourceSize": {"w": 40, "h": 30}, - "spriteSourceSize": {"x": 0, "y": 0, "w": 40, "h": 30}, - "frame": {"x": 0, "y": 180, "w": 40, "h": 30} + "sourceSize": { + "w": 40, + "h": 30 + }, + "spriteSourceSize": { + "x": 0, + "y": 0, + "w": 40, + "h": 30 + }, + "frame": { + "x": 240, + "y": 180, + "w": 40, + "h": 30 + } }, { "filename": "45_3", "rotated": false, "trimmed": false, - "sourceSize": {"w": 40, "h": 30}, - "spriteSourceSize": {"x": 0, "y": 0, "w": 40, "h": 30}, - "frame": {"x": 40, "y": 180, "w": 40, "h": 30} + "sourceSize": { + "w": 40, + "h": 30 + }, + "spriteSourceSize": { + "x": 0, + "y": 0, + "w": 40, + "h": 30 + }, + "frame": { + "x": 280, + "y": 180, + "w": 40, + "h": 30 + } }, { "filename": "46_1", "rotated": false, "trimmed": false, - "sourceSize": {"w": 40, "h": 30}, - "spriteSourceSize": {"x": 0, "y": 0, "w": 40, "h": 30}, - "frame": {"x": 80, "y": 180, "w": 40, "h": 30} + "sourceSize": { + "w": 40, + "h": 30 + }, + "spriteSourceSize": { + "x": 0, + "y": 0, + "w": 40, + "h": 30 + }, + "frame": { + "x": 320, + "y": 180, + "w": 40, + "h": 30 + } }, { "filename": "46_2", "rotated": false, "trimmed": false, - "sourceSize": {"w": 40, "h": 30}, - "spriteSourceSize": {"x": 0, "y": 0, "w": 40, "h": 30}, - "frame": {"x": 120, "y": 180, "w": 40, "h": 30} + "sourceSize": { + "w": 40, + "h": 30 + }, + "spriteSourceSize": { + "x": 0, + "y": 0, + "w": 40, + "h": 30 + }, + "frame": { + "x": 360, + "y": 180, + "w": 40, + "h": 30 + } }, { "filename": "46_3", "rotated": false, "trimmed": false, - "sourceSize": {"w": 40, "h": 30}, - "spriteSourceSize": {"x": 0, "y": 0, "w": 40, "h": 30}, - "frame": {"x": 160, "y": 180, "w": 40, "h": 30} + "sourceSize": { + "w": 40, + "h": 30 + }, + "spriteSourceSize": { + "x": 0, + "y": 0, + "w": 40, + "h": 30 + }, + "frame": { + "x": 400, + "y": 180, + "w": 40, + "h": 30 + } }, { "filename": "47_1", "rotated": false, "trimmed": false, - "sourceSize": {"w": 40, "h": 30}, - "spriteSourceSize": {"x": 0, "y": 0, "w": 40, "h": 30}, - "frame": {"x": 200, "y": 180, "w": 40, "h": 30} + "sourceSize": { + "w": 40, + "h": 30 + }, + "spriteSourceSize": { + "x": 0, + "y": 0, + "w": 40, + "h": 30 + }, + "frame": { + "x": 440, + "y": 180, + "w": 40, + "h": 30 + } }, { "filename": "47_2", "rotated": false, "trimmed": false, - "sourceSize": {"w": 40, "h": 30}, - "spriteSourceSize": {"x": 0, "y": 0, "w": 40, "h": 30}, - "frame": {"x": 240, "y": 180, "w": 40, "h": 30} + "sourceSize": { + "w": 40, + "h": 30 + }, + "spriteSourceSize": { + "x": 0, + "y": 0, + "w": 40, + "h": 30 + }, + "frame": { + "x": 480, + "y": 180, + "w": 40, + "h": 30 + } }, { "filename": "47_3", "rotated": false, "trimmed": false, - "sourceSize": {"w": 40, "h": 30}, - "spriteSourceSize": {"x": 0, "y": 0, "w": 40, "h": 30}, - "frame": {"x": 280, "y": 180, "w": 40, "h": 30} + "sourceSize": { + "w": 40, + "h": 30 + }, + "spriteSourceSize": { + "x": 0, + "y": 0, + "w": 40, + "h": 30 + }, + "frame": { + "x": 520, + "y": 180, + "w": 40, + "h": 30 + } }, { "filename": "50_2", "rotated": false, "trimmed": false, - "sourceSize": {"w": 40, "h": 30}, - "spriteSourceSize": {"x": 0, "y": 0, "w": 40, "h": 30}, - "frame": {"x": 320, "y": 180, "w": 40, "h": 30} + "sourceSize": { + "w": 40, + "h": 30 + }, + "spriteSourceSize": { + "x": 0, + "y": 0, + "w": 40, + "h": 30 + }, + "frame": { + "x": 560, + "y": 180, + "w": 40, + "h": 30 + } }, { "filename": "50_3", "rotated": false, "trimmed": false, - "sourceSize": {"w": 40, "h": 30}, - "spriteSourceSize": {"x": 0, "y": 0, "w": 40, "h": 30}, - "frame": {"x": 360, "y": 180, "w": 40, "h": 30} + "sourceSize": { + "w": 40, + "h": 30 + }, + "spriteSourceSize": { + "x": 0, + "y": 0, + "w": 40, + "h": 30 + }, + "frame": { + "x": 0, + "y": 210, + "w": 40, + "h": 30 + } }, { "filename": "51_2", "rotated": false, "trimmed": false, - "sourceSize": {"w": 40, "h": 30}, - "spriteSourceSize": {"x": 0, "y": 0, "w": 40, "h": 30}, - "frame": {"x": 400, "y": 180, "w": 40, "h": 30} + "sourceSize": { + "w": 40, + "h": 30 + }, + "spriteSourceSize": { + "x": 0, + "y": 0, + "w": 40, + "h": 30 + }, + "frame": { + "x": 40, + "y": 210, + "w": 40, + "h": 30 + } }, { "filename": "51_3", "rotated": false, "trimmed": false, - "sourceSize": {"w": 40, "h": 30}, - "spriteSourceSize": {"x": 0, "y": 0, "w": 40, "h": 30}, - "frame": {"x": 440, "y": 180, "w": 40, "h": 30} + "sourceSize": { + "w": 40, + "h": 30 + }, + "spriteSourceSize": { + "x": 0, + "y": 0, + "w": 40, + "h": 30 + }, + "frame": { + "x": 80, + "y": 210, + "w": 40, + "h": 30 + } }, { "filename": "52-gigantamax_1", "rotated": false, "trimmed": false, - "sourceSize": {"w": 40, "h": 30}, - "spriteSourceSize": {"x": 0, "y": 0, "w": 40, "h": 30}, - "frame": {"x": 480, "y": 180, "w": 40, "h": 30} + "sourceSize": { + "w": 40, + "h": 30 + }, + "spriteSourceSize": { + "x": 0, + "y": 0, + "w": 40, + "h": 30 + }, + "frame": { + "x": 120, + "y": 210, + "w": 40, + "h": 30 + } }, { "filename": "52-gigantamax_2", "rotated": false, "trimmed": false, - "sourceSize": {"w": 40, "h": 30}, - "spriteSourceSize": {"x": 0, "y": 0, "w": 40, "h": 30}, - "frame": {"x": 520, "y": 180, "w": 40, "h": 30} + "sourceSize": { + "w": 40, + "h": 30 + }, + "spriteSourceSize": { + "x": 0, + "y": 0, + "w": 40, + "h": 30 + }, + "frame": { + "x": 160, + "y": 210, + "w": 40, + "h": 30 + } }, { "filename": "52-gigantamax_3", "rotated": false, "trimmed": false, - "sourceSize": {"w": 40, "h": 30}, - "spriteSourceSize": {"x": 0, "y": 0, "w": 40, "h": 30}, - "frame": {"x": 560, "y": 180, "w": 40, "h": 30} + "sourceSize": { + "w": 40, + "h": 30 + }, + "spriteSourceSize": { + "x": 0, + "y": 0, + "w": 40, + "h": 30 + }, + "frame": { + "x": 200, + "y": 210, + "w": 40, + "h": 30 + } }, { "filename": "52_1", "rotated": false, "trimmed": false, - "sourceSize": {"w": 40, "h": 30}, - "spriteSourceSize": {"x": 0, "y": 0, "w": 40, "h": 30}, - "frame": {"x": 0, "y": 210, "w": 40, "h": 30} + "sourceSize": { + "w": 40, + "h": 30 + }, + "spriteSourceSize": { + "x": 0, + "y": 0, + "w": 40, + "h": 30 + }, + "frame": { + "x": 240, + "y": 210, + "w": 40, + "h": 30 + } }, { "filename": "52_2", "rotated": false, "trimmed": false, - "sourceSize": {"w": 40, "h": 30}, - "spriteSourceSize": {"x": 0, "y": 0, "w": 40, "h": 30}, - "frame": {"x": 40, "y": 210, "w": 40, "h": 30} + "sourceSize": { + "w": 40, + "h": 30 + }, + "spriteSourceSize": { + "x": 0, + "y": 0, + "w": 40, + "h": 30 + }, + "frame": { + "x": 280, + "y": 210, + "w": 40, + "h": 30 + } }, { "filename": "52_3", "rotated": false, "trimmed": false, - "sourceSize": {"w": 40, "h": 30}, - "spriteSourceSize": {"x": 0, "y": 0, "w": 40, "h": 30}, - "frame": {"x": 80, "y": 210, "w": 40, "h": 30} + "sourceSize": { + "w": 40, + "h": 30 + }, + "spriteSourceSize": { + "x": 0, + "y": 0, + "w": 40, + "h": 30 + }, + "frame": { + "x": 320, + "y": 210, + "w": 40, + "h": 30 + } }, { "filename": "53_1", "rotated": false, "trimmed": false, - "sourceSize": {"w": 40, "h": 30}, - "spriteSourceSize": {"x": 0, "y": 0, "w": 40, "h": 30}, - "frame": {"x": 120, "y": 210, "w": 40, "h": 30} + "sourceSize": { + "w": 40, + "h": 30 + }, + "spriteSourceSize": { + "x": 0, + "y": 0, + "w": 40, + "h": 30 + }, + "frame": { + "x": 360, + "y": 210, + "w": 40, + "h": 30 + } }, { "filename": "53_2", "rotated": false, "trimmed": false, - "sourceSize": {"w": 40, "h": 30}, - "spriteSourceSize": {"x": 0, "y": 0, "w": 40, "h": 30}, - "frame": {"x": 160, "y": 210, "w": 40, "h": 30} + "sourceSize": { + "w": 40, + "h": 30 + }, + "spriteSourceSize": { + "x": 0, + "y": 0, + "w": 40, + "h": 30 + }, + "frame": { + "x": 400, + "y": 210, + "w": 40, + "h": 30 + } }, { "filename": "53_3", "rotated": false, "trimmed": false, - "sourceSize": {"w": 40, "h": 30}, - "spriteSourceSize": {"x": 0, "y": 0, "w": 40, "h": 30}, - "frame": {"x": 200, "y": 210, "w": 40, "h": 30} + "sourceSize": { + "w": 40, + "h": 30 + }, + "spriteSourceSize": { + "x": 0, + "y": 0, + "w": 40, + "h": 30 + }, + "frame": { + "x": 440, + "y": 210, + "w": 40, + "h": 30 + } }, { "filename": "56_1", "rotated": false, "trimmed": false, - "sourceSize": {"w": 40, "h": 30}, - "spriteSourceSize": {"x": 0, "y": 0, "w": 40, "h": 30}, - "frame": {"x": 240, "y": 210, "w": 40, "h": 30} + "sourceSize": { + "w": 40, + "h": 30 + }, + "spriteSourceSize": { + "x": 0, + "y": 0, + "w": 40, + "h": 30 + }, + "frame": { + "x": 480, + "y": 210, + "w": 40, + "h": 30 + } }, { "filename": "56_2", "rotated": false, "trimmed": false, - "sourceSize": {"w": 40, "h": 30}, - "spriteSourceSize": {"x": 0, "y": 0, "w": 40, "h": 30}, - "frame": {"x": 280, "y": 210, "w": 40, "h": 30} + "sourceSize": { + "w": 40, + "h": 30 + }, + "spriteSourceSize": { + "x": 0, + "y": 0, + "w": 40, + "h": 30 + }, + "frame": { + "x": 520, + "y": 210, + "w": 40, + "h": 30 + } }, { "filename": "56_3", "rotated": false, "trimmed": false, - "sourceSize": {"w": 40, "h": 30}, - "spriteSourceSize": {"x": 0, "y": 0, "w": 40, "h": 30}, - "frame": {"x": 320, "y": 210, "w": 40, "h": 30} + "sourceSize": { + "w": 40, + "h": 30 + }, + "spriteSourceSize": { + "x": 0, + "y": 0, + "w": 40, + "h": 30 + }, + "frame": { + "x": 560, + "y": 210, + "w": 40, + "h": 30 + } }, { "filename": "57_1", "rotated": false, "trimmed": false, - "sourceSize": {"w": 40, "h": 30}, - "spriteSourceSize": {"x": 0, "y": 0, "w": 40, "h": 30}, - "frame": {"x": 360, "y": 210, "w": 40, "h": 30} + "sourceSize": { + "w": 40, + "h": 30 + }, + "spriteSourceSize": { + "x": 0, + "y": 0, + "w": 40, + "h": 30 + }, + "frame": { + "x": 0, + "y": 240, + "w": 40, + "h": 30 + } }, { "filename": "57_2", "rotated": false, "trimmed": false, - "sourceSize": {"w": 40, "h": 30}, - "spriteSourceSize": {"x": 0, "y": 0, "w": 40, "h": 30}, - "frame": {"x": 400, "y": 210, "w": 40, "h": 30} + "sourceSize": { + "w": 40, + "h": 30 + }, + "spriteSourceSize": { + "x": 0, + "y": 0, + "w": 40, + "h": 30 + }, + "frame": { + "x": 40, + "y": 240, + "w": 40, + "h": 30 + } }, { "filename": "57_3", "rotated": false, "trimmed": false, - "sourceSize": {"w": 40, "h": 30}, - "spriteSourceSize": {"x": 0, "y": 0, "w": 40, "h": 30}, - "frame": {"x": 440, "y": 210, "w": 40, "h": 30} + "sourceSize": { + "w": 40, + "h": 30 + }, + "spriteSourceSize": { + "x": 0, + "y": 0, + "w": 40, + "h": 30 + }, + "frame": { + "x": 80, + "y": 240, + "w": 40, + "h": 30 + } }, { "filename": "69_2", "rotated": false, "trimmed": false, - "sourceSize": {"w": 40, "h": 30}, - "spriteSourceSize": {"x": 0, "y": 0, "w": 40, "h": 30}, - "frame": {"x": 480, "y": 210, "w": 40, "h": 30} + "sourceSize": { + "w": 40, + "h": 30 + }, + "spriteSourceSize": { + "x": 0, + "y": 0, + "w": 40, + "h": 30 + }, + "frame": { + "x": 120, + "y": 240, + "w": 40, + "h": 30 + } }, { "filename": "69_3", "rotated": false, "trimmed": false, - "sourceSize": {"w": 40, "h": 30}, - "spriteSourceSize": {"x": 0, "y": 0, "w": 40, "h": 30}, - "frame": {"x": 520, "y": 210, "w": 40, "h": 30} + "sourceSize": { + "w": 40, + "h": 30 + }, + "spriteSourceSize": { + "x": 0, + "y": 0, + "w": 40, + "h": 30 + }, + "frame": { + "x": 160, + "y": 240, + "w": 40, + "h": 30 + } }, { "filename": "70_2", "rotated": false, "trimmed": false, - "sourceSize": {"w": 40, "h": 30}, - "spriteSourceSize": {"x": 0, "y": 0, "w": 40, "h": 30}, - "frame": {"x": 560, "y": 210, "w": 40, "h": 30} + "sourceSize": { + "w": 40, + "h": 30 + }, + "spriteSourceSize": { + "x": 0, + "y": 0, + "w": 40, + "h": 30 + }, + "frame": { + "x": 200, + "y": 240, + "w": 40, + "h": 30 + } }, { "filename": "70_3", "rotated": false, "trimmed": false, - "sourceSize": {"w": 40, "h": 30}, - "spriteSourceSize": {"x": 0, "y": 0, "w": 40, "h": 30}, - "frame": {"x": 0, "y": 240, "w": 40, "h": 30} + "sourceSize": { + "w": 40, + "h": 30 + }, + "spriteSourceSize": { + "x": 0, + "y": 0, + "w": 40, + "h": 30 + }, + "frame": { + "x": 240, + "y": 240, + "w": 40, + "h": 30 + } }, { "filename": "71_2", "rotated": false, "trimmed": false, - "sourceSize": {"w": 40, "h": 30}, - "spriteSourceSize": {"x": 0, "y": 0, "w": 40, "h": 30}, - "frame": {"x": 40, "y": 240, "w": 40, "h": 30} + "sourceSize": { + "w": 40, + "h": 30 + }, + "spriteSourceSize": { + "x": 0, + "y": 0, + "w": 40, + "h": 30 + }, + "frame": { + "x": 280, + "y": 240, + "w": 40, + "h": 30 + } }, { "filename": "71_3", "rotated": false, "trimmed": false, - "sourceSize": {"w": 40, "h": 30}, - "spriteSourceSize": {"x": 0, "y": 0, "w": 40, "h": 30}, - "frame": {"x": 80, "y": 240, "w": 40, "h": 30} + "sourceSize": { + "w": 40, + "h": 30 + }, + "spriteSourceSize": { + "x": 0, + "y": 0, + "w": 40, + "h": 30 + }, + "frame": { + "x": 320, + "y": 240, + "w": 40, + "h": 30 + } }, { "filename": "77_2", "rotated": false, "trimmed": false, - "sourceSize": {"w": 40, "h": 30}, - "spriteSourceSize": {"x": 0, "y": 0, "w": 40, "h": 30}, - "frame": {"x": 120, "y": 240, "w": 40, "h": 30} + "sourceSize": { + "w": 40, + "h": 30 + }, + "spriteSourceSize": { + "x": 0, + "y": 0, + "w": 40, + "h": 30 + }, + "frame": { + "x": 360, + "y": 240, + "w": 40, + "h": 30 + } }, { "filename": "77_3", "rotated": false, "trimmed": false, - "sourceSize": {"w": 40, "h": 30}, - "spriteSourceSize": {"x": 0, "y": 0, "w": 40, "h": 30}, - "frame": {"x": 160, "y": 240, "w": 40, "h": 30} + "sourceSize": { + "w": 40, + "h": 30 + }, + "spriteSourceSize": { + "x": 0, + "y": 0, + "w": 40, + "h": 30 + }, + "frame": { + "x": 400, + "y": 240, + "w": 40, + "h": 30 + } }, { "filename": "78_2", "rotated": false, "trimmed": false, - "sourceSize": {"w": 40, "h": 30}, - "spriteSourceSize": {"x": 0, "y": 0, "w": 40, "h": 30}, - "frame": {"x": 200, "y": 240, "w": 40, "h": 30} + "sourceSize": { + "w": 40, + "h": 30 + }, + "spriteSourceSize": { + "x": 0, + "y": 0, + "w": 40, + "h": 30 + }, + "frame": { + "x": 440, + "y": 240, + "w": 40, + "h": 30 + } }, { "filename": "78_3", "rotated": false, "trimmed": false, - "sourceSize": {"w": 40, "h": 30}, - "spriteSourceSize": {"x": 0, "y": 0, "w": 40, "h": 30}, - "frame": {"x": 240, "y": 240, "w": 40, "h": 30} + "sourceSize": { + "w": 40, + "h": 30 + }, + "spriteSourceSize": { + "x": 0, + "y": 0, + "w": 40, + "h": 30 + }, + "frame": { + "x": 480, + "y": 240, + "w": 40, + "h": 30 + } }, { "filename": "79_1", "rotated": false, "trimmed": false, - "sourceSize": {"w": 40, "h": 30}, - "spriteSourceSize": {"x": 0, "y": 0, "w": 40, "h": 30}, - "frame": {"x": 280, "y": 240, "w": 40, "h": 30} + "sourceSize": { + "w": 40, + "h": 30 + }, + "spriteSourceSize": { + "x": 0, + "y": 0, + "w": 40, + "h": 30 + }, + "frame": { + "x": 520, + "y": 240, + "w": 40, + "h": 30 + } }, { "filename": "79_2", "rotated": false, "trimmed": false, - "sourceSize": {"w": 40, "h": 30}, - "spriteSourceSize": {"x": 0, "y": 0, "w": 40, "h": 30}, - "frame": {"x": 320, "y": 240, "w": 40, "h": 30} + "sourceSize": { + "w": 40, + "h": 30 + }, + "spriteSourceSize": { + "x": 0, + "y": 0, + "w": 40, + "h": 30 + }, + "frame": { + "x": 560, + "y": 240, + "w": 40, + "h": 30 + } }, { "filename": "79_3", "rotated": false, "trimmed": false, - "sourceSize": {"w": 40, "h": 30}, - "spriteSourceSize": {"x": 0, "y": 0, "w": 40, "h": 30}, - "frame": {"x": 360, "y": 240, "w": 40, "h": 30} + "sourceSize": { + "w": 40, + "h": 30 + }, + "spriteSourceSize": { + "x": 0, + "y": 0, + "w": 40, + "h": 30 + }, + "frame": { + "x": 0, + "y": 270, + "w": 40, + "h": 30 + } }, { "filename": "80-mega_2", "rotated": false, "trimmed": false, - "sourceSize": {"w": 40, "h": 30}, - "spriteSourceSize": {"x": 0, "y": 0, "w": 40, "h": 30}, - "frame": {"x": 400, "y": 240, "w": 40, "h": 30} + "sourceSize": { + "w": 40, + "h": 30 + }, + "spriteSourceSize": { + "x": 0, + "y": 0, + "w": 40, + "h": 30 + }, + "frame": { + "x": 40, + "y": 270, + "w": 40, + "h": 30 + } }, { "filename": "80-mega_3", "rotated": false, "trimmed": false, - "sourceSize": {"w": 40, "h": 30}, - "spriteSourceSize": {"x": 0, "y": 0, "w": 40, "h": 30}, - "frame": {"x": 440, "y": 240, "w": 40, "h": 30} + "sourceSize": { + "w": 40, + "h": 30 + }, + "spriteSourceSize": { + "x": 0, + "y": 0, + "w": 40, + "h": 30 + }, + "frame": { + "x": 80, + "y": 270, + "w": 40, + "h": 30 + } }, { "filename": "80_2", "rotated": false, "trimmed": false, - "sourceSize": {"w": 40, "h": 30}, - "spriteSourceSize": {"x": 0, "y": 0, "w": 40, "h": 30}, - "frame": {"x": 480, "y": 240, "w": 40, "h": 30} + "sourceSize": { + "w": 40, + "h": 30 + }, + "spriteSourceSize": { + "x": 0, + "y": 0, + "w": 40, + "h": 30 + }, + "frame": { + "x": 120, + "y": 270, + "w": 40, + "h": 30 + } }, { "filename": "80_3", "rotated": false, "trimmed": false, - "sourceSize": {"w": 40, "h": 30}, - "spriteSourceSize": {"x": 0, "y": 0, "w": 40, "h": 30}, - "frame": {"x": 520, "y": 240, "w": 40, "h": 30} + "sourceSize": { + "w": 40, + "h": 30 + }, + "spriteSourceSize": { + "x": 0, + "y": 0, + "w": 40, + "h": 30 + }, + "frame": { + "x": 160, + "y": 270, + "w": 40, + "h": 30 + } }, { "filename": "81_2", "rotated": false, "trimmed": false, - "sourceSize": {"w": 40, "h": 30}, - "spriteSourceSize": {"x": 0, "y": 0, "w": 40, "h": 30}, - "frame": {"x": 560, "y": 240, "w": 40, "h": 30} + "sourceSize": { + "w": 40, + "h": 30 + }, + "spriteSourceSize": { + "x": 0, + "y": 0, + "w": 40, + "h": 30 + }, + "frame": { + "x": 200, + "y": 270, + "w": 40, + "h": 30 + } }, { "filename": "81_3", "rotated": false, "trimmed": false, - "sourceSize": {"w": 40, "h": 30}, - "spriteSourceSize": {"x": 0, "y": 0, "w": 40, "h": 30}, - "frame": {"x": 0, "y": 270, "w": 40, "h": 30} + "sourceSize": { + "w": 40, + "h": 30 + }, + "spriteSourceSize": { + "x": 0, + "y": 0, + "w": 40, + "h": 30 + }, + "frame": { + "x": 240, + "y": 270, + "w": 40, + "h": 30 + } }, { "filename": "82_2", "rotated": false, "trimmed": false, - "sourceSize": {"w": 40, "h": 30}, - "spriteSourceSize": {"x": 0, "y": 0, "w": 40, "h": 30}, - "frame": {"x": 40, "y": 270, "w": 40, "h": 30} + "sourceSize": { + "w": 40, + "h": 30 + }, + "spriteSourceSize": { + "x": 0, + "y": 0, + "w": 40, + "h": 30 + }, + "frame": { + "x": 280, + "y": 270, + "w": 40, + "h": 30 + } }, { "filename": "82_3", "rotated": false, "trimmed": false, - "sourceSize": {"w": 40, "h": 30}, - "spriteSourceSize": {"x": 0, "y": 0, "w": 40, "h": 30}, - "frame": {"x": 80, "y": 270, "w": 40, "h": 30} + "sourceSize": { + "w": 40, + "h": 30 + }, + "spriteSourceSize": { + "x": 0, + "y": 0, + "w": 40, + "h": 30 + }, + "frame": { + "x": 320, + "y": 270, + "w": 40, + "h": 30 + } }, { "filename": "83_2", "rotated": false, "trimmed": false, - "sourceSize": {"w": 40, "h": 30}, - "spriteSourceSize": {"x": 0, "y": 0, "w": 40, "h": 30}, - "frame": {"x": 120, "y": 270, "w": 40, "h": 30} + "sourceSize": { + "w": 40, + "h": 30 + }, + "spriteSourceSize": { + "x": 0, + "y": 0, + "w": 40, + "h": 30 + }, + "frame": { + "x": 360, + "y": 270, + "w": 40, + "h": 30 + } }, { "filename": "83_3", "rotated": false, "trimmed": false, - "sourceSize": {"w": 40, "h": 30}, - "spriteSourceSize": {"x": 0, "y": 0, "w": 40, "h": 30}, - "frame": {"x": 160, "y": 270, "w": 40, "h": 30} + "sourceSize": { + "w": 40, + "h": 30 + }, + "spriteSourceSize": { + "x": 0, + "y": 0, + "w": 40, + "h": 30 + }, + "frame": { + "x": 400, + "y": 270, + "w": 40, + "h": 30 + } }, { "filename": "84-f_1", "rotated": false, "trimmed": false, - "sourceSize": {"w": 40, "h": 30}, - "spriteSourceSize": {"x": 0, "y": 0, "w": 40, "h": 30}, - "frame": {"x": 200, "y": 270, "w": 40, "h": 30} - }, - { - "filename": "84-f_2", - "rotated": false, - "trimmed": false, - "sourceSize": {"w": 40, "h": 30}, - "spriteSourceSize": {"x": 0, "y": 0, "w": 40, "h": 30}, - "frame": {"x": 240, "y": 270, "w": 40, "h": 30} - }, - { - "filename": "84-f_3", - "rotated": false, - "trimmed": false, - "sourceSize": {"w": 40, "h": 30}, - "spriteSourceSize": {"x": 0, "y": 0, "w": 40, "h": 30}, - "frame": {"x": 280, "y": 270, "w": 40, "h": 30} + "sourceSize": { + "w": 40, + "h": 30 + }, + "spriteSourceSize": { + "x": 0, + "y": 0, + "w": 40, + "h": 30 + }, + "frame": { + "x": 440, + "y": 270, + "w": 40, + "h": 30 + } }, { "filename": "84_1", "rotated": false, "trimmed": false, - "sourceSize": {"w": 40, "h": 30}, - "spriteSourceSize": {"x": 0, "y": 0, "w": 40, "h": 30}, - "frame": {"x": 320, "y": 270, "w": 40, "h": 30} + "sourceSize": { + "w": 40, + "h": 30 + }, + "spriteSourceSize": { + "x": 0, + "y": 0, + "w": 40, + "h": 30 + }, + "frame": { + "x": 440, + "y": 270, + "w": 40, + "h": 30 + } + }, + { + "filename": "84-f_2", + "rotated": false, + "trimmed": false, + "sourceSize": { + "w": 40, + "h": 30 + }, + "spriteSourceSize": { + "x": 0, + "y": 0, + "w": 40, + "h": 30 + }, + "frame": { + "x": 480, + "y": 270, + "w": 40, + "h": 30 + } + }, + { + "filename": "84-f_3", + "rotated": false, + "trimmed": false, + "sourceSize": { + "w": 40, + "h": 30 + }, + "spriteSourceSize": { + "x": 0, + "y": 0, + "w": 40, + "h": 30 + }, + "frame": { + "x": 520, + "y": 270, + "w": 40, + "h": 30 + } }, { "filename": "84_2", "rotated": false, "trimmed": false, - "sourceSize": {"w": 40, "h": 30}, - "spriteSourceSize": {"x": 0, "y": 0, "w": 40, "h": 30}, - "frame": {"x": 360, "y": 270, "w": 40, "h": 30} + "sourceSize": { + "w": 40, + "h": 30 + }, + "spriteSourceSize": { + "x": 0, + "y": 0, + "w": 40, + "h": 30 + }, + "frame": { + "x": 560, + "y": 270, + "w": 40, + "h": 30 + } }, { "filename": "84_3", "rotated": false, "trimmed": false, - "sourceSize": {"w": 40, "h": 30}, - "spriteSourceSize": {"x": 0, "y": 0, "w": 40, "h": 30}, - "frame": {"x": 400, "y": 270, "w": 40, "h": 30} + "sourceSize": { + "w": 40, + "h": 30 + }, + "spriteSourceSize": { + "x": 0, + "y": 0, + "w": 40, + "h": 30 + }, + "frame": { + "x": 0, + "y": 300, + "w": 40, + "h": 30 + } }, { "filename": "85-f_1", "rotated": false, "trimmed": false, - "sourceSize": {"w": 40, "h": 30}, - "spriteSourceSize": {"x": 0, "y": 0, "w": 40, "h": 30}, - "frame": {"x": 440, "y": 270, "w": 40, "h": 30} - }, - { - "filename": "85-f_2", - "rotated": false, - "trimmed": false, - "sourceSize": {"w": 40, "h": 30}, - "spriteSourceSize": {"x": 0, "y": 0, "w": 40, "h": 30}, - "frame": {"x": 480, "y": 270, "w": 40, "h": 30} - }, - { - "filename": "85-f_3", - "rotated": false, - "trimmed": false, - "sourceSize": {"w": 40, "h": 30}, - "spriteSourceSize": {"x": 0, "y": 0, "w": 40, "h": 30}, - "frame": {"x": 520, "y": 270, "w": 40, "h": 30} + "sourceSize": { + "w": 40, + "h": 30 + }, + "spriteSourceSize": { + "x": 0, + "y": 0, + "w": 40, + "h": 30 + }, + "frame": { + "x": 40, + "y": 300, + "w": 40, + "h": 30 + } }, { "filename": "85_1", "rotated": false, "trimmed": false, - "sourceSize": {"w": 40, "h": 30}, - "spriteSourceSize": {"x": 0, "y": 0, "w": 40, "h": 30}, - "frame": {"x": 560, "y": 270, "w": 40, "h": 30} + "sourceSize": { + "w": 40, + "h": 30 + }, + "spriteSourceSize": { + "x": 0, + "y": 0, + "w": 40, + "h": 30 + }, + "frame": { + "x": 40, + "y": 300, + "w": 40, + "h": 30 + } + }, + { + "filename": "85-f_2", + "rotated": false, + "trimmed": false, + "sourceSize": { + "w": 40, + "h": 30 + }, + "spriteSourceSize": { + "x": 0, + "y": 0, + "w": 40, + "h": 30 + }, + "frame": { + "x": 80, + "y": 300, + "w": 40, + "h": 30 + } + }, + { + "filename": "85-f_3", + "rotated": false, + "trimmed": false, + "sourceSize": { + "w": 40, + "h": 30 + }, + "spriteSourceSize": { + "x": 0, + "y": 0, + "w": 40, + "h": 30 + }, + "frame": { + "x": 120, + "y": 300, + "w": 40, + "h": 30 + } }, { "filename": "85_2", "rotated": false, "trimmed": false, - "sourceSize": {"w": 40, "h": 30}, - "spriteSourceSize": {"x": 0, "y": 0, "w": 40, "h": 30}, - "frame": {"x": 0, "y": 300, "w": 40, "h": 30} + "sourceSize": { + "w": 40, + "h": 30 + }, + "spriteSourceSize": { + "x": 0, + "y": 0, + "w": 40, + "h": 30 + }, + "frame": { + "x": 160, + "y": 300, + "w": 40, + "h": 30 + } }, { "filename": "85_3", "rotated": false, "trimmed": false, - "sourceSize": {"w": 40, "h": 30}, - "spriteSourceSize": {"x": 0, "y": 0, "w": 40, "h": 30}, - "frame": {"x": 40, "y": 300, "w": 40, "h": 30} + "sourceSize": { + "w": 40, + "h": 30 + }, + "spriteSourceSize": { + "x": 0, + "y": 0, + "w": 40, + "h": 30 + }, + "frame": { + "x": 200, + "y": 300, + "w": 40, + "h": 30 + } }, { "filename": "86_1", "rotated": false, "trimmed": false, - "sourceSize": {"w": 40, "h": 30}, - "spriteSourceSize": {"x": 0, "y": 0, "w": 40, "h": 30}, - "frame": {"x": 80, "y": 300, "w": 40, "h": 30} + "sourceSize": { + "w": 40, + "h": 30 + }, + "spriteSourceSize": { + "x": 0, + "y": 0, + "w": 40, + "h": 30 + }, + "frame": { + "x": 240, + "y": 300, + "w": 40, + "h": 30 + } }, { "filename": "86_2", "rotated": false, "trimmed": false, - "sourceSize": {"w": 40, "h": 30}, - "spriteSourceSize": {"x": 0, "y": 0, "w": 40, "h": 30}, - "frame": {"x": 120, "y": 300, "w": 40, "h": 30} + "sourceSize": { + "w": 40, + "h": 30 + }, + "spriteSourceSize": { + "x": 0, + "y": 0, + "w": 40, + "h": 30 + }, + "frame": { + "x": 280, + "y": 300, + "w": 40, + "h": 30 + } }, { "filename": "86_3", "rotated": false, "trimmed": false, - "sourceSize": {"w": 40, "h": 30}, - "spriteSourceSize": {"x": 0, "y": 0, "w": 40, "h": 30}, - "frame": {"x": 160, "y": 300, "w": 40, "h": 30} + "sourceSize": { + "w": 40, + "h": 30 + }, + "spriteSourceSize": { + "x": 0, + "y": 0, + "w": 40, + "h": 30 + }, + "frame": { + "x": 320, + "y": 300, + "w": 40, + "h": 30 + } }, { "filename": "87_1", "rotated": false, "trimmed": false, - "sourceSize": {"w": 40, "h": 30}, - "spriteSourceSize": {"x": 0, "y": 0, "w": 40, "h": 30}, - "frame": {"x": 200, "y": 300, "w": 40, "h": 30} + "sourceSize": { + "w": 40, + "h": 30 + }, + "spriteSourceSize": { + "x": 0, + "y": 0, + "w": 40, + "h": 30 + }, + "frame": { + "x": 360, + "y": 300, + "w": 40, + "h": 30 + } }, { "filename": "87_2", "rotated": false, "trimmed": false, - "sourceSize": {"w": 40, "h": 30}, - "spriteSourceSize": {"x": 0, "y": 0, "w": 40, "h": 30}, - "frame": {"x": 240, "y": 300, "w": 40, "h": 30} + "sourceSize": { + "w": 40, + "h": 30 + }, + "spriteSourceSize": { + "x": 0, + "y": 0, + "w": 40, + "h": 30 + }, + "frame": { + "x": 400, + "y": 300, + "w": 40, + "h": 30 + } }, { "filename": "87_3", "rotated": false, "trimmed": false, - "sourceSize": {"w": 40, "h": 30}, - "spriteSourceSize": {"x": 0, "y": 0, "w": 40, "h": 30}, - "frame": {"x": 280, "y": 300, "w": 40, "h": 30} + "sourceSize": { + "w": 40, + "h": 30 + }, + "spriteSourceSize": { + "x": 0, + "y": 0, + "w": 40, + "h": 30 + }, + "frame": { + "x": 440, + "y": 300, + "w": 40, + "h": 30 + } + }, + { + "filename": "88_2", + "rotated": false, + "trimmed": false, + "sourceSize": { + "w": 40, + "h": 30 + }, + "spriteSourceSize": { + "x": 0, + "y": 0, + "w": 40, + "h": 30 + }, + "frame": { + "x": 480, + "y": 300, + "w": 40, + "h": 30 + } + }, + { + "filename": "88_3", + "rotated": false, + "trimmed": false, + "sourceSize": { + "w": 40, + "h": 30 + }, + "spriteSourceSize": { + "x": 0, + "y": 0, + "w": 40, + "h": 30 + }, + "frame": { + "x": 520, + "y": 300, + "w": 40, + "h": 30 + } + }, + { + "filename": "89_2", + "rotated": false, + "trimmed": false, + "sourceSize": { + "w": 40, + "h": 30 + }, + "spriteSourceSize": { + "x": 0, + "y": 0, + "w": 40, + "h": 30 + }, + "frame": { + "x": 560, + "y": 300, + "w": 40, + "h": 30 + } + }, + { + "filename": "89_3", + "rotated": false, + "trimmed": false, + "sourceSize": { + "w": 40, + "h": 30 + }, + "spriteSourceSize": { + "x": 0, + "y": 0, + "w": 40, + "h": 30 + }, + "frame": { + "x": 0, + "y": 330, + "w": 40, + "h": 30 + } }, { "filename": "92_1", "rotated": false, "trimmed": false, - "sourceSize": {"w": 40, "h": 30}, - "spriteSourceSize": {"x": 0, "y": 0, "w": 40, "h": 30}, - "frame": {"x": 320, "y": 300, "w": 40, "h": 30} + "sourceSize": { + "w": 40, + "h": 30 + }, + "spriteSourceSize": { + "x": 0, + "y": 0, + "w": 40, + "h": 30 + }, + "frame": { + "x": 40, + "y": 330, + "w": 40, + "h": 30 + } }, { "filename": "92_2", "rotated": false, "trimmed": false, - "sourceSize": {"w": 40, "h": 30}, - "spriteSourceSize": {"x": 0, "y": 0, "w": 40, "h": 30}, - "frame": {"x": 360, "y": 300, "w": 40, "h": 30} + "sourceSize": { + "w": 40, + "h": 30 + }, + "spriteSourceSize": { + "x": 0, + "y": 0, + "w": 40, + "h": 30 + }, + "frame": { + "x": 80, + "y": 330, + "w": 40, + "h": 30 + } }, { "filename": "92_3", "rotated": false, "trimmed": false, - "sourceSize": {"w": 40, "h": 30}, - "spriteSourceSize": {"x": 0, "y": 0, "w": 40, "h": 30}, - "frame": {"x": 400, "y": 300, "w": 40, "h": 30} + "sourceSize": { + "w": 40, + "h": 30 + }, + "spriteSourceSize": { + "x": 0, + "y": 0, + "w": 40, + "h": 30 + }, + "frame": { + "x": 120, + "y": 330, + "w": 40, + "h": 30 + } }, { "filename": "93_1", "rotated": false, "trimmed": false, - "sourceSize": {"w": 40, "h": 30}, - "spriteSourceSize": {"x": 0, "y": 0, "w": 40, "h": 30}, - "frame": {"x": 440, "y": 300, "w": 40, "h": 30} + "sourceSize": { + "w": 40, + "h": 30 + }, + "spriteSourceSize": { + "x": 0, + "y": 0, + "w": 40, + "h": 30 + }, + "frame": { + "x": 160, + "y": 330, + "w": 40, + "h": 30 + } }, { "filename": "93_2", "rotated": false, "trimmed": false, - "sourceSize": {"w": 40, "h": 30}, - "spriteSourceSize": {"x": 0, "y": 0, "w": 40, "h": 30}, - "frame": {"x": 480, "y": 300, "w": 40, "h": 30} + "sourceSize": { + "w": 40, + "h": 30 + }, + "spriteSourceSize": { + "x": 0, + "y": 0, + "w": 40, + "h": 30 + }, + "frame": { + "x": 200, + "y": 330, + "w": 40, + "h": 30 + } }, { "filename": "93_3", "rotated": false, "trimmed": false, - "sourceSize": {"w": 40, "h": 30}, - "spriteSourceSize": {"x": 0, "y": 0, "w": 40, "h": 30}, - "frame": {"x": 520, "y": 300, "w": 40, "h": 30} + "sourceSize": { + "w": 40, + "h": 30 + }, + "spriteSourceSize": { + "x": 0, + "y": 0, + "w": 40, + "h": 30 + }, + "frame": { + "x": 240, + "y": 330, + "w": 40, + "h": 30 + } }, { "filename": "94-gigantamax_1", "rotated": false, "trimmed": false, - "sourceSize": {"w": 40, "h": 30}, - "spriteSourceSize": {"x": 0, "y": 0, "w": 40, "h": 30}, - "frame": {"x": 560, "y": 300, "w": 40, "h": 30} + "sourceSize": { + "w": 40, + "h": 30 + }, + "spriteSourceSize": { + "x": 0, + "y": 0, + "w": 40, + "h": 30 + }, + "frame": { + "x": 280, + "y": 330, + "w": 40, + "h": 30 + } }, { "filename": "94-gigantamax_2", "rotated": false, "trimmed": false, - "sourceSize": {"w": 40, "h": 30}, - "spriteSourceSize": {"x": 0, "y": 0, "w": 40, "h": 30}, - "frame": {"x": 0, "y": 330, "w": 40, "h": 30} + "sourceSize": { + "w": 40, + "h": 30 + }, + "spriteSourceSize": { + "x": 0, + "y": 0, + "w": 40, + "h": 30 + }, + "frame": { + "x": 320, + "y": 330, + "w": 40, + "h": 30 + } }, { "filename": "94-gigantamax_3", "rotated": false, "trimmed": false, - "sourceSize": {"w": 40, "h": 30}, - "spriteSourceSize": {"x": 0, "y": 0, "w": 40, "h": 30}, - "frame": {"x": 40, "y": 330, "w": 40, "h": 30} + "sourceSize": { + "w": 40, + "h": 30 + }, + "spriteSourceSize": { + "x": 0, + "y": 0, + "w": 40, + "h": 30 + }, + "frame": { + "x": 360, + "y": 330, + "w": 40, + "h": 30 + } }, { "filename": "94-mega_1", "rotated": false, "trimmed": false, - "sourceSize": {"w": 40, "h": 30}, - "spriteSourceSize": {"x": 0, "y": 0, "w": 40, "h": 30}, - "frame": {"x": 80, "y": 330, "w": 40, "h": 30} + "sourceSize": { + "w": 40, + "h": 30 + }, + "spriteSourceSize": { + "x": 0, + "y": 0, + "w": 40, + "h": 30 + }, + "frame": { + "x": 400, + "y": 330, + "w": 40, + "h": 30 + } }, { "filename": "94-mega_2", "rotated": false, "trimmed": false, - "sourceSize": {"w": 40, "h": 30}, - "spriteSourceSize": {"x": 0, "y": 0, "w": 40, "h": 30}, - "frame": {"x": 120, "y": 330, "w": 40, "h": 30} + "sourceSize": { + "w": 40, + "h": 30 + }, + "spriteSourceSize": { + "x": 0, + "y": 0, + "w": 40, + "h": 30 + }, + "frame": { + "x": 440, + "y": 330, + "w": 40, + "h": 30 + } }, { "filename": "94-mega_3", "rotated": false, "trimmed": false, - "sourceSize": {"w": 40, "h": 30}, - "spriteSourceSize": {"x": 0, "y": 0, "w": 40, "h": 30}, - "frame": {"x": 160, "y": 330, "w": 40, "h": 30} + "sourceSize": { + "w": 40, + "h": 30 + }, + "spriteSourceSize": { + "x": 0, + "y": 0, + "w": 40, + "h": 30 + }, + "frame": { + "x": 480, + "y": 330, + "w": 40, + "h": 30 + } }, { "filename": "94_1", "rotated": false, "trimmed": false, - "sourceSize": {"w": 40, "h": 30}, - "spriteSourceSize": {"x": 0, "y": 0, "w": 40, "h": 30}, - "frame": {"x": 200, "y": 330, "w": 40, "h": 30} + "sourceSize": { + "w": 40, + "h": 30 + }, + "spriteSourceSize": { + "x": 0, + "y": 0, + "w": 40, + "h": 30 + }, + "frame": { + "x": 520, + "y": 330, + "w": 40, + "h": 30 + } }, { "filename": "94_2", "rotated": false, "trimmed": false, - "sourceSize": {"w": 40, "h": 30}, - "spriteSourceSize": {"x": 0, "y": 0, "w": 40, "h": 30}, - "frame": {"x": 240, "y": 330, "w": 40, "h": 30} + "sourceSize": { + "w": 40, + "h": 30 + }, + "spriteSourceSize": { + "x": 0, + "y": 0, + "w": 40, + "h": 30 + }, + "frame": { + "x": 560, + "y": 330, + "w": 40, + "h": 30 + } }, { "filename": "94_3", "rotated": false, "trimmed": false, - "sourceSize": {"w": 40, "h": 30}, - "spriteSourceSize": {"x": 0, "y": 0, "w": 40, "h": 30}, - "frame": {"x": 280, "y": 330, "w": 40, "h": 30} + "sourceSize": { + "w": 40, + "h": 30 + }, + "spriteSourceSize": { + "x": 0, + "y": 0, + "w": 40, + "h": 30 + }, + "frame": { + "x": 0, + "y": 360, + "w": 40, + "h": 30 + } }, { "filename": "98_2", "rotated": false, "trimmed": false, - "sourceSize": {"w": 40, "h": 30}, - "spriteSourceSize": {"x": 0, "y": 0, "w": 40, "h": 30}, - "frame": {"x": 320, "y": 330, "w": 40, "h": 30} + "sourceSize": { + "w": 40, + "h": 30 + }, + "spriteSourceSize": { + "x": 0, + "y": 0, + "w": 40, + "h": 30 + }, + "frame": { + "x": 40, + "y": 360, + "w": 40, + "h": 30 + } }, { "filename": "98_3", "rotated": false, "trimmed": false, - "sourceSize": {"w": 40, "h": 30}, - "spriteSourceSize": {"x": 0, "y": 0, "w": 40, "h": 30}, - "frame": {"x": 360, "y": 330, "w": 40, "h": 30} + "sourceSize": { + "w": 40, + "h": 30 + }, + "spriteSourceSize": { + "x": 0, + "y": 0, + "w": 40, + "h": 30 + }, + "frame": { + "x": 80, + "y": 360, + "w": 40, + "h": 30 + } }, { "filename": "99-gigantamax_2", "rotated": false, "trimmed": false, - "sourceSize": {"w": 40, "h": 30}, - "spriteSourceSize": {"x": 0, "y": 0, "w": 40, "h": 30}, - "frame": {"x": 400, "y": 330, "w": 40, "h": 30} + "sourceSize": { + "w": 40, + "h": 30 + }, + "spriteSourceSize": { + "x": 0, + "y": 0, + "w": 40, + "h": 30 + }, + "frame": { + "x": 120, + "y": 360, + "w": 40, + "h": 30 + } }, { "filename": "99-gigantamax_3", "rotated": false, "trimmed": false, - "sourceSize": {"w": 40, "h": 30}, - "spriteSourceSize": {"x": 0, "y": 0, "w": 40, "h": 30}, - "frame": {"x": 440, "y": 330, "w": 40, "h": 30} + "sourceSize": { + "w": 40, + "h": 30 + }, + "spriteSourceSize": { + "x": 0, + "y": 0, + "w": 40, + "h": 30 + }, + "frame": { + "x": 160, + "y": 360, + "w": 40, + "h": 30 + } }, { "filename": "99_2", "rotated": false, "trimmed": false, - "sourceSize": {"w": 40, "h": 30}, - "spriteSourceSize": {"x": 0, "y": 0, "w": 40, "h": 30}, - "frame": {"x": 480, "y": 330, "w": 40, "h": 30} + "sourceSize": { + "w": 40, + "h": 30 + }, + "spriteSourceSize": { + "x": 0, + "y": 0, + "w": 40, + "h": 30 + }, + "frame": { + "x": 200, + "y": 360, + "w": 40, + "h": 30 + } }, { "filename": "99_3", "rotated": false, "trimmed": false, - "sourceSize": {"w": 40, "h": 30}, - "spriteSourceSize": {"x": 0, "y": 0, "w": 40, "h": 30}, - "frame": {"x": 520, "y": 330, "w": 40, "h": 30} + "sourceSize": { + "w": 40, + "h": 30 + }, + "spriteSourceSize": { + "x": 0, + "y": 0, + "w": 40, + "h": 30 + }, + "frame": { + "x": 240, + "y": 360, + "w": 40, + "h": 30 + } }, { "filename": "100_2", "rotated": false, "trimmed": false, - "sourceSize": {"w": 40, "h": 30}, - "spriteSourceSize": {"x": 0, "y": 0, "w": 40, "h": 30}, - "frame": {"x": 560, "y": 330, "w": 40, "h": 30} + "sourceSize": { + "w": 40, + "h": 30 + }, + "spriteSourceSize": { + "x": 0, + "y": 0, + "w": 40, + "h": 30 + }, + "frame": { + "x": 280, + "y": 360, + "w": 40, + "h": 30 + } }, { "filename": "100_3", "rotated": false, "trimmed": false, - "sourceSize": {"w": 40, "h": 30}, - "spriteSourceSize": {"x": 0, "y": 0, "w": 40, "h": 30}, - "frame": {"x": 0, "y": 360, "w": 40, "h": 30} + "sourceSize": { + "w": 40, + "h": 30 + }, + "spriteSourceSize": { + "x": 0, + "y": 0, + "w": 40, + "h": 30 + }, + "frame": { + "x": 320, + "y": 360, + "w": 40, + "h": 30 + } }, { "filename": "101_2", "rotated": false, "trimmed": false, - "sourceSize": {"w": 40, "h": 30}, - "spriteSourceSize": {"x": 0, "y": 0, "w": 40, "h": 30}, - "frame": {"x": 40, "y": 360, "w": 40, "h": 30} + "sourceSize": { + "w": 40, + "h": 30 + }, + "spriteSourceSize": { + "x": 0, + "y": 0, + "w": 40, + "h": 30 + }, + "frame": { + "x": 360, + "y": 360, + "w": 40, + "h": 30 + } }, { "filename": "101_3", "rotated": false, "trimmed": false, - "sourceSize": {"w": 40, "h": 30}, - "spriteSourceSize": {"x": 0, "y": 0, "w": 40, "h": 30}, - "frame": {"x": 80, "y": 360, "w": 40, "h": 30} + "sourceSize": { + "w": 40, + "h": 30 + }, + "spriteSourceSize": { + "x": 0, + "y": 0, + "w": 40, + "h": 30 + }, + "frame": { + "x": 400, + "y": 360, + "w": 40, + "h": 30 + } }, { "filename": "102_2", "rotated": false, "trimmed": false, - "sourceSize": {"w": 40, "h": 30}, - "spriteSourceSize": {"x": 0, "y": 0, "w": 40, "h": 30}, - "frame": {"x": 120, "y": 360, "w": 40, "h": 30} + "sourceSize": { + "w": 40, + "h": 30 + }, + "spriteSourceSize": { + "x": 0, + "y": 0, + "w": 40, + "h": 30 + }, + "frame": { + "x": 440, + "y": 360, + "w": 40, + "h": 30 + } }, { "filename": "102_3", "rotated": false, "trimmed": false, - "sourceSize": {"w": 40, "h": 30}, - "spriteSourceSize": {"x": 0, "y": 0, "w": 40, "h": 30}, - "frame": {"x": 160, "y": 360, "w": 40, "h": 30} + "sourceSize": { + "w": 40, + "h": 30 + }, + "spriteSourceSize": { + "x": 0, + "y": 0, + "w": 40, + "h": 30 + }, + "frame": { + "x": 480, + "y": 360, + "w": 40, + "h": 30 + } }, { "filename": "103_2", "rotated": false, "trimmed": false, - "sourceSize": {"w": 40, "h": 30}, - "spriteSourceSize": {"x": 0, "y": 0, "w": 40, "h": 30}, - "frame": {"x": 200, "y": 360, "w": 40, "h": 30} + "sourceSize": { + "w": 40, + "h": 30 + }, + "spriteSourceSize": { + "x": 0, + "y": 0, + "w": 40, + "h": 30 + }, + "frame": { + "x": 520, + "y": 360, + "w": 40, + "h": 30 + } }, { "filename": "103_3", "rotated": false, "trimmed": false, - "sourceSize": {"w": 40, "h": 30}, - "spriteSourceSize": {"x": 0, "y": 0, "w": 40, "h": 30}, - "frame": {"x": 240, "y": 360, "w": 40, "h": 30} + "sourceSize": { + "w": 40, + "h": 30 + }, + "spriteSourceSize": { + "x": 0, + "y": 0, + "w": 40, + "h": 30 + }, + "frame": { + "x": 560, + "y": 360, + "w": 40, + "h": 30 + } }, { "filename": "111_2", "rotated": false, "trimmed": false, - "sourceSize": {"w": 40, "h": 30}, - "spriteSourceSize": {"x": 0, "y": 0, "w": 40, "h": 30}, - "frame": {"x": 280, "y": 360, "w": 40, "h": 30} + "sourceSize": { + "w": 40, + "h": 30 + }, + "spriteSourceSize": { + "x": 0, + "y": 0, + "w": 40, + "h": 30 + }, + "frame": { + "x": 0, + "y": 390, + "w": 40, + "h": 30 + } }, { "filename": "111_3", "rotated": false, "trimmed": false, - "sourceSize": {"w": 40, "h": 30}, - "spriteSourceSize": {"x": 0, "y": 0, "w": 40, "h": 30}, - "frame": {"x": 320, "y": 360, "w": 40, "h": 30} + "sourceSize": { + "w": 40, + "h": 30 + }, + "spriteSourceSize": { + "x": 0, + "y": 0, + "w": 40, + "h": 30 + }, + "frame": { + "x": 40, + "y": 390, + "w": 40, + "h": 30 + } }, { "filename": "112_2", "rotated": false, "trimmed": false, - "sourceSize": {"w": 40, "h": 30}, - "spriteSourceSize": {"x": 0, "y": 0, "w": 40, "h": 30}, - "frame": {"x": 360, "y": 360, "w": 40, "h": 30} + "sourceSize": { + "w": 40, + "h": 30 + }, + "spriteSourceSize": { + "x": 0, + "y": 0, + "w": 40, + "h": 30 + }, + "frame": { + "x": 80, + "y": 390, + "w": 40, + "h": 30 + } }, { "filename": "112_3", "rotated": false, "trimmed": false, - "sourceSize": {"w": 40, "h": 30}, - "spriteSourceSize": {"x": 0, "y": 0, "w": 40, "h": 30}, - "frame": {"x": 400, "y": 360, "w": 40, "h": 30} + "sourceSize": { + "w": 40, + "h": 30 + }, + "spriteSourceSize": { + "x": 0, + "y": 0, + "w": 40, + "h": 30 + }, + "frame": { + "x": 120, + "y": 390, + "w": 40, + "h": 30 + } }, { "filename": "113_1", "rotated": false, "trimmed": false, - "sourceSize": {"w": 40, "h": 30}, - "spriteSourceSize": {"x": 0, "y": 0, "w": 40, "h": 30}, - "frame": {"x": 440, "y": 360, "w": 40, "h": 30} + "sourceSize": { + "w": 40, + "h": 30 + }, + "spriteSourceSize": { + "x": 0, + "y": 0, + "w": 40, + "h": 30 + }, + "frame": { + "x": 160, + "y": 390, + "w": 40, + "h": 30 + } }, { "filename": "113_2", "rotated": false, "trimmed": false, - "sourceSize": {"w": 40, "h": 30}, - "spriteSourceSize": {"x": 0, "y": 0, "w": 40, "h": 30}, - "frame": {"x": 480, "y": 360, "w": 40, "h": 30} + "sourceSize": { + "w": 40, + "h": 30 + }, + "spriteSourceSize": { + "x": 0, + "y": 0, + "w": 40, + "h": 30 + }, + "frame": { + "x": 200, + "y": 390, + "w": 40, + "h": 30 + } }, { "filename": "113_3", "rotated": false, "trimmed": false, - "sourceSize": {"w": 40, "h": 30}, - "spriteSourceSize": {"x": 0, "y": 0, "w": 40, "h": 30}, - "frame": {"x": 520, "y": 360, "w": 40, "h": 30} + "sourceSize": { + "w": 40, + "h": 30 + }, + "spriteSourceSize": { + "x": 0, + "y": 0, + "w": 40, + "h": 30 + }, + "frame": { + "x": 240, + "y": 390, + "w": 40, + "h": 30 + } }, { "filename": "114_2", "rotated": false, "trimmed": false, - "sourceSize": {"w": 40, "h": 30}, - "spriteSourceSize": {"x": 0, "y": 0, "w": 40, "h": 30}, - "frame": {"x": 560, "y": 360, "w": 40, "h": 30} + "sourceSize": { + "w": 40, + "h": 30 + }, + "spriteSourceSize": { + "x": 0, + "y": 0, + "w": 40, + "h": 30 + }, + "frame": { + "x": 280, + "y": 390, + "w": 40, + "h": 30 + } }, { "filename": "114_3", "rotated": false, "trimmed": false, - "sourceSize": {"w": 40, "h": 30}, - "spriteSourceSize": {"x": 0, "y": 0, "w": 40, "h": 30}, - "frame": {"x": 0, "y": 390, "w": 40, "h": 30} + "sourceSize": { + "w": 40, + "h": 30 + }, + "spriteSourceSize": { + "x": 0, + "y": 0, + "w": 40, + "h": 30 + }, + "frame": { + "x": 320, + "y": 390, + "w": 40, + "h": 30 + } }, { "filename": "116_2", "rotated": false, "trimmed": false, - "sourceSize": {"w": 40, "h": 30}, - "spriteSourceSize": {"x": 0, "y": 0, "w": 40, "h": 30}, - "frame": {"x": 40, "y": 390, "w": 40, "h": 30} + "sourceSize": { + "w": 40, + "h": 30 + }, + "spriteSourceSize": { + "x": 0, + "y": 0, + "w": 40, + "h": 30 + }, + "frame": { + "x": 360, + "y": 390, + "w": 40, + "h": 30 + } }, { "filename": "116_3", "rotated": false, "trimmed": false, - "sourceSize": {"w": 40, "h": 30}, - "spriteSourceSize": {"x": 0, "y": 0, "w": 40, "h": 30}, - "frame": {"x": 80, "y": 390, "w": 40, "h": 30} + "sourceSize": { + "w": 40, + "h": 30 + }, + "spriteSourceSize": { + "x": 0, + "y": 0, + "w": 40, + "h": 30 + }, + "frame": { + "x": 400, + "y": 390, + "w": 40, + "h": 30 + } }, { "filename": "117_2", "rotated": false, "trimmed": false, - "sourceSize": {"w": 40, "h": 30}, - "spriteSourceSize": {"x": 0, "y": 0, "w": 40, "h": 30}, - "frame": {"x": 120, "y": 390, "w": 40, "h": 30} + "sourceSize": { + "w": 40, + "h": 30 + }, + "spriteSourceSize": { + "x": 0, + "y": 0, + "w": 40, + "h": 30 + }, + "frame": { + "x": 440, + "y": 390, + "w": 40, + "h": 30 + } }, { "filename": "117_3", "rotated": false, "trimmed": false, - "sourceSize": {"w": 40, "h": 30}, - "spriteSourceSize": {"x": 0, "y": 0, "w": 40, "h": 30}, - "frame": {"x": 160, "y": 390, "w": 40, "h": 30} + "sourceSize": { + "w": 40, + "h": 30 + }, + "spriteSourceSize": { + "x": 0, + "y": 0, + "w": 40, + "h": 30 + }, + "frame": { + "x": 480, + "y": 390, + "w": 40, + "h": 30 + } }, { "filename": "118_1", "rotated": false, "trimmed": false, - "sourceSize": {"w": 40, "h": 30}, - "spriteSourceSize": {"x": 0, "y": 0, "w": 40, "h": 30}, - "frame": {"x": 200, "y": 390, "w": 40, "h": 30} + "sourceSize": { + "w": 40, + "h": 30 + }, + "spriteSourceSize": { + "x": 0, + "y": 0, + "w": 40, + "h": 30 + }, + "frame": { + "x": 520, + "y": 390, + "w": 40, + "h": 30 + } }, { "filename": "118_2", "rotated": false, "trimmed": false, - "sourceSize": {"w": 40, "h": 30}, - "spriteSourceSize": {"x": 0, "y": 0, "w": 40, "h": 30}, - "frame": {"x": 240, "y": 390, "w": 40, "h": 30} + "sourceSize": { + "w": 40, + "h": 30 + }, + "spriteSourceSize": { + "x": 0, + "y": 0, + "w": 40, + "h": 30 + }, + "frame": { + "x": 560, + "y": 390, + "w": 40, + "h": 30 + } }, { "filename": "118_3", "rotated": false, "trimmed": false, - "sourceSize": {"w": 40, "h": 30}, - "spriteSourceSize": {"x": 0, "y": 0, "w": 40, "h": 30}, - "frame": {"x": 280, "y": 390, "w": 40, "h": 30} + "sourceSize": { + "w": 40, + "h": 30 + }, + "spriteSourceSize": { + "x": 0, + "y": 0, + "w": 40, + "h": 30 + }, + "frame": { + "x": 0, + "y": 420, + "w": 40, + "h": 30 + } }, { "filename": "119_1", "rotated": false, "trimmed": false, - "sourceSize": {"w": 40, "h": 30}, - "spriteSourceSize": {"x": 0, "y": 0, "w": 40, "h": 30}, - "frame": {"x": 320, "y": 390, "w": 40, "h": 30} + "sourceSize": { + "w": 40, + "h": 30 + }, + "spriteSourceSize": { + "x": 0, + "y": 0, + "w": 40, + "h": 30 + }, + "frame": { + "x": 40, + "y": 420, + "w": 40, + "h": 30 + } }, { "filename": "119_2", "rotated": false, "trimmed": false, - "sourceSize": {"w": 40, "h": 30}, - "spriteSourceSize": {"x": 0, "y": 0, "w": 40, "h": 30}, - "frame": {"x": 360, "y": 390, "w": 40, "h": 30} + "sourceSize": { + "w": 40, + "h": 30 + }, + "spriteSourceSize": { + "x": 0, + "y": 0, + "w": 40, + "h": 30 + }, + "frame": { + "x": 80, + "y": 420, + "w": 40, + "h": 30 + } }, { "filename": "119_3", "rotated": false, "trimmed": false, - "sourceSize": {"w": 40, "h": 30}, - "spriteSourceSize": {"x": 0, "y": 0, "w": 40, "h": 30}, - "frame": {"x": 400, "y": 390, "w": 40, "h": 30} + "sourceSize": { + "w": 40, + "h": 30 + }, + "spriteSourceSize": { + "x": 0, + "y": 0, + "w": 40, + "h": 30 + }, + "frame": { + "x": 120, + "y": 420, + "w": 40, + "h": 30 + } }, { "filename": "120_2", "rotated": false, "trimmed": false, - "sourceSize": {"w": 40, "h": 30}, - "spriteSourceSize": {"x": 0, "y": 0, "w": 40, "h": 30}, - "frame": {"x": 440, "y": 390, "w": 40, "h": 30} + "sourceSize": { + "w": 40, + "h": 30 + }, + "spriteSourceSize": { + "x": 0, + "y": 0, + "w": 40, + "h": 30 + }, + "frame": { + "x": 160, + "y": 420, + "w": 40, + "h": 30 + } }, { "filename": "120_3", "rotated": false, "trimmed": false, - "sourceSize": {"w": 40, "h": 30}, - "spriteSourceSize": {"x": 0, "y": 0, "w": 40, "h": 30}, - "frame": {"x": 480, "y": 390, "w": 40, "h": 30} + "sourceSize": { + "w": 40, + "h": 30 + }, + "spriteSourceSize": { + "x": 0, + "y": 0, + "w": 40, + "h": 30 + }, + "frame": { + "x": 200, + "y": 420, + "w": 40, + "h": 30 + } }, { "filename": "121_2", "rotated": false, "trimmed": false, - "sourceSize": {"w": 40, "h": 30}, - "spriteSourceSize": {"x": 0, "y": 0, "w": 40, "h": 30}, - "frame": {"x": 520, "y": 390, "w": 40, "h": 30} + "sourceSize": { + "w": 40, + "h": 30 + }, + "spriteSourceSize": { + "x": 0, + "y": 0, + "w": 40, + "h": 30 + }, + "frame": { + "x": 240, + "y": 420, + "w": 40, + "h": 30 + } }, { "filename": "121_3", "rotated": false, "trimmed": false, - "sourceSize": {"w": 40, "h": 30}, - "spriteSourceSize": {"x": 0, "y": 0, "w": 40, "h": 30}, - "frame": {"x": 560, "y": 390, "w": 40, "h": 30} + "sourceSize": { + "w": 40, + "h": 30 + }, + "spriteSourceSize": { + "x": 0, + "y": 0, + "w": 40, + "h": 30 + }, + "frame": { + "x": 280, + "y": 420, + "w": 40, + "h": 30 + } }, { "filename": "123_1", "rotated": false, "trimmed": false, - "sourceSize": {"w": 40, "h": 30}, - "spriteSourceSize": {"x": 0, "y": 0, "w": 40, "h": 30}, - "frame": {"x": 0, "y": 420, "w": 40, "h": 30} + "sourceSize": { + "w": 40, + "h": 30 + }, + "spriteSourceSize": { + "x": 0, + "y": 0, + "w": 40, + "h": 30 + }, + "frame": { + "x": 320, + "y": 420, + "w": 40, + "h": 30 + } }, { "filename": "123_2", "rotated": false, "trimmed": false, - "sourceSize": {"w": 40, "h": 30}, - "spriteSourceSize": {"x": 0, "y": 0, "w": 40, "h": 30}, - "frame": {"x": 40, "y": 420, "w": 40, "h": 30} + "sourceSize": { + "w": 40, + "h": 30 + }, + "spriteSourceSize": { + "x": 0, + "y": 0, + "w": 40, + "h": 30 + }, + "frame": { + "x": 360, + "y": 420, + "w": 40, + "h": 30 + } }, { "filename": "123_3", "rotated": false, "trimmed": false, - "sourceSize": {"w": 40, "h": 30}, - "spriteSourceSize": {"x": 0, "y": 0, "w": 40, "h": 30}, - "frame": {"x": 80, "y": 420, "w": 40, "h": 30} + "sourceSize": { + "w": 40, + "h": 30 + }, + "spriteSourceSize": { + "x": 0, + "y": 0, + "w": 40, + "h": 30 + }, + "frame": { + "x": 400, + "y": 420, + "w": 40, + "h": 30 + } }, { "filename": "125_1", "rotated": false, "trimmed": false, - "sourceSize": {"w": 40, "h": 30}, - "spriteSourceSize": {"x": 0, "y": 0, "w": 40, "h": 30}, - "frame": {"x": 120, "y": 420, "w": 40, "h": 30} + "sourceSize": { + "w": 40, + "h": 30 + }, + "spriteSourceSize": { + "x": 0, + "y": 0, + "w": 40, + "h": 30 + }, + "frame": { + "x": 440, + "y": 420, + "w": 40, + "h": 30 + } }, { "filename": "125_2", "rotated": false, "trimmed": false, - "sourceSize": {"w": 40, "h": 30}, - "spriteSourceSize": {"x": 0, "y": 0, "w": 40, "h": 30}, - "frame": {"x": 160, "y": 420, "w": 40, "h": 30} + "sourceSize": { + "w": 40, + "h": 30 + }, + "spriteSourceSize": { + "x": 0, + "y": 0, + "w": 40, + "h": 30 + }, + "frame": { + "x": 480, + "y": 420, + "w": 40, + "h": 30 + } }, { "filename": "125_3", "rotated": false, "trimmed": false, - "sourceSize": {"w": 40, "h": 30}, - "spriteSourceSize": {"x": 0, "y": 0, "w": 40, "h": 30}, - "frame": {"x": 200, "y": 420, "w": 40, "h": 30} + "sourceSize": { + "w": 40, + "h": 30 + }, + "spriteSourceSize": { + "x": 0, + "y": 0, + "w": 40, + "h": 30 + }, + "frame": { + "x": 520, + "y": 420, + "w": 40, + "h": 30 + } }, { "filename": "126_2", "rotated": false, "trimmed": false, - "sourceSize": {"w": 40, "h": 30}, - "spriteSourceSize": {"x": 0, "y": 0, "w": 40, "h": 30}, - "frame": {"x": 240, "y": 420, "w": 40, "h": 30} + "sourceSize": { + "w": 40, + "h": 30 + }, + "spriteSourceSize": { + "x": 0, + "y": 0, + "w": 40, + "h": 30 + }, + "frame": { + "x": 560, + "y": 420, + "w": 40, + "h": 30 + } }, { "filename": "126_3", "rotated": false, "trimmed": false, - "sourceSize": {"w": 40, "h": 30}, - "spriteSourceSize": {"x": 0, "y": 0, "w": 40, "h": 30}, - "frame": {"x": 280, "y": 420, "w": 40, "h": 30} + "sourceSize": { + "w": 40, + "h": 30 + }, + "spriteSourceSize": { + "x": 0, + "y": 0, + "w": 40, + "h": 30 + }, + "frame": { + "x": 0, + "y": 450, + "w": 40, + "h": 30 + } }, { "filename": "127-mega_2", "rotated": false, "trimmed": false, - "sourceSize": {"w": 40, "h": 30}, - "spriteSourceSize": {"x": 0, "y": 0, "w": 40, "h": 30}, - "frame": {"x": 320, "y": 420, "w": 40, "h": 30} + "sourceSize": { + "w": 40, + "h": 30 + }, + "spriteSourceSize": { + "x": 0, + "y": 0, + "w": 40, + "h": 30 + }, + "frame": { + "x": 40, + "y": 450, + "w": 40, + "h": 30 + } }, { "filename": "127-mega_3", "rotated": false, "trimmed": false, - "sourceSize": {"w": 40, "h": 30}, - "spriteSourceSize": {"x": 0, "y": 0, "w": 40, "h": 30}, - "frame": {"x": 360, "y": 420, "w": 40, "h": 30} + "sourceSize": { + "w": 40, + "h": 30 + }, + "spriteSourceSize": { + "x": 0, + "y": 0, + "w": 40, + "h": 30 + }, + "frame": { + "x": 80, + "y": 450, + "w": 40, + "h": 30 + } }, { "filename": "127_2", "rotated": false, "trimmed": false, - "sourceSize": {"w": 40, "h": 30}, - "spriteSourceSize": {"x": 0, "y": 0, "w": 40, "h": 30}, - "frame": {"x": 400, "y": 420, "w": 40, "h": 30} + "sourceSize": { + "w": 40, + "h": 30 + }, + "spriteSourceSize": { + "x": 0, + "y": 0, + "w": 40, + "h": 30 + }, + "frame": { + "x": 120, + "y": 450, + "w": 40, + "h": 30 + } }, { "filename": "127_3", "rotated": false, "trimmed": false, - "sourceSize": {"w": 40, "h": 30}, - "spriteSourceSize": {"x": 0, "y": 0, "w": 40, "h": 30}, - "frame": {"x": 440, "y": 420, "w": 40, "h": 30} + "sourceSize": { + "w": 40, + "h": 30 + }, + "spriteSourceSize": { + "x": 0, + "y": 0, + "w": 40, + "h": 30 + }, + "frame": { + "x": 160, + "y": 450, + "w": 40, + "h": 30 + } }, { "filename": "128_2", "rotated": false, "trimmed": false, - "sourceSize": {"w": 40, "h": 30}, - "spriteSourceSize": {"x": 0, "y": 0, "w": 40, "h": 30}, - "frame": {"x": 480, "y": 420, "w": 40, "h": 30} + "sourceSize": { + "w": 40, + "h": 30 + }, + "spriteSourceSize": { + "x": 0, + "y": 0, + "w": 40, + "h": 30 + }, + "frame": { + "x": 200, + "y": 450, + "w": 40, + "h": 30 + } }, { "filename": "128_3", "rotated": false, "trimmed": false, - "sourceSize": {"w": 40, "h": 30}, - "spriteSourceSize": {"x": 0, "y": 0, "w": 40, "h": 30}, - "frame": {"x": 520, "y": 420, "w": 40, "h": 30} + "sourceSize": { + "w": 40, + "h": 30 + }, + "spriteSourceSize": { + "x": 0, + "y": 0, + "w": 40, + "h": 30 + }, + "frame": { + "x": 240, + "y": 450, + "w": 40, + "h": 30 + } }, { "filename": "129_2", "rotated": false, "trimmed": false, - "sourceSize": {"w": 40, "h": 30}, - "spriteSourceSize": {"x": 0, "y": 0, "w": 40, "h": 30}, - "frame": {"x": 560, "y": 420, "w": 40, "h": 30} + "sourceSize": { + "w": 40, + "h": 30 + }, + "spriteSourceSize": { + "x": 0, + "y": 0, + "w": 40, + "h": 30 + }, + "frame": { + "x": 280, + "y": 450, + "w": 40, + "h": 30 + } }, { "filename": "129_3", "rotated": false, "trimmed": false, - "sourceSize": {"w": 40, "h": 30}, - "spriteSourceSize": {"x": 0, "y": 0, "w": 40, "h": 30}, - "frame": {"x": 0, "y": 450, "w": 40, "h": 30} + "sourceSize": { + "w": 40, + "h": 30 + }, + "spriteSourceSize": { + "x": 0, + "y": 0, + "w": 40, + "h": 30 + }, + "frame": { + "x": 320, + "y": 450, + "w": 40, + "h": 30 + } }, { "filename": "130-mega_2", "rotated": false, "trimmed": false, - "sourceSize": {"w": 40, "h": 30}, - "spriteSourceSize": {"x": 0, "y": 0, "w": 40, "h": 30}, - "frame": {"x": 40, "y": 450, "w": 40, "h": 30} + "sourceSize": { + "w": 40, + "h": 30 + }, + "spriteSourceSize": { + "x": 0, + "y": 0, + "w": 40, + "h": 30 + }, + "frame": { + "x": 360, + "y": 450, + "w": 40, + "h": 30 + } }, { "filename": "130-mega_3", "rotated": false, "trimmed": false, - "sourceSize": {"w": 40, "h": 30}, - "spriteSourceSize": {"x": 0, "y": 0, "w": 40, "h": 30}, - "frame": {"x": 80, "y": 450, "w": 40, "h": 30} + "sourceSize": { + "w": 40, + "h": 30 + }, + "spriteSourceSize": { + "x": 0, + "y": 0, + "w": 40, + "h": 30 + }, + "frame": { + "x": 400, + "y": 450, + "w": 40, + "h": 30 + } }, { "filename": "130_2", "rotated": false, "trimmed": false, - "sourceSize": {"w": 40, "h": 30}, - "spriteSourceSize": {"x": 0, "y": 0, "w": 40, "h": 30}, - "frame": {"x": 120, "y": 450, "w": 40, "h": 30} + "sourceSize": { + "w": 40, + "h": 30 + }, + "spriteSourceSize": { + "x": 0, + "y": 0, + "w": 40, + "h": 30 + }, + "frame": { + "x": 440, + "y": 450, + "w": 40, + "h": 30 + } }, { "filename": "130_3", "rotated": false, "trimmed": false, - "sourceSize": {"w": 40, "h": 30}, - "spriteSourceSize": {"x": 0, "y": 0, "w": 40, "h": 30}, - "frame": {"x": 160, "y": 450, "w": 40, "h": 30} + "sourceSize": { + "w": 40, + "h": 30 + }, + "spriteSourceSize": { + "x": 0, + "y": 0, + "w": 40, + "h": 30 + }, + "frame": { + "x": 480, + "y": 450, + "w": 40, + "h": 30 + } }, { "filename": "131-gigantamax_2", "rotated": false, "trimmed": false, - "sourceSize": {"w": 40, "h": 30}, - "spriteSourceSize": {"x": 0, "y": 0, "w": 40, "h": 30}, - "frame": {"x": 200, "y": 450, "w": 40, "h": 30} + "sourceSize": { + "w": 40, + "h": 30 + }, + "spriteSourceSize": { + "x": 0, + "y": 0, + "w": 40, + "h": 30 + }, + "frame": { + "x": 520, + "y": 450, + "w": 40, + "h": 30 + } }, { "filename": "131-gigantamax_3", "rotated": false, "trimmed": false, - "sourceSize": {"w": 40, "h": 30}, - "spriteSourceSize": {"x": 0, "y": 0, "w": 40, "h": 30}, - "frame": {"x": 240, "y": 450, "w": 40, "h": 30} + "sourceSize": { + "w": 40, + "h": 30 + }, + "spriteSourceSize": { + "x": 0, + "y": 0, + "w": 40, + "h": 30 + }, + "frame": { + "x": 560, + "y": 450, + "w": 40, + "h": 30 + } }, { "filename": "131_2", "rotated": false, "trimmed": false, - "sourceSize": {"w": 40, "h": 30}, - "spriteSourceSize": {"x": 0, "y": 0, "w": 40, "h": 30}, - "frame": {"x": 280, "y": 450, "w": 40, "h": 30} + "sourceSize": { + "w": 40, + "h": 30 + }, + "spriteSourceSize": { + "x": 0, + "y": 0, + "w": 40, + "h": 30 + }, + "frame": { + "x": 0, + "y": 480, + "w": 40, + "h": 30 + } }, { "filename": "131_3", "rotated": false, "trimmed": false, - "sourceSize": {"w": 40, "h": 30}, - "spriteSourceSize": {"x": 0, "y": 0, "w": 40, "h": 30}, - "frame": {"x": 320, "y": 450, "w": 40, "h": 30} + "sourceSize": { + "w": 40, + "h": 30 + }, + "spriteSourceSize": { + "x": 0, + "y": 0, + "w": 40, + "h": 30 + }, + "frame": { + "x": 40, + "y": 480, + "w": 40, + "h": 30 + } }, { "filename": "132_2", "rotated": false, "trimmed": false, - "sourceSize": {"w": 40, "h": 30}, - "spriteSourceSize": {"x": 0, "y": 0, "w": 40, "h": 30}, - "frame": {"x": 360, "y": 450, "w": 40, "h": 30} + "sourceSize": { + "w": 40, + "h": 30 + }, + "spriteSourceSize": { + "x": 0, + "y": 0, + "w": 40, + "h": 30 + }, + "frame": { + "x": 80, + "y": 480, + "w": 40, + "h": 30 + } }, { "filename": "132_3", "rotated": false, "trimmed": false, - "sourceSize": {"w": 40, "h": 30}, - "spriteSourceSize": {"x": 0, "y": 0, "w": 40, "h": 30}, - "frame": {"x": 400, "y": 450, "w": 40, "h": 30} + "sourceSize": { + "w": 40, + "h": 30 + }, + "spriteSourceSize": { + "x": 0, + "y": 0, + "w": 40, + "h": 30 + }, + "frame": { + "x": 120, + "y": 480, + "w": 40, + "h": 30 + } }, { "filename": "133-partner_2", "rotated": false, "trimmed": false, - "sourceSize": {"w": 40, "h": 30}, - "spriteSourceSize": {"x": 0, "y": 0, "w": 40, "h": 30}, - "frame": {"x": 440, "y": 450, "w": 40, "h": 30} + "sourceSize": { + "w": 40, + "h": 30 + }, + "spriteSourceSize": { + "x": 0, + "y": 0, + "w": 40, + "h": 30 + }, + "frame": { + "x": 160, + "y": 480, + "w": 40, + "h": 30 + } }, { "filename": "133-partner_3", "rotated": false, "trimmed": false, - "sourceSize": {"w": 40, "h": 30}, - "spriteSourceSize": {"x": 0, "y": 0, "w": 40, "h": 30}, - "frame": {"x": 480, "y": 450, "w": 40, "h": 30} + "sourceSize": { + "w": 40, + "h": 30 + }, + "spriteSourceSize": { + "x": 0, + "y": 0, + "w": 40, + "h": 30 + }, + "frame": { + "x": 200, + "y": 480, + "w": 40, + "h": 30 + } }, { "filename": "133_2", "rotated": false, "trimmed": false, - "sourceSize": {"w": 40, "h": 30}, - "spriteSourceSize": {"x": 0, "y": 0, "w": 40, "h": 30}, - "frame": {"x": 520, "y": 450, "w": 40, "h": 30} + "sourceSize": { + "w": 40, + "h": 30 + }, + "spriteSourceSize": { + "x": 0, + "y": 0, + "w": 40, + "h": 30 + }, + "frame": { + "x": 240, + "y": 480, + "w": 40, + "h": 30 + } }, { "filename": "133_3", "rotated": false, "trimmed": false, - "sourceSize": {"w": 40, "h": 30}, - "spriteSourceSize": {"x": 0, "y": 0, "w": 40, "h": 30}, - "frame": {"x": 560, "y": 450, "w": 40, "h": 30} + "sourceSize": { + "w": 40, + "h": 30 + }, + "spriteSourceSize": { + "x": 0, + "y": 0, + "w": 40, + "h": 30 + }, + "frame": { + "x": 280, + "y": 480, + "w": 40, + "h": 30 + } }, { "filename": "134_2", "rotated": false, "trimmed": false, - "sourceSize": {"w": 40, "h": 30}, - "spriteSourceSize": {"x": 0, "y": 0, "w": 40, "h": 30}, - "frame": {"x": 0, "y": 480, "w": 40, "h": 30} + "sourceSize": { + "w": 40, + "h": 30 + }, + "spriteSourceSize": { + "x": 0, + "y": 0, + "w": 40, + "h": 30 + }, + "frame": { + "x": 320, + "y": 480, + "w": 40, + "h": 30 + } }, { "filename": "134_3", "rotated": false, "trimmed": false, - "sourceSize": {"w": 40, "h": 30}, - "spriteSourceSize": {"x": 0, "y": 0, "w": 40, "h": 30}, - "frame": {"x": 40, "y": 480, "w": 40, "h": 30} + "sourceSize": { + "w": 40, + "h": 30 + }, + "spriteSourceSize": { + "x": 0, + "y": 0, + "w": 40, + "h": 30 + }, + "frame": { + "x": 360, + "y": 480, + "w": 40, + "h": 30 + } }, { "filename": "135_1", "rotated": false, "trimmed": false, - "sourceSize": {"w": 40, "h": 30}, - "spriteSourceSize": {"x": 0, "y": 0, "w": 40, "h": 30}, - "frame": {"x": 80, "y": 480, "w": 40, "h": 30} + "sourceSize": { + "w": 40, + "h": 30 + }, + "spriteSourceSize": { + "x": 0, + "y": 0, + "w": 40, + "h": 30 + }, + "frame": { + "x": 400, + "y": 480, + "w": 40, + "h": 30 + } }, { "filename": "135_2", "rotated": false, "trimmed": false, - "sourceSize": {"w": 40, "h": 30}, - "spriteSourceSize": {"x": 0, "y": 0, "w": 40, "h": 30}, - "frame": {"x": 120, "y": 480, "w": 40, "h": 30} + "sourceSize": { + "w": 40, + "h": 30 + }, + "spriteSourceSize": { + "x": 0, + "y": 0, + "w": 40, + "h": 30 + }, + "frame": { + "x": 440, + "y": 480, + "w": 40, + "h": 30 + } }, { "filename": "135_3", "rotated": false, "trimmed": false, - "sourceSize": {"w": 40, "h": 30}, - "spriteSourceSize": {"x": 0, "y": 0, "w": 40, "h": 30}, - "frame": {"x": 160, "y": 480, "w": 40, "h": 30} + "sourceSize": { + "w": 40, + "h": 30 + }, + "spriteSourceSize": { + "x": 0, + "y": 0, + "w": 40, + "h": 30 + }, + "frame": { + "x": 480, + "y": 480, + "w": 40, + "h": 30 + } }, { "filename": "136_1", "rotated": false, "trimmed": false, - "sourceSize": {"w": 40, "h": 30}, - "spriteSourceSize": {"x": 0, "y": 0, "w": 40, "h": 30}, - "frame": {"x": 200, "y": 480, "w": 40, "h": 30} + "sourceSize": { + "w": 40, + "h": 30 + }, + "spriteSourceSize": { + "x": 0, + "y": 0, + "w": 40, + "h": 30 + }, + "frame": { + "x": 520, + "y": 480, + "w": 40, + "h": 30 + } }, { "filename": "136_2", "rotated": false, "trimmed": false, - "sourceSize": {"w": 40, "h": 30}, - "spriteSourceSize": {"x": 0, "y": 0, "w": 40, "h": 30}, - "frame": {"x": 240, "y": 480, "w": 40, "h": 30} + "sourceSize": { + "w": 40, + "h": 30 + }, + "spriteSourceSize": { + "x": 0, + "y": 0, + "w": 40, + "h": 30 + }, + "frame": { + "x": 560, + "y": 480, + "w": 40, + "h": 30 + } }, { "filename": "136_3", "rotated": false, "trimmed": false, - "sourceSize": {"w": 40, "h": 30}, - "spriteSourceSize": {"x": 0, "y": 0, "w": 40, "h": 30}, - "frame": {"x": 280, "y": 480, "w": 40, "h": 30} + "sourceSize": { + "w": 40, + "h": 30 + }, + "spriteSourceSize": { + "x": 0, + "y": 0, + "w": 40, + "h": 30 + }, + "frame": { + "x": 0, + "y": 510, + "w": 40, + "h": 30 + } }, { "filename": "137_2", "rotated": false, "trimmed": false, - "sourceSize": {"w": 40, "h": 30}, - "spriteSourceSize": {"x": 0, "y": 0, "w": 40, "h": 30}, - "frame": {"x": 320, "y": 480, "w": 40, "h": 30} + "sourceSize": { + "w": 40, + "h": 30 + }, + "spriteSourceSize": { + "x": 0, + "y": 0, + "w": 40, + "h": 30 + }, + "frame": { + "x": 40, + "y": 510, + "w": 40, + "h": 30 + } }, { "filename": "137_3", "rotated": false, "trimmed": false, - "sourceSize": {"w": 40, "h": 30}, - "spriteSourceSize": {"x": 0, "y": 0, "w": 40, "h": 30}, - "frame": {"x": 360, "y": 480, "w": 40, "h": 30} + "sourceSize": { + "w": 40, + "h": 30 + }, + "spriteSourceSize": { + "x": 0, + "y": 0, + "w": 40, + "h": 30 + }, + "frame": { + "x": 80, + "y": 510, + "w": 40, + "h": 30 + } }, { "filename": "138_2", "rotated": false, "trimmed": false, - "sourceSize": {"w": 40, "h": 30}, - "spriteSourceSize": {"x": 0, "y": 0, "w": 40, "h": 30}, - "frame": {"x": 400, "y": 480, "w": 40, "h": 30} + "sourceSize": { + "w": 40, + "h": 30 + }, + "spriteSourceSize": { + "x": 0, + "y": 0, + "w": 40, + "h": 30 + }, + "frame": { + "x": 120, + "y": 510, + "w": 40, + "h": 30 + } }, { "filename": "138_3", "rotated": false, "trimmed": false, - "sourceSize": {"w": 40, "h": 30}, - "spriteSourceSize": {"x": 0, "y": 0, "w": 40, "h": 30}, - "frame": {"x": 440, "y": 480, "w": 40, "h": 30} + "sourceSize": { + "w": 40, + "h": 30 + }, + "spriteSourceSize": { + "x": 0, + "y": 0, + "w": 40, + "h": 30 + }, + "frame": { + "x": 160, + "y": 510, + "w": 40, + "h": 30 + } }, { "filename": "139_2", "rotated": false, "trimmed": false, - "sourceSize": {"w": 40, "h": 30}, - "spriteSourceSize": {"x": 0, "y": 0, "w": 40, "h": 30}, - "frame": {"x": 480, "y": 480, "w": 40, "h": 30} + "sourceSize": { + "w": 40, + "h": 30 + }, + "spriteSourceSize": { + "x": 0, + "y": 0, + "w": 40, + "h": 30 + }, + "frame": { + "x": 200, + "y": 510, + "w": 40, + "h": 30 + } }, { "filename": "139_3", "rotated": false, "trimmed": false, - "sourceSize": {"w": 40, "h": 30}, - "spriteSourceSize": {"x": 0, "y": 0, "w": 40, "h": 30}, - "frame": {"x": 520, "y": 480, "w": 40, "h": 30} + "sourceSize": { + "w": 40, + "h": 30 + }, + "spriteSourceSize": { + "x": 0, + "y": 0, + "w": 40, + "h": 30 + }, + "frame": { + "x": 240, + "y": 510, + "w": 40, + "h": 30 + } }, { "filename": "140_2", "rotated": false, "trimmed": false, - "sourceSize": {"w": 40, "h": 30}, - "spriteSourceSize": {"x": 0, "y": 0, "w": 40, "h": 30}, - "frame": {"x": 560, "y": 480, "w": 40, "h": 30} + "sourceSize": { + "w": 40, + "h": 30 + }, + "spriteSourceSize": { + "x": 0, + "y": 0, + "w": 40, + "h": 30 + }, + "frame": { + "x": 280, + "y": 510, + "w": 40, + "h": 30 + } }, { "filename": "140_3", "rotated": false, "trimmed": false, - "sourceSize": {"w": 40, "h": 30}, - "spriteSourceSize": {"x": 0, "y": 0, "w": 40, "h": 30}, - "frame": {"x": 0, "y": 510, "w": 40, "h": 30} + "sourceSize": { + "w": 40, + "h": 30 + }, + "spriteSourceSize": { + "x": 0, + "y": 0, + "w": 40, + "h": 30 + }, + "frame": { + "x": 320, + "y": 510, + "w": 40, + "h": 30 + } }, { "filename": "141_2", "rotated": false, "trimmed": false, - "sourceSize": {"w": 40, "h": 30}, - "spriteSourceSize": {"x": 0, "y": 0, "w": 40, "h": 30}, - "frame": {"x": 40, "y": 510, "w": 40, "h": 30} + "sourceSize": { + "w": 40, + "h": 30 + }, + "spriteSourceSize": { + "x": 0, + "y": 0, + "w": 40, + "h": 30 + }, + "frame": { + "x": 360, + "y": 510, + "w": 40, + "h": 30 + } }, { "filename": "141_3", "rotated": false, "trimmed": false, - "sourceSize": {"w": 40, "h": 30}, - "spriteSourceSize": {"x": 0, "y": 0, "w": 40, "h": 30}, - "frame": {"x": 80, "y": 510, "w": 40, "h": 30} + "sourceSize": { + "w": 40, + "h": 30 + }, + "spriteSourceSize": { + "x": 0, + "y": 0, + "w": 40, + "h": 30 + }, + "frame": { + "x": 400, + "y": 510, + "w": 40, + "h": 30 + } }, { "filename": "142-mega_2", "rotated": false, "trimmed": false, - "sourceSize": {"w": 40, "h": 30}, - "spriteSourceSize": {"x": 0, "y": 0, "w": 40, "h": 30}, - "frame": {"x": 120, "y": 510, "w": 40, "h": 30} + "sourceSize": { + "w": 40, + "h": 30 + }, + "spriteSourceSize": { + "x": 0, + "y": 0, + "w": 40, + "h": 30 + }, + "frame": { + "x": 440, + "y": 510, + "w": 40, + "h": 30 + } }, { "filename": "142-mega_3", "rotated": false, "trimmed": false, - "sourceSize": {"w": 40, "h": 30}, - "spriteSourceSize": {"x": 0, "y": 0, "w": 40, "h": 30}, - "frame": {"x": 160, "y": 510, "w": 40, "h": 30} + "sourceSize": { + "w": 40, + "h": 30 + }, + "spriteSourceSize": { + "x": 0, + "y": 0, + "w": 40, + "h": 30 + }, + "frame": { + "x": 480, + "y": 510, + "w": 40, + "h": 30 + } }, { "filename": "142_2", "rotated": false, "trimmed": false, - "sourceSize": {"w": 40, "h": 30}, - "spriteSourceSize": {"x": 0, "y": 0, "w": 40, "h": 30}, - "frame": {"x": 200, "y": 510, "w": 40, "h": 30} + "sourceSize": { + "w": 40, + "h": 30 + }, + "spriteSourceSize": { + "x": 0, + "y": 0, + "w": 40, + "h": 30 + }, + "frame": { + "x": 520, + "y": 510, + "w": 40, + "h": 30 + } }, { "filename": "142_3", "rotated": false, "trimmed": false, - "sourceSize": {"w": 40, "h": 30}, - "spriteSourceSize": {"x": 0, "y": 0, "w": 40, "h": 30}, - "frame": {"x": 240, "y": 510, "w": 40, "h": 30} + "sourceSize": { + "w": 40, + "h": 30 + }, + "spriteSourceSize": { + "x": 0, + "y": 0, + "w": 40, + "h": 30 + }, + "frame": { + "x": 560, + "y": 510, + "w": 40, + "h": 30 + } + }, + { + "filename": "143-gigantamax_2", + "rotated": false, + "trimmed": false, + "sourceSize": { + "w": 40, + "h": 30 + }, + "spriteSourceSize": { + "x": 0, + "y": 0, + "w": 40, + "h": 30 + }, + "frame": { + "x": 0, + "y": 540, + "w": 40, + "h": 30 + } + }, + { + "filename": "143-gigantamax_3", + "rotated": false, + "trimmed": false, + "sourceSize": { + "w": 40, + "h": 30 + }, + "spriteSourceSize": { + "x": 0, + "y": 0, + "w": 40, + "h": 30 + }, + "frame": { + "x": 40, + "y": 540, + "w": 40, + "h": 30 + } + }, + { + "filename": "143_2", + "rotated": false, + "trimmed": false, + "sourceSize": { + "w": 40, + "h": 30 + }, + "spriteSourceSize": { + "x": 0, + "y": 0, + "w": 40, + "h": 30 + }, + "frame": { + "x": 80, + "y": 540, + "w": 40, + "h": 30 + } + }, + { + "filename": "143_3", + "rotated": false, + "trimmed": false, + "sourceSize": { + "w": 40, + "h": 30 + }, + "spriteSourceSize": { + "x": 0, + "y": 0, + "w": 40, + "h": 30 + }, + "frame": { + "x": 120, + "y": 540, + "w": 40, + "h": 30 + } }, { "filename": "144_1", "rotated": false, "trimmed": false, - "sourceSize": {"w": 40, "h": 30}, - "spriteSourceSize": {"x": 0, "y": 0, "w": 40, "h": 30}, - "frame": {"x": 280, "y": 510, "w": 40, "h": 30} + "sourceSize": { + "w": 40, + "h": 30 + }, + "spriteSourceSize": { + "x": 0, + "y": 0, + "w": 40, + "h": 30 + }, + "frame": { + "x": 160, + "y": 540, + "w": 40, + "h": 30 + } }, { "filename": "144_2", "rotated": false, "trimmed": false, - "sourceSize": {"w": 40, "h": 30}, - "spriteSourceSize": {"x": 0, "y": 0, "w": 40, "h": 30}, - "frame": {"x": 320, "y": 510, "w": 40, "h": 30} + "sourceSize": { + "w": 40, + "h": 30 + }, + "spriteSourceSize": { + "x": 0, + "y": 0, + "w": 40, + "h": 30 + }, + "frame": { + "x": 200, + "y": 540, + "w": 40, + "h": 30 + } }, { "filename": "144_3", "rotated": false, "trimmed": false, - "sourceSize": {"w": 40, "h": 30}, - "spriteSourceSize": {"x": 0, "y": 0, "w": 40, "h": 30}, - "frame": {"x": 360, "y": 510, "w": 40, "h": 30} + "sourceSize": { + "w": 40, + "h": 30 + }, + "spriteSourceSize": { + "x": 0, + "y": 0, + "w": 40, + "h": 30 + }, + "frame": { + "x": 240, + "y": 540, + "w": 40, + "h": 30 + } }, { "filename": "145_1", "rotated": false, "trimmed": false, - "sourceSize": {"w": 40, "h": 30}, - "spriteSourceSize": {"x": 0, "y": 0, "w": 40, "h": 30}, - "frame": {"x": 400, "y": 510, "w": 40, "h": 30} + "sourceSize": { + "w": 40, + "h": 30 + }, + "spriteSourceSize": { + "x": 0, + "y": 0, + "w": 40, + "h": 30 + }, + "frame": { + "x": 280, + "y": 540, + "w": 40, + "h": 30 + } }, { "filename": "145_2", "rotated": false, "trimmed": false, - "sourceSize": {"w": 40, "h": 30}, - "spriteSourceSize": {"x": 0, "y": 0, "w": 40, "h": 30}, - "frame": {"x": 440, "y": 510, "w": 40, "h": 30} + "sourceSize": { + "w": 40, + "h": 30 + }, + "spriteSourceSize": { + "x": 0, + "y": 0, + "w": 40, + "h": 30 + }, + "frame": { + "x": 320, + "y": 540, + "w": 40, + "h": 30 + } }, { "filename": "145_3", "rotated": false, "trimmed": false, - "sourceSize": {"w": 40, "h": 30}, - "spriteSourceSize": {"x": 0, "y": 0, "w": 40, "h": 30}, - "frame": {"x": 480, "y": 510, "w": 40, "h": 30} + "sourceSize": { + "w": 40, + "h": 30 + }, + "spriteSourceSize": { + "x": 0, + "y": 0, + "w": 40, + "h": 30 + }, + "frame": { + "x": 360, + "y": 540, + "w": 40, + "h": 30 + } }, { "filename": "146_1", "rotated": false, "trimmed": false, - "sourceSize": {"w": 40, "h": 30}, - "spriteSourceSize": {"x": 0, "y": 0, "w": 40, "h": 30}, - "frame": {"x": 520, "y": 510, "w": 40, "h": 30} + "sourceSize": { + "w": 40, + "h": 30 + }, + "spriteSourceSize": { + "x": 0, + "y": 0, + "w": 40, + "h": 30 + }, + "frame": { + "x": 400, + "y": 540, + "w": 40, + "h": 30 + } }, { "filename": "146_2", "rotated": false, "trimmed": false, - "sourceSize": {"w": 40, "h": 30}, - "spriteSourceSize": {"x": 0, "y": 0, "w": 40, "h": 30}, - "frame": {"x": 560, "y": 510, "w": 40, "h": 30} + "sourceSize": { + "w": 40, + "h": 30 + }, + "spriteSourceSize": { + "x": 0, + "y": 0, + "w": 40, + "h": 30 + }, + "frame": { + "x": 440, + "y": 540, + "w": 40, + "h": 30 + } }, { "filename": "146_3", "rotated": false, "trimmed": false, - "sourceSize": {"w": 40, "h": 30}, - "spriteSourceSize": {"x": 0, "y": 0, "w": 40, "h": 30}, - "frame": {"x": 0, "y": 540, "w": 40, "h": 30} + "sourceSize": { + "w": 40, + "h": 30 + }, + "spriteSourceSize": { + "x": 0, + "y": 0, + "w": 40, + "h": 30 + }, + "frame": { + "x": 480, + "y": 540, + "w": 40, + "h": 30 + } }, { "filename": "147_2", "rotated": false, "trimmed": false, - "sourceSize": {"w": 40, "h": 30}, - "spriteSourceSize": {"x": 0, "y": 0, "w": 40, "h": 30}, - "frame": {"x": 40, "y": 540, "w": 40, "h": 30} + "sourceSize": { + "w": 40, + "h": 30 + }, + "spriteSourceSize": { + "x": 0, + "y": 0, + "w": 40, + "h": 30 + }, + "frame": { + "x": 520, + "y": 540, + "w": 40, + "h": 30 + } }, { "filename": "147_3", "rotated": false, "trimmed": false, - "sourceSize": {"w": 40, "h": 30}, - "spriteSourceSize": {"x": 0, "y": 0, "w": 40, "h": 30}, - "frame": {"x": 80, "y": 540, "w": 40, "h": 30} + "sourceSize": { + "w": 40, + "h": 30 + }, + "spriteSourceSize": { + "x": 0, + "y": 0, + "w": 40, + "h": 30 + }, + "frame": { + "x": 560, + "y": 540, + "w": 40, + "h": 30 + } }, { "filename": "148_2", "rotated": false, "trimmed": false, - "sourceSize": {"w": 40, "h": 30}, - "spriteSourceSize": {"x": 0, "y": 0, "w": 40, "h": 30}, - "frame": {"x": 120, "y": 540, "w": 40, "h": 30} + "sourceSize": { + "w": 40, + "h": 30 + }, + "spriteSourceSize": { + "x": 0, + "y": 0, + "w": 40, + "h": 30 + }, + "frame": { + "x": 0, + "y": 570, + "w": 40, + "h": 30 + } }, { "filename": "148_3", "rotated": false, "trimmed": false, - "sourceSize": {"w": 40, "h": 30}, - "spriteSourceSize": {"x": 0, "y": 0, "w": 40, "h": 30}, - "frame": {"x": 160, "y": 540, "w": 40, "h": 30} + "sourceSize": { + "w": 40, + "h": 30 + }, + "spriteSourceSize": { + "x": 0, + "y": 0, + "w": 40, + "h": 30 + }, + "frame": { + "x": 40, + "y": 570, + "w": 40, + "h": 30 + } }, { "filename": "149_2", "rotated": false, "trimmed": false, - "sourceSize": {"w": 40, "h": 30}, - "spriteSourceSize": {"x": 0, "y": 0, "w": 40, "h": 30}, - "frame": {"x": 200, "y": 540, "w": 40, "h": 30} + "sourceSize": { + "w": 40, + "h": 30 + }, + "spriteSourceSize": { + "x": 0, + "y": 0, + "w": 40, + "h": 30 + }, + "frame": { + "x": 80, + "y": 570, + "w": 40, + "h": 30 + } }, { "filename": "149_3", "rotated": false, "trimmed": false, - "sourceSize": {"w": 40, "h": 30}, - "spriteSourceSize": {"x": 0, "y": 0, "w": 40, "h": 30}, - "frame": {"x": 240, "y": 540, "w": 40, "h": 30} + "sourceSize": { + "w": 40, + "h": 30 + }, + "spriteSourceSize": { + "x": 0, + "y": 0, + "w": 40, + "h": 30 + }, + "frame": { + "x": 120, + "y": 570, + "w": 40, + "h": 30 + } }, { "filename": "150-mega-x_2", "rotated": false, "trimmed": false, - "sourceSize": {"w": 40, "h": 30}, - "spriteSourceSize": {"x": 0, "y": 0, "w": 40, "h": 30}, - "frame": {"x": 280, "y": 540, "w": 40, "h": 30} + "sourceSize": { + "w": 40, + "h": 30 + }, + "spriteSourceSize": { + "x": 0, + "y": 0, + "w": 40, + "h": 30 + }, + "frame": { + "x": 160, + "y": 570, + "w": 40, + "h": 30 + } }, { "filename": "150-mega-x_3", "rotated": false, "trimmed": false, - "sourceSize": {"w": 40, "h": 30}, - "spriteSourceSize": {"x": 0, "y": 0, "w": 40, "h": 30}, - "frame": {"x": 320, "y": 540, "w": 40, "h": 30} + "sourceSize": { + "w": 40, + "h": 30 + }, + "spriteSourceSize": { + "x": 0, + "y": 0, + "w": 40, + "h": 30 + }, + "frame": { + "x": 200, + "y": 570, + "w": 40, + "h": 30 + } }, { "filename": "150-mega-y_2", "rotated": false, "trimmed": false, - "sourceSize": {"w": 40, "h": 30}, - "spriteSourceSize": {"x": 0, "y": 0, "w": 40, "h": 30}, - "frame": {"x": 360, "y": 540, "w": 40, "h": 30} + "sourceSize": { + "w": 40, + "h": 30 + }, + "spriteSourceSize": { + "x": 0, + "y": 0, + "w": 40, + "h": 30 + }, + "frame": { + "x": 240, + "y": 570, + "w": 40, + "h": 30 + } }, { "filename": "150-mega-y_3", "rotated": false, "trimmed": false, - "sourceSize": {"w": 40, "h": 30}, - "spriteSourceSize": {"x": 0, "y": 0, "w": 40, "h": 30}, - "frame": {"x": 400, "y": 540, "w": 40, "h": 30} + "sourceSize": { + "w": 40, + "h": 30 + }, + "spriteSourceSize": { + "x": 0, + "y": 0, + "w": 40, + "h": 30 + }, + "frame": { + "x": 280, + "y": 570, + "w": 40, + "h": 30 + } }, { "filename": "150_2", "rotated": false, "trimmed": false, - "sourceSize": {"w": 40, "h": 30}, - "spriteSourceSize": {"x": 0, "y": 0, "w": 40, "h": 30}, - "frame": {"x": 440, "y": 540, "w": 40, "h": 30} + "sourceSize": { + "w": 40, + "h": 30 + }, + "spriteSourceSize": { + "x": 0, + "y": 0, + "w": 40, + "h": 30 + }, + "frame": { + "x": 320, + "y": 570, + "w": 40, + "h": 30 + } }, { "filename": "150_3", "rotated": false, "trimmed": false, - "sourceSize": {"w": 40, "h": 30}, - "spriteSourceSize": {"x": 0, "y": 0, "w": 40, "h": 30}, - "frame": {"x": 480, "y": 540, "w": 40, "h": 30} + "sourceSize": { + "w": 40, + "h": 30 + }, + "spriteSourceSize": { + "x": 0, + "y": 0, + "w": 40, + "h": 30 + }, + "frame": { + "x": 360, + "y": 570, + "w": 40, + "h": 30 + } }, { "filename": "151_2", "rotated": false, "trimmed": false, - "sourceSize": {"w": 40, "h": 30}, - "spriteSourceSize": {"x": 0, "y": 0, "w": 40, "h": 30}, - "frame": {"x": 520, "y": 540, "w": 40, "h": 30} + "sourceSize": { + "w": 40, + "h": 30 + }, + "spriteSourceSize": { + "x": 0, + "y": 0, + "w": 40, + "h": 30 + }, + "frame": { + "x": 400, + "y": 570, + "w": 40, + "h": 30 + } }, { "filename": "151_3", "rotated": false, "trimmed": false, - "sourceSize": {"w": 40, "h": 30}, - "spriteSourceSize": {"x": 0, "y": 0, "w": 40, "h": 30}, - "frame": {"x": 560, "y": 540, "w": 40, "h": 30} + "sourceSize": { + "w": 40, + "h": 30 + }, + "spriteSourceSize": { + "x": 0, + "y": 0, + "w": 40, + "h": 30 + }, + "frame": { + "x": 440, + "y": 570, + "w": 40, + "h": 30 + } } ] } ], "meta": { - "app": "texturepacker", - "version": "3.0" + "app": "https://www.codeandweb.com/texturepacker", + "version": "3.0", + "smartupdate": "$TexturePacker:SmartUpdate:3447489444000034526be9543e0a03fb:c9244ec22fd9b63bdc7e97bf457f1266:2fc2d7db306a93e9369e20846ccef45c$" } } diff --git a/public/images/pokemon_icons_1v.png b/public/images/pokemon_icons_1v.png index d6b1bc0cf7e..025c1ab025a 100644 Binary files a/public/images/pokemon_icons_1v.png and b/public/images/pokemon_icons_1v.png differ diff --git a/public/images/pokemon_icons_2v.json b/public/images/pokemon_icons_2v.json index 23eec483b42..519ea6c62f2 100644 --- a/public/images/pokemon_icons_2v.json +++ b/public/images/pokemon_icons_2v.json @@ -4,8 +4,8 @@ "image": "pokemon_icons_2v.png", "format": "RGBA8888", "size": { - "w": 520, - "h": 520 + "w": 540, + "h": 540 }, "scale": 1, "frames": [ @@ -1417,7 +1417,7 @@ } }, { - "filename": "190_2", + "filename": "187_2", "rotated": false, "trimmed": false, "sourceSize": { @@ -1437,6 +1437,132 @@ "h": 30 } }, + { + "filename": "187_3", + "rotated": false, + "trimmed": false, + "sourceSize": { + "w": 40, + "h": 30 + }, + "spriteSourceSize": { + "x": 0, + "y": 0, + "w": 40, + "h": 30 + }, + "frame": { + "x": 120, + "y": 150, + "w": 40, + "h": 30 + } + }, + { + "filename": "188_2", + "rotated": false, + "trimmed": false, + "sourceSize": { + "w": 40, + "h": 30 + }, + "spriteSourceSize": { + "x": 0, + "y": 0, + "w": 40, + "h": 30 + }, + "frame": { + "x": 160, + "y": 150, + "w": 40, + "h": 30 + } + }, + { + "filename": "188_3", + "rotated": false, + "trimmed": false, + "sourceSize": { + "w": 40, + "h": 30 + }, + "spriteSourceSize": { + "x": 0, + "y": 0, + "w": 40, + "h": 30 + }, + "frame": { + "x": 200, + "y": 150, + "w": 40, + "h": 30 + } + }, + { + "filename": "189_2", + "rotated": false, + "trimmed": false, + "sourceSize": { + "w": 40, + "h": 30 + }, + "spriteSourceSize": { + "x": 0, + "y": 0, + "w": 40, + "h": 30 + }, + "frame": { + "x": 240, + "y": 150, + "w": 40, + "h": 30 + } + }, + { + "filename": "189_3", + "rotated": false, + "trimmed": false, + "sourceSize": { + "w": 40, + "h": 30 + }, + "spriteSourceSize": { + "x": 0, + "y": 0, + "w": 40, + "h": 30 + }, + "frame": { + "x": 280, + "y": 150, + "w": 40, + "h": 30 + } + }, + { + "filename": "190_2", + "rotated": false, + "trimmed": false, + "sourceSize": { + "w": 40, + "h": 30 + }, + "spriteSourceSize": { + "x": 0, + "y": 0, + "w": 40, + "h": 30 + }, + "frame": { + "x": 320, + "y": 150, + "w": 40, + "h": 30 + } + }, { "filename": "190_3", "rotated": false, @@ -1452,7 +1578,7 @@ "h": 30 }, "frame": { - "x": 120, + "x": 360, "y": 150, "w": 40, "h": 30 @@ -1473,7 +1599,7 @@ "h": 30 }, "frame": { - "x": 160, + "x": 400, "y": 150, "w": 40, "h": 30 @@ -1494,7 +1620,7 @@ "h": 30 }, "frame": { - "x": 200, + "x": 440, "y": 150, "w": 40, "h": 30 @@ -1515,7 +1641,7 @@ "h": 30 }, "frame": { - "x": 240, + "x": 480, "y": 150, "w": 40, "h": 30 @@ -1536,8 +1662,8 @@ "h": 30 }, "frame": { - "x": 280, - "y": 150, + "x": 0, + "y": 180, "w": 40, "h": 30 } @@ -1557,8 +1683,8 @@ "h": 30 }, "frame": { - "x": 320, - "y": 150, + "x": 40, + "y": 180, "w": 40, "h": 30 } @@ -1578,8 +1704,8 @@ "h": 30 }, "frame": { - "x": 360, - "y": 150, + "x": 80, + "y": 180, "w": 40, "h": 30 } @@ -1599,8 +1725,8 @@ "h": 30 }, "frame": { - "x": 400, - "y": 150, + "x": 120, + "y": 180, "w": 40, "h": 30 } @@ -1620,8 +1746,8 @@ "h": 30 }, "frame": { - "x": 440, - "y": 150, + "x": 160, + "y": 180, "w": 40, "h": 30 } @@ -1641,8 +1767,8 @@ "h": 30 }, "frame": { - "x": 480, - "y": 150, + "x": 200, + "y": 180, "w": 40, "h": 30 } @@ -1662,7 +1788,7 @@ "h": 30 }, "frame": { - "x": 0, + "x": 240, "y": 180, "w": 40, "h": 30 @@ -1683,7 +1809,7 @@ "h": 30 }, "frame": { - "x": 40, + "x": 280, "y": 180, "w": 40, "h": 30 @@ -1704,7 +1830,7 @@ "h": 30 }, "frame": { - "x": 80, + "x": 320, "y": 180, "w": 40, "h": 30 @@ -1725,7 +1851,7 @@ "h": 30 }, "frame": { - "x": 80, + "x": 320, "y": 180, "w": 40, "h": 30 @@ -1746,7 +1872,7 @@ "h": 30 }, "frame": { - "x": 120, + "x": 360, "y": 180, "w": 40, "h": 30 @@ -1767,7 +1893,7 @@ "h": 30 }, "frame": { - "x": 120, + "x": 360, "y": 180, "w": 40, "h": 30 @@ -1788,7 +1914,7 @@ "h": 30 }, "frame": { - "x": 160, + "x": 400, "y": 180, "w": 40, "h": 30 @@ -1809,7 +1935,7 @@ "h": 30 }, "frame": { - "x": 200, + "x": 440, "y": 180, "w": 40, "h": 30 @@ -1830,7 +1956,7 @@ "h": 30 }, "frame": { - "x": 240, + "x": 480, "y": 180, "w": 40, "h": 30 @@ -1851,8 +1977,8 @@ "h": 30 }, "frame": { - "x": 280, - "y": 180, + "x": 0, + "y": 210, "w": 40, "h": 30 } @@ -1872,8 +1998,8 @@ "h": 30 }, "frame": { - "x": 320, - "y": 180, + "x": 40, + "y": 210, "w": 40, "h": 30 } @@ -1893,8 +2019,8 @@ "h": 30 }, "frame": { - "x": 360, - "y": 180, + "x": 80, + "y": 210, "w": 40, "h": 30 } @@ -1914,8 +2040,8 @@ "h": 30 }, "frame": { - "x": 400, - "y": 180, + "x": 120, + "y": 210, "w": 40, "h": 30 } @@ -1935,8 +2061,8 @@ "h": 30 }, "frame": { - "x": 440, - "y": 180, + "x": 160, + "y": 210, "w": 40, "h": 30 } @@ -1956,8 +2082,8 @@ "h": 30 }, "frame": { - "x": 480, - "y": 180, + "x": 200, + "y": 210, "w": 40, "h": 30 } @@ -1977,7 +2103,7 @@ "h": 30 }, "frame": { - "x": 0, + "x": 240, "y": 210, "w": 40, "h": 30 @@ -1998,7 +2124,7 @@ "h": 30 }, "frame": { - "x": 40, + "x": 280, "y": 210, "w": 40, "h": 30 @@ -2019,7 +2145,7 @@ "h": 30 }, "frame": { - "x": 80, + "x": 320, "y": 210, "w": 40, "h": 30 @@ -2040,7 +2166,7 @@ "h": 30 }, "frame": { - "x": 120, + "x": 360, "y": 210, "w": 40, "h": 30 @@ -2061,7 +2187,7 @@ "h": 30 }, "frame": { - "x": 160, + "x": 400, "y": 210, "w": 40, "h": 30 @@ -2082,7 +2208,7 @@ "h": 30 }, "frame": { - "x": 200, + "x": 440, "y": 210, "w": 40, "h": 30 @@ -2103,7 +2229,7 @@ "h": 30 }, "frame": { - "x": 240, + "x": 480, "y": 210, "w": 40, "h": 30 @@ -2124,8 +2250,8 @@ "h": 30 }, "frame": { - "x": 280, - "y": 210, + "x": 0, + "y": 240, "w": 40, "h": 30 } @@ -2145,8 +2271,8 @@ "h": 30 }, "frame": { - "x": 320, - "y": 210, + "x": 40, + "y": 240, "w": 40, "h": 30 } @@ -2166,8 +2292,8 @@ "h": 30 }, "frame": { - "x": 360, - "y": 210, + "x": 80, + "y": 240, "w": 40, "h": 30 } @@ -2187,8 +2313,8 @@ "h": 30 }, "frame": { - "x": 400, - "y": 210, + "x": 120, + "y": 240, "w": 40, "h": 30 } @@ -2208,8 +2334,8 @@ "h": 30 }, "frame": { - "x": 440, - "y": 210, + "x": 160, + "y": 240, "w": 40, "h": 30 } @@ -2229,8 +2355,8 @@ "h": 30 }, "frame": { - "x": 480, - "y": 210, + "x": 200, + "y": 240, "w": 40, "h": 30 } @@ -2250,7 +2376,7 @@ "h": 30 }, "frame": { - "x": 0, + "x": 240, "y": 240, "w": 40, "h": 30 @@ -2271,7 +2397,7 @@ "h": 30 }, "frame": { - "x": 40, + "x": 280, "y": 240, "w": 40, "h": 30 @@ -2292,7 +2418,7 @@ "h": 30 }, "frame": { - "x": 80, + "x": 320, "y": 240, "w": 40, "h": 30 @@ -2313,7 +2439,7 @@ "h": 30 }, "frame": { - "x": 120, + "x": 360, "y": 240, "w": 40, "h": 30 @@ -2334,7 +2460,7 @@ "h": 30 }, "frame": { - "x": 160, + "x": 400, "y": 240, "w": 40, "h": 30 @@ -2355,7 +2481,7 @@ "h": 30 }, "frame": { - "x": 200, + "x": 440, "y": 240, "w": 40, "h": 30 @@ -2376,7 +2502,7 @@ "h": 30 }, "frame": { - "x": 240, + "x": 480, "y": 240, "w": 40, "h": 30 @@ -2397,8 +2523,8 @@ "h": 30 }, "frame": { - "x": 280, - "y": 240, + "x": 0, + "y": 270, "w": 40, "h": 30 } @@ -2418,8 +2544,8 @@ "h": 30 }, "frame": { - "x": 320, - "y": 240, + "x": 40, + "y": 270, "w": 40, "h": 30 } @@ -2439,8 +2565,8 @@ "h": 30 }, "frame": { - "x": 360, - "y": 240, + "x": 80, + "y": 270, "w": 40, "h": 30 } @@ -2460,8 +2586,8 @@ "h": 30 }, "frame": { - "x": 400, - "y": 240, + "x": 120, + "y": 270, "w": 40, "h": 30 } @@ -2481,8 +2607,8 @@ "h": 30 }, "frame": { - "x": 440, - "y": 240, + "x": 160, + "y": 270, "w": 40, "h": 30 } @@ -2502,8 +2628,8 @@ "h": 30 }, "frame": { - "x": 480, - "y": 240, + "x": 200, + "y": 270, "w": 40, "h": 30 } @@ -2523,7 +2649,7 @@ "h": 30 }, "frame": { - "x": 0, + "x": 240, "y": 270, "w": 40, "h": 30 @@ -2544,7 +2670,7 @@ "h": 30 }, "frame": { - "x": 40, + "x": 280, "y": 270, "w": 40, "h": 30 @@ -2565,7 +2691,7 @@ "h": 30 }, "frame": { - "x": 80, + "x": 320, "y": 270, "w": 40, "h": 30 @@ -2586,7 +2712,7 @@ "h": 30 }, "frame": { - "x": 120, + "x": 360, "y": 270, "w": 40, "h": 30 @@ -2607,7 +2733,7 @@ "h": 30 }, "frame": { - "x": 160, + "x": 400, "y": 270, "w": 40, "h": 30 @@ -2628,7 +2754,7 @@ "h": 30 }, "frame": { - "x": 200, + "x": 440, "y": 270, "w": 40, "h": 30 @@ -2649,7 +2775,7 @@ "h": 30 }, "frame": { - "x": 240, + "x": 480, "y": 270, "w": 40, "h": 30 @@ -2670,8 +2796,8 @@ "h": 30 }, "frame": { - "x": 280, - "y": 270, + "x": 0, + "y": 300, "w": 40, "h": 30 } @@ -2691,8 +2817,8 @@ "h": 30 }, "frame": { - "x": 320, - "y": 270, + "x": 40, + "y": 300, "w": 40, "h": 30 } @@ -2712,8 +2838,8 @@ "h": 30 }, "frame": { - "x": 360, - "y": 270, + "x": 80, + "y": 300, "w": 40, "h": 30 } @@ -2733,8 +2859,8 @@ "h": 30 }, "frame": { - "x": 400, - "y": 270, + "x": 120, + "y": 300, "w": 40, "h": 30 } @@ -2754,8 +2880,8 @@ "h": 30 }, "frame": { - "x": 440, - "y": 270, + "x": 160, + "y": 300, "w": 40, "h": 30 } @@ -2775,8 +2901,8 @@ "h": 30 }, "frame": { - "x": 480, - "y": 270, + "x": 200, + "y": 300, "w": 40, "h": 30 } @@ -2796,7 +2922,7 @@ "h": 30 }, "frame": { - "x": 0, + "x": 240, "y": 300, "w": 40, "h": 30 @@ -2817,7 +2943,7 @@ "h": 30 }, "frame": { - "x": 40, + "x": 280, "y": 300, "w": 40, "h": 30 @@ -2838,7 +2964,7 @@ "h": 30 }, "frame": { - "x": 80, + "x": 320, "y": 300, "w": 40, "h": 30 @@ -2859,7 +2985,7 @@ "h": 30 }, "frame": { - "x": 120, + "x": 360, "y": 300, "w": 40, "h": 30 @@ -2880,7 +3006,7 @@ "h": 30 }, "frame": { - "x": 160, + "x": 400, "y": 300, "w": 40, "h": 30 @@ -2901,7 +3027,7 @@ "h": 30 }, "frame": { - "x": 200, + "x": 440, "y": 300, "w": 40, "h": 30 @@ -2922,7 +3048,7 @@ "h": 30 }, "frame": { - "x": 240, + "x": 480, "y": 300, "w": 40, "h": 30 @@ -2943,8 +3069,8 @@ "h": 30 }, "frame": { - "x": 280, - "y": 300, + "x": 0, + "y": 330, "w": 40, "h": 30 } @@ -2964,8 +3090,8 @@ "h": 30 }, "frame": { - "x": 320, - "y": 300, + "x": 40, + "y": 330, "w": 40, "h": 30 } @@ -2985,8 +3111,8 @@ "h": 30 }, "frame": { - "x": 360, - "y": 300, + "x": 80, + "y": 330, "w": 40, "h": 30 } @@ -3006,8 +3132,8 @@ "h": 30 }, "frame": { - "x": 400, - "y": 300, + "x": 120, + "y": 330, "w": 40, "h": 30 } @@ -3027,8 +3153,8 @@ "h": 30 }, "frame": { - "x": 440, - "y": 300, + "x": 160, + "y": 330, "w": 40, "h": 30 } @@ -3048,8 +3174,8 @@ "h": 30 }, "frame": { - "x": 480, - "y": 300, + "x": 200, + "y": 330, "w": 40, "h": 30 } @@ -3069,7 +3195,7 @@ "h": 30 }, "frame": { - "x": 0, + "x": 240, "y": 330, "w": 40, "h": 30 @@ -3090,7 +3216,7 @@ "h": 30 }, "frame": { - "x": 40, + "x": 280, "y": 330, "w": 40, "h": 30 @@ -3111,7 +3237,91 @@ "h": 30 }, "frame": { - "x": 80, + "x": 320, + "y": 330, + "w": 40, + "h": 30 + } + }, + { + "filename": "204_2", + "rotated": false, + "trimmed": false, + "sourceSize": { + "w": 40, + "h": 30 + }, + "spriteSourceSize": { + "x": 0, + "y": 0, + "w": 40, + "h": 30 + }, + "frame": { + "x": 360, + "y": 330, + "w": 40, + "h": 30 + } + }, + { + "filename": "204_3", + "rotated": false, + "trimmed": false, + "sourceSize": { + "w": 40, + "h": 30 + }, + "spriteSourceSize": { + "x": 0, + "y": 0, + "w": 40, + "h": 30 + }, + "frame": { + "x": 400, + "y": 330, + "w": 40, + "h": 30 + } + }, + { + "filename": "205_2", + "rotated": false, + "trimmed": false, + "sourceSize": { + "w": 40, + "h": 30 + }, + "spriteSourceSize": { + "x": 0, + "y": 0, + "w": 40, + "h": 30 + }, + "frame": { + "x": 440, + "y": 330, + "w": 40, + "h": 30 + } + }, + { + "filename": "205_3", + "rotated": false, + "trimmed": false, + "sourceSize": { + "w": 40, + "h": 30 + }, + "spriteSourceSize": { + "x": 0, + "y": 0, + "w": 40, + "h": 30 + }, + "frame": { + "x": 480, "y": 330, "w": 40, "h": 30 @@ -3132,8 +3342,8 @@ "h": 30 }, "frame": { - "x": 120, - "y": 330, + "x": 0, + "y": 360, "w": 40, "h": 30 } @@ -3153,8 +3363,8 @@ "h": 30 }, "frame": { - "x": 160, - "y": 330, + "x": 40, + "y": 360, "w": 40, "h": 30 } @@ -3174,8 +3384,8 @@ "h": 30 }, "frame": { - "x": 200, - "y": 330, + "x": 80, + "y": 360, "w": 40, "h": 30 } @@ -3195,8 +3405,8 @@ "h": 30 }, "frame": { - "x": 240, - "y": 330, + "x": 120, + "y": 360, "w": 40, "h": 30 } @@ -3216,8 +3426,8 @@ "h": 30 }, "frame": { - "x": 280, - "y": 330, + "x": 160, + "y": 360, "w": 40, "h": 30 } @@ -3237,8 +3447,8 @@ "h": 30 }, "frame": { - "x": 320, - "y": 330, + "x": 200, + "y": 360, "w": 40, "h": 30 } @@ -3258,8 +3468,8 @@ "h": 30 }, "frame": { - "x": 360, - "y": 330, + "x": 240, + "y": 360, "w": 40, "h": 30 } @@ -3279,8 +3489,8 @@ "h": 30 }, "frame": { - "x": 400, - "y": 330, + "x": 280, + "y": 360, "w": 40, "h": 30 } @@ -3300,8 +3510,8 @@ "h": 30 }, "frame": { - "x": 440, - "y": 330, + "x": 320, + "y": 360, "w": 40, "h": 30 } @@ -3321,8 +3531,8 @@ "h": 30 }, "frame": { - "x": 480, - "y": 330, + "x": 360, + "y": 360, "w": 40, "h": 30 } @@ -3342,7 +3552,7 @@ "h": 30 }, "frame": { - "x": 0, + "x": 400, "y": 360, "w": 40, "h": 30 @@ -3363,7 +3573,7 @@ "h": 30 }, "frame": { - "x": 40, + "x": 440, "y": 360, "w": 40, "h": 30 @@ -3384,7 +3594,7 @@ "h": 30 }, "frame": { - "x": 80, + "x": 480, "y": 360, "w": 40, "h": 30 @@ -3405,8 +3615,8 @@ "h": 30 }, "frame": { - "x": 120, - "y": 360, + "x": 0, + "y": 390, "w": 40, "h": 30 } @@ -3426,8 +3636,8 @@ "h": 30 }, "frame": { - "x": 160, - "y": 360, + "x": 40, + "y": 390, "w": 40, "h": 30 } @@ -3447,8 +3657,8 @@ "h": 30 }, "frame": { - "x": 200, - "y": 360, + "x": 80, + "y": 390, "w": 40, "h": 30 } @@ -3468,8 +3678,8 @@ "h": 30 }, "frame": { - "x": 240, - "y": 360, + "x": 120, + "y": 390, "w": 40, "h": 30 } @@ -3489,8 +3699,8 @@ "h": 30 }, "frame": { - "x": 280, - "y": 360, + "x": 160, + "y": 390, "w": 40, "h": 30 } @@ -3510,8 +3720,8 @@ "h": 30 }, "frame": { - "x": 320, - "y": 360, + "x": 200, + "y": 390, "w": 40, "h": 30 } @@ -3531,8 +3741,8 @@ "h": 30 }, "frame": { - "x": 360, - "y": 360, + "x": 240, + "y": 390, "w": 40, "h": 30 } @@ -3552,8 +3762,8 @@ "h": 30 }, "frame": { - "x": 400, - "y": 360, + "x": 280, + "y": 390, "w": 40, "h": 30 } @@ -3573,8 +3783,8 @@ "h": 30 }, "frame": { - "x": 440, - "y": 360, + "x": 320, + "y": 390, "w": 40, "h": 30 } @@ -3594,8 +3804,8 @@ "h": 30 }, "frame": { - "x": 480, - "y": 360, + "x": 360, + "y": 390, "w": 40, "h": 30 } @@ -3615,7 +3825,7 @@ "h": 30 }, "frame": { - "x": 0, + "x": 400, "y": 390, "w": 40, "h": 30 @@ -3636,7 +3846,7 @@ "h": 30 }, "frame": { - "x": 40, + "x": 440, "y": 390, "w": 40, "h": 30 @@ -3657,7 +3867,7 @@ "h": 30 }, "frame": { - "x": 80, + "x": 480, "y": 390, "w": 40, "h": 30 @@ -3678,8 +3888,8 @@ "h": 30 }, "frame": { - "x": 120, - "y": 390, + "x": 0, + "y": 420, "w": 40, "h": 30 } @@ -3699,8 +3909,8 @@ "h": 30 }, "frame": { - "x": 160, - "y": 390, + "x": 40, + "y": 420, "w": 40, "h": 30 } @@ -3720,8 +3930,8 @@ "h": 30 }, "frame": { - "x": 200, - "y": 390, + "x": 80, + "y": 420, "w": 40, "h": 30 } @@ -3741,8 +3951,8 @@ "h": 30 }, "frame": { - "x": 240, - "y": 390, + "x": 120, + "y": 420, "w": 40, "h": 30 } @@ -3762,8 +3972,8 @@ "h": 30 }, "frame": { - "x": 280, - "y": 390, + "x": 160, + "y": 420, "w": 40, "h": 30 } @@ -3783,8 +3993,8 @@ "h": 30 }, "frame": { - "x": 320, - "y": 390, + "x": 200, + "y": 420, "w": 40, "h": 30 } @@ -3804,8 +4014,8 @@ "h": 30 }, "frame": { - "x": 360, - "y": 390, + "x": 240, + "y": 420, "w": 40, "h": 30 } @@ -3825,8 +4035,8 @@ "h": 30 }, "frame": { - "x": 400, - "y": 390, + "x": 280, + "y": 420, "w": 40, "h": 30 } @@ -3846,8 +4056,8 @@ "h": 30 }, "frame": { - "x": 440, - "y": 390, + "x": 320, + "y": 420, "w": 40, "h": 30 } @@ -3867,8 +4077,8 @@ "h": 30 }, "frame": { - "x": 480, - "y": 390, + "x": 360, + "y": 420, "w": 40, "h": 30 } @@ -3888,7 +4098,7 @@ "h": 30 }, "frame": { - "x": 0, + "x": 400, "y": 420, "w": 40, "h": 30 @@ -3909,7 +4119,7 @@ "h": 30 }, "frame": { - "x": 40, + "x": 440, "y": 420, "w": 40, "h": 30 @@ -3930,7 +4140,7 @@ "h": 30 }, "frame": { - "x": 80, + "x": 480, "y": 420, "w": 40, "h": 30 @@ -3951,8 +4161,8 @@ "h": 30 }, "frame": { - "x": 120, - "y": 420, + "x": 0, + "y": 450, "w": 40, "h": 30 } @@ -3972,8 +4182,8 @@ "h": 30 }, "frame": { - "x": 160, - "y": 420, + "x": 40, + "y": 450, "w": 40, "h": 30 } @@ -3993,8 +4203,8 @@ "h": 30 }, "frame": { - "x": 200, - "y": 420, + "x": 80, + "y": 450, "w": 40, "h": 30 } @@ -4014,8 +4224,8 @@ "h": 30 }, "frame": { - "x": 240, - "y": 420, + "x": 120, + "y": 450, "w": 40, "h": 30 } @@ -4035,8 +4245,8 @@ "h": 30 }, "frame": { - "x": 280, - "y": 420, + "x": 160, + "y": 450, "w": 40, "h": 30 } @@ -4056,8 +4266,8 @@ "h": 30 }, "frame": { - "x": 320, - "y": 420, + "x": 200, + "y": 450, "w": 40, "h": 30 } @@ -4077,8 +4287,8 @@ "h": 30 }, "frame": { - "x": 360, - "y": 420, + "x": 240, + "y": 450, "w": 40, "h": 30 } @@ -4098,8 +4308,8 @@ "h": 30 }, "frame": { - "x": 400, - "y": 420, + "x": 280, + "y": 450, "w": 40, "h": 30 } @@ -4119,8 +4329,8 @@ "h": 30 }, "frame": { - "x": 440, - "y": 420, + "x": 320, + "y": 450, "w": 40, "h": 30 } @@ -4140,8 +4350,8 @@ "h": 30 }, "frame": { - "x": 480, - "y": 420, + "x": 360, + "y": 450, "w": 40, "h": 30 } @@ -4161,7 +4371,7 @@ "h": 30 }, "frame": { - "x": 0, + "x": 400, "y": 450, "w": 40, "h": 30 @@ -4182,7 +4392,7 @@ "h": 30 }, "frame": { - "x": 40, + "x": 440, "y": 450, "w": 40, "h": 30 @@ -4203,7 +4413,7 @@ "h": 30 }, "frame": { - "x": 80, + "x": 480, "y": 450, "w": 40, "h": 30 @@ -4223,216 +4433,6 @@ "w": 40, "h": 30 }, - "frame": { - "x": 120, - "y": 450, - "w": 40, - "h": 30 - } - }, - { - "filename": "243_3", - "rotated": false, - "trimmed": false, - "sourceSize": { - "w": 40, - "h": 30 - }, - "spriteSourceSize": { - "x": 0, - "y": 0, - "w": 40, - "h": 30 - }, - "frame": { - "x": 160, - "y": 450, - "w": 40, - "h": 30 - } - }, - { - "filename": "244_2", - "rotated": false, - "trimmed": false, - "sourceSize": { - "w": 40, - "h": 30 - }, - "spriteSourceSize": { - "x": 0, - "y": 0, - "w": 40, - "h": 30 - }, - "frame": { - "x": 200, - "y": 450, - "w": 40, - "h": 30 - } - }, - { - "filename": "244_3", - "rotated": false, - "trimmed": false, - "sourceSize": { - "w": 40, - "h": 30 - }, - "spriteSourceSize": { - "x": 0, - "y": 0, - "w": 40, - "h": 30 - }, - "frame": { - "x": 240, - "y": 450, - "w": 40, - "h": 30 - } - }, - { - "filename": "245_2", - "rotated": false, - "trimmed": false, - "sourceSize": { - "w": 40, - "h": 30 - }, - "spriteSourceSize": { - "x": 0, - "y": 0, - "w": 40, - "h": 30 - }, - "frame": { - "x": 280, - "y": 450, - "w": 40, - "h": 30 - } - }, - { - "filename": "245_3", - "rotated": false, - "trimmed": false, - "sourceSize": { - "w": 40, - "h": 30 - }, - "spriteSourceSize": { - "x": 0, - "y": 0, - "w": 40, - "h": 30 - }, - "frame": { - "x": 320, - "y": 450, - "w": 40, - "h": 30 - } - }, - { - "filename": "246_2", - "rotated": false, - "trimmed": false, - "sourceSize": { - "w": 40, - "h": 30 - }, - "spriteSourceSize": { - "x": 0, - "y": 0, - "w": 40, - "h": 30 - }, - "frame": { - "x": 360, - "y": 450, - "w": 40, - "h": 30 - } - }, - { - "filename": "246_3", - "rotated": false, - "trimmed": false, - "sourceSize": { - "w": 40, - "h": 30 - }, - "spriteSourceSize": { - "x": 0, - "y": 0, - "w": 40, - "h": 30 - }, - "frame": { - "x": 400, - "y": 450, - "w": 40, - "h": 30 - } - }, - { - "filename": "247_2", - "rotated": false, - "trimmed": false, - "sourceSize": { - "w": 40, - "h": 30 - }, - "spriteSourceSize": { - "x": 0, - "y": 0, - "w": 40, - "h": 30 - }, - "frame": { - "x": 440, - "y": 450, - "w": 40, - "h": 30 - } - }, - { - "filename": "247_3", - "rotated": false, - "trimmed": false, - "sourceSize": { - "w": 40, - "h": 30 - }, - "spriteSourceSize": { - "x": 0, - "y": 0, - "w": 40, - "h": 30 - }, - "frame": { - "x": 480, - "y": 450, - "w": 40, - "h": 30 - } - }, - { - "filename": "248-mega_2", - "rotated": false, - "trimmed": false, - "sourceSize": { - "w": 40, - "h": 30 - }, - "spriteSourceSize": { - "x": 0, - "y": 0, - "w": 40, - "h": 30 - }, "frame": { "x": 0, "y": 480, @@ -4441,7 +4441,7 @@ } }, { - "filename": "248-mega_3", + "filename": "243_3", "rotated": false, "trimmed": false, "sourceSize": { @@ -4462,7 +4462,7 @@ } }, { - "filename": "248_2", + "filename": "244_2", "rotated": false, "trimmed": false, "sourceSize": { @@ -4483,7 +4483,7 @@ } }, { - "filename": "248_3", + "filename": "244_3", "rotated": false, "trimmed": false, "sourceSize": { @@ -4504,7 +4504,7 @@ } }, { - "filename": "249_2", + "filename": "245_2", "rotated": false, "trimmed": false, "sourceSize": { @@ -4525,7 +4525,7 @@ } }, { - "filename": "249_3", + "filename": "245_3", "rotated": false, "trimmed": false, "sourceSize": { @@ -4546,7 +4546,7 @@ } }, { - "filename": "250_2", + "filename": "246_2", "rotated": false, "trimmed": false, "sourceSize": { @@ -4567,7 +4567,7 @@ } }, { - "filename": "250_3", + "filename": "246_3", "rotated": false, "trimmed": false, "sourceSize": { @@ -4588,7 +4588,7 @@ } }, { - "filename": "251_2", + "filename": "247_2", "rotated": false, "trimmed": false, "sourceSize": { @@ -4609,7 +4609,7 @@ } }, { - "filename": "251_3", + "filename": "247_3", "rotated": false, "trimmed": false, "sourceSize": { @@ -4628,6 +4628,216 @@ "w": 40, "h": 30 } + }, + { + "filename": "248-mega_2", + "rotated": false, + "trimmed": false, + "sourceSize": { + "w": 40, + "h": 30 + }, + "spriteSourceSize": { + "x": 0, + "y": 0, + "w": 40, + "h": 30 + }, + "frame": { + "x": 400, + "y": 480, + "w": 40, + "h": 30 + } + }, + { + "filename": "248-mega_3", + "rotated": false, + "trimmed": false, + "sourceSize": { + "w": 40, + "h": 30 + }, + "spriteSourceSize": { + "x": 0, + "y": 0, + "w": 40, + "h": 30 + }, + "frame": { + "x": 440, + "y": 480, + "w": 40, + "h": 30 + } + }, + { + "filename": "248_2", + "rotated": false, + "trimmed": false, + "sourceSize": { + "w": 40, + "h": 30 + }, + "spriteSourceSize": { + "x": 0, + "y": 0, + "w": 40, + "h": 30 + }, + "frame": { + "x": 480, + "y": 480, + "w": 40, + "h": 30 + } + }, + { + "filename": "248_3", + "rotated": false, + "trimmed": false, + "sourceSize": { + "w": 40, + "h": 30 + }, + "spriteSourceSize": { + "x": 0, + "y": 0, + "w": 40, + "h": 30 + }, + "frame": { + "x": 0, + "y": 510, + "w": 40, + "h": 30 + } + }, + { + "filename": "249_2", + "rotated": false, + "trimmed": false, + "sourceSize": { + "w": 40, + "h": 30 + }, + "spriteSourceSize": { + "x": 0, + "y": 0, + "w": 40, + "h": 30 + }, + "frame": { + "x": 40, + "y": 510, + "w": 40, + "h": 30 + } + }, + { + "filename": "249_3", + "rotated": false, + "trimmed": false, + "sourceSize": { + "w": 40, + "h": 30 + }, + "spriteSourceSize": { + "x": 0, + "y": 0, + "w": 40, + "h": 30 + }, + "frame": { + "x": 80, + "y": 510, + "w": 40, + "h": 30 + } + }, + { + "filename": "250_2", + "rotated": false, + "trimmed": false, + "sourceSize": { + "w": 40, + "h": 30 + }, + "spriteSourceSize": { + "x": 0, + "y": 0, + "w": 40, + "h": 30 + }, + "frame": { + "x": 120, + "y": 510, + "w": 40, + "h": 30 + } + }, + { + "filename": "250_3", + "rotated": false, + "trimmed": false, + "sourceSize": { + "w": 40, + "h": 30 + }, + "spriteSourceSize": { + "x": 0, + "y": 0, + "w": 40, + "h": 30 + }, + "frame": { + "x": 160, + "y": 510, + "w": 40, + "h": 30 + } + }, + { + "filename": "251_2", + "rotated": false, + "trimmed": false, + "sourceSize": { + "w": 40, + "h": 30 + }, + "spriteSourceSize": { + "x": 0, + "y": 0, + "w": 40, + "h": 30 + }, + "frame": { + "x": 200, + "y": 510, + "w": 40, + "h": 30 + } + }, + { + "filename": "251_3", + "rotated": false, + "trimmed": false, + "sourceSize": { + "w": 40, + "h": 30 + }, + "spriteSourceSize": { + "x": 0, + "y": 0, + "w": 40, + "h": 30 + }, + "frame": { + "x": 240, + "y": 510, + "w": 40, + "h": 30 + } } ] } @@ -4635,6 +4845,6 @@ "meta": { "app": "https://www.codeandweb.com/texturepacker", "version": "3.0", - "smartupdate": "$TexturePacker:SmartUpdate:cb87bf48266ab3d893dbbd24a52f875f:d37e73561b49b4fe831e3fcaee67b851:63b368599cdc6e139499267117e91cd5$" + "smartupdate": "$TexturePacker:SmartUpdate:9bbc7b4492e80aa5722cc2bf05816872:55b15740d88d2f1d62acee04668f97a7:63b368599cdc6e139499267117e91cd5$" } } diff --git a/public/images/pokemon_icons_2v.png b/public/images/pokemon_icons_2v.png index e74840b647b..fea0fb339ce 100644 Binary files a/public/images/pokemon_icons_2v.png and b/public/images/pokemon_icons_2v.png differ diff --git a/public/images/pokemon_icons_3v.json b/public/images/pokemon_icons_3v.json index 2500eebbff8..e18ce672c4e 100644 --- a/public/images/pokemon_icons_3v.json +++ b/public/images/pokemon_icons_3v.json @@ -4,8 +4,8 @@ "image": "pokemon_icons_3v.png", "format": "RGBA8888", "size": { - "w": 520, - "h": 520 + "w": 560, + "h": 560 }, "scale": 1, "frames": [ @@ -297,8 +297,8 @@ "h": 30 }, "frame": { - "x": 0, - "y": 30, + "x": 520, + "y": 0, "w": 40, "h": 30 } @@ -318,7 +318,7 @@ "h": 30 }, "frame": { - "x": 40, + "x": 0, "y": 30, "w": 40, "h": 30 @@ -339,7 +339,7 @@ "h": 30 }, "frame": { - "x": 80, + "x": 40, "y": 30, "w": 40, "h": 30 @@ -360,7 +360,7 @@ "h": 30 }, "frame": { - "x": 120, + "x": 80, "y": 30, "w": 40, "h": 30 @@ -381,7 +381,7 @@ "h": 30 }, "frame": { - "x": 160, + "x": 120, "y": 30, "w": 40, "h": 30 @@ -402,7 +402,7 @@ "h": 30 }, "frame": { - "x": 200, + "x": 160, "y": 30, "w": 40, "h": 30 @@ -423,7 +423,7 @@ "h": 30 }, "frame": { - "x": 240, + "x": 200, "y": 30, "w": 40, "h": 30 @@ -444,7 +444,7 @@ "h": 30 }, "frame": { - "x": 280, + "x": 240, "y": 30, "w": 40, "h": 30 @@ -465,7 +465,7 @@ "h": 30 }, "frame": { - "x": 320, + "x": 280, "y": 30, "w": 40, "h": 30 @@ -486,7 +486,7 @@ "h": 30 }, "frame": { - "x": 360, + "x": 320, "y": 30, "w": 40, "h": 30 @@ -507,7 +507,7 @@ "h": 30 }, "frame": { - "x": 400, + "x": 360, "y": 30, "w": 40, "h": 30 @@ -528,7 +528,7 @@ "h": 30 }, "frame": { - "x": 440, + "x": 400, "y": 30, "w": 40, "h": 30 @@ -549,7 +549,7 @@ "h": 30 }, "frame": { - "x": 480, + "x": 440, "y": 30, "w": 40, "h": 30 @@ -570,8 +570,8 @@ "h": 30 }, "frame": { - "x": 0, - "y": 60, + "x": 480, + "y": 30, "w": 40, "h": 30 } @@ -591,8 +591,8 @@ "h": 30 }, "frame": { - "x": 40, - "y": 60, + "x": 520, + "y": 30, "w": 40, "h": 30 } @@ -612,7 +612,7 @@ "h": 30 }, "frame": { - "x": 80, + "x": 0, "y": 60, "w": 40, "h": 30 @@ -633,7 +633,7 @@ "h": 30 }, "frame": { - "x": 120, + "x": 40, "y": 60, "w": 40, "h": 30 @@ -654,7 +654,7 @@ "h": 30 }, "frame": { - "x": 160, + "x": 80, "y": 60, "w": 40, "h": 30 @@ -675,7 +675,7 @@ "h": 30 }, "frame": { - "x": 200, + "x": 120, "y": 60, "w": 40, "h": 30 @@ -696,7 +696,7 @@ "h": 30 }, "frame": { - "x": 240, + "x": 160, "y": 60, "w": 40, "h": 30 @@ -717,7 +717,7 @@ "h": 30 }, "frame": { - "x": 280, + "x": 200, "y": 60, "w": 40, "h": 30 @@ -738,7 +738,7 @@ "h": 30 }, "frame": { - "x": 320, + "x": 240, "y": 60, "w": 40, "h": 30 @@ -759,7 +759,7 @@ "h": 30 }, "frame": { - "x": 360, + "x": 280, "y": 60, "w": 40, "h": 30 @@ -780,7 +780,7 @@ "h": 30 }, "frame": { - "x": 400, + "x": 320, "y": 60, "w": 40, "h": 30 @@ -801,7 +801,7 @@ "h": 30 }, "frame": { - "x": 440, + "x": 360, "y": 60, "w": 40, "h": 30 @@ -822,7 +822,7 @@ "h": 30 }, "frame": { - "x": 480, + "x": 400, "y": 60, "w": 40, "h": 30 @@ -843,8 +843,8 @@ "h": 30 }, "frame": { - "x": 0, - "y": 90, + "x": 440, + "y": 60, "w": 40, "h": 30 } @@ -864,8 +864,8 @@ "h": 30 }, "frame": { - "x": 40, - "y": 90, + "x": 480, + "y": 60, "w": 40, "h": 30 } @@ -885,8 +885,8 @@ "h": 30 }, "frame": { - "x": 80, - "y": 90, + "x": 520, + "y": 60, "w": 40, "h": 30 } @@ -906,7 +906,7 @@ "h": 30 }, "frame": { - "x": 120, + "x": 0, "y": 90, "w": 40, "h": 30 @@ -927,7 +927,7 @@ "h": 30 }, "frame": { - "x": 160, + "x": 40, "y": 90, "w": 40, "h": 30 @@ -948,7 +948,7 @@ "h": 30 }, "frame": { - "x": 200, + "x": 80, "y": 90, "w": 40, "h": 30 @@ -969,7 +969,7 @@ "h": 30 }, "frame": { - "x": 240, + "x": 120, "y": 90, "w": 40, "h": 30 @@ -990,7 +990,7 @@ "h": 30 }, "frame": { - "x": 280, + "x": 160, "y": 90, "w": 40, "h": 30 @@ -1011,7 +1011,7 @@ "h": 30 }, "frame": { - "x": 320, + "x": 200, "y": 90, "w": 40, "h": 30 @@ -1032,7 +1032,7 @@ "h": 30 }, "frame": { - "x": 360, + "x": 240, "y": 90, "w": 40, "h": 30 @@ -1053,7 +1053,7 @@ "h": 30 }, "frame": { - "x": 400, + "x": 280, "y": 90, "w": 40, "h": 30 @@ -1074,7 +1074,7 @@ "h": 30 }, "frame": { - "x": 440, + "x": 320, "y": 90, "w": 40, "h": 30 @@ -1095,7 +1095,7 @@ "h": 30 }, "frame": { - "x": 480, + "x": 360, "y": 90, "w": 40, "h": 30 @@ -1116,8 +1116,8 @@ "h": 30 }, "frame": { - "x": 0, - "y": 120, + "x": 400, + "y": 90, "w": 40, "h": 30 } @@ -1137,8 +1137,8 @@ "h": 30 }, "frame": { - "x": 40, - "y": 120, + "x": 440, + "y": 90, "w": 40, "h": 30 } @@ -1158,7 +1158,49 @@ "h": 30 }, "frame": { - "x": 80, + "x": 480, + "y": 90, + "w": 40, + "h": 30 + } + }, + { + "filename": "299_2", + "rotated": false, + "trimmed": false, + "sourceSize": { + "w": 40, + "h": 30 + }, + "spriteSourceSize": { + "x": 0, + "y": 0, + "w": 40, + "h": 30 + }, + "frame": { + "x": 520, + "y": 90, + "w": 40, + "h": 30 + } + }, + { + "filename": "299_3", + "rotated": false, + "trimmed": false, + "sourceSize": { + "w": 40, + "h": 30 + }, + "spriteSourceSize": { + "x": 0, + "y": 0, + "w": 40, + "h": 30 + }, + "frame": { + "x": 0, "y": 120, "w": 40, "h": 30 @@ -1179,7 +1221,7 @@ "h": 30 }, "frame": { - "x": 120, + "x": 40, "y": 120, "w": 40, "h": 30 @@ -1200,7 +1242,7 @@ "h": 30 }, "frame": { - "x": 160, + "x": 80, "y": 120, "w": 40, "h": 30 @@ -1221,7 +1263,7 @@ "h": 30 }, "frame": { - "x": 200, + "x": 120, "y": 120, "w": 40, "h": 30 @@ -1242,7 +1284,7 @@ "h": 30 }, "frame": { - "x": 240, + "x": 160, "y": 120, "w": 40, "h": 30 @@ -1263,7 +1305,7 @@ "h": 30 }, "frame": { - "x": 280, + "x": 200, "y": 120, "w": 40, "h": 30 @@ -1284,7 +1326,7 @@ "h": 30 }, "frame": { - "x": 320, + "x": 240, "y": 120, "w": 40, "h": 30 @@ -1305,7 +1347,7 @@ "h": 30 }, "frame": { - "x": 360, + "x": 280, "y": 120, "w": 40, "h": 30 @@ -1326,7 +1368,7 @@ "h": 30 }, "frame": { - "x": 400, + "x": 320, "y": 120, "w": 40, "h": 30 @@ -1347,7 +1389,7 @@ "h": 30 }, "frame": { - "x": 440, + "x": 360, "y": 120, "w": 40, "h": 30 @@ -1368,7 +1410,7 @@ "h": 30 }, "frame": { - "x": 480, + "x": 400, "y": 120, "w": 40, "h": 30 @@ -1389,8 +1431,8 @@ "h": 30 }, "frame": { - "x": 0, - "y": 150, + "x": 440, + "y": 120, "w": 40, "h": 30 } @@ -1410,8 +1452,8 @@ "h": 30 }, "frame": { - "x": 40, - "y": 150, + "x": 480, + "y": 120, "w": 40, "h": 30 } @@ -1431,8 +1473,8 @@ "h": 30 }, "frame": { - "x": 80, - "y": 150, + "x": 520, + "y": 120, "w": 40, "h": 30 } @@ -1452,7 +1494,7 @@ "h": 30 }, "frame": { - "x": 120, + "x": 0, "y": 150, "w": 40, "h": 30 @@ -1473,7 +1515,7 @@ "h": 30 }, "frame": { - "x": 160, + "x": 40, "y": 150, "w": 40, "h": 30 @@ -1494,7 +1536,7 @@ "h": 30 }, "frame": { - "x": 200, + "x": 80, "y": 150, "w": 40, "h": 30 @@ -1515,7 +1557,7 @@ "h": 30 }, "frame": { - "x": 240, + "x": 120, "y": 150, "w": 40, "h": 30 @@ -1536,7 +1578,7 @@ "h": 30 }, "frame": { - "x": 280, + "x": 160, "y": 150, "w": 40, "h": 30 @@ -1557,7 +1599,7 @@ "h": 30 }, "frame": { - "x": 320, + "x": 200, "y": 150, "w": 40, "h": 30 @@ -1578,7 +1620,7 @@ "h": 30 }, "frame": { - "x": 360, + "x": 240, "y": 150, "w": 40, "h": 30 @@ -1599,7 +1641,7 @@ "h": 30 }, "frame": { - "x": 400, + "x": 280, "y": 150, "w": 40, "h": 30 @@ -1620,7 +1662,7 @@ "h": 30 }, "frame": { - "x": 440, + "x": 320, "y": 150, "w": 40, "h": 30 @@ -1641,7 +1683,7 @@ "h": 30 }, "frame": { - "x": 480, + "x": 360, "y": 150, "w": 40, "h": 30 @@ -1662,8 +1704,8 @@ "h": 30 }, "frame": { - "x": 0, - "y": 180, + "x": 400, + "y": 150, "w": 40, "h": 30 } @@ -1683,8 +1725,8 @@ "h": 30 }, "frame": { - "x": 40, - "y": 180, + "x": 440, + "y": 150, "w": 40, "h": 30 } @@ -1704,8 +1746,8 @@ "h": 30 }, "frame": { - "x": 80, - "y": 180, + "x": 480, + "y": 150, "w": 40, "h": 30 } @@ -1725,8 +1767,8 @@ "h": 30 }, "frame": { - "x": 120, - "y": 180, + "x": 520, + "y": 150, "w": 40, "h": 30 } @@ -1746,7 +1788,7 @@ "h": 30 }, "frame": { - "x": 160, + "x": 0, "y": 180, "w": 40, "h": 30 @@ -1767,7 +1809,7 @@ "h": 30 }, "frame": { - "x": 200, + "x": 40, "y": 180, "w": 40, "h": 30 @@ -1788,7 +1830,7 @@ "h": 30 }, "frame": { - "x": 240, + "x": 80, "y": 180, "w": 40, "h": 30 @@ -1809,7 +1851,7 @@ "h": 30 }, "frame": { - "x": 280, + "x": 120, "y": 180, "w": 40, "h": 30 @@ -1830,7 +1872,7 @@ "h": 30 }, "frame": { - "x": 320, + "x": 160, "y": 180, "w": 40, "h": 30 @@ -1851,7 +1893,7 @@ "h": 30 }, "frame": { - "x": 360, + "x": 200, "y": 180, "w": 40, "h": 30 @@ -1872,7 +1914,7 @@ "h": 30 }, "frame": { - "x": 400, + "x": 240, "y": 180, "w": 40, "h": 30 @@ -1893,7 +1935,7 @@ "h": 30 }, "frame": { - "x": 440, + "x": 280, "y": 180, "w": 40, "h": 30 @@ -1914,7 +1956,7 @@ "h": 30 }, "frame": { - "x": 480, + "x": 320, "y": 180, "w": 40, "h": 30 @@ -1935,8 +1977,8 @@ "h": 30 }, "frame": { - "x": 0, - "y": 210, + "x": 360, + "y": 180, "w": 40, "h": 30 } @@ -1956,8 +1998,8 @@ "h": 30 }, "frame": { - "x": 40, - "y": 210, + "x": 400, + "y": 180, "w": 40, "h": 30 } @@ -1977,8 +2019,8 @@ "h": 30 }, "frame": { - "x": 80, - "y": 210, + "x": 440, + "y": 180, "w": 40, "h": 30 } @@ -1998,8 +2040,8 @@ "h": 30 }, "frame": { - "x": 120, - "y": 210, + "x": 480, + "y": 180, "w": 40, "h": 30 } @@ -2019,8 +2061,8 @@ "h": 30 }, "frame": { - "x": 160, - "y": 210, + "x": 520, + "y": 180, "w": 40, "h": 30 } @@ -2040,7 +2082,7 @@ "h": 30 }, "frame": { - "x": 200, + "x": 0, "y": 210, "w": 40, "h": 30 @@ -2061,7 +2103,7 @@ "h": 30 }, "frame": { - "x": 240, + "x": 40, "y": 210, "w": 40, "h": 30 @@ -2082,7 +2124,7 @@ "h": 30 }, "frame": { - "x": 280, + "x": 80, "y": 210, "w": 40, "h": 30 @@ -2103,7 +2145,91 @@ "h": 30 }, "frame": { - "x": 320, + "x": 120, + "y": 210, + "w": 40, + "h": 30 + } + }, + { + "filename": "313_2", + "rotated": false, + "trimmed": false, + "sourceSize": { + "w": 40, + "h": 30 + }, + "spriteSourceSize": { + "x": 0, + "y": 0, + "w": 40, + "h": 30 + }, + "frame": { + "x": 160, + "y": 210, + "w": 40, + "h": 30 + } + }, + { + "filename": "313_3", + "rotated": false, + "trimmed": false, + "sourceSize": { + "w": 40, + "h": 30 + }, + "spriteSourceSize": { + "x": 0, + "y": 0, + "w": 40, + "h": 30 + }, + "frame": { + "x": 200, + "y": 210, + "w": 40, + "h": 30 + } + }, + { + "filename": "314_2", + "rotated": false, + "trimmed": false, + "sourceSize": { + "w": 40, + "h": 30 + }, + "spriteSourceSize": { + "x": 0, + "y": 0, + "w": 40, + "h": 30 + }, + "frame": { + "x": 240, + "y": 210, + "w": 40, + "h": 30 + } + }, + { + "filename": "314_3", + "rotated": false, + "trimmed": false, + "sourceSize": { + "w": 40, + "h": 30 + }, + "spriteSourceSize": { + "x": 0, + "y": 0, + "w": 40, + "h": 30 + }, + "frame": { + "x": 280, "y": 210, "w": 40, "h": 30 @@ -2124,7 +2250,7 @@ "h": 30 }, "frame": { - "x": 360, + "x": 320, "y": 210, "w": 40, "h": 30 @@ -2145,7 +2271,7 @@ "h": 30 }, "frame": { - "x": 400, + "x": 360, "y": 210, "w": 40, "h": 30 @@ -2166,7 +2292,7 @@ "h": 30 }, "frame": { - "x": 440, + "x": 400, "y": 210, "w": 40, "h": 30 @@ -2187,7 +2313,7 @@ "h": 30 }, "frame": { - "x": 480, + "x": 440, "y": 210, "w": 40, "h": 30 @@ -2208,8 +2334,8 @@ "h": 30 }, "frame": { - "x": 0, - "y": 240, + "x": 480, + "y": 210, "w": 40, "h": 30 } @@ -2228,6 +2354,48 @@ "w": 40, "h": 30 }, + "frame": { + "x": 520, + "y": 210, + "w": 40, + "h": 30 + } + }, + { + "filename": "325_2", + "rotated": false, + "trimmed": false, + "sourceSize": { + "w": 40, + "h": 30 + }, + "spriteSourceSize": { + "x": 0, + "y": 0, + "w": 40, + "h": 30 + }, + "frame": { + "x": 0, + "y": 240, + "w": 40, + "h": 30 + } + }, + { + "filename": "325_3", + "rotated": false, + "trimmed": false, + "sourceSize": { + "w": 40, + "h": 30 + }, + "spriteSourceSize": { + "x": 0, + "y": 0, + "w": 40, + "h": 30 + }, "frame": { "x": 40, "y": 240, @@ -2235,6 +2403,48 @@ "h": 30 } }, + { + "filename": "326_2", + "rotated": false, + "trimmed": false, + "sourceSize": { + "w": 40, + "h": 30 + }, + "spriteSourceSize": { + "x": 0, + "y": 0, + "w": 40, + "h": 30 + }, + "frame": { + "x": 80, + "y": 240, + "w": 40, + "h": 30 + } + }, + { + "filename": "326_3", + "rotated": false, + "trimmed": false, + "sourceSize": { + "w": 40, + "h": 30 + }, + "spriteSourceSize": { + "x": 0, + "y": 0, + "w": 40, + "h": 30 + }, + "frame": { + "x": 120, + "y": 240, + "w": 40, + "h": 30 + } + }, { "filename": "327_2", "rotated": false, @@ -2250,7 +2460,7 @@ "h": 30 }, "frame": { - "x": 80, + "x": 160, "y": 240, "w": 40, "h": 30 @@ -2271,7 +2481,7 @@ "h": 30 }, "frame": { - "x": 120, + "x": 200, "y": 240, "w": 40, "h": 30 @@ -2292,7 +2502,7 @@ "h": 30 }, "frame": { - "x": 160, + "x": 240, "y": 240, "w": 40, "h": 30 @@ -2313,7 +2523,7 @@ "h": 30 }, "frame": { - "x": 200, + "x": 280, "y": 240, "w": 40, "h": 30 @@ -2334,7 +2544,7 @@ "h": 30 }, "frame": { - "x": 240, + "x": 320, "y": 240, "w": 40, "h": 30 @@ -2355,7 +2565,7 @@ "h": 30 }, "frame": { - "x": 280, + "x": 360, "y": 240, "w": 40, "h": 30 @@ -2376,7 +2586,7 @@ "h": 30 }, "frame": { - "x": 320, + "x": 400, "y": 240, "w": 40, "h": 30 @@ -2396,48 +2606,6 @@ "w": 40, "h": 30 }, - "frame": { - "x": 360, - "y": 240, - "w": 40, - "h": 30 - } - }, - { - "filename": "333_2", - "rotated": false, - "trimmed": false, - "sourceSize": { - "w": 40, - "h": 30 - }, - "spriteSourceSize": { - "x": 0, - "y": 0, - "w": 40, - "h": 30 - }, - "frame": { - "x": 400, - "y": 240, - "w": 40, - "h": 30 - } - }, - { - "filename": "333_3", - "rotated": false, - "trimmed": false, - "sourceSize": { - "w": 40, - "h": 30 - }, - "spriteSourceSize": { - "x": 0, - "y": 0, - "w": 40, - "h": 30 - }, "frame": { "x": 440, "y": 240, @@ -2446,7 +2614,7 @@ } }, { - "filename": "334-mega_2", + "filename": "331_2", "rotated": false, "trimmed": false, "sourceSize": { @@ -2467,7 +2635,28 @@ } }, { - "filename": "334-mega_3", + "filename": "331_3", + "rotated": false, + "trimmed": false, + "sourceSize": { + "w": 40, + "h": 30 + }, + "spriteSourceSize": { + "x": 0, + "y": 0, + "w": 40, + "h": 30 + }, + "frame": { + "x": 520, + "y": 240, + "w": 40, + "h": 30 + } + }, + { + "filename": "332_2", "rotated": false, "trimmed": false, "sourceSize": { @@ -2487,6 +2676,111 @@ "h": 30 } }, + { + "filename": "332_3", + "rotated": false, + "trimmed": false, + "sourceSize": { + "w": 40, + "h": 30 + }, + "spriteSourceSize": { + "x": 0, + "y": 0, + "w": 40, + "h": 30 + }, + "frame": { + "x": 40, + "y": 270, + "w": 40, + "h": 30 + } + }, + { + "filename": "333_2", + "rotated": false, + "trimmed": false, + "sourceSize": { + "w": 40, + "h": 30 + }, + "spriteSourceSize": { + "x": 0, + "y": 0, + "w": 40, + "h": 30 + }, + "frame": { + "x": 80, + "y": 270, + "w": 40, + "h": 30 + } + }, + { + "filename": "333_3", + "rotated": false, + "trimmed": false, + "sourceSize": { + "w": 40, + "h": 30 + }, + "spriteSourceSize": { + "x": 0, + "y": 0, + "w": 40, + "h": 30 + }, + "frame": { + "x": 120, + "y": 270, + "w": 40, + "h": 30 + } + }, + { + "filename": "334-mega_2", + "rotated": false, + "trimmed": false, + "sourceSize": { + "w": 40, + "h": 30 + }, + "spriteSourceSize": { + "x": 0, + "y": 0, + "w": 40, + "h": 30 + }, + "frame": { + "x": 160, + "y": 270, + "w": 40, + "h": 30 + } + }, + { + "filename": "334-mega_3", + "rotated": false, + "trimmed": false, + "sourceSize": { + "w": 40, + "h": 30 + }, + "spriteSourceSize": { + "x": 0, + "y": 0, + "w": 40, + "h": 30 + }, + "frame": { + "x": 200, + "y": 270, + "w": 40, + "h": 30 + } + }, { "filename": "334_2", "rotated": false, @@ -2502,7 +2796,7 @@ "h": 30 }, "frame": { - "x": 40, + "x": 240, "y": 270, "w": 40, "h": 30 @@ -2523,7 +2817,7 @@ "h": 30 }, "frame": { - "x": 80, + "x": 280, "y": 270, "w": 40, "h": 30 @@ -2544,7 +2838,7 @@ "h": 30 }, "frame": { - "x": 120, + "x": 320, "y": 270, "w": 40, "h": 30 @@ -2565,7 +2859,7 @@ "h": 30 }, "frame": { - "x": 160, + "x": 360, "y": 270, "w": 40, "h": 30 @@ -2586,7 +2880,7 @@ "h": 30 }, "frame": { - "x": 200, + "x": 400, "y": 270, "w": 40, "h": 30 @@ -2607,7 +2901,7 @@ "h": 30 }, "frame": { - "x": 240, + "x": 440, "y": 270, "w": 40, "h": 30 @@ -2628,7 +2922,7 @@ "h": 30 }, "frame": { - "x": 280, + "x": 480, "y": 270, "w": 40, "h": 30 @@ -2649,7 +2943,7 @@ "h": 30 }, "frame": { - "x": 320, + "x": 520, "y": 270, "w": 40, "h": 30 @@ -2670,8 +2964,8 @@ "h": 30 }, "frame": { - "x": 360, - "y": 270, + "x": 0, + "y": 300, "w": 40, "h": 30 } @@ -2691,8 +2985,8 @@ "h": 30 }, "frame": { - "x": 400, - "y": 270, + "x": 40, + "y": 300, "w": 40, "h": 30 } @@ -2712,8 +3006,8 @@ "h": 30 }, "frame": { - "x": 440, - "y": 270, + "x": 80, + "y": 300, "w": 40, "h": 30 } @@ -2733,8 +3027,8 @@ "h": 30 }, "frame": { - "x": 480, - "y": 270, + "x": 120, + "y": 300, "w": 40, "h": 30 } @@ -2754,7 +3048,7 @@ "h": 30 }, "frame": { - "x": 0, + "x": 160, "y": 300, "w": 40, "h": 30 @@ -2775,7 +3069,7 @@ "h": 30 }, "frame": { - "x": 40, + "x": 200, "y": 300, "w": 40, "h": 30 @@ -2796,7 +3090,7 @@ "h": 30 }, "frame": { - "x": 80, + "x": 240, "y": 300, "w": 40, "h": 30 @@ -2817,7 +3111,7 @@ "h": 30 }, "frame": { - "x": 120, + "x": 280, "y": 300, "w": 40, "h": 30 @@ -2838,7 +3132,7 @@ "h": 30 }, "frame": { - "x": 160, + "x": 320, "y": 300, "w": 40, "h": 30 @@ -2859,7 +3153,91 @@ "h": 30 }, "frame": { - "x": 200, + "x": 360, + "y": 300, + "w": 40, + "h": 30 + } + }, + { + "filename": "345_2", + "rotated": false, + "trimmed": false, + "sourceSize": { + "w": 40, + "h": 30 + }, + "spriteSourceSize": { + "x": 0, + "y": 0, + "w": 40, + "h": 30 + }, + "frame": { + "x": 400, + "y": 300, + "w": 40, + "h": 30 + } + }, + { + "filename": "345_3", + "rotated": false, + "trimmed": false, + "sourceSize": { + "w": 40, + "h": 30 + }, + "spriteSourceSize": { + "x": 0, + "y": 0, + "w": 40, + "h": 30 + }, + "frame": { + "x": 440, + "y": 300, + "w": 40, + "h": 30 + } + }, + { + "filename": "346_2", + "rotated": false, + "trimmed": false, + "sourceSize": { + "w": 40, + "h": 30 + }, + "spriteSourceSize": { + "x": 0, + "y": 0, + "w": 40, + "h": 30 + }, + "frame": { + "x": 480, + "y": 300, + "w": 40, + "h": 30 + } + }, + { + "filename": "346_3", + "rotated": false, + "trimmed": false, + "sourceSize": { + "w": 40, + "h": 30 + }, + "spriteSourceSize": { + "x": 0, + "y": 0, + "w": 40, + "h": 30 + }, + "frame": { + "x": 520, "y": 300, "w": 40, "h": 30 @@ -2880,8 +3258,8 @@ "h": 30 }, "frame": { - "x": 240, - "y": 300, + "x": 0, + "y": 330, "w": 40, "h": 30 } @@ -2901,8 +3279,8 @@ "h": 30 }, "frame": { - "x": 280, - "y": 300, + "x": 40, + "y": 330, "w": 40, "h": 30 } @@ -2922,8 +3300,8 @@ "h": 30 }, "frame": { - "x": 320, - "y": 300, + "x": 80, + "y": 330, "w": 40, "h": 30 } @@ -2943,8 +3321,8 @@ "h": 30 }, "frame": { - "x": 360, - "y": 300, + "x": 120, + "y": 330, "w": 40, "h": 30 } @@ -2964,8 +3342,8 @@ "h": 30 }, "frame": { - "x": 400, - "y": 300, + "x": 160, + "y": 330, "w": 40, "h": 30 } @@ -2985,8 +3363,8 @@ "h": 30 }, "frame": { - "x": 440, - "y": 300, + "x": 200, + "y": 330, "w": 40, "h": 30 } @@ -3006,8 +3384,8 @@ "h": 30 }, "frame": { - "x": 480, - "y": 300, + "x": 240, + "y": 330, "w": 40, "h": 30 } @@ -3027,7 +3405,7 @@ "h": 30 }, "frame": { - "x": 0, + "x": 280, "y": 330, "w": 40, "h": 30 @@ -3048,7 +3426,7 @@ "h": 30 }, "frame": { - "x": 40, + "x": 320, "y": 330, "w": 40, "h": 30 @@ -3069,7 +3447,7 @@ "h": 30 }, "frame": { - "x": 80, + "x": 360, "y": 330, "w": 40, "h": 30 @@ -3090,7 +3468,7 @@ "h": 30 }, "frame": { - "x": 120, + "x": 400, "y": 330, "w": 40, "h": 30 @@ -3111,7 +3489,7 @@ "h": 30 }, "frame": { - "x": 160, + "x": 440, "y": 330, "w": 40, "h": 30 @@ -3132,7 +3510,7 @@ "h": 30 }, "frame": { - "x": 200, + "x": 480, "y": 330, "w": 40, "h": 30 @@ -3153,7 +3531,7 @@ "h": 30 }, "frame": { - "x": 240, + "x": 520, "y": 330, "w": 40, "h": 30 @@ -3174,8 +3552,8 @@ "h": 30 }, "frame": { - "x": 280, - "y": 330, + "x": 0, + "y": 360, "w": 40, "h": 30 } @@ -3195,8 +3573,8 @@ "h": 30 }, "frame": { - "x": 320, - "y": 330, + "x": 40, + "y": 360, "w": 40, "h": 30 } @@ -3216,8 +3594,8 @@ "h": 30 }, "frame": { - "x": 360, - "y": 330, + "x": 80, + "y": 360, "w": 40, "h": 30 } @@ -3237,8 +3615,8 @@ "h": 30 }, "frame": { - "x": 400, - "y": 330, + "x": 120, + "y": 360, "w": 40, "h": 30 } @@ -3258,8 +3636,8 @@ "h": 30 }, "frame": { - "x": 440, - "y": 330, + "x": 160, + "y": 360, "w": 40, "h": 30 } @@ -3279,8 +3657,8 @@ "h": 30 }, "frame": { - "x": 480, - "y": 330, + "x": 200, + "y": 360, "w": 40, "h": 30 } @@ -3300,7 +3678,7 @@ "h": 30 }, "frame": { - "x": 0, + "x": 240, "y": 360, "w": 40, "h": 30 @@ -3321,7 +3699,7 @@ "h": 30 }, "frame": { - "x": 40, + "x": 280, "y": 360, "w": 40, "h": 30 @@ -3342,7 +3720,7 @@ "h": 30 }, "frame": { - "x": 80, + "x": 320, "y": 360, "w": 40, "h": 30 @@ -3363,7 +3741,7 @@ "h": 30 }, "frame": { - "x": 120, + "x": 360, "y": 360, "w": 40, "h": 30 @@ -3384,7 +3762,7 @@ "h": 30 }, "frame": { - "x": 160, + "x": 400, "y": 360, "w": 40, "h": 30 @@ -3405,7 +3783,7 @@ "h": 30 }, "frame": { - "x": 200, + "x": 440, "y": 360, "w": 40, "h": 30 @@ -3426,7 +3804,7 @@ "h": 30 }, "frame": { - "x": 240, + "x": 480, "y": 360, "w": 40, "h": 30 @@ -3447,7 +3825,7 @@ "h": 30 }, "frame": { - "x": 280, + "x": 520, "y": 360, "w": 40, "h": 30 @@ -3468,8 +3846,8 @@ "h": 30 }, "frame": { - "x": 320, - "y": 360, + "x": 0, + "y": 390, "w": 40, "h": 30 } @@ -3489,8 +3867,8 @@ "h": 30 }, "frame": { - "x": 360, - "y": 360, + "x": 40, + "y": 390, "w": 40, "h": 30 } @@ -3510,8 +3888,8 @@ "h": 30 }, "frame": { - "x": 400, - "y": 360, + "x": 80, + "y": 390, "w": 40, "h": 30 } @@ -3531,8 +3909,8 @@ "h": 30 }, "frame": { - "x": 440, - "y": 360, + "x": 120, + "y": 390, "w": 40, "h": 30 } @@ -3552,8 +3930,8 @@ "h": 30 }, "frame": { - "x": 480, - "y": 360, + "x": 160, + "y": 390, "w": 40, "h": 30 } @@ -3573,7 +3951,7 @@ "h": 30 }, "frame": { - "x": 0, + "x": 200, "y": 390, "w": 40, "h": 30 @@ -3594,7 +3972,7 @@ "h": 30 }, "frame": { - "x": 40, + "x": 240, "y": 390, "w": 40, "h": 30 @@ -3615,7 +3993,7 @@ "h": 30 }, "frame": { - "x": 80, + "x": 280, "y": 390, "w": 40, "h": 30 @@ -3636,7 +4014,7 @@ "h": 30 }, "frame": { - "x": 120, + "x": 320, "y": 390, "w": 40, "h": 30 @@ -3657,7 +4035,7 @@ "h": 30 }, "frame": { - "x": 160, + "x": 360, "y": 390, "w": 40, "h": 30 @@ -3678,7 +4056,7 @@ "h": 30 }, "frame": { - "x": 200, + "x": 400, "y": 390, "w": 40, "h": 30 @@ -3699,7 +4077,7 @@ "h": 30 }, "frame": { - "x": 240, + "x": 440, "y": 390, "w": 40, "h": 30 @@ -3720,7 +4098,7 @@ "h": 30 }, "frame": { - "x": 280, + "x": 480, "y": 390, "w": 40, "h": 30 @@ -3741,7 +4119,7 @@ "h": 30 }, "frame": { - "x": 320, + "x": 520, "y": 390, "w": 40, "h": 30 @@ -3762,8 +4140,8 @@ "h": 30 }, "frame": { - "x": 360, - "y": 390, + "x": 0, + "y": 420, "w": 40, "h": 30 } @@ -3783,8 +4161,8 @@ "h": 30 }, "frame": { - "x": 400, - "y": 390, + "x": 40, + "y": 420, "w": 40, "h": 30 } @@ -3804,8 +4182,8 @@ "h": 30 }, "frame": { - "x": 440, - "y": 390, + "x": 80, + "y": 420, "w": 40, "h": 30 } @@ -3825,8 +4203,8 @@ "h": 30 }, "frame": { - "x": 480, - "y": 390, + "x": 120, + "y": 420, "w": 40, "h": 30 } @@ -3846,7 +4224,7 @@ "h": 30 }, "frame": { - "x": 0, + "x": 160, "y": 420, "w": 40, "h": 30 @@ -3867,7 +4245,7 @@ "h": 30 }, "frame": { - "x": 40, + "x": 200, "y": 420, "w": 40, "h": 30 @@ -3888,7 +4266,7 @@ "h": 30 }, "frame": { - "x": 80, + "x": 240, "y": 420, "w": 40, "h": 30 @@ -3909,7 +4287,7 @@ "h": 30 }, "frame": { - "x": 120, + "x": 280, "y": 420, "w": 40, "h": 30 @@ -3930,7 +4308,7 @@ "h": 30 }, "frame": { - "x": 160, + "x": 320, "y": 420, "w": 40, "h": 30 @@ -3951,7 +4329,7 @@ "h": 30 }, "frame": { - "x": 200, + "x": 360, "y": 420, "w": 40, "h": 30 @@ -3972,7 +4350,7 @@ "h": 30 }, "frame": { - "x": 240, + "x": 400, "y": 420, "w": 40, "h": 30 @@ -3993,7 +4371,7 @@ "h": 30 }, "frame": { - "x": 280, + "x": 440, "y": 420, "w": 40, "h": 30 @@ -4014,7 +4392,7 @@ "h": 30 }, "frame": { - "x": 320, + "x": 480, "y": 420, "w": 40, "h": 30 @@ -4035,7 +4413,7 @@ "h": 30 }, "frame": { - "x": 360, + "x": 520, "y": 420, "w": 40, "h": 30 @@ -4056,8 +4434,8 @@ "h": 30 }, "frame": { - "x": 400, - "y": 420, + "x": 0, + "y": 450, "w": 40, "h": 30 } @@ -4077,8 +4455,8 @@ "h": 30 }, "frame": { - "x": 440, - "y": 420, + "x": 40, + "y": 450, "w": 40, "h": 30 } @@ -4098,8 +4476,8 @@ "h": 30 }, "frame": { - "x": 480, - "y": 420, + "x": 80, + "y": 450, "w": 40, "h": 30 } @@ -4119,7 +4497,7 @@ "h": 30 }, "frame": { - "x": 0, + "x": 120, "y": 450, "w": 40, "h": 30 @@ -4140,7 +4518,7 @@ "h": 30 }, "frame": { - "x": 40, + "x": 160, "y": 450, "w": 40, "h": 30 @@ -4161,7 +4539,7 @@ "h": 30 }, "frame": { - "x": 80, + "x": 200, "y": 450, "w": 40, "h": 30 @@ -4182,7 +4560,7 @@ "h": 30 }, "frame": { - "x": 120, + "x": 240, "y": 450, "w": 40, "h": 30 @@ -4203,7 +4581,7 @@ "h": 30 }, "frame": { - "x": 160, + "x": 280, "y": 450, "w": 40, "h": 30 @@ -4224,7 +4602,7 @@ "h": 30 }, "frame": { - "x": 200, + "x": 320, "y": 450, "w": 40, "h": 30 @@ -4245,7 +4623,7 @@ "h": 30 }, "frame": { - "x": 240, + "x": 360, "y": 450, "w": 40, "h": 30 @@ -4266,7 +4644,7 @@ "h": 30 }, "frame": { - "x": 280, + "x": 400, "y": 450, "w": 40, "h": 30 @@ -4287,7 +4665,7 @@ "h": 30 }, "frame": { - "x": 320, + "x": 440, "y": 450, "w": 40, "h": 30 @@ -4308,7 +4686,7 @@ "h": 30 }, "frame": { - "x": 360, + "x": 480, "y": 450, "w": 40, "h": 30 @@ -4329,7 +4707,7 @@ "h": 30 }, "frame": { - "x": 400, + "x": 520, "y": 450, "w": 40, "h": 30 @@ -4349,48 +4727,6 @@ "w": 40, "h": 30 }, - "frame": { - "x": 440, - "y": 450, - "w": 40, - "h": 30 - } - }, - { - "filename": "382-primal_3", - "rotated": false, - "trimmed": false, - "sourceSize": { - "w": 40, - "h": 30 - }, - "spriteSourceSize": { - "x": 0, - "y": 0, - "w": 40, - "h": 30 - }, - "frame": { - "x": 480, - "y": 450, - "w": 40, - "h": 30 - } - }, - { - "filename": "382_2", - "rotated": false, - "trimmed": false, - "sourceSize": { - "w": 40, - "h": 30 - }, - "spriteSourceSize": { - "x": 0, - "y": 0, - "w": 40, - "h": 30 - }, "frame": { "x": 0, "y": 480, @@ -4399,7 +4735,7 @@ } }, { - "filename": "382_3", + "filename": "382-primal_3", "rotated": false, "trimmed": false, "sourceSize": { @@ -4420,7 +4756,7 @@ } }, { - "filename": "383-primal_2", + "filename": "382_2", "rotated": false, "trimmed": false, "sourceSize": { @@ -4441,7 +4777,7 @@ } }, { - "filename": "383-primal_3", + "filename": "382_3", "rotated": false, "trimmed": false, "sourceSize": { @@ -4462,7 +4798,7 @@ } }, { - "filename": "383_2", + "filename": "383-primal_2", "rotated": false, "trimmed": false, "sourceSize": { @@ -4483,7 +4819,7 @@ } }, { - "filename": "383_3", + "filename": "383-primal_3", "rotated": false, "trimmed": false, "sourceSize": { @@ -4504,7 +4840,7 @@ } }, { - "filename": "384-mega_2", + "filename": "383_2", "rotated": false, "trimmed": false, "sourceSize": { @@ -4525,7 +4861,7 @@ } }, { - "filename": "384-mega_3", + "filename": "383_3", "rotated": false, "trimmed": false, "sourceSize": { @@ -4546,7 +4882,7 @@ } }, { - "filename": "384_2", + "filename": "384-mega_2", "rotated": false, "trimmed": false, "sourceSize": { @@ -4567,7 +4903,7 @@ } }, { - "filename": "384_3", + "filename": "384-mega_3", "rotated": false, "trimmed": false, "sourceSize": { @@ -4588,7 +4924,7 @@ } }, { - "filename": "385_1", + "filename": "384_2", "rotated": false, "trimmed": false, "sourceSize": { @@ -4609,7 +4945,7 @@ } }, { - "filename": "385_2", + "filename": "384_3", "rotated": false, "trimmed": false, "sourceSize": { @@ -4630,7 +4966,7 @@ } }, { - "filename": "385_3", + "filename": "385_1", "rotated": false, "trimmed": false, "sourceSize": { @@ -4649,6 +4985,48 @@ "w": 40, "h": 30 } + }, + { + "filename": "385_2", + "rotated": false, + "trimmed": false, + "sourceSize": { + "w": 40, + "h": 30 + }, + "spriteSourceSize": { + "x": 0, + "y": 0, + "w": 40, + "h": 30 + }, + "frame": { + "x": 520, + "y": 480, + "w": 40, + "h": 30 + } + }, + { + "filename": "385_3", + "rotated": false, + "trimmed": false, + "sourceSize": { + "w": 40, + "h": 30 + }, + "spriteSourceSize": { + "x": 0, + "y": 0, + "w": 40, + "h": 30 + }, + "frame": { + "x": 0, + "y": 510, + "w": 40, + "h": 30 + } } ] } @@ -4656,6 +5034,6 @@ "meta": { "app": "https://www.codeandweb.com/texturepacker", "version": "3.0", - "smartupdate": "$TexturePacker:SmartUpdate:673055e796ec5f9913fd1dd04284765c:1804ddee68059c3372bf99289c91dd89:039b026190bf1878996b3e03190bcdf3$" + "smartupdate": "$TexturePacker:SmartUpdate:205dbeed0e74aff154166e4664b6771c:8bafe4b4084b51e4e837c213db97e8a4:039b026190bf1878996b3e03190bcdf3$" } } diff --git a/public/images/pokemon_icons_3v.png b/public/images/pokemon_icons_3v.png index 6b699b3bfa9..b151e36e72c 100644 Binary files a/public/images/pokemon_icons_3v.png and b/public/images/pokemon_icons_3v.png differ diff --git a/public/images/pokemon_icons_4v.json b/public/images/pokemon_icons_4v.json index 2f171915e01..ffc36e945c4 100644 --- a/public/images/pokemon_icons_4v.json +++ b/public/images/pokemon_icons_4v.json @@ -4,8 +4,8 @@ "image": "pokemon_icons_4v.png", "format": "RGBA8888", "size": { - "w": 520, - "h": 520 + "w": 540, + "h": 540 }, "scale": 1, "frames": [ @@ -388,7 +388,7 @@ } }, { - "filename": "399_2", + "filename": "396_2", "rotated": false, "trimmed": false, "sourceSize": { @@ -408,6 +408,132 @@ "h": 30 } }, + { + "filename": "396_3", + "rotated": false, + "trimmed": false, + "sourceSize": { + "w": 40, + "h": 30 + }, + "spriteSourceSize": { + "x": 0, + "y": 0, + "w": 40, + "h": 30 + }, + "frame": { + "x": 240, + "y": 30, + "w": 40, + "h": 30 + } + }, + { + "filename": "397_2", + "rotated": false, + "trimmed": false, + "sourceSize": { + "w": 40, + "h": 30 + }, + "spriteSourceSize": { + "x": 0, + "y": 0, + "w": 40, + "h": 30 + }, + "frame": { + "x": 280, + "y": 30, + "w": 40, + "h": 30 + } + }, + { + "filename": "397_3", + "rotated": false, + "trimmed": false, + "sourceSize": { + "w": 40, + "h": 30 + }, + "spriteSourceSize": { + "x": 0, + "y": 0, + "w": 40, + "h": 30 + }, + "frame": { + "x": 320, + "y": 30, + "w": 40, + "h": 30 + } + }, + { + "filename": "398_2", + "rotated": false, + "trimmed": false, + "sourceSize": { + "w": 40, + "h": 30 + }, + "spriteSourceSize": { + "x": 0, + "y": 0, + "w": 40, + "h": 30 + }, + "frame": { + "x": 360, + "y": 30, + "w": 40, + "h": 30 + } + }, + { + "filename": "398_3", + "rotated": false, + "trimmed": false, + "sourceSize": { + "w": 40, + "h": 30 + }, + "spriteSourceSize": { + "x": 0, + "y": 0, + "w": 40, + "h": 30 + }, + "frame": { + "x": 400, + "y": 30, + "w": 40, + "h": 30 + } + }, + { + "filename": "399_2", + "rotated": false, + "trimmed": false, + "sourceSize": { + "w": 40, + "h": 30 + }, + "spriteSourceSize": { + "x": 0, + "y": 0, + "w": 40, + "h": 30 + }, + "frame": { + "x": 440, + "y": 30, + "w": 40, + "h": 30 + } + }, { "filename": "399_3", "rotated": false, @@ -423,7 +549,7 @@ "h": 30 }, "frame": { - "x": 240, + "x": 480, "y": 30, "w": 40, "h": 30 @@ -444,8 +570,8 @@ "h": 30 }, "frame": { - "x": 280, - "y": 30, + "x": 0, + "y": 60, "w": 40, "h": 30 } @@ -465,8 +591,8 @@ "h": 30 }, "frame": { - "x": 320, - "y": 30, + "x": 40, + "y": 60, "w": 40, "h": 30 } @@ -486,8 +612,8 @@ "h": 30 }, "frame": { - "x": 360, - "y": 30, + "x": 80, + "y": 60, "w": 40, "h": 30 } @@ -507,8 +633,8 @@ "h": 30 }, "frame": { - "x": 400, - "y": 30, + "x": 120, + "y": 60, "w": 40, "h": 30 } @@ -528,8 +654,8 @@ "h": 30 }, "frame": { - "x": 440, - "y": 30, + "x": 160, + "y": 60, "w": 40, "h": 30 } @@ -549,8 +675,134 @@ "h": 30 }, "frame": { - "x": 480, - "y": 30, + "x": 200, + "y": 60, + "w": 40, + "h": 30 + } + }, + { + "filename": "403_2", + "rotated": false, + "trimmed": false, + "sourceSize": { + "w": 40, + "h": 30 + }, + "spriteSourceSize": { + "x": 0, + "y": 0, + "w": 40, + "h": 30 + }, + "frame": { + "x": 240, + "y": 60, + "w": 40, + "h": 30 + } + }, + { + "filename": "403_3", + "rotated": false, + "trimmed": false, + "sourceSize": { + "w": 40, + "h": 30 + }, + "spriteSourceSize": { + "x": 0, + "y": 0, + "w": 40, + "h": 30 + }, + "frame": { + "x": 280, + "y": 60, + "w": 40, + "h": 30 + } + }, + { + "filename": "404_2", + "rotated": false, + "trimmed": false, + "sourceSize": { + "w": 40, + "h": 30 + }, + "spriteSourceSize": { + "x": 0, + "y": 0, + "w": 40, + "h": 30 + }, + "frame": { + "x": 320, + "y": 60, + "w": 40, + "h": 30 + } + }, + { + "filename": "404_3", + "rotated": false, + "trimmed": false, + "sourceSize": { + "w": 40, + "h": 30 + }, + "spriteSourceSize": { + "x": 0, + "y": 0, + "w": 40, + "h": 30 + }, + "frame": { + "x": 360, + "y": 60, + "w": 40, + "h": 30 + } + }, + { + "filename": "405_2", + "rotated": false, + "trimmed": false, + "sourceSize": { + "w": 40, + "h": 30 + }, + "spriteSourceSize": { + "x": 0, + "y": 0, + "w": 40, + "h": 30 + }, + "frame": { + "x": 400, + "y": 60, + "w": 40, + "h": 30 + } + }, + { + "filename": "405_3", + "rotated": false, + "trimmed": false, + "sourceSize": { + "w": 40, + "h": 30 + }, + "spriteSourceSize": { + "x": 0, + "y": 0, + "w": 40, + "h": 30 + }, + "frame": { + "x": 440, + "y": 60, "w": 40, "h": 30 } @@ -570,7 +822,7 @@ "h": 30 }, "frame": { - "x": 0, + "x": 480, "y": 60, "w": 40, "h": 30 @@ -591,8 +843,8 @@ "h": 30 }, "frame": { - "x": 40, - "y": 60, + "x": 0, + "y": 90, "w": 40, "h": 30 } @@ -612,8 +864,8 @@ "h": 30 }, "frame": { - "x": 80, - "y": 60, + "x": 40, + "y": 90, "w": 40, "h": 30 } @@ -633,8 +885,8 @@ "h": 30 }, "frame": { - "x": 120, - "y": 60, + "x": 80, + "y": 90, "w": 40, "h": 30 } @@ -654,8 +906,8 @@ "h": 30 }, "frame": { - "x": 160, - "y": 60, + "x": 120, + "y": 90, "w": 40, "h": 30 } @@ -675,8 +927,8 @@ "h": 30 }, "frame": { - "x": 200, - "y": 60, + "x": 160, + "y": 90, "w": 40, "h": 30 } @@ -696,8 +948,8 @@ "h": 30 }, "frame": { - "x": 240, - "y": 60, + "x": 200, + "y": 90, "w": 40, "h": 30 } @@ -717,8 +969,8 @@ "h": 30 }, "frame": { - "x": 280, - "y": 60, + "x": 240, + "y": 90, "w": 40, "h": 30 } @@ -738,8 +990,8 @@ "h": 30 }, "frame": { - "x": 320, - "y": 60, + "x": 280, + "y": 90, "w": 40, "h": 30 } @@ -759,8 +1011,8 @@ "h": 30 }, "frame": { - "x": 360, - "y": 60, + "x": 320, + "y": 90, "w": 40, "h": 30 } @@ -780,8 +1032,8 @@ "h": 30 }, "frame": { - "x": 400, - "y": 60, + "x": 360, + "y": 90, "w": 40, "h": 30 } @@ -801,8 +1053,8 @@ "h": 30 }, "frame": { - "x": 440, - "y": 60, + "x": 400, + "y": 90, "w": 40, "h": 30 } @@ -822,8 +1074,8 @@ "h": 30 }, "frame": { - "x": 480, - "y": 60, + "x": 440, + "y": 90, "w": 40, "h": 30 } @@ -843,7 +1095,7 @@ "h": 30 }, "frame": { - "x": 0, + "x": 480, "y": 90, "w": 40, "h": 30 @@ -864,8 +1116,8 @@ "h": 30 }, "frame": { - "x": 40, - "y": 90, + "x": 0, + "y": 120, "w": 40, "h": 30 } @@ -885,8 +1137,8 @@ "h": 30 }, "frame": { - "x": 80, - "y": 90, + "x": 40, + "y": 120, "w": 40, "h": 30 } @@ -906,8 +1158,8 @@ "h": 30 }, "frame": { - "x": 120, - "y": 90, + "x": 80, + "y": 120, "w": 40, "h": 30 } @@ -927,8 +1179,8 @@ "h": 30 }, "frame": { - "x": 160, - "y": 90, + "x": 120, + "y": 120, "w": 40, "h": 30 } @@ -948,8 +1200,8 @@ "h": 30 }, "frame": { - "x": 200, - "y": 90, + "x": 160, + "y": 120, "w": 40, "h": 30 } @@ -969,8 +1221,8 @@ "h": 30 }, "frame": { - "x": 240, - "y": 90, + "x": 200, + "y": 120, "w": 40, "h": 30 } @@ -990,8 +1242,8 @@ "h": 30 }, "frame": { - "x": 280, - "y": 90, + "x": 240, + "y": 120, "w": 40, "h": 30 } @@ -1011,8 +1263,8 @@ "h": 30 }, "frame": { - "x": 320, - "y": 90, + "x": 280, + "y": 120, "w": 40, "h": 30 } @@ -1032,8 +1284,8 @@ "h": 30 }, "frame": { - "x": 360, - "y": 90, + "x": 320, + "y": 120, "w": 40, "h": 30 } @@ -1052,9 +1304,51 @@ "w": 40, "h": 30 }, + "frame": { + "x": 360, + "y": 120, + "w": 40, + "h": 30 + } + }, + { + "filename": "417_2", + "rotated": false, + "trimmed": false, + "sourceSize": { + "w": 40, + "h": 30 + }, + "spriteSourceSize": { + "x": 0, + "y": 0, + "w": 40, + "h": 30 + }, "frame": { "x": 400, - "y": 90, + "y": 120, + "w": 40, + "h": 30 + } + }, + { + "filename": "417_3", + "rotated": false, + "trimmed": false, + "sourceSize": { + "w": 40, + "h": 30 + }, + "spriteSourceSize": { + "x": 0, + "y": 0, + "w": 40, + "h": 30 + }, + "frame": { + "x": 440, + "y": 120, "w": 40, "h": 30 } @@ -1074,8 +1368,8 @@ "h": 30 }, "frame": { - "x": 440, - "y": 90, + "x": 480, + "y": 120, "w": 40, "h": 30 } @@ -1095,8 +1389,8 @@ "h": 30 }, "frame": { - "x": 480, - "y": 90, + "x": 0, + "y": 150, "w": 40, "h": 30 } @@ -1116,8 +1410,8 @@ "h": 30 }, "frame": { - "x": 0, - "y": 120, + "x": 40, + "y": 150, "w": 40, "h": 30 } @@ -1137,8 +1431,134 @@ "h": 30 }, "frame": { - "x": 40, - "y": 120, + "x": 80, + "y": 150, + "w": 40, + "h": 30 + } + }, + { + "filename": "420_2", + "rotated": false, + "trimmed": false, + "sourceSize": { + "w": 40, + "h": 30 + }, + "spriteSourceSize": { + "x": 0, + "y": 0, + "w": 40, + "h": 30 + }, + "frame": { + "x": 120, + "y": 150, + "w": 40, + "h": 30 + } + }, + { + "filename": "420_3", + "rotated": false, + "trimmed": false, + "sourceSize": { + "w": 40, + "h": 30 + }, + "spriteSourceSize": { + "x": 0, + "y": 0, + "w": 40, + "h": 30 + }, + "frame": { + "x": 160, + "y": 150, + "w": 40, + "h": 30 + } + }, + { + "filename": "421-overcast_2", + "rotated": false, + "trimmed": false, + "sourceSize": { + "w": 40, + "h": 30 + }, + "spriteSourceSize": { + "x": 0, + "y": 0, + "w": 40, + "h": 30 + }, + "frame": { + "x": 200, + "y": 150, + "w": 40, + "h": 30 + } + }, + { + "filename": "421-overcast_3", + "rotated": false, + "trimmed": false, + "sourceSize": { + "w": 40, + "h": 30 + }, + "spriteSourceSize": { + "x": 0, + "y": 0, + "w": 40, + "h": 30 + }, + "frame": { + "x": 240, + "y": 150, + "w": 40, + "h": 30 + } + }, + { + "filename": "421-sunshine_2", + "rotated": false, + "trimmed": false, + "sourceSize": { + "w": 40, + "h": 30 + }, + "spriteSourceSize": { + "x": 0, + "y": 0, + "w": 40, + "h": 30 + }, + "frame": { + "x": 280, + "y": 150, + "w": 40, + "h": 30 + } + }, + { + "filename": "421-sunshine_3", + "rotated": false, + "trimmed": false, + "sourceSize": { + "w": 40, + "h": 30 + }, + "spriteSourceSize": { + "x": 0, + "y": 0, + "w": 40, + "h": 30 + }, + "frame": { + "x": 320, + "y": 150, "w": 40, "h": 30 } @@ -1158,8 +1578,8 @@ "h": 30 }, "frame": { - "x": 80, - "y": 120, + "x": 360, + "y": 150, "w": 40, "h": 30 } @@ -1179,8 +1599,8 @@ "h": 30 }, "frame": { - "x": 120, - "y": 120, + "x": 400, + "y": 150, "w": 40, "h": 30 } @@ -1200,8 +1620,8 @@ "h": 30 }, "frame": { - "x": 160, - "y": 120, + "x": 440, + "y": 150, "w": 40, "h": 30 } @@ -1221,8 +1641,8 @@ "h": 30 }, "frame": { - "x": 200, - "y": 120, + "x": 480, + "y": 150, "w": 40, "h": 30 } @@ -1242,8 +1662,8 @@ "h": 30 }, "frame": { - "x": 240, - "y": 120, + "x": 0, + "y": 180, "w": 40, "h": 30 } @@ -1263,8 +1683,8 @@ "h": 30 }, "frame": { - "x": 280, - "y": 120, + "x": 40, + "y": 180, "w": 40, "h": 30 } @@ -1284,8 +1704,8 @@ "h": 30 }, "frame": { - "x": 320, - "y": 120, + "x": 80, + "y": 180, "w": 40, "h": 30 } @@ -1305,8 +1725,8 @@ "h": 30 }, "frame": { - "x": 360, - "y": 120, + "x": 120, + "y": 180, "w": 40, "h": 30 } @@ -1326,8 +1746,8 @@ "h": 30 }, "frame": { - "x": 400, - "y": 120, + "x": 160, + "y": 180, "w": 40, "h": 30 } @@ -1347,8 +1767,8 @@ "h": 30 }, "frame": { - "x": 440, - "y": 120, + "x": 200, + "y": 180, "w": 40, "h": 30 } @@ -1368,8 +1788,8 @@ "h": 30 }, "frame": { - "x": 480, - "y": 120, + "x": 240, + "y": 180, "w": 40, "h": 30 } @@ -1389,8 +1809,8 @@ "h": 30 }, "frame": { - "x": 0, - "y": 150, + "x": 280, + "y": 180, "w": 40, "h": 30 } @@ -1410,8 +1830,8 @@ "h": 30 }, "frame": { - "x": 40, - "y": 150, + "x": 320, + "y": 180, "w": 40, "h": 30 } @@ -1431,8 +1851,8 @@ "h": 30 }, "frame": { - "x": 80, - "y": 150, + "x": 360, + "y": 180, "w": 40, "h": 30 } @@ -1452,8 +1872,8 @@ "h": 30 }, "frame": { - "x": 120, - "y": 150, + "x": 400, + "y": 180, "w": 40, "h": 30 } @@ -1473,8 +1893,8 @@ "h": 30 }, "frame": { - "x": 160, - "y": 150, + "x": 440, + "y": 180, "w": 40, "h": 30 } @@ -1494,8 +1914,8 @@ "h": 30 }, "frame": { - "x": 200, - "y": 150, + "x": 480, + "y": 180, "w": 40, "h": 30 } @@ -1515,8 +1935,8 @@ "h": 30 }, "frame": { - "x": 240, - "y": 150, + "x": 0, + "y": 210, "w": 40, "h": 30 } @@ -1536,8 +1956,8 @@ "h": 30 }, "frame": { - "x": 280, - "y": 150, + "x": 40, + "y": 210, "w": 40, "h": 30 } @@ -1557,8 +1977,8 @@ "h": 30 }, "frame": { - "x": 320, - "y": 150, + "x": 80, + "y": 210, "w": 40, "h": 30 } @@ -1578,8 +1998,8 @@ "h": 30 }, "frame": { - "x": 360, - "y": 150, + "x": 120, + "y": 210, "w": 40, "h": 30 } @@ -1599,8 +2019,8 @@ "h": 30 }, "frame": { - "x": 400, - "y": 150, + "x": 160, + "y": 210, "w": 40, "h": 30 } @@ -1620,8 +2040,8 @@ "h": 30 }, "frame": { - "x": 440, - "y": 150, + "x": 200, + "y": 210, "w": 40, "h": 30 } @@ -1641,8 +2061,8 @@ "h": 30 }, "frame": { - "x": 480, - "y": 150, + "x": 240, + "y": 210, "w": 40, "h": 30 } @@ -1662,8 +2082,8 @@ "h": 30 }, "frame": { - "x": 0, - "y": 180, + "x": 280, + "y": 210, "w": 40, "h": 30 } @@ -1683,8 +2103,8 @@ "h": 30 }, "frame": { - "x": 40, - "y": 180, + "x": 320, + "y": 210, "w": 40, "h": 30 } @@ -1704,8 +2124,8 @@ "h": 30 }, "frame": { - "x": 80, - "y": 180, + "x": 360, + "y": 210, "w": 40, "h": 30 } @@ -1725,8 +2145,8 @@ "h": 30 }, "frame": { - "x": 120, - "y": 180, + "x": 400, + "y": 210, "w": 40, "h": 30 } @@ -1746,8 +2166,8 @@ "h": 30 }, "frame": { - "x": 160, - "y": 180, + "x": 440, + "y": 210, "w": 40, "h": 30 } @@ -1767,8 +2187,8 @@ "h": 30 }, "frame": { - "x": 200, - "y": 180, + "x": 480, + "y": 210, "w": 40, "h": 30 } @@ -1788,8 +2208,8 @@ "h": 30 }, "frame": { - "x": 240, - "y": 180, + "x": 0, + "y": 240, "w": 40, "h": 30 } @@ -1809,8 +2229,8 @@ "h": 30 }, "frame": { - "x": 280, - "y": 180, + "x": 40, + "y": 240, "w": 40, "h": 30 } @@ -1830,8 +2250,8 @@ "h": 30 }, "frame": { - "x": 320, - "y": 180, + "x": 80, + "y": 240, "w": 40, "h": 30 } @@ -1851,8 +2271,8 @@ "h": 30 }, "frame": { - "x": 360, - "y": 180, + "x": 120, + "y": 240, "w": 40, "h": 30 } @@ -1872,8 +2292,8 @@ "h": 30 }, "frame": { - "x": 400, - "y": 180, + "x": 160, + "y": 240, "w": 40, "h": 30 } @@ -1893,8 +2313,8 @@ "h": 30 }, "frame": { - "x": 440, - "y": 180, + "x": 200, + "y": 240, "w": 40, "h": 30 } @@ -1914,8 +2334,8 @@ "h": 30 }, "frame": { - "x": 480, - "y": 180, + "x": 240, + "y": 240, "w": 40, "h": 30 } @@ -1935,8 +2355,8 @@ "h": 30 }, "frame": { - "x": 0, - "y": 210, + "x": 280, + "y": 240, "w": 40, "h": 30 } @@ -1956,8 +2376,8 @@ "h": 30 }, "frame": { - "x": 40, - "y": 210, + "x": 320, + "y": 240, "w": 40, "h": 30 } @@ -1977,8 +2397,8 @@ "h": 30 }, "frame": { - "x": 80, - "y": 210, + "x": 360, + "y": 240, "w": 40, "h": 30 } @@ -1998,8 +2418,8 @@ "h": 30 }, "frame": { - "x": 120, - "y": 210, + "x": 400, + "y": 240, "w": 40, "h": 30 } @@ -2019,8 +2439,8 @@ "h": 30 }, "frame": { - "x": 160, - "y": 210, + "x": 440, + "y": 240, "w": 40, "h": 30 } @@ -2040,8 +2460,8 @@ "h": 30 }, "frame": { - "x": 200, - "y": 210, + "x": 480, + "y": 240, "w": 40, "h": 30 } @@ -2061,8 +2481,8 @@ "h": 30 }, "frame": { - "x": 240, - "y": 210, + "x": 0, + "y": 270, "w": 40, "h": 30 } @@ -2082,8 +2502,8 @@ "h": 30 }, "frame": { - "x": 280, - "y": 210, + "x": 40, + "y": 270, "w": 40, "h": 30 } @@ -2103,8 +2523,8 @@ "h": 30 }, "frame": { - "x": 320, - "y": 210, + "x": 80, + "y": 270, "w": 40, "h": 30 } @@ -2124,8 +2544,8 @@ "h": 30 }, "frame": { - "x": 360, - "y": 210, + "x": 120, + "y": 270, "w": 40, "h": 30 } @@ -2145,8 +2565,8 @@ "h": 30 }, "frame": { - "x": 400, - "y": 210, + "x": 160, + "y": 270, "w": 40, "h": 30 } @@ -2166,8 +2586,8 @@ "h": 30 }, "frame": { - "x": 440, - "y": 210, + "x": 200, + "y": 270, "w": 40, "h": 30 } @@ -2187,8 +2607,8 @@ "h": 30 }, "frame": { - "x": 480, - "y": 210, + "x": 240, + "y": 270, "w": 40, "h": 30 } @@ -2208,8 +2628,8 @@ "h": 30 }, "frame": { - "x": 0, - "y": 240, + "x": 280, + "y": 270, "w": 40, "h": 30 } @@ -2229,8 +2649,8 @@ "h": 30 }, "frame": { - "x": 40, - "y": 240, + "x": 320, + "y": 270, "w": 40, "h": 30 } @@ -2250,8 +2670,8 @@ "h": 30 }, "frame": { - "x": 80, - "y": 240, + "x": 360, + "y": 270, "w": 40, "h": 30 } @@ -2271,8 +2691,8 @@ "h": 30 }, "frame": { - "x": 120, - "y": 240, + "x": 400, + "y": 270, "w": 40, "h": 30 } @@ -2292,8 +2712,8 @@ "h": 30 }, "frame": { - "x": 160, - "y": 240, + "x": 440, + "y": 270, "w": 40, "h": 30 } @@ -2313,8 +2733,8 @@ "h": 30 }, "frame": { - "x": 200, - "y": 240, + "x": 480, + "y": 270, "w": 40, "h": 30 } @@ -2334,8 +2754,50 @@ "h": 30 }, "frame": { - "x": 240, - "y": 240, + "x": 0, + "y": 300, + "w": 40, + "h": 30 + } + }, + { + "filename": "446_2", + "rotated": false, + "trimmed": false, + "sourceSize": { + "w": 40, + "h": 30 + }, + "spriteSourceSize": { + "x": 0, + "y": 0, + "w": 40, + "h": 30 + }, + "frame": { + "x": 40, + "y": 300, + "w": 40, + "h": 30 + } + }, + { + "filename": "446_3", + "rotated": false, + "trimmed": false, + "sourceSize": { + "w": 40, + "h": 30 + }, + "spriteSourceSize": { + "x": 0, + "y": 0, + "w": 40, + "h": 30 + }, + "frame": { + "x": 80, + "y": 300, "w": 40, "h": 30 } @@ -2355,8 +2817,8 @@ "h": 30 }, "frame": { - "x": 280, - "y": 240, + "x": 120, + "y": 300, "w": 40, "h": 30 } @@ -2376,8 +2838,8 @@ "h": 30 }, "frame": { - "x": 320, - "y": 240, + "x": 160, + "y": 300, "w": 40, "h": 30 } @@ -2397,8 +2859,8 @@ "h": 30 }, "frame": { - "x": 360, - "y": 240, + "x": 200, + "y": 300, "w": 40, "h": 30 } @@ -2418,8 +2880,8 @@ "h": 30 }, "frame": { - "x": 400, - "y": 240, + "x": 240, + "y": 300, "w": 40, "h": 30 } @@ -2439,8 +2901,8 @@ "h": 30 }, "frame": { - "x": 440, - "y": 240, + "x": 280, + "y": 300, "w": 40, "h": 30 } @@ -2460,8 +2922,8 @@ "h": 30 }, "frame": { - "x": 480, - "y": 240, + "x": 320, + "y": 300, "w": 40, "h": 30 } @@ -2481,8 +2943,8 @@ "h": 30 }, "frame": { - "x": 0, - "y": 270, + "x": 360, + "y": 300, "w": 40, "h": 30 } @@ -2502,8 +2964,8 @@ "h": 30 }, "frame": { - "x": 40, - "y": 270, + "x": 400, + "y": 300, "w": 40, "h": 30 } @@ -2523,8 +2985,8 @@ "h": 30 }, "frame": { - "x": 80, - "y": 270, + "x": 440, + "y": 300, "w": 40, "h": 30 } @@ -2544,8 +3006,8 @@ "h": 30 }, "frame": { - "x": 120, - "y": 270, + "x": 480, + "y": 300, "w": 40, "h": 30 } @@ -2565,8 +3027,8 @@ "h": 30 }, "frame": { - "x": 160, - "y": 270, + "x": 0, + "y": 330, "w": 40, "h": 30 } @@ -2586,8 +3048,8 @@ "h": 30 }, "frame": { - "x": 200, - "y": 270, + "x": 40, + "y": 330, "w": 40, "h": 30 } @@ -2607,8 +3069,8 @@ "h": 30 }, "frame": { - "x": 240, - "y": 270, + "x": 80, + "y": 330, "w": 40, "h": 30 } @@ -2628,8 +3090,8 @@ "h": 30 }, "frame": { - "x": 280, - "y": 270, + "x": 120, + "y": 330, "w": 40, "h": 30 } @@ -2649,8 +3111,8 @@ "h": 30 }, "frame": { - "x": 320, - "y": 270, + "x": 160, + "y": 330, "w": 40, "h": 30 } @@ -2670,8 +3132,8 @@ "h": 30 }, "frame": { - "x": 360, - "y": 270, + "x": 200, + "y": 330, "w": 40, "h": 30 } @@ -2691,8 +3153,8 @@ "h": 30 }, "frame": { - "x": 400, - "y": 270, + "x": 240, + "y": 330, "w": 40, "h": 30 } @@ -2712,8 +3174,8 @@ "h": 30 }, "frame": { - "x": 440, - "y": 270, + "x": 280, + "y": 330, "w": 40, "h": 30 } @@ -2733,8 +3195,8 @@ "h": 30 }, "frame": { - "x": 480, - "y": 270, + "x": 320, + "y": 330, "w": 40, "h": 30 } @@ -2754,8 +3216,8 @@ "h": 30 }, "frame": { - "x": 0, - "y": 300, + "x": 360, + "y": 330, "w": 40, "h": 30 } @@ -2775,8 +3237,8 @@ "h": 30 }, "frame": { - "x": 40, - "y": 300, + "x": 400, + "y": 330, "w": 40, "h": 30 } @@ -2796,8 +3258,8 @@ "h": 30 }, "frame": { - "x": 80, - "y": 300, + "x": 440, + "y": 330, "w": 40, "h": 30 } @@ -2817,8 +3279,8 @@ "h": 30 }, "frame": { - "x": 120, - "y": 300, + "x": 480, + "y": 330, "w": 40, "h": 30 } @@ -2838,8 +3300,8 @@ "h": 30 }, "frame": { - "x": 160, - "y": 300, + "x": 0, + "y": 360, "w": 40, "h": 30 } @@ -2859,8 +3321,8 @@ "h": 30 }, "frame": { - "x": 200, - "y": 300, + "x": 40, + "y": 360, "w": 40, "h": 30 } @@ -2880,8 +3342,8 @@ "h": 30 }, "frame": { - "x": 240, - "y": 300, + "x": 80, + "y": 360, "w": 40, "h": 30 } @@ -2901,8 +3363,8 @@ "h": 30 }, "frame": { - "x": 280, - "y": 300, + "x": 120, + "y": 360, "w": 40, "h": 30 } @@ -2922,8 +3384,8 @@ "h": 30 }, "frame": { - "x": 320, - "y": 300, + "x": 160, + "y": 360, "w": 40, "h": 30 } @@ -2943,8 +3405,8 @@ "h": 30 }, "frame": { - "x": 360, - "y": 300, + "x": 200, + "y": 360, "w": 40, "h": 30 } @@ -2964,8 +3426,8 @@ "h": 30 }, "frame": { - "x": 400, - "y": 300, + "x": 240, + "y": 360, "w": 40, "h": 30 } @@ -2985,8 +3447,8 @@ "h": 30 }, "frame": { - "x": 440, - "y": 300, + "x": 280, + "y": 360, "w": 40, "h": 30 } @@ -3006,8 +3468,8 @@ "h": 30 }, "frame": { - "x": 480, - "y": 300, + "x": 320, + "y": 360, "w": 40, "h": 30 } @@ -3027,8 +3489,8 @@ "h": 30 }, "frame": { - "x": 0, - "y": 330, + "x": 360, + "y": 360, "w": 40, "h": 30 } @@ -3048,8 +3510,8 @@ "h": 30 }, "frame": { - "x": 40, - "y": 330, + "x": 400, + "y": 360, "w": 40, "h": 30 } @@ -3069,8 +3531,8 @@ "h": 30 }, "frame": { - "x": 80, - "y": 330, + "x": 440, + "y": 360, "w": 40, "h": 30 } @@ -3090,8 +3552,8 @@ "h": 30 }, "frame": { - "x": 120, - "y": 330, + "x": 480, + "y": 360, "w": 40, "h": 30 } @@ -3111,8 +3573,8 @@ "h": 30 }, "frame": { - "x": 160, - "y": 330, + "x": 0, + "y": 390, "w": 40, "h": 30 } @@ -3132,8 +3594,8 @@ "h": 30 }, "frame": { - "x": 200, - "y": 330, + "x": 40, + "y": 390, "w": 40, "h": 30 } @@ -3153,8 +3615,8 @@ "h": 30 }, "frame": { - "x": 240, - "y": 330, + "x": 80, + "y": 390, "w": 40, "h": 30 } @@ -3174,8 +3636,8 @@ "h": 30 }, "frame": { - "x": 280, - "y": 330, + "x": 120, + "y": 390, "w": 40, "h": 30 } @@ -3195,8 +3657,8 @@ "h": 30 }, "frame": { - "x": 320, - "y": 330, + "x": 160, + "y": 390, "w": 40, "h": 30 } @@ -3216,8 +3678,8 @@ "h": 30 }, "frame": { - "x": 360, - "y": 330, + "x": 200, + "y": 390, "w": 40, "h": 30 } @@ -3237,8 +3699,8 @@ "h": 30 }, "frame": { - "x": 400, - "y": 330, + "x": 240, + "y": 390, "w": 40, "h": 30 } @@ -3258,8 +3720,8 @@ "h": 30 }, "frame": { - "x": 440, - "y": 330, + "x": 280, + "y": 390, "w": 40, "h": 30 } @@ -3279,8 +3741,8 @@ "h": 30 }, "frame": { - "x": 480, - "y": 330, + "x": 320, + "y": 390, "w": 40, "h": 30 } @@ -3300,8 +3762,8 @@ "h": 30 }, "frame": { - "x": 0, - "y": 360, + "x": 360, + "y": 390, "w": 40, "h": 30 } @@ -3321,8 +3783,8 @@ "h": 30 }, "frame": { - "x": 40, - "y": 360, + "x": 400, + "y": 390, "w": 40, "h": 30 } @@ -3342,8 +3804,8 @@ "h": 30 }, "frame": { - "x": 80, - "y": 360, + "x": 440, + "y": 390, "w": 40, "h": 30 } @@ -3363,8 +3825,8 @@ "h": 30 }, "frame": { - "x": 120, - "y": 360, + "x": 480, + "y": 390, "w": 40, "h": 30 } @@ -3384,8 +3846,8 @@ "h": 30 }, "frame": { - "x": 160, - "y": 360, + "x": 0, + "y": 420, "w": 40, "h": 30 } @@ -3405,8 +3867,8 @@ "h": 30 }, "frame": { - "x": 200, - "y": 360, + "x": 40, + "y": 420, "w": 40, "h": 30 } @@ -3426,8 +3888,8 @@ "h": 30 }, "frame": { - "x": 240, - "y": 360, + "x": 80, + "y": 420, "w": 40, "h": 30 } @@ -3447,8 +3909,50 @@ "h": 30 }, "frame": { - "x": 280, - "y": 360, + "x": 120, + "y": 420, + "w": 40, + "h": 30 + } + }, + { + "filename": "476_2", + "rotated": false, + "trimmed": false, + "sourceSize": { + "w": 40, + "h": 30 + }, + "spriteSourceSize": { + "x": 0, + "y": 0, + "w": 40, + "h": 30 + }, + "frame": { + "x": 160, + "y": 420, + "w": 40, + "h": 30 + } + }, + { + "filename": "476_3", + "rotated": false, + "trimmed": false, + "sourceSize": { + "w": 40, + "h": 30 + }, + "spriteSourceSize": { + "x": 0, + "y": 0, + "w": 40, + "h": 30 + }, + "frame": { + "x": 200, + "y": 420, "w": 40, "h": 30 } @@ -3468,8 +3972,8 @@ "h": 30 }, "frame": { - "x": 320, - "y": 360, + "x": 240, + "y": 420, "w": 40, "h": 30 } @@ -3489,8 +3993,8 @@ "h": 30 }, "frame": { - "x": 360, - "y": 360, + "x": 280, + "y": 420, "w": 40, "h": 30 } @@ -3510,8 +4014,8 @@ "h": 30 }, "frame": { - "x": 400, - "y": 360, + "x": 320, + "y": 420, "w": 40, "h": 30 } @@ -3531,8 +4035,8 @@ "h": 30 }, "frame": { - "x": 440, - "y": 360, + "x": 360, + "y": 420, "w": 40, "h": 30 } @@ -3552,8 +4056,8 @@ "h": 30 }, "frame": { - "x": 480, - "y": 360, + "x": 400, + "y": 420, "w": 40, "h": 30 } @@ -3573,8 +4077,8 @@ "h": 30 }, "frame": { - "x": 0, - "y": 390, + "x": 440, + "y": 420, "w": 40, "h": 30 } @@ -3594,8 +4098,8 @@ "h": 30 }, "frame": { - "x": 40, - "y": 390, + "x": 480, + "y": 420, "w": 40, "h": 30 } @@ -3615,8 +4119,8 @@ "h": 30 }, "frame": { - "x": 80, - "y": 390, + "x": 0, + "y": 450, "w": 40, "h": 30 } @@ -3636,8 +4140,8 @@ "h": 30 }, "frame": { - "x": 120, - "y": 390, + "x": 40, + "y": 450, "w": 40, "h": 30 } @@ -3657,8 +4161,8 @@ "h": 30 }, "frame": { - "x": 160, - "y": 390, + "x": 80, + "y": 450, "w": 40, "h": 30 } @@ -3678,8 +4182,8 @@ "h": 30 }, "frame": { - "x": 200, - "y": 390, + "x": 120, + "y": 450, "w": 40, "h": 30 } @@ -3699,8 +4203,8 @@ "h": 30 }, "frame": { - "x": 240, - "y": 390, + "x": 160, + "y": 450, "w": 40, "h": 30 } @@ -3720,8 +4224,8 @@ "h": 30 }, "frame": { - "x": 280, - "y": 390, + "x": 200, + "y": 450, "w": 40, "h": 30 } @@ -3741,8 +4245,8 @@ "h": 30 }, "frame": { - "x": 320, - "y": 390, + "x": 240, + "y": 450, "w": 40, "h": 30 } @@ -3762,8 +4266,8 @@ "h": 30 }, "frame": { - "x": 360, - "y": 390, + "x": 280, + "y": 450, "w": 40, "h": 30 } @@ -3783,8 +4287,8 @@ "h": 30 }, "frame": { - "x": 400, - "y": 390, + "x": 320, + "y": 450, "w": 40, "h": 30 } @@ -3804,8 +4308,8 @@ "h": 30 }, "frame": { - "x": 440, - "y": 390, + "x": 360, + "y": 450, "w": 40, "h": 30 } @@ -3825,8 +4329,8 @@ "h": 30 }, "frame": { - "x": 480, - "y": 390, + "x": 400, + "y": 450, "w": 40, "h": 30 } @@ -3846,8 +4350,8 @@ "h": 30 }, "frame": { - "x": 0, - "y": 420, + "x": 440, + "y": 450, "w": 40, "h": 30 } @@ -3867,8 +4371,8 @@ "h": 30 }, "frame": { - "x": 40, - "y": 420, + "x": 480, + "y": 450, "w": 40, "h": 30 } @@ -3888,8 +4392,8 @@ "h": 30 }, "frame": { - "x": 80, - "y": 420, + "x": 0, + "y": 480, "w": 40, "h": 30 } @@ -3909,8 +4413,8 @@ "h": 30 }, "frame": { - "x": 120, - "y": 420, + "x": 40, + "y": 480, "w": 40, "h": 30 } @@ -3930,8 +4434,8 @@ "h": 30 }, "frame": { - "x": 160, - "y": 420, + "x": 80, + "y": 480, "w": 40, "h": 30 } @@ -3951,8 +4455,8 @@ "h": 30 }, "frame": { - "x": 200, - "y": 420, + "x": 120, + "y": 480, "w": 40, "h": 30 } @@ -3972,8 +4476,8 @@ "h": 30 }, "frame": { - "x": 240, - "y": 420, + "x": 160, + "y": 480, "w": 40, "h": 30 } @@ -3993,8 +4497,8 @@ "h": 30 }, "frame": { - "x": 280, - "y": 420, + "x": 200, + "y": 480, "w": 40, "h": 30 } @@ -4014,8 +4518,8 @@ "h": 30 }, "frame": { - "x": 320, - "y": 420, + "x": 240, + "y": 480, "w": 40, "h": 30 } @@ -4035,8 +4539,8 @@ "h": 30 }, "frame": { - "x": 360, - "y": 420, + "x": 280, + "y": 480, "w": 40, "h": 30 } @@ -4056,8 +4560,8 @@ "h": 30 }, "frame": { - "x": 400, - "y": 420, + "x": 320, + "y": 480, "w": 40, "h": 30 } @@ -4077,8 +4581,8 @@ "h": 30 }, "frame": { - "x": 440, - "y": 420, + "x": 360, + "y": 480, "w": 40, "h": 30 } @@ -4098,8 +4602,8 @@ "h": 30 }, "frame": { - "x": 480, - "y": 420, + "x": 400, + "y": 480, "w": 40, "h": 30 } @@ -4119,8 +4623,8 @@ "h": 30 }, "frame": { - "x": 0, - "y": 450, + "x": 440, + "y": 480, "w": 40, "h": 30 } @@ -4140,8 +4644,8 @@ "h": 30 }, "frame": { - "x": 40, - "y": 450, + "x": 480, + "y": 480, "w": 40, "h": 30 } @@ -4161,8 +4665,8 @@ "h": 30 }, "frame": { - "x": 80, - "y": 450, + "x": 0, + "y": 510, "w": 40, "h": 30 } @@ -4182,8 +4686,8 @@ "h": 30 }, "frame": { - "x": 120, - "y": 450, + "x": 40, + "y": 510, "w": 40, "h": 30 } @@ -4203,8 +4707,8 @@ "h": 30 }, "frame": { - "x": 160, - "y": 450, + "x": 80, + "y": 510, "w": 40, "h": 30 } @@ -4224,8 +4728,8 @@ "h": 30 }, "frame": { - "x": 200, - "y": 450, + "x": 120, + "y": 510, "w": 40, "h": 30 } @@ -4245,8 +4749,8 @@ "h": 30 }, "frame": { - "x": 240, - "y": 450, + "x": 160, + "y": 510, "w": 40, "h": 30 } @@ -4266,8 +4770,8 @@ "h": 30 }, "frame": { - "x": 280, - "y": 450, + "x": 200, + "y": 510, "w": 40, "h": 30 } @@ -4287,8 +4791,8 @@ "h": 30 }, "frame": { - "x": 320, - "y": 450, + "x": 240, + "y": 510, "w": 40, "h": 30 } @@ -4308,8 +4812,8 @@ "h": 30 }, "frame": { - "x": 360, - "y": 450, + "x": 280, + "y": 510, "w": 40, "h": 30 } @@ -4329,8 +4833,8 @@ "h": 30 }, "frame": { - "x": 400, - "y": 450, + "x": 320, + "y": 510, "w": 40, "h": 30 } @@ -4350,8 +4854,8 @@ "h": 30 }, "frame": { - "x": 440, - "y": 450, + "x": 360, + "y": 510, "w": 40, "h": 30 } @@ -4371,8 +4875,8 @@ "h": 30 }, "frame": { - "x": 480, - "y": 450, + "x": 400, + "y": 510, "w": 40, "h": 30 } @@ -4392,8 +4896,8 @@ "h": 30 }, "frame": { - "x": 0, - "y": 480, + "x": 440, + "y": 510, "w": 40, "h": 30 } @@ -4404,6 +4908,6 @@ "meta": { "app": "https://www.codeandweb.com/texturepacker", "version": "3.0", - "smartupdate": "$TexturePacker:SmartUpdate:2288ca6bd49f36a5ca5b49f1bcaab17a:e83f40529aad7883718910695eafd075:ebc3f8ec5b2480b298192d752b6e57dc$" + "smartupdate": "$TexturePacker:SmartUpdate:00a4e5499c11f3abdf9f56423bbf4561:6f365ccd1246c9b5ae27e0e440695926:ebc3f8ec5b2480b298192d752b6e57dc$" } } diff --git a/public/images/pokemon_icons_4v.png b/public/images/pokemon_icons_4v.png index 7cfab80312a..972bff8b777 100644 Binary files a/public/images/pokemon_icons_4v.png and b/public/images/pokemon_icons_4v.png differ diff --git a/public/images/pokemon_icons_5v.json b/public/images/pokemon_icons_5v.json index 7da5a765c0c..d793ed1b650 100644 --- a/public/images/pokemon_icons_5v.json +++ b/public/images/pokemon_icons_5v.json @@ -4,8 +4,8 @@ "image": "pokemon_icons_5v.png", "format": "RGBA8888", "size": { - "w": 520, - "h": 520 + "w": 570, + "h": 570 }, "scale": 1, "frames": [ @@ -178,7 +178,7 @@ } }, { - "filename": "501_2", + "filename": "498_2", "rotated": false, "trimmed": false, "sourceSize": { @@ -198,6 +198,132 @@ "h": 30 } }, + { + "filename": "498_3", + "rotated": false, + "trimmed": false, + "sourceSize": { + "w": 40, + "h": 30 + }, + "spriteSourceSize": { + "x": 0, + "y": 0, + "w": 40, + "h": 30 + }, + "frame": { + "x": 360, + "y": 0, + "w": 40, + "h": 30 + } + }, + { + "filename": "499_2", + "rotated": false, + "trimmed": false, + "sourceSize": { + "w": 40, + "h": 30 + }, + "spriteSourceSize": { + "x": 0, + "y": 0, + "w": 40, + "h": 30 + }, + "frame": { + "x": 400, + "y": 0, + "w": 40, + "h": 30 + } + }, + { + "filename": "499_3", + "rotated": false, + "trimmed": false, + "sourceSize": { + "w": 40, + "h": 30 + }, + "spriteSourceSize": { + "x": 0, + "y": 0, + "w": 40, + "h": 30 + }, + "frame": { + "x": 440, + "y": 0, + "w": 40, + "h": 30 + } + }, + { + "filename": "500_2", + "rotated": false, + "trimmed": false, + "sourceSize": { + "w": 40, + "h": 30 + }, + "spriteSourceSize": { + "x": 0, + "y": 0, + "w": 40, + "h": 30 + }, + "frame": { + "x": 480, + "y": 0, + "w": 40, + "h": 30 + } + }, + { + "filename": "500_3", + "rotated": false, + "trimmed": false, + "sourceSize": { + "w": 40, + "h": 30 + }, + "spriteSourceSize": { + "x": 0, + "y": 0, + "w": 40, + "h": 30 + }, + "frame": { + "x": 520, + "y": 0, + "w": 40, + "h": 30 + } + }, + { + "filename": "501_2", + "rotated": false, + "trimmed": false, + "sourceSize": { + "w": 40, + "h": 30 + }, + "spriteSourceSize": { + "x": 0, + "y": 0, + "w": 40, + "h": 30 + }, + "frame": { + "x": 0, + "y": 30, + "w": 40, + "h": 30 + } + }, { "filename": "501_3", "rotated": false, @@ -213,8 +339,8 @@ "h": 30 }, "frame": { - "x": 360, - "y": 0, + "x": 40, + "y": 30, "w": 40, "h": 30 } @@ -234,8 +360,8 @@ "h": 30 }, "frame": { - "x": 400, - "y": 0, + "x": 80, + "y": 30, "w": 40, "h": 30 } @@ -255,8 +381,8 @@ "h": 30 }, "frame": { - "x": 440, - "y": 0, + "x": 120, + "y": 30, "w": 40, "h": 30 } @@ -276,8 +402,8 @@ "h": 30 }, "frame": { - "x": 480, - "y": 0, + "x": 160, + "y": 30, "w": 40, "h": 30 } @@ -297,12 +423,264 @@ "h": 30 }, "frame": { - "x": 0, + "x": 200, "y": 30, "w": 40, "h": 30 } }, + { + "filename": "511_2", + "rotated": false, + "trimmed": false, + "sourceSize": { + "w": 40, + "h": 30 + }, + "spriteSourceSize": { + "x": 0, + "y": 0, + "w": 40, + "h": 30 + }, + "frame": { + "x": 240, + "y": 30, + "w": 40, + "h": 30 + } + }, + { + "filename": "511_3", + "rotated": false, + "trimmed": false, + "sourceSize": { + "w": 40, + "h": 30 + }, + "spriteSourceSize": { + "x": 0, + "y": 0, + "w": 40, + "h": 30 + }, + "frame": { + "x": 280, + "y": 30, + "w": 40, + "h": 30 + } + }, + { + "filename": "512_2", + "rotated": false, + "trimmed": false, + "sourceSize": { + "w": 40, + "h": 30 + }, + "spriteSourceSize": { + "x": 0, + "y": 0, + "w": 40, + "h": 30 + }, + "frame": { + "x": 320, + "y": 30, + "w": 40, + "h": 30 + } + }, + { + "filename": "512_3", + "rotated": false, + "trimmed": false, + "sourceSize": { + "w": 40, + "h": 30 + }, + "spriteSourceSize": { + "x": 0, + "y": 0, + "w": 40, + "h": 30 + }, + "frame": { + "x": 360, + "y": 30, + "w": 40, + "h": 30 + } + }, + { + "filename": "513_2", + "rotated": false, + "trimmed": false, + "sourceSize": { + "w": 40, + "h": 30 + }, + "spriteSourceSize": { + "x": 0, + "y": 0, + "w": 40, + "h": 30 + }, + "frame": { + "x": 400, + "y": 30, + "w": 40, + "h": 30 + } + }, + { + "filename": "513_3", + "rotated": false, + "trimmed": false, + "sourceSize": { + "w": 40, + "h": 30 + }, + "spriteSourceSize": { + "x": 0, + "y": 0, + "w": 40, + "h": 30 + }, + "frame": { + "x": 440, + "y": 30, + "w": 40, + "h": 30 + } + }, + { + "filename": "514_2", + "rotated": false, + "trimmed": false, + "sourceSize": { + "w": 40, + "h": 30 + }, + "spriteSourceSize": { + "x": 0, + "y": 0, + "w": 40, + "h": 30 + }, + "frame": { + "x": 480, + "y": 30, + "w": 40, + "h": 30 + } + }, + { + "filename": "514_3", + "rotated": false, + "trimmed": false, + "sourceSize": { + "w": 40, + "h": 30 + }, + "spriteSourceSize": { + "x": 0, + "y": 0, + "w": 40, + "h": 30 + }, + "frame": { + "x": 520, + "y": 30, + "w": 40, + "h": 30 + } + }, + { + "filename": "515_2", + "rotated": false, + "trimmed": false, + "sourceSize": { + "w": 40, + "h": 30 + }, + "spriteSourceSize": { + "x": 0, + "y": 0, + "w": 40, + "h": 30 + }, + "frame": { + "x": 0, + "y": 60, + "w": 40, + "h": 30 + } + }, + { + "filename": "515_3", + "rotated": false, + "trimmed": false, + "sourceSize": { + "w": 40, + "h": 30 + }, + "spriteSourceSize": { + "x": 0, + "y": 0, + "w": 40, + "h": 30 + }, + "frame": { + "x": 40, + "y": 60, + "w": 40, + "h": 30 + } + }, + { + "filename": "516_2", + "rotated": false, + "trimmed": false, + "sourceSize": { + "w": 40, + "h": 30 + }, + "spriteSourceSize": { + "x": 0, + "y": 0, + "w": 40, + "h": 30 + }, + "frame": { + "x": 80, + "y": 60, + "w": 40, + "h": 30 + } + }, + { + "filename": "516_3", + "rotated": false, + "trimmed": false, + "sourceSize": { + "w": 40, + "h": 30 + }, + "spriteSourceSize": { + "x": 0, + "y": 0, + "w": 40, + "h": 30 + }, + "frame": { + "x": 120, + "y": 60, + "w": 40, + "h": 30 + } + }, { "filename": "517_2", "rotated": false, @@ -318,8 +696,8 @@ "h": 30 }, "frame": { - "x": 40, - "y": 30, + "x": 160, + "y": 60, "w": 40, "h": 30 } @@ -339,8 +717,8 @@ "h": 30 }, "frame": { - "x": 80, - "y": 30, + "x": 200, + "y": 60, "w": 40, "h": 30 } @@ -360,8 +738,8 @@ "h": 30 }, "frame": { - "x": 120, - "y": 30, + "x": 240, + "y": 60, "w": 40, "h": 30 } @@ -381,8 +759,92 @@ "h": 30 }, "frame": { - "x": 160, - "y": 30, + "x": 280, + "y": 60, + "w": 40, + "h": 30 + } + }, + { + "filename": "522_2", + "rotated": false, + "trimmed": false, + "sourceSize": { + "w": 40, + "h": 30 + }, + "spriteSourceSize": { + "x": 0, + "y": 0, + "w": 40, + "h": 30 + }, + "frame": { + "x": 320, + "y": 60, + "w": 40, + "h": 30 + } + }, + { + "filename": "522_3", + "rotated": false, + "trimmed": false, + "sourceSize": { + "w": 40, + "h": 30 + }, + "spriteSourceSize": { + "x": 0, + "y": 0, + "w": 40, + "h": 30 + }, + "frame": { + "x": 360, + "y": 60, + "w": 40, + "h": 30 + } + }, + { + "filename": "523_2", + "rotated": false, + "trimmed": false, + "sourceSize": { + "w": 40, + "h": 30 + }, + "spriteSourceSize": { + "x": 0, + "y": 0, + "w": 40, + "h": 30 + }, + "frame": { + "x": 400, + "y": 60, + "w": 40, + "h": 30 + } + }, + { + "filename": "523_3", + "rotated": false, + "trimmed": false, + "sourceSize": { + "w": 40, + "h": 30 + }, + "spriteSourceSize": { + "x": 0, + "y": 0, + "w": 40, + "h": 30 + }, + "frame": { + "x": 440, + "y": 60, "w": 40, "h": 30 } @@ -402,8 +864,8 @@ "h": 30 }, "frame": { - "x": 200, - "y": 30, + "x": 480, + "y": 60, "w": 40, "h": 30 } @@ -423,8 +885,8 @@ "h": 30 }, "frame": { - "x": 240, - "y": 30, + "x": 520, + "y": 60, "w": 40, "h": 30 } @@ -444,8 +906,8 @@ "h": 30 }, "frame": { - "x": 280, - "y": 30, + "x": 0, + "y": 90, "w": 40, "h": 30 } @@ -465,8 +927,8 @@ "h": 30 }, "frame": { - "x": 320, - "y": 30, + "x": 40, + "y": 90, "w": 40, "h": 30 } @@ -486,8 +948,8 @@ "h": 30 }, "frame": { - "x": 360, - "y": 30, + "x": 80, + "y": 90, "w": 40, "h": 30 } @@ -507,8 +969,8 @@ "h": 30 }, "frame": { - "x": 400, - "y": 30, + "x": 120, + "y": 90, "w": 40, "h": 30 } @@ -528,8 +990,8 @@ "h": 30 }, "frame": { - "x": 440, - "y": 30, + "x": 160, + "y": 90, "w": 40, "h": 30 } @@ -549,8 +1011,8 @@ "h": 30 }, "frame": { - "x": 480, - "y": 30, + "x": 200, + "y": 90, "w": 40, "h": 30 } @@ -570,8 +1032,8 @@ "h": 30 }, "frame": { - "x": 0, - "y": 60, + "x": 240, + "y": 90, "w": 40, "h": 30 } @@ -591,8 +1053,8 @@ "h": 30 }, "frame": { - "x": 40, - "y": 60, + "x": 280, + "y": 90, "w": 40, "h": 30 } @@ -612,8 +1074,8 @@ "h": 30 }, "frame": { - "x": 80, - "y": 60, + "x": 320, + "y": 90, "w": 40, "h": 30 } @@ -633,8 +1095,8 @@ "h": 30 }, "frame": { - "x": 120, - "y": 60, + "x": 360, + "y": 90, "w": 40, "h": 30 } @@ -654,8 +1116,8 @@ "h": 30 }, "frame": { - "x": 160, - "y": 60, + "x": 400, + "y": 90, "w": 40, "h": 30 } @@ -675,8 +1137,8 @@ "h": 30 }, "frame": { - "x": 200, - "y": 60, + "x": 440, + "y": 90, "w": 40, "h": 30 } @@ -696,8 +1158,8 @@ "h": 30 }, "frame": { - "x": 240, - "y": 60, + "x": 480, + "y": 90, "w": 40, "h": 30 } @@ -717,8 +1179,8 @@ "h": 30 }, "frame": { - "x": 280, - "y": 60, + "x": 520, + "y": 90, "w": 40, "h": 30 } @@ -738,8 +1200,8 @@ "h": 30 }, "frame": { - "x": 320, - "y": 60, + "x": 0, + "y": 120, "w": 40, "h": 30 } @@ -759,8 +1221,8 @@ "h": 30 }, "frame": { - "x": 360, - "y": 60, + "x": 40, + "y": 120, "w": 40, "h": 30 } @@ -780,8 +1242,8 @@ "h": 30 }, "frame": { - "x": 400, - "y": 60, + "x": 80, + "y": 120, "w": 40, "h": 30 } @@ -801,8 +1263,8 @@ "h": 30 }, "frame": { - "x": 440, - "y": 60, + "x": 120, + "y": 120, "w": 40, "h": 30 } @@ -822,8 +1284,8 @@ "h": 30 }, "frame": { - "x": 480, - "y": 60, + "x": 160, + "y": 120, "w": 40, "h": 30 } @@ -843,8 +1305,8 @@ "h": 30 }, "frame": { - "x": 0, - "y": 90, + "x": 200, + "y": 120, "w": 40, "h": 30 } @@ -864,8 +1326,8 @@ "h": 30 }, "frame": { - "x": 40, - "y": 90, + "x": 240, + "y": 120, "w": 40, "h": 30 } @@ -885,8 +1347,134 @@ "h": 30 }, "frame": { - "x": 80, - "y": 90, + "x": 280, + "y": 120, + "w": 40, + "h": 30 + } + }, + { + "filename": "535_2", + "rotated": false, + "trimmed": false, + "sourceSize": { + "w": 40, + "h": 30 + }, + "spriteSourceSize": { + "x": 0, + "y": 0, + "w": 40, + "h": 30 + }, + "frame": { + "x": 320, + "y": 120, + "w": 40, + "h": 30 + } + }, + { + "filename": "535_3", + "rotated": false, + "trimmed": false, + "sourceSize": { + "w": 40, + "h": 30 + }, + "spriteSourceSize": { + "x": 0, + "y": 0, + "w": 40, + "h": 30 + }, + "frame": { + "x": 360, + "y": 120, + "w": 40, + "h": 30 + } + }, + { + "filename": "536_2", + "rotated": false, + "trimmed": false, + "sourceSize": { + "w": 40, + "h": 30 + }, + "spriteSourceSize": { + "x": 0, + "y": 0, + "w": 40, + "h": 30 + }, + "frame": { + "x": 400, + "y": 120, + "w": 40, + "h": 30 + } + }, + { + "filename": "536_3", + "rotated": false, + "trimmed": false, + "sourceSize": { + "w": 40, + "h": 30 + }, + "spriteSourceSize": { + "x": 0, + "y": 0, + "w": 40, + "h": 30 + }, + "frame": { + "x": 440, + "y": 120, + "w": 40, + "h": 30 + } + }, + { + "filename": "537_2", + "rotated": false, + "trimmed": false, + "sourceSize": { + "w": 40, + "h": 30 + }, + "spriteSourceSize": { + "x": 0, + "y": 0, + "w": 40, + "h": 30 + }, + "frame": { + "x": 480, + "y": 120, + "w": 40, + "h": 30 + } + }, + { + "filename": "537_3", + "rotated": false, + "trimmed": false, + "sourceSize": { + "w": 40, + "h": 30 + }, + "spriteSourceSize": { + "x": 0, + "y": 0, + "w": 40, + "h": 30 + }, + "frame": { + "x": 520, + "y": 120, "w": 40, "h": 30 } @@ -906,8 +1494,8 @@ "h": 30 }, "frame": { - "x": 120, - "y": 90, + "x": 0, + "y": 150, "w": 40, "h": 30 } @@ -927,8 +1515,8 @@ "h": 30 }, "frame": { - "x": 160, - "y": 90, + "x": 40, + "y": 150, "w": 40, "h": 30 } @@ -948,8 +1536,8 @@ "h": 30 }, "frame": { - "x": 200, - "y": 90, + "x": 80, + "y": 150, "w": 40, "h": 30 } @@ -969,8 +1557,8 @@ "h": 30 }, "frame": { - "x": 240, - "y": 90, + "x": 120, + "y": 150, "w": 40, "h": 30 } @@ -990,8 +1578,8 @@ "h": 30 }, "frame": { - "x": 280, - "y": 90, + "x": 160, + "y": 150, "w": 40, "h": 30 } @@ -1011,8 +1599,8 @@ "h": 30 }, "frame": { - "x": 320, - "y": 90, + "x": 200, + "y": 150, "w": 40, "h": 30 } @@ -1032,8 +1620,8 @@ "h": 30 }, "frame": { - "x": 360, - "y": 90, + "x": 240, + "y": 150, "w": 40, "h": 30 } @@ -1053,8 +1641,8 @@ "h": 30 }, "frame": { - "x": 400, - "y": 90, + "x": 280, + "y": 150, "w": 40, "h": 30 } @@ -1074,8 +1662,8 @@ "h": 30 }, "frame": { - "x": 440, - "y": 90, + "x": 320, + "y": 150, "w": 40, "h": 30 } @@ -1095,8 +1683,8 @@ "h": 30 }, "frame": { - "x": 480, - "y": 90, + "x": 360, + "y": 150, "w": 40, "h": 30 } @@ -1116,8 +1704,8 @@ "h": 30 }, "frame": { - "x": 0, - "y": 120, + "x": 400, + "y": 150, "w": 40, "h": 30 } @@ -1137,8 +1725,8 @@ "h": 30 }, "frame": { - "x": 40, - "y": 120, + "x": 440, + "y": 150, "w": 40, "h": 30 } @@ -1158,8 +1746,8 @@ "h": 30 }, "frame": { - "x": 80, - "y": 120, + "x": 480, + "y": 150, "w": 40, "h": 30 } @@ -1179,8 +1767,8 @@ "h": 30 }, "frame": { - "x": 120, - "y": 120, + "x": 520, + "y": 150, "w": 40, "h": 30 } @@ -1200,8 +1788,8 @@ "h": 30 }, "frame": { - "x": 160, - "y": 120, + "x": 0, + "y": 180, "w": 40, "h": 30 } @@ -1221,8 +1809,8 @@ "h": 30 }, "frame": { - "x": 200, - "y": 120, + "x": 40, + "y": 180, "w": 40, "h": 30 } @@ -1242,8 +1830,8 @@ "h": 30 }, "frame": { - "x": 240, - "y": 120, + "x": 80, + "y": 180, "w": 40, "h": 30 } @@ -1263,8 +1851,8 @@ "h": 30 }, "frame": { - "x": 280, - "y": 120, + "x": 120, + "y": 180, "w": 40, "h": 30 } @@ -1284,8 +1872,8 @@ "h": 30 }, "frame": { - "x": 320, - "y": 120, + "x": 160, + "y": 180, "w": 40, "h": 30 } @@ -1305,8 +1893,8 @@ "h": 30 }, "frame": { - "x": 360, - "y": 120, + "x": 200, + "y": 180, "w": 40, "h": 30 } @@ -1326,8 +1914,8 @@ "h": 30 }, "frame": { - "x": 400, - "y": 120, + "x": 240, + "y": 180, "w": 40, "h": 30 } @@ -1347,8 +1935,8 @@ "h": 30 }, "frame": { - "x": 440, - "y": 120, + "x": 280, + "y": 180, "w": 40, "h": 30 } @@ -1368,8 +1956,8 @@ "h": 30 }, "frame": { - "x": 480, - "y": 120, + "x": 320, + "y": 180, "w": 40, "h": 30 } @@ -1389,8 +1977,8 @@ "h": 30 }, "frame": { - "x": 0, - "y": 150, + "x": 360, + "y": 180, "w": 40, "h": 30 } @@ -1410,8 +1998,8 @@ "h": 30 }, "frame": { - "x": 40, - "y": 150, + "x": 400, + "y": 180, "w": 40, "h": 30 } @@ -1431,8 +2019,8 @@ "h": 30 }, "frame": { - "x": 80, - "y": 150, + "x": 440, + "y": 180, "w": 40, "h": 30 } @@ -1452,8 +2040,8 @@ "h": 30 }, "frame": { - "x": 120, - "y": 150, + "x": 480, + "y": 180, "w": 40, "h": 30 } @@ -1473,8 +2061,8 @@ "h": 30 }, "frame": { - "x": 160, - "y": 150, + "x": 520, + "y": 180, "w": 40, "h": 30 } @@ -1494,8 +2082,8 @@ "h": 30 }, "frame": { - "x": 200, - "y": 150, + "x": 0, + "y": 210, "w": 40, "h": 30 } @@ -1515,8 +2103,8 @@ "h": 30 }, "frame": { - "x": 240, - "y": 150, + "x": 40, + "y": 210, "w": 40, "h": 30 } @@ -1535,9 +2123,135 @@ "w": 40, "h": 30 }, + "frame": { + "x": 80, + "y": 210, + "w": 40, + "h": 30 + } + }, + { + "filename": "554_2", + "rotated": false, + "trimmed": false, + "sourceSize": { + "w": 40, + "h": 30 + }, + "spriteSourceSize": { + "x": 0, + "y": 0, + "w": 40, + "h": 30 + }, + "frame": { + "x": 120, + "y": 210, + "w": 40, + "h": 30 + } + }, + { + "filename": "554_3", + "rotated": false, + "trimmed": false, + "sourceSize": { + "w": 40, + "h": 30 + }, + "spriteSourceSize": { + "x": 0, + "y": 0, + "w": 40, + "h": 30 + }, + "frame": { + "x": 160, + "y": 210, + "w": 40, + "h": 30 + } + }, + { + "filename": "555-zen_2", + "rotated": false, + "trimmed": false, + "sourceSize": { + "w": 40, + "h": 30 + }, + "spriteSourceSize": { + "x": 0, + "y": 0, + "w": 40, + "h": 30 + }, + "frame": { + "x": 200, + "y": 210, + "w": 40, + "h": 30 + } + }, + { + "filename": "555-zen_3", + "rotated": false, + "trimmed": false, + "sourceSize": { + "w": 40, + "h": 30 + }, + "spriteSourceSize": { + "x": 0, + "y": 0, + "w": 40, + "h": 30 + }, + "frame": { + "x": 240, + "y": 210, + "w": 40, + "h": 30 + } + }, + { + "filename": "555_2", + "rotated": false, + "trimmed": false, + "sourceSize": { + "w": 40, + "h": 30 + }, + "spriteSourceSize": { + "x": 0, + "y": 0, + "w": 40, + "h": 30 + }, "frame": { "x": 280, - "y": 150, + "y": 210, + "w": 40, + "h": 30 + } + }, + { + "filename": "555_3", + "rotated": false, + "trimmed": false, + "sourceSize": { + "w": 40, + "h": 30 + }, + "spriteSourceSize": { + "x": 0, + "y": 0, + "w": 40, + "h": 30 + }, + "frame": { + "x": 320, + "y": 210, "w": 40, "h": 30 } @@ -1557,8 +2271,8 @@ "h": 30 }, "frame": { - "x": 320, - "y": 150, + "x": 360, + "y": 210, "w": 40, "h": 30 } @@ -1578,8 +2292,8 @@ "h": 30 }, "frame": { - "x": 360, - "y": 150, + "x": 400, + "y": 210, "w": 40, "h": 30 } @@ -1599,8 +2313,8 @@ "h": 30 }, "frame": { - "x": 400, - "y": 150, + "x": 440, + "y": 210, "w": 40, "h": 30 } @@ -1620,8 +2334,8 @@ "h": 30 }, "frame": { - "x": 440, - "y": 150, + "x": 480, + "y": 210, "w": 40, "h": 30 } @@ -1641,8 +2355,8 @@ "h": 30 }, "frame": { - "x": 480, - "y": 150, + "x": 520, + "y": 210, "w": 40, "h": 30 } @@ -1663,7 +2377,7 @@ }, "frame": { "x": 0, - "y": 180, + "y": 240, "w": 40, "h": 30 } @@ -1684,7 +2398,7 @@ }, "frame": { "x": 40, - "y": 180, + "y": 240, "w": 40, "h": 30 } @@ -1705,7 +2419,7 @@ }, "frame": { "x": 80, - "y": 180, + "y": 240, "w": 40, "h": 30 } @@ -1726,7 +2440,7 @@ }, "frame": { "x": 120, - "y": 180, + "y": 240, "w": 40, "h": 30 } @@ -1747,7 +2461,7 @@ }, "frame": { "x": 160, - "y": 180, + "y": 240, "w": 40, "h": 30 } @@ -1768,7 +2482,7 @@ }, "frame": { "x": 200, - "y": 180, + "y": 240, "w": 40, "h": 30 } @@ -1789,7 +2503,91 @@ }, "frame": { "x": 240, - "y": 180, + "y": 240, + "w": 40, + "h": 30 + } + }, + { + "filename": "566_2", + "rotated": false, + "trimmed": false, + "sourceSize": { + "w": 40, + "h": 30 + }, + "spriteSourceSize": { + "x": 0, + "y": 0, + "w": 40, + "h": 30 + }, + "frame": { + "x": 280, + "y": 240, + "w": 40, + "h": 30 + } + }, + { + "filename": "566_3", + "rotated": false, + "trimmed": false, + "sourceSize": { + "w": 40, + "h": 30 + }, + "spriteSourceSize": { + "x": 0, + "y": 0, + "w": 40, + "h": 30 + }, + "frame": { + "x": 320, + "y": 240, + "w": 40, + "h": 30 + } + }, + { + "filename": "567_2", + "rotated": false, + "trimmed": false, + "sourceSize": { + "w": 40, + "h": 30 + }, + "spriteSourceSize": { + "x": 0, + "y": 0, + "w": 40, + "h": 30 + }, + "frame": { + "x": 360, + "y": 240, + "w": 40, + "h": 30 + } + }, + { + "filename": "567_3", + "rotated": false, + "trimmed": false, + "sourceSize": { + "w": 40, + "h": 30 + }, + "spriteSourceSize": { + "x": 0, + "y": 0, + "w": 40, + "h": 30 + }, + "frame": { + "x": 400, + "y": 240, "w": 40, "h": 30 } @@ -1809,8 +2607,8 @@ "h": 30 }, "frame": { - "x": 280, - "y": 180, + "x": 440, + "y": 240, "w": 40, "h": 30 } @@ -1830,8 +2628,8 @@ "h": 30 }, "frame": { - "x": 320, - "y": 180, + "x": 480, + "y": 240, "w": 40, "h": 30 } @@ -1851,8 +2649,8 @@ "h": 30 }, "frame": { - "x": 360, - "y": 180, + "x": 520, + "y": 240, "w": 40, "h": 30 } @@ -1872,8 +2670,8 @@ "h": 30 }, "frame": { - "x": 400, - "y": 180, + "x": 0, + "y": 270, "w": 40, "h": 30 } @@ -1893,8 +2691,8 @@ "h": 30 }, "frame": { - "x": 440, - "y": 180, + "x": 40, + "y": 270, "w": 40, "h": 30 } @@ -1914,8 +2712,8 @@ "h": 30 }, "frame": { - "x": 480, - "y": 180, + "x": 80, + "y": 270, "w": 40, "h": 30 } @@ -1935,8 +2733,8 @@ "h": 30 }, "frame": { - "x": 0, - "y": 210, + "x": 120, + "y": 270, "w": 40, "h": 30 } @@ -1956,8 +2754,8 @@ "h": 30 }, "frame": { - "x": 40, - "y": 210, + "x": 160, + "y": 270, "w": 40, "h": 30 } @@ -1977,8 +2775,8 @@ "h": 30 }, "frame": { - "x": 80, - "y": 210, + "x": 200, + "y": 270, "w": 40, "h": 30 } @@ -1998,8 +2796,8 @@ "h": 30 }, "frame": { - "x": 120, - "y": 210, + "x": 240, + "y": 270, "w": 40, "h": 30 } @@ -2019,8 +2817,8 @@ "h": 30 }, "frame": { - "x": 160, - "y": 210, + "x": 280, + "y": 270, "w": 40, "h": 30 } @@ -2040,8 +2838,50 @@ "h": 30 }, "frame": { - "x": 200, - "y": 210, + "x": 320, + "y": 270, + "w": 40, + "h": 30 + } + }, + { + "filename": "573_2", + "rotated": false, + "trimmed": false, + "sourceSize": { + "w": 40, + "h": 30 + }, + "spriteSourceSize": { + "x": 0, + "y": 0, + "w": 40, + "h": 30 + }, + "frame": { + "x": 360, + "y": 270, + "w": 40, + "h": 30 + } + }, + { + "filename": "573_3", + "rotated": false, + "trimmed": false, + "sourceSize": { + "w": 40, + "h": 30 + }, + "spriteSourceSize": { + "x": 0, + "y": 0, + "w": 40, + "h": 30 + }, + "frame": { + "x": 400, + "y": 270, "w": 40, "h": 30 } @@ -2061,8 +2901,8 @@ "h": 30 }, "frame": { - "x": 240, - "y": 210, + "x": 440, + "y": 270, "w": 40, "h": 30 } @@ -2082,8 +2922,8 @@ "h": 30 }, "frame": { - "x": 280, - "y": 210, + "x": 480, + "y": 270, "w": 40, "h": 30 } @@ -2103,8 +2943,8 @@ "h": 30 }, "frame": { - "x": 320, - "y": 210, + "x": 520, + "y": 270, "w": 40, "h": 30 } @@ -2124,8 +2964,8 @@ "h": 30 }, "frame": { - "x": 360, - "y": 210, + "x": 0, + "y": 300, "w": 40, "h": 30 } @@ -2145,8 +2985,8 @@ "h": 30 }, "frame": { - "x": 400, - "y": 210, + "x": 40, + "y": 300, "w": 40, "h": 30 } @@ -2166,8 +3006,8 @@ "h": 30 }, "frame": { - "x": 440, - "y": 210, + "x": 80, + "y": 300, "w": 40, "h": 30 } @@ -2187,8 +3027,8 @@ "h": 30 }, "frame": { - "x": 480, - "y": 210, + "x": 120, + "y": 300, "w": 40, "h": 30 } @@ -2208,8 +3048,8 @@ "h": 30 }, "frame": { - "x": 0, - "y": 240, + "x": 160, + "y": 300, "w": 40, "h": 30 } @@ -2229,8 +3069,8 @@ "h": 30 }, "frame": { - "x": 40, - "y": 240, + "x": 200, + "y": 300, "w": 40, "h": 30 } @@ -2250,8 +3090,8 @@ "h": 30 }, "frame": { - "x": 80, - "y": 240, + "x": 240, + "y": 300, "w": 40, "h": 30 } @@ -2271,8 +3111,8 @@ "h": 30 }, "frame": { - "x": 120, - "y": 240, + "x": 280, + "y": 300, "w": 40, "h": 30 } @@ -2292,8 +3132,8 @@ "h": 30 }, "frame": { - "x": 160, - "y": 240, + "x": 320, + "y": 300, "w": 40, "h": 30 } @@ -2313,8 +3153,8 @@ "h": 30 }, "frame": { - "x": 200, - "y": 240, + "x": 360, + "y": 300, "w": 40, "h": 30 } @@ -2334,8 +3174,8 @@ "h": 30 }, "frame": { - "x": 240, - "y": 240, + "x": 400, + "y": 300, "w": 40, "h": 30 } @@ -2355,8 +3195,8 @@ "h": 30 }, "frame": { - "x": 280, - "y": 240, + "x": 440, + "y": 300, "w": 40, "h": 30 } @@ -2376,8 +3216,8 @@ "h": 30 }, "frame": { - "x": 320, - "y": 240, + "x": 480, + "y": 300, "w": 40, "h": 30 } @@ -2397,8 +3237,8 @@ "h": 30 }, "frame": { - "x": 360, - "y": 240, + "x": 520, + "y": 300, "w": 40, "h": 30 } @@ -2418,8 +3258,8 @@ "h": 30 }, "frame": { - "x": 400, - "y": 240, + "x": 0, + "y": 330, "w": 40, "h": 30 } @@ -2439,8 +3279,8 @@ "h": 30 }, "frame": { - "x": 440, - "y": 240, + "x": 40, + "y": 330, "w": 40, "h": 30 } @@ -2460,8 +3300,8 @@ "h": 30 }, "frame": { - "x": 480, - "y": 240, + "x": 80, + "y": 330, "w": 40, "h": 30 } @@ -2481,8 +3321,8 @@ "h": 30 }, "frame": { - "x": 0, - "y": 270, + "x": 120, + "y": 330, "w": 40, "h": 30 } @@ -2502,8 +3342,8 @@ "h": 30 }, "frame": { - "x": 40, - "y": 270, + "x": 160, + "y": 330, "w": 40, "h": 30 } @@ -2523,8 +3363,8 @@ "h": 30 }, "frame": { - "x": 80, - "y": 270, + "x": 200, + "y": 330, "w": 40, "h": 30 } @@ -2544,8 +3384,8 @@ "h": 30 }, "frame": { - "x": 120, - "y": 270, + "x": 240, + "y": 330, "w": 40, "h": 30 } @@ -2565,8 +3405,8 @@ "h": 30 }, "frame": { - "x": 160, - "y": 270, + "x": 280, + "y": 330, "w": 40, "h": 30 } @@ -2586,8 +3426,8 @@ "h": 30 }, "frame": { - "x": 200, - "y": 270, + "x": 320, + "y": 330, "w": 40, "h": 30 } @@ -2607,8 +3447,8 @@ "h": 30 }, "frame": { - "x": 240, - "y": 270, + "x": 360, + "y": 330, "w": 40, "h": 30 } @@ -2628,8 +3468,8 @@ "h": 30 }, "frame": { - "x": 280, - "y": 270, + "x": 400, + "y": 330, "w": 40, "h": 30 } @@ -2649,8 +3489,8 @@ "h": 30 }, "frame": { - "x": 320, - "y": 270, + "x": 440, + "y": 330, "w": 40, "h": 30 } @@ -2670,8 +3510,8 @@ "h": 30 }, "frame": { - "x": 360, - "y": 270, + "x": 480, + "y": 330, "w": 40, "h": 30 } @@ -2691,8 +3531,8 @@ "h": 30 }, "frame": { - "x": 400, - "y": 270, + "x": 520, + "y": 330, "w": 40, "h": 30 } @@ -2712,8 +3552,8 @@ "h": 30 }, "frame": { - "x": 440, - "y": 270, + "x": 0, + "y": 360, "w": 40, "h": 30 } @@ -2733,8 +3573,8 @@ "h": 30 }, "frame": { - "x": 480, - "y": 270, + "x": 40, + "y": 360, "w": 40, "h": 30 } @@ -2754,8 +3594,8 @@ "h": 30 }, "frame": { - "x": 0, - "y": 300, + "x": 80, + "y": 360, "w": 40, "h": 30 } @@ -2775,8 +3615,8 @@ "h": 30 }, "frame": { - "x": 40, - "y": 300, + "x": 120, + "y": 360, "w": 40, "h": 30 } @@ -2796,8 +3636,8 @@ "h": 30 }, "frame": { - "x": 80, - "y": 300, + "x": 160, + "y": 360, "w": 40, "h": 30 } @@ -2817,8 +3657,8 @@ "h": 30 }, "frame": { - "x": 120, - "y": 300, + "x": 200, + "y": 360, "w": 40, "h": 30 } @@ -2838,8 +3678,8 @@ "h": 30 }, "frame": { - "x": 160, - "y": 300, + "x": 240, + "y": 360, "w": 40, "h": 30 } @@ -2859,8 +3699,8 @@ "h": 30 }, "frame": { - "x": 200, - "y": 300, + "x": 280, + "y": 360, "w": 40, "h": 30 } @@ -2880,8 +3720,8 @@ "h": 30 }, "frame": { - "x": 240, - "y": 300, + "x": 320, + "y": 360, "w": 40, "h": 30 } @@ -2901,8 +3741,8 @@ "h": 30 }, "frame": { - "x": 280, - "y": 300, + "x": 360, + "y": 360, "w": 40, "h": 30 } @@ -2922,8 +3762,8 @@ "h": 30 }, "frame": { - "x": 320, - "y": 300, + "x": 400, + "y": 360, "w": 40, "h": 30 } @@ -2943,8 +3783,8 @@ "h": 30 }, "frame": { - "x": 360, - "y": 300, + "x": 440, + "y": 360, "w": 40, "h": 30 } @@ -2964,8 +3804,8 @@ "h": 30 }, "frame": { - "x": 400, - "y": 300, + "x": 480, + "y": 360, "w": 40, "h": 30 } @@ -2985,8 +3825,8 @@ "h": 30 }, "frame": { - "x": 440, - "y": 300, + "x": 520, + "y": 360, "w": 40, "h": 30 } @@ -3006,8 +3846,8 @@ "h": 30 }, "frame": { - "x": 480, - "y": 300, + "x": 0, + "y": 390, "w": 40, "h": 30 } @@ -3027,8 +3867,8 @@ "h": 30 }, "frame": { - "x": 0, - "y": 330, + "x": 40, + "y": 390, "w": 40, "h": 30 } @@ -3048,8 +3888,8 @@ "h": 30 }, "frame": { - "x": 40, - "y": 330, + "x": 80, + "y": 390, "w": 40, "h": 30 } @@ -3069,8 +3909,8 @@ "h": 30 }, "frame": { - "x": 80, - "y": 330, + "x": 120, + "y": 390, "w": 40, "h": 30 } @@ -3090,8 +3930,8 @@ "h": 30 }, "frame": { - "x": 120, - "y": 330, + "x": 160, + "y": 390, "w": 40, "h": 30 } @@ -3111,8 +3951,8 @@ "h": 30 }, "frame": { - "x": 160, - "y": 330, + "x": 200, + "y": 390, "w": 40, "h": 30 } @@ -3132,8 +3972,8 @@ "h": 30 }, "frame": { - "x": 200, - "y": 330, + "x": 240, + "y": 390, "w": 40, "h": 30 } @@ -3153,8 +3993,8 @@ "h": 30 }, "frame": { - "x": 240, - "y": 330, + "x": 280, + "y": 390, "w": 40, "h": 30 } @@ -3174,8 +4014,8 @@ "h": 30 }, "frame": { - "x": 280, - "y": 330, + "x": 320, + "y": 390, "w": 40, "h": 30 } @@ -3195,8 +4035,8 @@ "h": 30 }, "frame": { - "x": 320, - "y": 330, + "x": 360, + "y": 390, "w": 40, "h": 30 } @@ -3216,8 +4056,8 @@ "h": 30 }, "frame": { - "x": 360, - "y": 330, + "x": 400, + "y": 390, "w": 40, "h": 30 } @@ -3237,8 +4077,8 @@ "h": 30 }, "frame": { - "x": 400, - "y": 330, + "x": 440, + "y": 390, "w": 40, "h": 30 } @@ -3258,8 +4098,8 @@ "h": 30 }, "frame": { - "x": 440, - "y": 330, + "x": 480, + "y": 390, "w": 40, "h": 30 } @@ -3279,8 +4119,8 @@ "h": 30 }, "frame": { - "x": 480, - "y": 330, + "x": 520, + "y": 390, "w": 40, "h": 30 } @@ -3301,7 +4141,7 @@ }, "frame": { "x": 0, - "y": 360, + "y": 420, "w": 40, "h": 30 } @@ -3322,7 +4162,7 @@ }, "frame": { "x": 40, - "y": 360, + "y": 420, "w": 40, "h": 30 } @@ -3343,7 +4183,7 @@ }, "frame": { "x": 80, - "y": 360, + "y": 420, "w": 40, "h": 30 } @@ -3364,7 +4204,7 @@ }, "frame": { "x": 120, - "y": 360, + "y": 420, "w": 40, "h": 30 } @@ -3385,7 +4225,7 @@ }, "frame": { "x": 160, - "y": 360, + "y": 420, "w": 40, "h": 30 } @@ -3406,7 +4246,7 @@ }, "frame": { "x": 200, - "y": 360, + "y": 420, "w": 40, "h": 30 } @@ -3427,7 +4267,7 @@ }, "frame": { "x": 240, - "y": 360, + "y": 420, "w": 40, "h": 30 } @@ -3448,7 +4288,7 @@ }, "frame": { "x": 280, - "y": 360, + "y": 420, "w": 40, "h": 30 } @@ -3469,7 +4309,7 @@ }, "frame": { "x": 320, - "y": 360, + "y": 420, "w": 40, "h": 30 } @@ -3490,7 +4330,7 @@ }, "frame": { "x": 360, - "y": 360, + "y": 420, "w": 40, "h": 30 } @@ -3511,7 +4351,7 @@ }, "frame": { "x": 400, - "y": 360, + "y": 420, "w": 40, "h": 30 } @@ -3532,7 +4372,7 @@ }, "frame": { "x": 440, - "y": 360, + "y": 420, "w": 40, "h": 30 } @@ -3553,7 +4393,7 @@ }, "frame": { "x": 480, - "y": 360, + "y": 420, "w": 40, "h": 30 } @@ -3573,8 +4413,8 @@ "h": 30 }, "frame": { - "x": 0, - "y": 390, + "x": 520, + "y": 420, "w": 40, "h": 30 } @@ -3594,8 +4434,8 @@ "h": 30 }, "frame": { - "x": 40, - "y": 390, + "x": 0, + "y": 450, "w": 40, "h": 30 } @@ -3615,8 +4455,8 @@ "h": 30 }, "frame": { - "x": 80, - "y": 390, + "x": 40, + "y": 450, "w": 40, "h": 30 } @@ -3636,8 +4476,8 @@ "h": 30 }, "frame": { - "x": 120, - "y": 390, + "x": 80, + "y": 450, "w": 40, "h": 30 } @@ -3657,8 +4497,8 @@ "h": 30 }, "frame": { - "x": 160, - "y": 390, + "x": 120, + "y": 450, "w": 40, "h": 30 } @@ -3678,8 +4518,8 @@ "h": 30 }, "frame": { - "x": 200, - "y": 390, + "x": 160, + "y": 450, "w": 40, "h": 30 } @@ -3699,8 +4539,8 @@ "h": 30 }, "frame": { - "x": 240, - "y": 390, + "x": 200, + "y": 450, "w": 40, "h": 30 } @@ -3720,8 +4560,8 @@ "h": 30 }, "frame": { - "x": 280, - "y": 390, + "x": 240, + "y": 450, "w": 40, "h": 30 } @@ -3741,8 +4581,8 @@ "h": 30 }, "frame": { - "x": 320, - "y": 390, + "x": 280, + "y": 450, "w": 40, "h": 30 } @@ -3762,8 +4602,8 @@ "h": 30 }, "frame": { - "x": 360, - "y": 390, + "x": 320, + "y": 450, "w": 40, "h": 30 } @@ -3782,9 +4622,51 @@ "w": 40, "h": 30 }, + "frame": { + "x": 360, + "y": 450, + "w": 40, + "h": 30 + } + }, + { + "filename": "626_2", + "rotated": false, + "trimmed": false, + "sourceSize": { + "w": 40, + "h": 30 + }, + "spriteSourceSize": { + "x": 0, + "y": 0, + "w": 40, + "h": 30 + }, "frame": { "x": 400, - "y": 390, + "y": 450, + "w": 40, + "h": 30 + } + }, + { + "filename": "626_3", + "rotated": false, + "trimmed": false, + "sourceSize": { + "w": 40, + "h": 30 + }, + "spriteSourceSize": { + "x": 0, + "y": 0, + "w": 40, + "h": 30 + }, + "frame": { + "x": 440, + "y": 450, "w": 40, "h": 30 } @@ -3804,8 +4686,8 @@ "h": 30 }, "frame": { - "x": 440, - "y": 390, + "x": 480, + "y": 450, "w": 40, "h": 30 } @@ -3825,8 +4707,8 @@ "h": 30 }, "frame": { - "x": 480, - "y": 390, + "x": 520, + "y": 450, "w": 40, "h": 30 } @@ -3847,7 +4729,7 @@ }, "frame": { "x": 0, - "y": 420, + "y": 480, "w": 40, "h": 30 } @@ -3868,7 +4750,7 @@ }, "frame": { "x": 40, - "y": 420, + "y": 480, "w": 40, "h": 30 } @@ -3889,7 +4771,7 @@ }, "frame": { "x": 80, - "y": 420, + "y": 480, "w": 40, "h": 30 } @@ -3910,7 +4792,7 @@ }, "frame": { "x": 120, - "y": 420, + "y": 480, "w": 40, "h": 30 } @@ -3931,7 +4813,7 @@ }, "frame": { "x": 160, - "y": 420, + "y": 480, "w": 40, "h": 30 } @@ -3952,7 +4834,7 @@ }, "frame": { "x": 200, - "y": 420, + "y": 480, "w": 40, "h": 30 } @@ -3973,7 +4855,7 @@ }, "frame": { "x": 240, - "y": 420, + "y": 480, "w": 40, "h": 30 } @@ -3994,7 +4876,7 @@ }, "frame": { "x": 280, - "y": 420, + "y": 480, "w": 40, "h": 30 } @@ -4015,7 +4897,7 @@ }, "frame": { "x": 320, - "y": 420, + "y": 480, "w": 40, "h": 30 } @@ -4036,7 +4918,7 @@ }, "frame": { "x": 360, - "y": 420, + "y": 480, "w": 40, "h": 30 } @@ -4057,7 +4939,7 @@ }, "frame": { "x": 400, - "y": 420, + "y": 480, "w": 40, "h": 30 } @@ -4078,7 +4960,7 @@ }, "frame": { "x": 440, - "y": 420, + "y": 480, "w": 40, "h": 30 } @@ -4099,7 +4981,7 @@ }, "frame": { "x": 480, - "y": 420, + "y": 480, "w": 40, "h": 30 } @@ -4119,14 +5001,35 @@ "h": 30 }, "frame": { - "x": 0, - "y": 450, + "x": 520, + "y": 480, "w": 40, "h": 30 } }, { - "filename": "641-incarnate_1", + "filename": "643_2", + "rotated": false, + "trimmed": false, + "sourceSize": { + "w": 40, + "h": 30 + }, + "spriteSourceSize": { + "x": 0, + "y": 0, + "w": 40, + "h": 30 + }, + "frame": { + "x": 0, + "y": 510, + "w": 40, + "h": 30 + } + }, + { + "filename": "643_3", "rotated": false, "trimmed": false, "sourceSize": { @@ -4141,13 +5044,13 @@ }, "frame": { "x": 40, - "y": 450, + "y": 510, "w": 40, "h": 30 } }, { - "filename": "641-therian_1", + "filename": "644_2", "rotated": false, "trimmed": false, "sourceSize": { @@ -4162,13 +5065,13 @@ }, "frame": { "x": 80, - "y": 450, + "y": 510, "w": 40, "h": 30 } }, { - "filename": "642-incarnate_1", + "filename": "644_3", "rotated": false, "trimmed": false, "sourceSize": { @@ -4183,13 +5086,13 @@ }, "frame": { "x": 120, - "y": 450, + "y": 510, "w": 40, "h": 30 } }, { - "filename": "642-therian_1", + "filename": "646-black_2", "rotated": false, "trimmed": false, "sourceSize": { @@ -4204,13 +5107,13 @@ }, "frame": { "x": 160, - "y": 450, + "y": 510, "w": 40, "h": 30 } }, { - "filename": "645-incarnate_1", + "filename": "646-black_3", "rotated": false, "trimmed": false, "sourceSize": { @@ -4225,13 +5128,13 @@ }, "frame": { "x": 200, - "y": 450, + "y": 510, "w": 40, "h": 30 } }, { - "filename": "645-therian_1", + "filename": "646-white_2", "rotated": false, "trimmed": false, "sourceSize": { @@ -4246,7 +5149,70 @@ }, "frame": { "x": 240, - "y": 450, + "y": 510, + "w": 40, + "h": 30 + } + }, + { + "filename": "646-white_3", + "rotated": false, + "trimmed": false, + "sourceSize": { + "w": 40, + "h": 30 + }, + "spriteSourceSize": { + "x": 0, + "y": 0, + "w": 40, + "h": 30 + }, + "frame": { + "x": 280, + "y": 510, + "w": 40, + "h": 30 + } + }, + { + "filename": "646_2", + "rotated": false, + "trimmed": false, + "sourceSize": { + "w": 40, + "h": 30 + }, + "spriteSourceSize": { + "x": 0, + "y": 0, + "w": 40, + "h": 30 + }, + "frame": { + "x": 320, + "y": 510, + "w": 40, + "h": 30 + } + }, + { + "filename": "646_3", + "rotated": false, + "trimmed": false, + "sourceSize": { + "w": 40, + "h": 30 + }, + "spriteSourceSize": { + "x": 0, + "y": 0, + "w": 40, + "h": 30 + }, + "frame": { + "x": 360, + "y": 510, "w": 40, "h": 30 } @@ -4266,8 +5232,8 @@ "h": 30 }, "frame": { - "x": 280, - "y": 450, + "x": 400, + "y": 510, "w": 40, "h": 30 } @@ -4287,8 +5253,8 @@ "h": 30 }, "frame": { - "x": 320, - "y": 450, + "x": 440, + "y": 510, "w": 40, "h": 30 } @@ -4308,8 +5274,8 @@ "h": 30 }, "frame": { - "x": 360, - "y": 450, + "x": 480, + "y": 510, "w": 40, "h": 30 } @@ -4329,8 +5295,8 @@ "h": 30 }, "frame": { - "x": 400, - "y": 450, + "x": 520, + "y": 510, "w": 40, "h": 30 } @@ -4350,8 +5316,8 @@ "h": 30 }, "frame": { - "x": 440, - "y": 450, + "x": 0, + "y": 540, "w": 40, "h": 30 } @@ -4371,8 +5337,8 @@ "h": 30 }, "frame": { - "x": 480, - "y": 450, + "x": 40, + "y": 540, "w": 40, "h": 30 } @@ -4392,8 +5358,8 @@ "h": 30 }, "frame": { - "x": 0, - "y": 480, + "x": 80, + "y": 540, "w": 40, "h": 30 } @@ -4413,8 +5379,8 @@ "h": 30 }, "frame": { - "x": 40, - "y": 480, + "x": 120, + "y": 540, "w": 40, "h": 30 } @@ -4434,8 +5400,8 @@ "h": 30 }, "frame": { - "x": 80, - "y": 480, + "x": 160, + "y": 540, "w": 40, "h": 30 } @@ -4455,8 +5421,8 @@ "h": 30 }, "frame": { - "x": 120, - "y": 480, + "x": 200, + "y": 540, "w": 40, "h": 30 } @@ -4476,8 +5442,8 @@ "h": 30 }, "frame": { - "x": 160, - "y": 480, + "x": 240, + "y": 540, "w": 40, "h": 30 } @@ -4497,8 +5463,8 @@ "h": 30 }, "frame": { - "x": 200, - "y": 480, + "x": 280, + "y": 540, "w": 40, "h": 30 } @@ -4518,8 +5484,8 @@ "h": 30 }, "frame": { - "x": 240, - "y": 480, + "x": 320, + "y": 540, "w": 40, "h": 30 } @@ -4539,8 +5505,8 @@ "h": 30 }, "frame": { - "x": 280, - "y": 480, + "x": 360, + "y": 540, "w": 40, "h": 30 } @@ -4560,8 +5526,8 @@ "h": 30 }, "frame": { - "x": 320, - "y": 480, + "x": 400, + "y": 540, "w": 40, "h": 30 } @@ -4581,8 +5547,8 @@ "h": 30 }, "frame": { - "x": 360, - "y": 480, + "x": 440, + "y": 540, "w": 40, "h": 30 } @@ -4602,8 +5568,8 @@ "h": 30 }, "frame": { - "x": 400, - "y": 480, + "x": 480, + "y": 540, "w": 40, "h": 30 } @@ -4623,8 +5589,8 @@ "h": 30 }, "frame": { - "x": 440, - "y": 480, + "x": 520, + "y": 540, "w": 40, "h": 30 } @@ -4635,6 +5601,6 @@ "meta": { "app": "https://www.codeandweb.com/texturepacker", "version": "3.0", - "smartupdate": "$TexturePacker:SmartUpdate:b615ea9a62bec26b97d0171030d11a55:35fd8571f91311ef2e9944578f979466:f1931bc28ee7f32dba7543723757cf2a$" + "smartupdate": "$TexturePacker:SmartUpdate:d7ba1fabe0180573c58dd3fb1ea6e279:cbff8ace700a0111c2ee3279d01d11e4:f1931bc28ee7f32dba7543723757cf2a$" } } diff --git a/public/images/pokemon_icons_5v.png b/public/images/pokemon_icons_5v.png index 9dd1b278ac1..ba23de2e3f5 100644 Binary files a/public/images/pokemon_icons_5v.png and b/public/images/pokemon_icons_5v.png differ diff --git a/public/images/pokemon_icons_6v.json b/public/images/pokemon_icons_6v.json index 8061ed9152b..8626eddcc1c 100644 --- a/public/images/pokemon_icons_6v.json +++ b/public/images/pokemon_icons_6v.json @@ -2824,7 +2824,7 @@ } }, { - "filename": "696_2", + "filename": "692_2", "rotated": false, "trimmed": false, "sourceSize": { @@ -2844,6 +2844,90 @@ "h": 30 } }, + { + "filename": "692_3", + "rotated": false, + "trimmed": false, + "sourceSize": { + "w": 40, + "h": 30 + }, + "spriteSourceSize": { + "x": 0, + "y": 0, + "w": 40, + "h": 30 + }, + "frame": { + "x": 120, + "y": 330, + "w": 40, + "h": 30 + } + }, + { + "filename": "693_2", + "rotated": false, + "trimmed": false, + "sourceSize": { + "w": 40, + "h": 30 + }, + "spriteSourceSize": { + "x": 0, + "y": 0, + "w": 40, + "h": 30 + }, + "frame": { + "x": 160, + "y": 330, + "w": 40, + "h": 30 + } + }, + { + "filename": "693_3", + "rotated": false, + "trimmed": false, + "sourceSize": { + "w": 40, + "h": 30 + }, + "spriteSourceSize": { + "x": 0, + "y": 0, + "w": 40, + "h": 30 + }, + "frame": { + "x": 200, + "y": 330, + "w": 40, + "h": 30 + } + }, + { + "filename": "696_2", + "rotated": false, + "trimmed": false, + "sourceSize": { + "w": 40, + "h": 30 + }, + "spriteSourceSize": { + "x": 0, + "y": 0, + "w": 40, + "h": 30 + }, + "frame": { + "x": 240, + "y": 330, + "w": 40, + "h": 30 + } + }, { "filename": "696_3", "rotated": false, @@ -2859,7 +2943,7 @@ "h": 30 }, "frame": { - "x": 120, + "x": 280, "y": 330, "w": 40, "h": 30 @@ -2880,7 +2964,7 @@ "h": 30 }, "frame": { - "x": 160, + "x": 320, "y": 330, "w": 40, "h": 30 @@ -2901,7 +2985,7 @@ "h": 30 }, "frame": { - "x": 200, + "x": 360, "y": 330, "w": 40, "h": 30 @@ -2922,7 +3006,7 @@ "h": 30 }, "frame": { - "x": 240, + "x": 400, "y": 330, "w": 40, "h": 30 @@ -2943,7 +3027,7 @@ "h": 30 }, "frame": { - "x": 280, + "x": 440, "y": 330, "w": 40, "h": 30 @@ -2964,8 +3048,8 @@ "h": 30 }, "frame": { - "x": 320, - "y": 330, + "x": 0, + "y": 360, "w": 40, "h": 30 } @@ -2985,8 +3069,8 @@ "h": 30 }, "frame": { - "x": 360, - "y": 330, + "x": 40, + "y": 360, "w": 40, "h": 30 } @@ -3006,8 +3090,8 @@ "h": 30 }, "frame": { - "x": 400, - "y": 330, + "x": 80, + "y": 360, "w": 40, "h": 30 } @@ -3027,8 +3111,8 @@ "h": 30 }, "frame": { - "x": 440, - "y": 330, + "x": 120, + "y": 360, "w": 40, "h": 30 } @@ -3048,7 +3132,7 @@ "h": 30 }, "frame": { - "x": 0, + "x": 160, "y": 360, "w": 40, "h": 30 @@ -3069,7 +3153,7 @@ "h": 30 }, "frame": { - "x": 40, + "x": 200, "y": 360, "w": 40, "h": 30 @@ -3090,7 +3174,7 @@ "h": 30 }, "frame": { - "x": 80, + "x": 240, "y": 360, "w": 40, "h": 30 @@ -3111,7 +3195,7 @@ "h": 30 }, "frame": { - "x": 120, + "x": 280, "y": 360, "w": 40, "h": 30 @@ -3132,7 +3216,7 @@ "h": 30 }, "frame": { - "x": 160, + "x": 320, "y": 360, "w": 40, "h": 30 @@ -3153,7 +3237,7 @@ "h": 30 }, "frame": { - "x": 200, + "x": 360, "y": 360, "w": 40, "h": 30 @@ -3174,7 +3258,7 @@ "h": 30 }, "frame": { - "x": 240, + "x": 400, "y": 360, "w": 40, "h": 30 @@ -3195,7 +3279,7 @@ "h": 30 }, "frame": { - "x": 280, + "x": 440, "y": 360, "w": 40, "h": 30 @@ -3216,8 +3300,8 @@ "h": 30 }, "frame": { - "x": 320, - "y": 360, + "x": 0, + "y": 390, "w": 40, "h": 30 } @@ -3237,8 +3321,8 @@ "h": 30 }, "frame": { - "x": 360, - "y": 360, + "x": 40, + "y": 390, "w": 40, "h": 30 } @@ -3258,8 +3342,8 @@ "h": 30 }, "frame": { - "x": 400, - "y": 360, + "x": 80, + "y": 390, "w": 40, "h": 30 } @@ -3279,8 +3363,8 @@ "h": 30 }, "frame": { - "x": 440, - "y": 360, + "x": 120, + "y": 390, "w": 40, "h": 30 } @@ -3300,7 +3384,7 @@ "h": 30 }, "frame": { - "x": 0, + "x": 160, "y": 390, "w": 40, "h": 30 @@ -3321,7 +3405,7 @@ "h": 30 }, "frame": { - "x": 40, + "x": 200, "y": 390, "w": 40, "h": 30 @@ -3342,7 +3426,7 @@ "h": 30 }, "frame": { - "x": 80, + "x": 240, "y": 390, "w": 40, "h": 30 @@ -3363,7 +3447,7 @@ "h": 30 }, "frame": { - "x": 120, + "x": 280, "y": 390, "w": 40, "h": 30 @@ -3384,7 +3468,7 @@ "h": 30 }, "frame": { - "x": 160, + "x": 320, "y": 390, "w": 40, "h": 30 @@ -3405,7 +3489,7 @@ "h": 30 }, "frame": { - "x": 200, + "x": 360, "y": 390, "w": 40, "h": 30 @@ -3426,7 +3510,7 @@ "h": 30 }, "frame": { - "x": 240, + "x": 400, "y": 390, "w": 40, "h": 30 @@ -3447,7 +3531,7 @@ "h": 30 }, "frame": { - "x": 280, + "x": 440, "y": 390, "w": 40, "h": 30 @@ -3468,8 +3552,8 @@ "h": 30 }, "frame": { - "x": 320, - "y": 390, + "x": 0, + "y": 420, "w": 40, "h": 30 } @@ -3489,8 +3573,8 @@ "h": 30 }, "frame": { - "x": 360, - "y": 390, + "x": 40, + "y": 420, "w": 40, "h": 30 } @@ -3510,8 +3594,8 @@ "h": 30 }, "frame": { - "x": 400, - "y": 390, + "x": 80, + "y": 420, "w": 40, "h": 30 } @@ -3531,8 +3615,8 @@ "h": 30 }, "frame": { - "x": 440, - "y": 390, + "x": 120, + "y": 420, "w": 40, "h": 30 } @@ -3552,7 +3636,7 @@ "h": 30 }, "frame": { - "x": 0, + "x": 160, "y": 420, "w": 40, "h": 30 @@ -3573,7 +3657,7 @@ "h": 30 }, "frame": { - "x": 40, + "x": 200, "y": 420, "w": 40, "h": 30 @@ -3594,7 +3678,7 @@ "h": 30 }, "frame": { - "x": 80, + "x": 240, "y": 420, "w": 40, "h": 30 @@ -3615,7 +3699,7 @@ "h": 30 }, "frame": { - "x": 120, + "x": 280, "y": 420, "w": 40, "h": 30 @@ -3636,7 +3720,7 @@ "h": 30 }, "frame": { - "x": 160, + "x": 320, "y": 420, "w": 40, "h": 30 @@ -3657,7 +3741,7 @@ "h": 30 }, "frame": { - "x": 200, + "x": 360, "y": 420, "w": 40, "h": 30 @@ -3678,7 +3762,7 @@ "h": 30 }, "frame": { - "x": 240, + "x": 400, "y": 420, "w": 40, "h": 30 @@ -3699,7 +3783,7 @@ "h": 30 }, "frame": { - "x": 280, + "x": 440, "y": 420, "w": 40, "h": 30 @@ -3719,90 +3803,6 @@ "w": 40, "h": 30 }, - "frame": { - "x": 320, - "y": 420, - "w": 40, - "h": 30 - } - }, - { - "filename": "720-unbound_1", - "rotated": false, - "trimmed": false, - "sourceSize": { - "w": 40, - "h": 30 - }, - "spriteSourceSize": { - "x": 0, - "y": 0, - "w": 40, - "h": 30 - }, - "frame": { - "x": 360, - "y": 420, - "w": 40, - "h": 30 - } - }, - { - "filename": "720-unbound_2", - "rotated": false, - "trimmed": false, - "sourceSize": { - "w": 40, - "h": 30 - }, - "spriteSourceSize": { - "x": 0, - "y": 0, - "w": 40, - "h": 30 - }, - "frame": { - "x": 400, - "y": 420, - "w": 40, - "h": 30 - } - }, - { - "filename": "720-unbound_3", - "rotated": false, - "trimmed": false, - "sourceSize": { - "w": 40, - "h": 30 - }, - "spriteSourceSize": { - "x": 0, - "y": 0, - "w": 40, - "h": 30 - }, - "frame": { - "x": 440, - "y": 420, - "w": 40, - "h": 30 - } - }, - { - "filename": "720_1", - "rotated": false, - "trimmed": false, - "sourceSize": { - "w": 40, - "h": 30 - }, - "spriteSourceSize": { - "x": 0, - "y": 0, - "w": 40, - "h": 30 - }, "frame": { "x": 0, "y": 450, @@ -3811,7 +3811,7 @@ } }, { - "filename": "720_2", + "filename": "720-unbound_1", "rotated": false, "trimmed": false, "sourceSize": { @@ -3832,7 +3832,7 @@ } }, { - "filename": "720_3", + "filename": "720-unbound_2", "rotated": false, "trimmed": false, "sourceSize": { @@ -3853,7 +3853,7 @@ } }, { - "filename": "2670_2", + "filename": "720-unbound_3", "rotated": false, "trimmed": false, "sourceSize": { @@ -3874,7 +3874,7 @@ } }, { - "filename": "2670_3", + "filename": "720_1", "rotated": false, "trimmed": false, "sourceSize": { @@ -3893,6 +3893,90 @@ "w": 40, "h": 30 } + }, + { + "filename": "720_2", + "rotated": false, + "trimmed": false, + "sourceSize": { + "w": 40, + "h": 30 + }, + "spriteSourceSize": { + "x": 0, + "y": 0, + "w": 40, + "h": 30 + }, + "frame": { + "x": 200, + "y": 450, + "w": 40, + "h": 30 + } + }, + { + "filename": "720_3", + "rotated": false, + "trimmed": false, + "sourceSize": { + "w": 40, + "h": 30 + }, + "spriteSourceSize": { + "x": 0, + "y": 0, + "w": 40, + "h": 30 + }, + "frame": { + "x": 240, + "y": 450, + "w": 40, + "h": 30 + } + }, + { + "filename": "2670_2", + "rotated": false, + "trimmed": false, + "sourceSize": { + "w": 40, + "h": 30 + }, + "spriteSourceSize": { + "x": 0, + "y": 0, + "w": 40, + "h": 30 + }, + "frame": { + "x": 280, + "y": 450, + "w": 40, + "h": 30 + } + }, + { + "filename": "2670_3", + "rotated": false, + "trimmed": false, + "sourceSize": { + "w": 40, + "h": 30 + }, + "spriteSourceSize": { + "x": 0, + "y": 0, + "w": 40, + "h": 30 + }, + "frame": { + "x": 320, + "y": 450, + "w": 40, + "h": 30 + } } ] } @@ -3900,6 +3984,6 @@ "meta": { "app": "https://www.codeandweb.com/texturepacker", "version": "3.0", - "smartupdate": "$TexturePacker:SmartUpdate:41960148e7a74c451d8ed1c46adc4e09:5dc2b45aa8a432e966da6c4070905be6:8a74f769af240f74b0e67390bbb36c14$" + "smartupdate": "$TexturePacker:SmartUpdate:5779627583192c7b11ac7da6a39690da:ad2bf1b939fe025e3f14c49511ccf058:8a74f769af240f74b0e67390bbb36c14$" } } diff --git a/public/images/pokemon_icons_6v.png b/public/images/pokemon_icons_6v.png index 29d00876b50..d8bd10eaa71 100644 Binary files a/public/images/pokemon_icons_6v.png and b/public/images/pokemon_icons_6v.png differ diff --git a/public/images/pokemon_icons_7v.json b/public/images/pokemon_icons_7v.json index 30e12ce3bb4..6a353fffe94 100644 --- a/public/images/pokemon_icons_7v.json +++ b/public/images/pokemon_icons_7v.json @@ -4,8 +4,8 @@ "image": "pokemon_icons_7v.png", "format": "RGBA8888", "size": { - "w": 440, - "h": 440 + "w": 450, + "h": 450 }, "scale": 1, "frames": [ @@ -304,7 +304,7 @@ } }, { - "filename": "747_2", + "filename": "746-school_2", "rotated": false, "trimmed": false, "sourceSize": { @@ -324,6 +324,90 @@ "h": 30 } }, + { + "filename": "746-school_3", + "rotated": false, + "trimmed": false, + "sourceSize": { + "w": 40, + "h": 30 + }, + "spriteSourceSize": { + "x": 0, + "y": 0, + "w": 40, + "h": 30 + }, + "frame": { + "x": 160, + "y": 30, + "w": 40, + "h": 30 + } + }, + { + "filename": "746_2", + "rotated": false, + "trimmed": false, + "sourceSize": { + "w": 40, + "h": 30 + }, + "spriteSourceSize": { + "x": 0, + "y": 0, + "w": 40, + "h": 30 + }, + "frame": { + "x": 200, + "y": 30, + "w": 40, + "h": 30 + } + }, + { + "filename": "746_3", + "rotated": false, + "trimmed": false, + "sourceSize": { + "w": 40, + "h": 30 + }, + "spriteSourceSize": { + "x": 0, + "y": 0, + "w": 40, + "h": 30 + }, + "frame": { + "x": 240, + "y": 30, + "w": 40, + "h": 30 + } + }, + { + "filename": "747_2", + "rotated": false, + "trimmed": false, + "sourceSize": { + "w": 40, + "h": 30 + }, + "spriteSourceSize": { + "x": 0, + "y": 0, + "w": 40, + "h": 30 + }, + "frame": { + "x": 280, + "y": 30, + "w": 40, + "h": 30 + } + }, { "filename": "747_3", "rotated": false, @@ -339,7 +423,7 @@ "h": 30 }, "frame": { - "x": 160, + "x": 320, "y": 30, "w": 40, "h": 30 @@ -360,7 +444,7 @@ "h": 30 }, "frame": { - "x": 200, + "x": 360, "y": 30, "w": 40, "h": 30 @@ -381,7 +465,7 @@ "h": 30 }, "frame": { - "x": 240, + "x": 400, "y": 30, "w": 40, "h": 30 @@ -402,8 +486,8 @@ "h": 30 }, "frame": { - "x": 280, - "y": 30, + "x": 0, + "y": 60, "w": 40, "h": 30 } @@ -423,8 +507,8 @@ "h": 30 }, "frame": { - "x": 320, - "y": 30, + "x": 40, + "y": 60, "w": 40, "h": 30 } @@ -444,8 +528,8 @@ "h": 30 }, "frame": { - "x": 360, - "y": 30, + "x": 80, + "y": 60, "w": 40, "h": 30 } @@ -465,8 +549,8 @@ "h": 30 }, "frame": { - "x": 400, - "y": 30, + "x": 120, + "y": 60, "w": 40, "h": 30 } @@ -486,7 +570,7 @@ "h": 30 }, "frame": { - "x": 0, + "x": 160, "y": 60, "w": 40, "h": 30 @@ -507,7 +591,7 @@ "h": 30 }, "frame": { - "x": 40, + "x": 200, "y": 60, "w": 40, "h": 30 @@ -528,7 +612,7 @@ "h": 30 }, "frame": { - "x": 80, + "x": 240, "y": 60, "w": 40, "h": 30 @@ -549,7 +633,7 @@ "h": 30 }, "frame": { - "x": 120, + "x": 280, "y": 60, "w": 40, "h": 30 @@ -570,7 +654,7 @@ "h": 30 }, "frame": { - "x": 160, + "x": 320, "y": 60, "w": 40, "h": 30 @@ -591,7 +675,7 @@ "h": 30 }, "frame": { - "x": 200, + "x": 360, "y": 60, "w": 40, "h": 30 @@ -612,7 +696,7 @@ "h": 30 }, "frame": { - "x": 240, + "x": 400, "y": 60, "w": 40, "h": 30 @@ -633,8 +717,8 @@ "h": 30 }, "frame": { - "x": 280, - "y": 60, + "x": 0, + "y": 90, "w": 40, "h": 30 } @@ -654,8 +738,8 @@ "h": 30 }, "frame": { - "x": 320, - "y": 60, + "x": 40, + "y": 90, "w": 40, "h": 30 } @@ -675,8 +759,8 @@ "h": 30 }, "frame": { - "x": 360, - "y": 60, + "x": 80, + "y": 90, "w": 40, "h": 30 } @@ -696,8 +780,8 @@ "h": 30 }, "frame": { - "x": 400, - "y": 60, + "x": 120, + "y": 90, "w": 40, "h": 30 } @@ -717,7 +801,7 @@ "h": 30 }, "frame": { - "x": 0, + "x": 160, "y": 90, "w": 40, "h": 30 @@ -738,7 +822,7 @@ "h": 30 }, "frame": { - "x": 40, + "x": 200, "y": 90, "w": 40, "h": 30 @@ -759,7 +843,7 @@ "h": 30 }, "frame": { - "x": 80, + "x": 240, "y": 90, "w": 40, "h": 30 @@ -780,7 +864,7 @@ "h": 30 }, "frame": { - "x": 120, + "x": 280, "y": 90, "w": 40, "h": 30 @@ -801,7 +885,7 @@ "h": 30 }, "frame": { - "x": 160, + "x": 320, "y": 90, "w": 40, "h": 30 @@ -822,7 +906,7 @@ "h": 30 }, "frame": { - "x": 200, + "x": 360, "y": 90, "w": 40, "h": 30 @@ -843,7 +927,7 @@ "h": 30 }, "frame": { - "x": 240, + "x": 400, "y": 90, "w": 40, "h": 30 @@ -864,8 +948,8 @@ "h": 30 }, "frame": { - "x": 280, - "y": 90, + "x": 0, + "y": 120, "w": 40, "h": 30 } @@ -885,8 +969,8 @@ "h": 30 }, "frame": { - "x": 320, - "y": 90, + "x": 40, + "y": 120, "w": 40, "h": 30 } @@ -906,8 +990,8 @@ "h": 30 }, "frame": { - "x": 360, - "y": 90, + "x": 80, + "y": 120, "w": 40, "h": 30 } @@ -927,8 +1011,8 @@ "h": 30 }, "frame": { - "x": 400, - "y": 90, + "x": 120, + "y": 120, "w": 40, "h": 30 } @@ -948,7 +1032,7 @@ "h": 30 }, "frame": { - "x": 0, + "x": 160, "y": 120, "w": 40, "h": 30 @@ -969,7 +1053,7 @@ "h": 30 }, "frame": { - "x": 40, + "x": 200, "y": 120, "w": 40, "h": 30 @@ -990,7 +1074,7 @@ "h": 30 }, "frame": { - "x": 80, + "x": 240, "y": 120, "w": 40, "h": 30 @@ -1011,7 +1095,7 @@ "h": 30 }, "frame": { - "x": 120, + "x": 280, "y": 120, "w": 40, "h": 30 @@ -1032,7 +1116,7 @@ "h": 30 }, "frame": { - "x": 160, + "x": 320, "y": 120, "w": 40, "h": 30 @@ -1053,7 +1137,7 @@ "h": 30 }, "frame": { - "x": 200, + "x": 360, "y": 120, "w": 40, "h": 30 @@ -1074,7 +1158,7 @@ "h": 30 }, "frame": { - "x": 240, + "x": 400, "y": 120, "w": 40, "h": 30 @@ -1095,8 +1179,8 @@ "h": 30 }, "frame": { - "x": 280, - "y": 120, + "x": 0, + "y": 150, "w": 40, "h": 30 } @@ -1116,8 +1200,8 @@ "h": 30 }, "frame": { - "x": 320, - "y": 120, + "x": 40, + "y": 150, "w": 40, "h": 30 } @@ -1137,8 +1221,8 @@ "h": 30 }, "frame": { - "x": 360, - "y": 120, + "x": 80, + "y": 150, "w": 40, "h": 30 } @@ -1158,8 +1242,8 @@ "h": 30 }, "frame": { - "x": 400, - "y": 120, + "x": 120, + "y": 150, "w": 40, "h": 30 } @@ -1179,7 +1263,7 @@ "h": 30 }, "frame": { - "x": 0, + "x": 160, "y": 150, "w": 40, "h": 30 @@ -1200,7 +1284,7 @@ "h": 30 }, "frame": { - "x": 40, + "x": 200, "y": 150, "w": 40, "h": 30 @@ -1221,7 +1305,7 @@ "h": 30 }, "frame": { - "x": 80, + "x": 240, "y": 150, "w": 40, "h": 30 @@ -1242,7 +1326,7 @@ "h": 30 }, "frame": { - "x": 120, + "x": 280, "y": 150, "w": 40, "h": 30 @@ -1263,7 +1347,7 @@ "h": 30 }, "frame": { - "x": 160, + "x": 320, "y": 150, "w": 40, "h": 30 @@ -1284,7 +1368,7 @@ "h": 30 }, "frame": { - "x": 200, + "x": 360, "y": 150, "w": 40, "h": 30 @@ -1305,7 +1389,7 @@ "h": 30 }, "frame": { - "x": 240, + "x": 400, "y": 150, "w": 40, "h": 30 @@ -1326,8 +1410,8 @@ "h": 30 }, "frame": { - "x": 280, - "y": 150, + "x": 0, + "y": 180, "w": 40, "h": 30 } @@ -1347,8 +1431,8 @@ "h": 30 }, "frame": { - "x": 320, - "y": 150, + "x": 40, + "y": 180, "w": 40, "h": 30 } @@ -1368,8 +1452,8 @@ "h": 30 }, "frame": { - "x": 360, - "y": 150, + "x": 80, + "y": 180, "w": 40, "h": 30 } @@ -1389,8 +1473,8 @@ "h": 30 }, "frame": { - "x": 400, - "y": 150, + "x": 120, + "y": 180, "w": 40, "h": 30 } @@ -1410,7 +1494,7 @@ "h": 30 }, "frame": { - "x": 0, + "x": 160, "y": 180, "w": 40, "h": 30 @@ -1431,7 +1515,7 @@ "h": 30 }, "frame": { - "x": 40, + "x": 200, "y": 180, "w": 40, "h": 30 @@ -1452,7 +1536,7 @@ "h": 30 }, "frame": { - "x": 80, + "x": 240, "y": 180, "w": 40, "h": 30 @@ -1473,7 +1557,7 @@ "h": 30 }, "frame": { - "x": 120, + "x": 280, "y": 180, "w": 40, "h": 30 @@ -1494,7 +1578,7 @@ "h": 30 }, "frame": { - "x": 160, + "x": 320, "y": 180, "w": 40, "h": 30 @@ -1515,7 +1599,7 @@ "h": 30 }, "frame": { - "x": 200, + "x": 360, "y": 180, "w": 40, "h": 30 @@ -1536,7 +1620,7 @@ "h": 30 }, "frame": { - "x": 240, + "x": 400, "y": 180, "w": 40, "h": 30 @@ -1557,8 +1641,8 @@ "h": 30 }, "frame": { - "x": 280, - "y": 180, + "x": 0, + "y": 210, "w": 40, "h": 30 } @@ -1578,8 +1662,8 @@ "h": 30 }, "frame": { - "x": 320, - "y": 180, + "x": 40, + "y": 210, "w": 40, "h": 30 } @@ -1599,8 +1683,8 @@ "h": 30 }, "frame": { - "x": 360, - "y": 180, + "x": 80, + "y": 210, "w": 40, "h": 30 } @@ -1620,8 +1704,8 @@ "h": 30 }, "frame": { - "x": 400, - "y": 180, + "x": 120, + "y": 210, "w": 40, "h": 30 } @@ -1641,7 +1725,7 @@ "h": 30 }, "frame": { - "x": 0, + "x": 160, "y": 210, "w": 40, "h": 30 @@ -1662,7 +1746,7 @@ "h": 30 }, "frame": { - "x": 40, + "x": 200, "y": 210, "w": 40, "h": 30 @@ -1683,7 +1767,7 @@ "h": 30 }, "frame": { - "x": 80, + "x": 240, "y": 210, "w": 40, "h": 30 @@ -1704,7 +1788,7 @@ "h": 30 }, "frame": { - "x": 120, + "x": 280, "y": 210, "w": 40, "h": 30 @@ -1725,7 +1809,7 @@ "h": 30 }, "frame": { - "x": 160, + "x": 320, "y": 210, "w": 40, "h": 30 @@ -1746,7 +1830,7 @@ "h": 30 }, "frame": { - "x": 200, + "x": 360, "y": 210, "w": 40, "h": 30 @@ -1767,7 +1851,7 @@ "h": 30 }, "frame": { - "x": 240, + "x": 400, "y": 210, "w": 40, "h": 30 @@ -1788,8 +1872,8 @@ "h": 30 }, "frame": { - "x": 280, - "y": 210, + "x": 0, + "y": 240, "w": 40, "h": 30 } @@ -1809,8 +1893,8 @@ "h": 30 }, "frame": { - "x": 320, - "y": 210, + "x": 40, + "y": 240, "w": 40, "h": 30 } @@ -1830,8 +1914,8 @@ "h": 30 }, "frame": { - "x": 360, - "y": 210, + "x": 80, + "y": 240, "w": 40, "h": 30 } @@ -1851,8 +1935,8 @@ "h": 30 }, "frame": { - "x": 400, - "y": 210, + "x": 120, + "y": 240, "w": 40, "h": 30 } @@ -1872,7 +1956,7 @@ "h": 30 }, "frame": { - "x": 0, + "x": 160, "y": 240, "w": 40, "h": 30 @@ -1893,12 +1977,180 @@ "h": 30 }, "frame": { - "x": 40, + "x": 200, "y": 240, "w": 40, "h": 30 } }, + { + "filename": "780_2", + "rotated": false, + "trimmed": false, + "sourceSize": { + "w": 40, + "h": 30 + }, + "spriteSourceSize": { + "x": 0, + "y": 0, + "w": 40, + "h": 30 + }, + "frame": { + "x": 240, + "y": 240, + "w": 40, + "h": 30 + } + }, + { + "filename": "780_3", + "rotated": false, + "trimmed": false, + "sourceSize": { + "w": 40, + "h": 30 + }, + "spriteSourceSize": { + "x": 0, + "y": 0, + "w": 40, + "h": 30 + }, + "frame": { + "x": 280, + "y": 240, + "w": 40, + "h": 30 + } + }, + { + "filename": "782_2", + "rotated": false, + "trimmed": false, + "sourceSize": { + "w": 40, + "h": 30 + }, + "spriteSourceSize": { + "x": 0, + "y": 0, + "w": 40, + "h": 30 + }, + "frame": { + "x": 320, + "y": 240, + "w": 40, + "h": 30 + } + }, + { + "filename": "782_3", + "rotated": false, + "trimmed": false, + "sourceSize": { + "w": 40, + "h": 30 + }, + "spriteSourceSize": { + "x": 0, + "y": 0, + "w": 40, + "h": 30 + }, + "frame": { + "x": 360, + "y": 240, + "w": 40, + "h": 30 + } + }, + { + "filename": "783_2", + "rotated": false, + "trimmed": false, + "sourceSize": { + "w": 40, + "h": 30 + }, + "spriteSourceSize": { + "x": 0, + "y": 0, + "w": 40, + "h": 30 + }, + "frame": { + "x": 400, + "y": 240, + "w": 40, + "h": 30 + } + }, + { + "filename": "783_3", + "rotated": false, + "trimmed": false, + "sourceSize": { + "w": 40, + "h": 30 + }, + "spriteSourceSize": { + "x": 0, + "y": 0, + "w": 40, + "h": 30 + }, + "frame": { + "x": 0, + "y": 270, + "w": 40, + "h": 30 + } + }, + { + "filename": "784_2", + "rotated": false, + "trimmed": false, + "sourceSize": { + "w": 40, + "h": 30 + }, + "spriteSourceSize": { + "x": 0, + "y": 0, + "w": 40, + "h": 30 + }, + "frame": { + "x": 40, + "y": 270, + "w": 40, + "h": 30 + } + }, + { + "filename": "784_3", + "rotated": false, + "trimmed": false, + "sourceSize": { + "w": 40, + "h": 30 + }, + "spriteSourceSize": { + "x": 0, + "y": 0, + "w": 40, + "h": 30 + }, + "frame": { + "x": 80, + "y": 270, + "w": 40, + "h": 30 + } + }, { "filename": "789_1", "rotated": false, @@ -1914,8 +2166,8 @@ "h": 30 }, "frame": { - "x": 80, - "y": 240, + "x": 120, + "y": 270, "w": 40, "h": 30 } @@ -1935,8 +2187,8 @@ "h": 30 }, "frame": { - "x": 120, - "y": 240, + "x": 160, + "y": 270, "w": 40, "h": 30 } @@ -1956,8 +2208,8 @@ "h": 30 }, "frame": { - "x": 160, - "y": 240, + "x": 200, + "y": 270, "w": 40, "h": 30 } @@ -1977,8 +2229,8 @@ "h": 30 }, "frame": { - "x": 200, - "y": 240, + "x": 240, + "y": 270, "w": 40, "h": 30 } @@ -1998,8 +2250,8 @@ "h": 30 }, "frame": { - "x": 240, - "y": 240, + "x": 280, + "y": 270, "w": 40, "h": 30 } @@ -2019,8 +2271,8 @@ "h": 30 }, "frame": { - "x": 280, - "y": 240, + "x": 320, + "y": 270, "w": 40, "h": 30 } @@ -2040,8 +2292,8 @@ "h": 30 }, "frame": { - "x": 320, - "y": 240, + "x": 360, + "y": 270, "w": 40, "h": 30 } @@ -2061,8 +2313,8 @@ "h": 30 }, "frame": { - "x": 360, - "y": 240, + "x": 400, + "y": 270, "w": 40, "h": 30 } @@ -2082,8 +2334,8 @@ "h": 30 }, "frame": { - "x": 400, - "y": 240, + "x": 0, + "y": 300, "w": 40, "h": 30 } @@ -2103,8 +2355,8 @@ "h": 30 }, "frame": { - "x": 0, - "y": 270, + "x": 40, + "y": 300, "w": 40, "h": 30 } @@ -2124,8 +2376,8 @@ "h": 30 }, "frame": { - "x": 40, - "y": 270, + "x": 80, + "y": 300, "w": 40, "h": 30 } @@ -2145,8 +2397,8 @@ "h": 30 }, "frame": { - "x": 80, - "y": 270, + "x": 120, + "y": 300, "w": 40, "h": 30 } @@ -2166,8 +2418,8 @@ "h": 30 }, "frame": { - "x": 120, - "y": 270, + "x": 160, + "y": 300, "w": 40, "h": 30 } @@ -2187,8 +2439,8 @@ "h": 30 }, "frame": { - "x": 160, - "y": 270, + "x": 200, + "y": 300, "w": 40, "h": 30 } @@ -2208,8 +2460,8 @@ "h": 30 }, "frame": { - "x": 200, - "y": 270, + "x": 240, + "y": 300, "w": 40, "h": 30 } @@ -2229,8 +2481,8 @@ "h": 30 }, "frame": { - "x": 240, - "y": 270, + "x": 280, + "y": 300, "w": 40, "h": 30 } @@ -2250,8 +2502,8 @@ "h": 30 }, "frame": { - "x": 280, - "y": 270, + "x": 320, + "y": 300, "w": 40, "h": 30 } @@ -2271,8 +2523,8 @@ "h": 30 }, "frame": { - "x": 320, - "y": 270, + "x": 360, + "y": 300, "w": 40, "h": 30 } @@ -2292,8 +2544,8 @@ "h": 30 }, "frame": { - "x": 360, - "y": 270, + "x": 400, + "y": 300, "w": 40, "h": 30 } @@ -2313,8 +2565,8 @@ "h": 30 }, "frame": { - "x": 400, - "y": 270, + "x": 0, + "y": 330, "w": 40, "h": 30 } @@ -2334,8 +2586,8 @@ "h": 30 }, "frame": { - "x": 0, - "y": 300, + "x": 40, + "y": 330, "w": 40, "h": 30 } @@ -2355,8 +2607,8 @@ "h": 30 }, "frame": { - "x": 40, - "y": 300, + "x": 80, + "y": 330, "w": 40, "h": 30 } @@ -2376,8 +2628,8 @@ "h": 30 }, "frame": { - "x": 80, - "y": 300, + "x": 120, + "y": 330, "w": 40, "h": 30 } @@ -2397,8 +2649,8 @@ "h": 30 }, "frame": { - "x": 120, - "y": 300, + "x": 160, + "y": 330, "w": 40, "h": 30 } @@ -2418,8 +2670,8 @@ "h": 30 }, "frame": { - "x": 160, - "y": 300, + "x": 200, + "y": 330, "w": 40, "h": 30 } @@ -2439,8 +2691,8 @@ "h": 30 }, "frame": { - "x": 200, - "y": 300, + "x": 240, + "y": 330, "w": 40, "h": 30 } @@ -2460,8 +2712,8 @@ "h": 30 }, "frame": { - "x": 240, - "y": 300, + "x": 280, + "y": 330, "w": 40, "h": 30 } @@ -2481,8 +2733,8 @@ "h": 30 }, "frame": { - "x": 280, - "y": 300, + "x": 320, + "y": 330, "w": 40, "h": 30 } @@ -2502,8 +2754,8 @@ "h": 30 }, "frame": { - "x": 320, - "y": 300, + "x": 360, + "y": 330, "w": 40, "h": 30 } @@ -2523,8 +2775,8 @@ "h": 30 }, "frame": { - "x": 360, - "y": 300, + "x": 400, + "y": 330, "w": 40, "h": 30 } @@ -2544,8 +2796,8 @@ "h": 30 }, "frame": { - "x": 400, - "y": 300, + "x": 0, + "y": 360, "w": 40, "h": 30 } @@ -2565,8 +2817,8 @@ "h": 30 }, "frame": { - "x": 0, - "y": 330, + "x": 40, + "y": 360, "w": 40, "h": 30 } @@ -2586,8 +2838,8 @@ "h": 30 }, "frame": { - "x": 40, - "y": 330, + "x": 80, + "y": 360, "w": 40, "h": 30 } @@ -2607,8 +2859,8 @@ "h": 30 }, "frame": { - "x": 80, - "y": 330, + "x": 120, + "y": 360, "w": 40, "h": 30 } @@ -2628,8 +2880,8 @@ "h": 30 }, "frame": { - "x": 120, - "y": 330, + "x": 160, + "y": 360, "w": 40, "h": 30 } @@ -2649,8 +2901,8 @@ "h": 30 }, "frame": { - "x": 160, - "y": 330, + "x": 200, + "y": 360, "w": 40, "h": 30 } @@ -2670,8 +2922,8 @@ "h": 30 }, "frame": { - "x": 200, - "y": 330, + "x": 240, + "y": 360, "w": 40, "h": 30 } @@ -2691,8 +2943,8 @@ "h": 30 }, "frame": { - "x": 240, - "y": 330, + "x": 280, + "y": 360, "w": 40, "h": 30 } @@ -2712,8 +2964,8 @@ "h": 30 }, "frame": { - "x": 280, - "y": 330, + "x": 320, + "y": 360, "w": 40, "h": 30 } @@ -2733,8 +2985,8 @@ "h": 30 }, "frame": { - "x": 320, - "y": 330, + "x": 360, + "y": 360, "w": 40, "h": 30 } @@ -2754,8 +3006,8 @@ "h": 30 }, "frame": { - "x": 360, - "y": 330, + "x": 400, + "y": 360, "w": 40, "h": 30 } @@ -2775,8 +3027,8 @@ "h": 30 }, "frame": { - "x": 400, - "y": 330, + "x": 0, + "y": 390, "w": 40, "h": 30 } @@ -2796,8 +3048,8 @@ "h": 30 }, "frame": { - "x": 0, - "y": 360, + "x": 40, + "y": 390, "w": 40, "h": 30 } @@ -2817,8 +3069,8 @@ "h": 30 }, "frame": { - "x": 40, - "y": 360, + "x": 80, + "y": 390, "w": 40, "h": 30 } @@ -2838,8 +3090,92 @@ "h": 30 }, "frame": { - "x": 80, - "y": 360, + "x": 120, + "y": 390, + "w": 40, + "h": 30 + } + }, + { + "filename": "2037_2", + "rotated": false, + "trimmed": false, + "sourceSize": { + "w": 40, + "h": 30 + }, + "spriteSourceSize": { + "x": 0, + "y": 0, + "w": 40, + "h": 30 + }, + "frame": { + "x": 160, + "y": 390, + "w": 40, + "h": 30 + } + }, + { + "filename": "2037_3", + "rotated": false, + "trimmed": false, + "sourceSize": { + "w": 40, + "h": 30 + }, + "spriteSourceSize": { + "x": 0, + "y": 0, + "w": 40, + "h": 30 + }, + "frame": { + "x": 200, + "y": 390, + "w": 40, + "h": 30 + } + }, + { + "filename": "2038_2", + "rotated": false, + "trimmed": false, + "sourceSize": { + "w": 40, + "h": 30 + }, + "spriteSourceSize": { + "x": 0, + "y": 0, + "w": 40, + "h": 30 + }, + "frame": { + "x": 240, + "y": 390, + "w": 40, + "h": 30 + } + }, + { + "filename": "2038_3", + "rotated": false, + "trimmed": false, + "sourceSize": { + "w": 40, + "h": 30 + }, + "spriteSourceSize": { + "x": 0, + "y": 0, + "w": 40, + "h": 30 + }, + "frame": { + "x": 280, + "y": 390, "w": 40, "h": 30 } @@ -2859,8 +3195,8 @@ "h": 30 }, "frame": { - "x": 120, - "y": 360, + "x": 320, + "y": 390, "w": 40, "h": 30 } @@ -2880,8 +3216,8 @@ "h": 30 }, "frame": { - "x": 160, - "y": 360, + "x": 360, + "y": 390, "w": 40, "h": 30 } @@ -2901,8 +3237,8 @@ "h": 30 }, "frame": { - "x": 200, - "y": 360, + "x": 400, + "y": 390, "w": 40, "h": 30 } @@ -2922,8 +3258,8 @@ "h": 30 }, "frame": { - "x": 240, - "y": 360, + "x": 0, + "y": 420, "w": 40, "h": 30 } @@ -2943,8 +3279,8 @@ "h": 30 }, "frame": { - "x": 280, - "y": 360, + "x": 40, + "y": 420, "w": 40, "h": 30 } @@ -2964,8 +3300,8 @@ "h": 30 }, "frame": { - "x": 320, - "y": 360, + "x": 80, + "y": 420, "w": 40, "h": 30 } @@ -2976,6 +3312,6 @@ "meta": { "app": "https://www.codeandweb.com/texturepacker", "version": "3.0", - "smartupdate": "$TexturePacker:SmartUpdate:914c9869d6dab145bbbe443bdc3f932c:80b9ecf9647b68af17c07b88e1a1856e:d5975df27e1e94206a68aa1fd3c2c8d0$" + "smartupdate": "$TexturePacker:SmartUpdate:0780b00fda53c3fbd0b6e554e89a6818:b96a0f88bd707a9967af73e7bdf13031:d5975df27e1e94206a68aa1fd3c2c8d0$" } } diff --git a/public/images/pokemon_icons_7v.png b/public/images/pokemon_icons_7v.png index 1f7d6e5f826..12c81de925c 100644 Binary files a/public/images/pokemon_icons_7v.png and b/public/images/pokemon_icons_7v.png differ diff --git a/public/images/pokemon_icons_8v.json b/public/images/pokemon_icons_8v.json index a33f88e9d9b..4b1877878a5 100644 --- a/public/images/pokemon_icons_8v.json +++ b/public/images/pokemon_icons_8v.json @@ -4,8 +4,8 @@ "image": "pokemon_icons_8v.png", "format": "RGBA8888", "size": { - "w": 510, - "h": 510 + "w": 520, + "h": 520 }, "scale": 1, "frames": [ @@ -276,8 +276,8 @@ "h": 30 }, "frame": { - "x": 0, - "y": 30, + "x": 480, + "y": 0, "w": 40, "h": 30 } @@ -297,7 +297,7 @@ "h": 30 }, "frame": { - "x": 40, + "x": 0, "y": 30, "w": 40, "h": 30 @@ -318,7 +318,7 @@ "h": 30 }, "frame": { - "x": 80, + "x": 40, "y": 30, "w": 40, "h": 30 @@ -339,7 +339,7 @@ "h": 30 }, "frame": { - "x": 120, + "x": 80, "y": 30, "w": 40, "h": 30 @@ -360,7 +360,7 @@ "h": 30 }, "frame": { - "x": 160, + "x": 120, "y": 30, "w": 40, "h": 30 @@ -381,7 +381,7 @@ "h": 30 }, "frame": { - "x": 200, + "x": 160, "y": 30, "w": 40, "h": 30 @@ -402,7 +402,7 @@ "h": 30 }, "frame": { - "x": 240, + "x": 200, "y": 30, "w": 40, "h": 30 @@ -423,7 +423,7 @@ "h": 30 }, "frame": { - "x": 280, + "x": 240, "y": 30, "w": 40, "h": 30 @@ -444,7 +444,7 @@ "h": 30 }, "frame": { - "x": 320, + "x": 280, "y": 30, "w": 40, "h": 30 @@ -465,7 +465,7 @@ "h": 30 }, "frame": { - "x": 360, + "x": 320, "y": 30, "w": 40, "h": 30 @@ -486,7 +486,7 @@ "h": 30 }, "frame": { - "x": 400, + "x": 360, "y": 30, "w": 40, "h": 30 @@ -506,6 +506,27 @@ "w": 40, "h": 30 }, + "frame": { + "x": 400, + "y": 30, + "w": 40, + "h": 30 + } + }, + { + "filename": "840_2", + "rotated": false, + "trimmed": false, + "sourceSize": { + "w": 40, + "h": 30 + }, + "spriteSourceSize": { + "x": 0, + "y": 0, + "w": 40, + "h": 30 + }, "frame": { "x": 440, "y": 30, @@ -513,6 +534,195 @@ "h": 30 } }, + { + "filename": "840_3", + "rotated": false, + "trimmed": false, + "sourceSize": { + "w": 40, + "h": 30 + }, + "spriteSourceSize": { + "x": 0, + "y": 0, + "w": 40, + "h": 30 + }, + "frame": { + "x": 480, + "y": 30, + "w": 40, + "h": 30 + } + }, + { + "filename": "841-gigantamax_2", + "rotated": false, + "trimmed": false, + "sourceSize": { + "w": 40, + "h": 30 + }, + "spriteSourceSize": { + "x": 0, + "y": 0, + "w": 40, + "h": 30 + }, + "frame": { + "x": 0, + "y": 60, + "w": 40, + "h": 30 + } + }, + { + "filename": "842-gigantamax_2", + "rotated": false, + "trimmed": false, + "sourceSize": { + "w": 40, + "h": 30 + }, + "spriteSourceSize": { + "x": 0, + "y": 0, + "w": 40, + "h": 30 + }, + "frame": { + "x": 0, + "y": 60, + "w": 40, + "h": 30 + } + }, + { + "filename": "841-gigantamax_3", + "rotated": false, + "trimmed": false, + "sourceSize": { + "w": 40, + "h": 30 + }, + "spriteSourceSize": { + "x": 0, + "y": 0, + "w": 40, + "h": 30 + }, + "frame": { + "x": 40, + "y": 60, + "w": 40, + "h": 30 + } + }, + { + "filename": "842-gigantamax_3", + "rotated": false, + "trimmed": false, + "sourceSize": { + "w": 40, + "h": 30 + }, + "spriteSourceSize": { + "x": 0, + "y": 0, + "w": 40, + "h": 30 + }, + "frame": { + "x": 40, + "y": 60, + "w": 40, + "h": 30 + } + }, + { + "filename": "841_2", + "rotated": false, + "trimmed": false, + "sourceSize": { + "w": 40, + "h": 30 + }, + "spriteSourceSize": { + "x": 0, + "y": 0, + "w": 40, + "h": 30 + }, + "frame": { + "x": 80, + "y": 60, + "w": 40, + "h": 30 + } + }, + { + "filename": "841_3", + "rotated": false, + "trimmed": false, + "sourceSize": { + "w": 40, + "h": 30 + }, + "spriteSourceSize": { + "x": 0, + "y": 0, + "w": 40, + "h": 30 + }, + "frame": { + "x": 120, + "y": 60, + "w": 40, + "h": 30 + } + }, + { + "filename": "842_2", + "rotated": false, + "trimmed": false, + "sourceSize": { + "w": 40, + "h": 30 + }, + "spriteSourceSize": { + "x": 0, + "y": 0, + "w": 40, + "h": 30 + }, + "frame": { + "x": 160, + "y": 60, + "w": 40, + "h": 30 + } + }, + { + "filename": "842_3", + "rotated": false, + "trimmed": false, + "sourceSize": { + "w": 40, + "h": 30 + }, + "spriteSourceSize": { + "x": 0, + "y": 0, + "w": 40, + "h": 30 + }, + "frame": { + "x": 200, + "y": 60, + "w": 40, + "h": 30 + } + }, { "filename": "850_2", "rotated": false, @@ -528,7 +738,7 @@ "h": 30 }, "frame": { - "x": 0, + "x": 240, "y": 60, "w": 40, "h": 30 @@ -549,7 +759,7 @@ "h": 30 }, "frame": { - "x": 40, + "x": 280, "y": 60, "w": 40, "h": 30 @@ -570,7 +780,7 @@ "h": 30 }, "frame": { - "x": 80, + "x": 320, "y": 60, "w": 40, "h": 30 @@ -591,7 +801,7 @@ "h": 30 }, "frame": { - "x": 120, + "x": 360, "y": 60, "w": 40, "h": 30 @@ -612,7 +822,7 @@ "h": 30 }, "frame": { - "x": 160, + "x": 400, "y": 60, "w": 40, "h": 30 @@ -633,7 +843,7 @@ "h": 30 }, "frame": { - "x": 200, + "x": 440, "y": 60, "w": 40, "h": 30 @@ -654,7 +864,7 @@ "h": 30 }, "frame": { - "x": 240, + "x": 480, "y": 60, "w": 40, "h": 30 @@ -675,8 +885,8 @@ "h": 30 }, "frame": { - "x": 280, - "y": 60, + "x": 0, + "y": 90, "w": 40, "h": 30 } @@ -696,8 +906,8 @@ "h": 30 }, "frame": { - "x": 320, - "y": 60, + "x": 40, + "y": 90, "w": 40, "h": 30 } @@ -717,8 +927,8 @@ "h": 30 }, "frame": { - "x": 360, - "y": 60, + "x": 80, + "y": 90, "w": 40, "h": 30 } @@ -738,8 +948,8 @@ "h": 30 }, "frame": { - "x": 400, - "y": 60, + "x": 120, + "y": 90, "w": 40, "h": 30 } @@ -759,8 +969,8 @@ "h": 30 }, "frame": { - "x": 440, - "y": 60, + "x": 160, + "y": 90, "w": 40, "h": 30 } @@ -780,7 +990,7 @@ "h": 30 }, "frame": { - "x": 0, + "x": 200, "y": 90, "w": 40, "h": 30 @@ -801,7 +1011,7 @@ "h": 30 }, "frame": { - "x": 40, + "x": 240, "y": 90, "w": 40, "h": 30 @@ -822,7 +1032,7 @@ "h": 30 }, "frame": { - "x": 80, + "x": 280, "y": 90, "w": 40, "h": 30 @@ -843,7 +1053,7 @@ "h": 30 }, "frame": { - "x": 120, + "x": 320, "y": 90, "w": 40, "h": 30 @@ -864,7 +1074,7 @@ "h": 30 }, "frame": { - "x": 160, + "x": 360, "y": 90, "w": 40, "h": 30 @@ -885,7 +1095,7 @@ "h": 30 }, "frame": { - "x": 200, + "x": 400, "y": 90, "w": 40, "h": 30 @@ -906,7 +1116,7 @@ "h": 30 }, "frame": { - "x": 240, + "x": 440, "y": 90, "w": 40, "h": 30 @@ -927,7 +1137,7 @@ "h": 30 }, "frame": { - "x": 280, + "x": 480, "y": 90, "w": 40, "h": 30 @@ -948,8 +1158,8 @@ "h": 30 }, "frame": { - "x": 320, - "y": 90, + "x": 0, + "y": 120, "w": 40, "h": 30 } @@ -969,8 +1179,8 @@ "h": 30 }, "frame": { - "x": 360, - "y": 90, + "x": 40, + "y": 120, "w": 40, "h": 30 } @@ -990,8 +1200,8 @@ "h": 30 }, "frame": { - "x": 400, - "y": 90, + "x": 80, + "y": 120, "w": 40, "h": 30 } @@ -1011,8 +1221,8 @@ "h": 30 }, "frame": { - "x": 440, - "y": 90, + "x": 120, + "y": 120, "w": 40, "h": 30 } @@ -1032,7 +1242,7 @@ "h": 30 }, "frame": { - "x": 0, + "x": 160, "y": 120, "w": 40, "h": 30 @@ -1053,7 +1263,7 @@ "h": 30 }, "frame": { - "x": 40, + "x": 200, "y": 120, "w": 40, "h": 30 @@ -1074,7 +1284,7 @@ "h": 30 }, "frame": { - "x": 80, + "x": 240, "y": 120, "w": 40, "h": 30 @@ -1095,7 +1305,7 @@ "h": 30 }, "frame": { - "x": 120, + "x": 280, "y": 120, "w": 40, "h": 30 @@ -1116,7 +1326,7 @@ "h": 30 }, "frame": { - "x": 160, + "x": 320, "y": 120, "w": 40, "h": 30 @@ -1137,7 +1347,7 @@ "h": 30 }, "frame": { - "x": 200, + "x": 360, "y": 120, "w": 40, "h": 30 @@ -1158,7 +1368,7 @@ "h": 30 }, "frame": { - "x": 240, + "x": 400, "y": 120, "w": 40, "h": 30 @@ -1179,7 +1389,7 @@ "h": 30 }, "frame": { - "x": 280, + "x": 440, "y": 120, "w": 40, "h": 30 @@ -1200,7 +1410,7 @@ "h": 30 }, "frame": { - "x": 320, + "x": 480, "y": 120, "w": 40, "h": 30 @@ -1221,8 +1431,50 @@ "h": 30 }, "frame": { - "x": 360, - "y": 120, + "x": 0, + "y": 150, + "w": 40, + "h": 30 + } + }, + { + "filename": "871_2", + "rotated": false, + "trimmed": false, + "sourceSize": { + "w": 40, + "h": 30 + }, + "spriteSourceSize": { + "x": 0, + "y": 0, + "w": 40, + "h": 30 + }, + "frame": { + "x": 40, + "y": 150, + "w": 40, + "h": 30 + } + }, + { + "filename": "871_3", + "rotated": false, + "trimmed": false, + "sourceSize": { + "w": 40, + "h": 30 + }, + "spriteSourceSize": { + "x": 0, + "y": 0, + "w": 40, + "h": 30 + }, + "frame": { + "x": 80, + "y": 150, "w": 40, "h": 30 } @@ -1242,8 +1494,8 @@ "h": 30 }, "frame": { - "x": 400, - "y": 120, + "x": 120, + "y": 150, "w": 40, "h": 30 } @@ -1263,8 +1515,8 @@ "h": 30 }, "frame": { - "x": 440, - "y": 120, + "x": 160, + "y": 150, "w": 40, "h": 30 } @@ -1284,7 +1536,7 @@ "h": 30 }, "frame": { - "x": 0, + "x": 200, "y": 150, "w": 40, "h": 30 @@ -1305,7 +1557,7 @@ "h": 30 }, "frame": { - "x": 40, + "x": 240, "y": 150, "w": 40, "h": 30 @@ -1326,7 +1578,7 @@ "h": 30 }, "frame": { - "x": 80, + "x": 280, "y": 150, "w": 40, "h": 30 @@ -1347,7 +1599,7 @@ "h": 30 }, "frame": { - "x": 120, + "x": 320, "y": 150, "w": 40, "h": 30 @@ -1368,7 +1620,7 @@ "h": 30 }, "frame": { - "x": 160, + "x": 360, "y": 150, "w": 40, "h": 30 @@ -1389,7 +1641,7 @@ "h": 30 }, "frame": { - "x": 200, + "x": 400, "y": 150, "w": 40, "h": 30 @@ -1410,7 +1662,7 @@ "h": 30 }, "frame": { - "x": 240, + "x": 440, "y": 150, "w": 40, "h": 30 @@ -1431,7 +1683,7 @@ "h": 30 }, "frame": { - "x": 280, + "x": 480, "y": 150, "w": 40, "h": 30 @@ -1452,8 +1704,8 @@ "h": 30 }, "frame": { - "x": 320, - "y": 150, + "x": 0, + "y": 180, "w": 40, "h": 30 } @@ -1473,8 +1725,8 @@ "h": 30 }, "frame": { - "x": 360, - "y": 150, + "x": 40, + "y": 180, "w": 40, "h": 30 } @@ -1494,8 +1746,8 @@ "h": 30 }, "frame": { - "x": 400, - "y": 150, + "x": 80, + "y": 180, "w": 40, "h": 30 } @@ -1515,8 +1767,8 @@ "h": 30 }, "frame": { - "x": 440, - "y": 150, + "x": 120, + "y": 180, "w": 40, "h": 30 } @@ -1536,7 +1788,7 @@ "h": 30 }, "frame": { - "x": 0, + "x": 160, "y": 180, "w": 40, "h": 30 @@ -1557,7 +1809,7 @@ "h": 30 }, "frame": { - "x": 40, + "x": 200, "y": 180, "w": 40, "h": 30 @@ -1578,7 +1830,7 @@ "h": 30 }, "frame": { - "x": 80, + "x": 240, "y": 180, "w": 40, "h": 30 @@ -1599,7 +1851,7 @@ "h": 30 }, "frame": { - "x": 120, + "x": 280, "y": 180, "w": 40, "h": 30 @@ -1620,7 +1872,7 @@ "h": 30 }, "frame": { - "x": 160, + "x": 320, "y": 180, "w": 40, "h": 30 @@ -1641,7 +1893,7 @@ "h": 30 }, "frame": { - "x": 200, + "x": 360, "y": 180, "w": 40, "h": 30 @@ -1662,7 +1914,7 @@ "h": 30 }, "frame": { - "x": 240, + "x": 400, "y": 180, "w": 40, "h": 30 @@ -1683,7 +1935,7 @@ "h": 30 }, "frame": { - "x": 280, + "x": 440, "y": 180, "w": 40, "h": 30 @@ -1704,7 +1956,7 @@ "h": 30 }, "frame": { - "x": 320, + "x": 480, "y": 180, "w": 40, "h": 30 @@ -1725,8 +1977,8 @@ "h": 30 }, "frame": { - "x": 360, - "y": 180, + "x": 0, + "y": 210, "w": 40, "h": 30 } @@ -1746,8 +1998,8 @@ "h": 30 }, "frame": { - "x": 400, - "y": 180, + "x": 40, + "y": 210, "w": 40, "h": 30 } @@ -1767,8 +2019,8 @@ "h": 30 }, "frame": { - "x": 440, - "y": 180, + "x": 80, + "y": 210, "w": 40, "h": 30 } @@ -1788,7 +2040,7 @@ "h": 30 }, "frame": { - "x": 0, + "x": 120, "y": 210, "w": 40, "h": 30 @@ -1809,7 +2061,7 @@ "h": 30 }, "frame": { - "x": 40, + "x": 160, "y": 210, "w": 40, "h": 30 @@ -1830,7 +2082,7 @@ "h": 30 }, "frame": { - "x": 80, + "x": 200, "y": 210, "w": 40, "h": 30 @@ -1851,7 +2103,7 @@ "h": 30 }, "frame": { - "x": 120, + "x": 240, "y": 210, "w": 40, "h": 30 @@ -1872,7 +2124,7 @@ "h": 30 }, "frame": { - "x": 160, + "x": 280, "y": 210, "w": 40, "h": 30 @@ -1893,7 +2145,7 @@ "h": 30 }, "frame": { - "x": 200, + "x": 320, "y": 210, "w": 40, "h": 30 @@ -1914,7 +2166,7 @@ "h": 30 }, "frame": { - "x": 240, + "x": 360, "y": 210, "w": 40, "h": 30 @@ -1935,7 +2187,7 @@ "h": 30 }, "frame": { - "x": 280, + "x": 400, "y": 210, "w": 40, "h": 30 @@ -1956,7 +2208,7 @@ "h": 30 }, "frame": { - "x": 320, + "x": 440, "y": 210, "w": 40, "h": 30 @@ -1977,7 +2229,7 @@ "h": 30 }, "frame": { - "x": 360, + "x": 480, "y": 210, "w": 40, "h": 30 @@ -1998,8 +2250,8 @@ "h": 30 }, "frame": { - "x": 400, - "y": 210, + "x": 0, + "y": 240, "w": 40, "h": 30 } @@ -2019,8 +2271,8 @@ "h": 30 }, "frame": { - "x": 440, - "y": 210, + "x": 40, + "y": 240, "w": 40, "h": 30 } @@ -2040,7 +2292,7 @@ "h": 30 }, "frame": { - "x": 0, + "x": 80, "y": 240, "w": 40, "h": 30 @@ -2061,7 +2313,7 @@ "h": 30 }, "frame": { - "x": 40, + "x": 120, "y": 240, "w": 40, "h": 30 @@ -2082,7 +2334,7 @@ "h": 30 }, "frame": { - "x": 80, + "x": 160, "y": 240, "w": 40, "h": 30 @@ -2103,7 +2355,7 @@ "h": 30 }, "frame": { - "x": 120, + "x": 200, "y": 240, "w": 40, "h": 30 @@ -2124,7 +2376,7 @@ "h": 30 }, "frame": { - "x": 160, + "x": 240, "y": 240, "w": 40, "h": 30 @@ -2145,7 +2397,7 @@ "h": 30 }, "frame": { - "x": 200, + "x": 280, "y": 240, "w": 40, "h": 30 @@ -2166,7 +2418,7 @@ "h": 30 }, "frame": { - "x": 240, + "x": 320, "y": 240, "w": 40, "h": 30 @@ -2187,7 +2439,7 @@ "h": 30 }, "frame": { - "x": 280, + "x": 360, "y": 240, "w": 40, "h": 30 @@ -2208,7 +2460,7 @@ "h": 30 }, "frame": { - "x": 320, + "x": 400, "y": 240, "w": 40, "h": 30 @@ -2229,7 +2481,7 @@ "h": 30 }, "frame": { - "x": 360, + "x": 440, "y": 240, "w": 40, "h": 30 @@ -2250,7 +2502,7 @@ "h": 30 }, "frame": { - "x": 400, + "x": 480, "y": 240, "w": 40, "h": 30 @@ -2270,27 +2522,6 @@ "w": 40, "h": 30 }, - "frame": { - "x": 440, - "y": 240, - "w": 40, - "h": 30 - } - }, - { - "filename": "891_2", - "rotated": false, - "trimmed": false, - "sourceSize": { - "w": 40, - "h": 30 - }, - "spriteSourceSize": { - "x": 0, - "y": 0, - "w": 40, - "h": 30 - }, "frame": { "x": 0, "y": 270, @@ -2299,7 +2530,7 @@ } }, { - "filename": "891_3", + "filename": "891_2", "rotated": false, "trimmed": false, "sourceSize": { @@ -2320,7 +2551,7 @@ } }, { - "filename": "892-gigantamax-rapid_1", + "filename": "891_3", "rotated": false, "trimmed": false, "sourceSize": { @@ -2341,7 +2572,7 @@ } }, { - "filename": "892-gigantamax-rapid_2", + "filename": "892-gigantamax-rapid_1", "rotated": false, "trimmed": false, "sourceSize": { @@ -2362,7 +2593,7 @@ } }, { - "filename": "892-gigantamax-rapid_3", + "filename": "892-gigantamax-rapid_2", "rotated": false, "trimmed": false, "sourceSize": { @@ -2383,7 +2614,7 @@ } }, { - "filename": "892-gigantamax-single_1", + "filename": "892-gigantamax-rapid_3", "rotated": false, "trimmed": false, "sourceSize": { @@ -2404,7 +2635,7 @@ } }, { - "filename": "892-gigantamax-single_2", + "filename": "892-gigantamax-single_1", "rotated": false, "trimmed": false, "sourceSize": { @@ -2425,7 +2656,7 @@ } }, { - "filename": "892-gigantamax-single_3", + "filename": "892-gigantamax-single_2", "rotated": false, "trimmed": false, "sourceSize": { @@ -2446,7 +2677,7 @@ } }, { - "filename": "892-rapid-strike_1", + "filename": "892-gigantamax-single_3", "rotated": false, "trimmed": false, "sourceSize": { @@ -2467,7 +2698,7 @@ } }, { - "filename": "892-rapid-strike_2", + "filename": "892-rapid-strike_1", "rotated": false, "trimmed": false, "sourceSize": { @@ -2488,7 +2719,7 @@ } }, { - "filename": "892-rapid-strike_3", + "filename": "892-rapid-strike_2", "rotated": false, "trimmed": false, "sourceSize": { @@ -2509,7 +2740,7 @@ } }, { - "filename": "892_1", + "filename": "892-rapid-strike_3", "rotated": false, "trimmed": false, "sourceSize": { @@ -2529,6 +2760,27 @@ "h": 30 } }, + { + "filename": "892_1", + "rotated": false, + "trimmed": false, + "sourceSize": { + "w": 40, + "h": 30 + }, + "spriteSourceSize": { + "x": 0, + "y": 0, + "w": 40, + "h": 30 + }, + "frame": { + "x": 480, + "y": 270, + "w": 40, + "h": 30 + } + }, { "filename": "892_2", "rotated": false, @@ -2796,8 +3048,8 @@ "h": 30 }, "frame": { - "x": 0, - "y": 330, + "x": 480, + "y": 300, "w": 40, "h": 30 } @@ -2817,7 +3069,7 @@ "h": 30 }, "frame": { - "x": 40, + "x": 0, "y": 330, "w": 40, "h": 30 @@ -2838,7 +3090,7 @@ "h": 30 }, "frame": { - "x": 80, + "x": 40, "y": 330, "w": 40, "h": 30 @@ -2859,7 +3111,7 @@ "h": 30 }, "frame": { - "x": 120, + "x": 80, "y": 330, "w": 40, "h": 30 @@ -2880,7 +3132,7 @@ "h": 30 }, "frame": { - "x": 160, + "x": 120, "y": 330, "w": 40, "h": 30 @@ -2901,7 +3153,7 @@ "h": 30 }, "frame": { - "x": 200, + "x": 160, "y": 330, "w": 40, "h": 30 @@ -2922,7 +3174,7 @@ "h": 30 }, "frame": { - "x": 240, + "x": 200, "y": 330, "w": 40, "h": 30 @@ -2943,7 +3195,7 @@ "h": 30 }, "frame": { - "x": 280, + "x": 240, "y": 330, "w": 40, "h": 30 @@ -2964,7 +3216,7 @@ "h": 30 }, "frame": { - "x": 320, + "x": 280, "y": 330, "w": 40, "h": 30 @@ -2985,7 +3237,7 @@ "h": 30 }, "frame": { - "x": 360, + "x": 320, "y": 330, "w": 40, "h": 30 @@ -3006,7 +3258,7 @@ "h": 30 }, "frame": { - "x": 400, + "x": 360, "y": 330, "w": 40, "h": 30 @@ -3027,7 +3279,7 @@ "h": 30 }, "frame": { - "x": 440, + "x": 400, "y": 330, "w": 40, "h": 30 @@ -3048,8 +3300,8 @@ "h": 30 }, "frame": { - "x": 0, - "y": 360, + "x": 440, + "y": 330, "w": 40, "h": 30 } @@ -3069,8 +3321,8 @@ "h": 30 }, "frame": { - "x": 40, - "y": 360, + "x": 480, + "y": 330, "w": 40, "h": 30 } @@ -3090,7 +3342,7 @@ "h": 30 }, "frame": { - "x": 80, + "x": 0, "y": 360, "w": 40, "h": 30 @@ -3111,7 +3363,7 @@ "h": 30 }, "frame": { - "x": 120, + "x": 40, "y": 360, "w": 40, "h": 30 @@ -3132,7 +3384,7 @@ "h": 30 }, "frame": { - "x": 160, + "x": 80, "y": 360, "w": 40, "h": 30 @@ -3153,7 +3405,7 @@ "h": 30 }, "frame": { - "x": 200, + "x": 120, "y": 360, "w": 40, "h": 30 @@ -3174,7 +3426,7 @@ "h": 30 }, "frame": { - "x": 240, + "x": 160, "y": 360, "w": 40, "h": 30 @@ -3195,7 +3447,7 @@ "h": 30 }, "frame": { - "x": 280, + "x": 200, "y": 360, "w": 40, "h": 30 @@ -3216,7 +3468,7 @@ "h": 30 }, "frame": { - "x": 320, + "x": 240, "y": 360, "w": 40, "h": 30 @@ -3237,7 +3489,7 @@ "h": 30 }, "frame": { - "x": 360, + "x": 280, "y": 360, "w": 40, "h": 30 @@ -3258,7 +3510,7 @@ "h": 30 }, "frame": { - "x": 400, + "x": 320, "y": 360, "w": 40, "h": 30 @@ -3279,7 +3531,7 @@ "h": 30 }, "frame": { - "x": 440, + "x": 360, "y": 360, "w": 40, "h": 30 @@ -3300,8 +3552,8 @@ "h": 30 }, "frame": { - "x": 0, - "y": 390, + "x": 400, + "y": 360, "w": 40, "h": 30 } @@ -3321,8 +3573,8 @@ "h": 30 }, "frame": { - "x": 40, - "y": 390, + "x": 440, + "y": 360, "w": 40, "h": 30 } @@ -3342,8 +3594,8 @@ "h": 30 }, "frame": { - "x": 80, - "y": 390, + "x": 480, + "y": 360, "w": 40, "h": 30 } @@ -3363,7 +3615,7 @@ "h": 30 }, "frame": { - "x": 120, + "x": 0, "y": 390, "w": 40, "h": 30 @@ -3384,7 +3636,7 @@ "h": 30 }, "frame": { - "x": 160, + "x": 40, "y": 390, "w": 40, "h": 30 @@ -3405,7 +3657,7 @@ "h": 30 }, "frame": { - "x": 200, + "x": 80, "y": 390, "w": 40, "h": 30 @@ -3426,7 +3678,7 @@ "h": 30 }, "frame": { - "x": 240, + "x": 120, "y": 390, "w": 40, "h": 30 @@ -3447,7 +3699,7 @@ "h": 30 }, "frame": { - "x": 280, + "x": 160, "y": 390, "w": 40, "h": 30 @@ -3468,7 +3720,7 @@ "h": 30 }, "frame": { - "x": 320, + "x": 200, "y": 390, "w": 40, "h": 30 @@ -3489,7 +3741,7 @@ "h": 30 }, "frame": { - "x": 360, + "x": 240, "y": 390, "w": 40, "h": 30 @@ -3510,7 +3762,7 @@ "h": 30 }, "frame": { - "x": 400, + "x": 280, "y": 390, "w": 40, "h": 30 @@ -3531,7 +3783,7 @@ "h": 30 }, "frame": { - "x": 440, + "x": 320, "y": 390, "w": 40, "h": 30 @@ -3552,8 +3804,8 @@ "h": 30 }, "frame": { - "x": 0, - "y": 420, + "x": 360, + "y": 390, "w": 40, "h": 30 } @@ -3573,8 +3825,8 @@ "h": 30 }, "frame": { - "x": 40, - "y": 420, + "x": 400, + "y": 390, "w": 40, "h": 30 } @@ -3594,8 +3846,8 @@ "h": 30 }, "frame": { - "x": 80, - "y": 420, + "x": 440, + "y": 390, "w": 40, "h": 30 } @@ -3615,8 +3867,8 @@ "h": 30 }, "frame": { - "x": 120, - "y": 420, + "x": 480, + "y": 390, "w": 40, "h": 30 } @@ -3636,7 +3888,7 @@ "h": 30 }, "frame": { - "x": 160, + "x": 0, "y": 420, "w": 40, "h": 30 @@ -3657,7 +3909,7 @@ "h": 30 }, "frame": { - "x": 200, + "x": 40, "y": 420, "w": 40, "h": 30 @@ -3678,7 +3930,7 @@ "h": 30 }, "frame": { - "x": 240, + "x": 80, "y": 420, "w": 40, "h": 30 @@ -3699,7 +3951,7 @@ "h": 30 }, "frame": { - "x": 280, + "x": 120, "y": 420, "w": 40, "h": 30 @@ -3720,7 +3972,7 @@ "h": 30 }, "frame": { - "x": 320, + "x": 160, "y": 420, "w": 40, "h": 30 @@ -3741,7 +3993,7 @@ "h": 30 }, "frame": { - "x": 360, + "x": 200, "y": 420, "w": 40, "h": 30 @@ -3762,7 +4014,7 @@ "h": 30 }, "frame": { - "x": 400, + "x": 240, "y": 420, "w": 40, "h": 30 @@ -3783,7 +4035,7 @@ "h": 30 }, "frame": { - "x": 440, + "x": 280, "y": 420, "w": 40, "h": 30 @@ -3804,8 +4056,8 @@ "h": 30 }, "frame": { - "x": 0, - "y": 450, + "x": 320, + "y": 420, "w": 40, "h": 30 } @@ -3825,8 +4077,8 @@ "h": 30 }, "frame": { - "x": 40, - "y": 450, + "x": 360, + "y": 420, "w": 40, "h": 30 } @@ -3846,8 +4098,8 @@ "h": 30 }, "frame": { - "x": 80, - "y": 450, + "x": 400, + "y": 420, "w": 40, "h": 30 } @@ -3867,8 +4119,8 @@ "h": 30 }, "frame": { - "x": 120, - "y": 450, + "x": 440, + "y": 420, "w": 40, "h": 30 } @@ -3888,8 +4140,8 @@ "h": 30 }, "frame": { - "x": 160, - "y": 450, + "x": 480, + "y": 420, "w": 40, "h": 30 } @@ -3909,7 +4161,7 @@ "h": 30 }, "frame": { - "x": 200, + "x": 0, "y": 450, "w": 40, "h": 30 @@ -3930,7 +4182,7 @@ "h": 30 }, "frame": { - "x": 240, + "x": 40, "y": 450, "w": 40, "h": 30 @@ -3951,7 +4203,7 @@ "h": 30 }, "frame": { - "x": 280, + "x": 80, "y": 450, "w": 40, "h": 30 @@ -3972,7 +4224,7 @@ "h": 30 }, "frame": { - "x": 320, + "x": 120, "y": 450, "w": 40, "h": 30 @@ -3993,7 +4245,7 @@ "h": 30 }, "frame": { - "x": 360, + "x": 160, "y": 450, "w": 40, "h": 30 @@ -4014,7 +4266,7 @@ "h": 30 }, "frame": { - "x": 400, + "x": 200, "y": 450, "w": 40, "h": 30 @@ -4035,7 +4287,7 @@ "h": 30 }, "frame": { - "x": 440, + "x": 240, "y": 450, "w": 40, "h": 30 @@ -4056,8 +4308,8 @@ "h": 30 }, "frame": { - "x": 0, - "y": 480, + "x": 280, + "y": 450, "w": 40, "h": 30 } @@ -4077,8 +4329,8 @@ "h": 30 }, "frame": { - "x": 40, - "y": 480, + "x": 320, + "y": 450, "w": 40, "h": 30 } @@ -4098,8 +4350,8 @@ "h": 30 }, "frame": { - "x": 80, - "y": 480, + "x": 360, + "y": 450, "w": 40, "h": 30 } @@ -4110,6 +4362,6 @@ "meta": { "app": "https://www.codeandweb.com/texturepacker", "version": "3.0", - "smartupdate": "$TexturePacker:SmartUpdate:c6192164d1b1971f54a6c5864e11748d:46b3adcf2a25bfb824db3d24cd1c96a9:ec5f05e7f30cd98f74db0c2326109fd3$" + "smartupdate": "$TexturePacker:SmartUpdate:8408a38565cd946fb1dcfa1e942bfa70:5d4e77c515d77c2e94d454fb7c52d9fc:ec5f05e7f30cd98f74db0c2326109fd3$" } } diff --git a/public/images/pokemon_icons_8v.png b/public/images/pokemon_icons_8v.png index 2af86ac656f..4017b0945d6 100644 Binary files a/public/images/pokemon_icons_8v.png and b/public/images/pokemon_icons_8v.png differ diff --git a/public/images/pokemon_icons_9v.json b/public/images/pokemon_icons_9v.json index 6c8b93208e3..4b7a7ba4572 100644 --- a/public/images/pokemon_icons_9v.json +++ b/public/images/pokemon_icons_9v.json @@ -3013,7 +3013,7 @@ } }, { - "filename": "1012-counterfeit_2", + "filename": "1011_2", "rotated": false, "trimmed": false, "sourceSize": { @@ -3034,7 +3034,7 @@ } }, { - "filename": "1012-counterfeit_3", + "filename": "1011_3", "rotated": false, "trimmed": false, "sourceSize": { @@ -3055,7 +3055,7 @@ } }, { - "filename": "1013-unremarkable_2", + "filename": "1012-counterfeit_2", "rotated": false, "trimmed": false, "sourceSize": { @@ -3076,7 +3076,7 @@ } }, { - "filename": "1013-unremarkable_3", + "filename": "1012-counterfeit_3", "rotated": false, "trimmed": false, "sourceSize": { @@ -3097,7 +3097,7 @@ } }, { - "filename": "1018_2", + "filename": "1013-unremarkable_2", "rotated": false, "trimmed": false, "sourceSize": { @@ -3118,7 +3118,7 @@ } }, { - "filename": "1018_3", + "filename": "1013-unremarkable_3", "rotated": false, "trimmed": false, "sourceSize": { @@ -3139,7 +3139,7 @@ } }, { - "filename": "1022_2", + "filename": "1018_2", "rotated": false, "trimmed": false, "sourceSize": { @@ -3160,7 +3160,7 @@ } }, { - "filename": "1022_3", + "filename": "1018_3", "rotated": false, "trimmed": false, "sourceSize": { @@ -3181,7 +3181,7 @@ } }, { - "filename": "1023_2", + "filename": "1019_2", "rotated": false, "trimmed": false, "sourceSize": { @@ -3202,7 +3202,7 @@ } }, { - "filename": "1023_3", + "filename": "1019_3", "rotated": false, "trimmed": false, "sourceSize": { @@ -3223,7 +3223,7 @@ } }, { - "filename": "8901_1", + "filename": "1022_2", "rotated": false, "trimmed": false, "sourceSize": { @@ -3244,7 +3244,7 @@ } }, { - "filename": "8901_2", + "filename": "1022_3", "rotated": false, "trimmed": false, "sourceSize": { @@ -3265,7 +3265,7 @@ } }, { - "filename": "8901_3", + "filename": "1023_2", "rotated": false, "trimmed": false, "sourceSize": { @@ -3284,6 +3284,90 @@ "w": 40, "h": 30 } + }, + { + "filename": "1023_3", + "rotated": false, + "trimmed": false, + "sourceSize": { + "w": 40, + "h": 30 + }, + "spriteSourceSize": { + "x": 0, + "y": 0, + "w": 40, + "h": 30 + }, + "frame": { + "x": 80, + "y": 420, + "w": 40, + "h": 30 + } + }, + { + "filename": "8901_1", + "rotated": false, + "trimmed": false, + "sourceSize": { + "w": 40, + "h": 30 + }, + "spriteSourceSize": { + "x": 0, + "y": 0, + "w": 40, + "h": 30 + }, + "frame": { + "x": 120, + "y": 420, + "w": 40, + "h": 30 + } + }, + { + "filename": "8901_2", + "rotated": false, + "trimmed": false, + "sourceSize": { + "w": 40, + "h": 30 + }, + "spriteSourceSize": { + "x": 0, + "y": 0, + "w": 40, + "h": 30 + }, + "frame": { + "x": 160, + "y": 420, + "w": 40, + "h": 30 + } + }, + { + "filename": "8901_3", + "rotated": false, + "trimmed": false, + "sourceSize": { + "w": 40, + "h": 30 + }, + "spriteSourceSize": { + "x": 0, + "y": 0, + "w": 40, + "h": 30 + }, + "frame": { + "x": 200, + "y": 420, + "w": 40, + "h": 30 + } } ] } @@ -3291,6 +3375,6 @@ "meta": { "app": "https://www.codeandweb.com/texturepacker", "version": "3.0", - "smartupdate": "$TexturePacker:SmartUpdate:c13ec323095f727665fa953e64e98300:e7531bea9b5e1bef44def5b357c81630:3ec5c0bc286c296cfb7fa30a8b06f3da$" + "smartupdate": "$TexturePacker:SmartUpdate:a78ab8261d4cd63caee19962a0e01d8a:cb77bcbd2cc296577c3f2ba84b4c50f2:3ec5c0bc286c296cfb7fa30a8b06f3da$" } } diff --git a/public/images/pokemon_icons_9v.png b/public/images/pokemon_icons_9v.png index f71b6c5ada5..3636c3059d8 100644 Binary files a/public/images/pokemon_icons_9v.png and b/public/images/pokemon_icons_9v.png differ diff --git a/public/locales b/public/locales index 18c1963ef30..ee6bb371afe 160000 --- a/public/locales +++ b/public/locales @@ -1 +1 @@ -Subproject commit 18c1963ef309612a5a7fef76f9879709a7202189 +Subproject commit ee6bb371afefe4c6d872cc7765f0e0d26e630d4e diff --git a/src/battle-scene.ts b/src/battle-scene.ts index 724a6c1fd8a..8d2f0393d22 100644 --- a/src/battle-scene.ts +++ b/src/battle-scene.ts @@ -7,7 +7,6 @@ import type PokemonSpecies from "#app/data/pokemon-species"; import { allSpecies, getPokemonSpecies } from "#app/data/pokemon-species"; import { fixedInt, - deepMergeObjects, getIvsFromId, randSeedInt, getEnumValues, @@ -19,6 +18,7 @@ import { BooleanHolder, type Constructor, } from "#app/utils/common"; +import { deepMergeSpriteData } from "#app/utils/data"; import type { Modifier, ModifierPredicate, TurnHeldItemTransferModifier } from "./modifier/modifier"; import { ConsumableModifier, @@ -787,7 +787,7 @@ export default class BattleScene extends SceneBase { return; } const expVariantData = await this.cachedFetch("./images/pokemon/variant/_exp_masterlist.json").then(r => r.json()); - deepMergeObjects(variantData, expVariantData); + deepMergeSpriteData(variantData, expVariantData); } cachedFetch(url: string, init?: RequestInit): Promise { @@ -835,6 +835,7 @@ export default class BattleScene extends SceneBase { return this.getPlayerField().find(p => p.isActive() && (includeSwitching || p.switchOutStatus === false)); } + // TODO: Add `undefined` to return type /** * Returns an array of PlayerPokemon of length 1 or 2 depending on if in a double battle or not. * Does not actually check if the pokemon are on the field or not. @@ -850,9 +851,9 @@ export default class BattleScene extends SceneBase { } /** - * @returns The first {@linkcode EnemyPokemon} that is {@linkcode getEnemyField on the field} - * and {@linkcode EnemyPokemon.isActive is active} - * (aka {@linkcode EnemyPokemon.isAllowedInBattle is allowed in battle}), + * @returns The first {@linkcode EnemyPokemon} that is {@linkcode getEnemyField | on the field} + * and {@linkcode EnemyPokemon.isActive | is active} + * (aka {@linkcode EnemyPokemon.isAllowedInBattle | is allowed in battle}), * or `undefined` if there are no valid pokemon * @param includeSwitching Whether a pokemon that is currently switching out is valid, default `true` */ @@ -873,8 +874,8 @@ export default class BattleScene extends SceneBase { /** * Returns an array of Pokemon on both sides of the battle - player first, then enemy. * Does not actually check if the pokemon are on the field or not, and always has length 4 regardless of battle type. - * @param activeOnly Whether to consider only active pokemon - * @returns array of {@linkcode Pokemon} + * @param activeOnly - Whether to consider only active pokemon; default `false` + * @returns An array of {@linkcode Pokemon}, as described above. */ public getField(activeOnly = false): Pokemon[] { const ret = new Array(4).fill(null); @@ -1044,32 +1045,33 @@ export default class BattleScene extends SceneBase { y: number, originX = 0.5, originY = 0.5, - ignoreOverride = false, + ignoreOverride = true, + useIllusion = false, ): Phaser.GameObjects.Container { const container = this.add.container(x, y); container.setName(`${pokemon.name}-icon`); - const icon = this.add.sprite(0, 0, pokemon.getIconAtlasKey(ignoreOverride)); + const icon = this.add.sprite(0, 0, pokemon.getIconAtlasKey(ignoreOverride, useIllusion)); icon.setName(`sprite-${pokemon.name}-icon`); - icon.setFrame(pokemon.getIconId(true)); + icon.setFrame(pokemon.getIconId(ignoreOverride, useIllusion)); // Temporary fix to show pokemon's default icon if variant icon doesn't exist - if (icon.frame.name !== pokemon.getIconId(true)) { + if (icon.frame.name !== pokemon.getIconId(ignoreOverride, useIllusion)) { console.log(`${pokemon.name}'s variant icon does not exist. Replacing with default.`); const temp = pokemon.shiny; pokemon.shiny = false; - icon.setTexture(pokemon.getIconAtlasKey(ignoreOverride)); - icon.setFrame(pokemon.getIconId(true)); + icon.setTexture(pokemon.getIconAtlasKey(ignoreOverride, useIllusion)); + icon.setFrame(pokemon.getIconId(true, useIllusion)); pokemon.shiny = temp; } icon.setOrigin(0.5, 0); container.add(icon); - if (pokemon.isFusion(true)) { - const fusionIcon = this.add.sprite(0, 0, pokemon.getFusionIconAtlasKey(ignoreOverride)); + if (pokemon.isFusion(useIllusion)) { + const fusionIcon = this.add.sprite(0, 0, pokemon.getFusionIconAtlasKey(ignoreOverride, useIllusion)); fusionIcon.setName("sprite-fusion-icon"); fusionIcon.setOrigin(0.5, 0); - fusionIcon.setFrame(pokemon.getFusionIconId(true)); + fusionIcon.setFrame(pokemon.getFusionIconId(ignoreOverride, useIllusion)); const originalWidth = icon.width; const originalHeight = icon.height; @@ -1307,14 +1309,13 @@ export default class BattleScene extends SceneBase { return isNewBiome; } - // TODO: ...this never actually returns `null`, right? newBattle( waveIndex?: number, battleType?: BattleType, trainerData?: TrainerData, double?: boolean, mysteryEncounterType?: MysteryEncounterType, - ): Battle | null { + ): Battle { const _startingWave = Overrides.STARTING_WAVE_OVERRIDE || startingWave; const newWaveIndex = waveIndex || (this.currentBattle?.waveIndex || _startingWave - 1) + 1; let newDouble: boolean | undefined; @@ -1496,7 +1497,7 @@ export default class BattleScene extends SceneBase { }); for (const pokemon of this.getPlayerParty()) { - pokemon.resetBattleData(); + pokemon.resetBattleAndWaveData(); pokemon.resetTera(); applyPostBattleInitAbAttrs(PostBattleInitAbAttr, pokemon); if ( @@ -2920,7 +2921,10 @@ export default class BattleScene extends SceneBase { instant?: boolean, cost?: number, ): boolean { - if (!modifier) { + // We check against modifier.type to stop a bug related to loading in a pokemon that has a form change item, which prior to some patch + // that changed form change modifiers worked, had previously set the `type` field to null. + // TODO: This is not the right place to check for this; it should ideally go in a session migrator. + if (!modifier || !modifier.type) { return false; } let success = false; @@ -3264,6 +3268,7 @@ export default class BattleScene extends SceneBase { [this.modifierBar, this.enemyModifierBar].map(m => m.setVisible(visible)); } + // TODO: Document this updateModifiers(player = true, instant?: boolean): void { const modifiers = player ? this.modifiers : (this.enemyModifiers as PersistentModifier[]); for (let m = 0; m < modifiers.length; m++) { @@ -3323,8 +3328,8 @@ export default class BattleScene extends SceneBase { * gets removed. This function does NOT apply in-battle effects, such as Unburden. * If in-battle effects are needed, use {@linkcode Pokemon.loseHeldItem} instead. * @param modifier The item to be removed. - * @param enemy If `true`, remove an item owned by the enemy. If `false`, remove an item owned by the player. Default is `false`. - * @returns `true` if the item exists and was successfully removed, `false` otherwise. + * @param enemy `true` to remove an item owned by the enemy rather than the player; default `false`. + * @returns `true` if the item exists and was successfully removed, `false` otherwise */ removeModifier(modifier: PersistentModifier, enemy = false): boolean { const modifiers = !enemy ? this.modifiers : this.enemyModifiers; diff --git a/src/constants.ts b/src/constants.ts index dc901e4a766..d3594c389b6 100644 --- a/src/constants.ts +++ b/src/constants.ts @@ -14,3 +14,6 @@ export const MAX_INT_ATTR_VALUE = 0x80000000; export const CLASSIC_MODE_MYSTERY_ENCOUNTER_WAVES: [number, number] = [10, 180] as const; /** The min and max waves for mystery encounters to spawn in challenge mode */ export const CHALLENGE_MODE_MYSTERY_ENCOUNTER_WAVES: [number, number] = [10, 180] as const; + +/** The raw percentage power boost for type boost items*/ +export const TYPE_BOOST_ITEM_BOOST_PERCENT = 20; diff --git a/src/data/abilities/ab-attrs/ab-attr.ts b/src/data/abilities/ab-attrs/ab-attr.ts index a653c3f372d..24fbb6dc338 100644 --- a/src/data/abilities/ab-attrs/ab-attr.ts +++ b/src/data/abilities/ab-attrs/ab-attr.ts @@ -6,6 +6,10 @@ export abstract class AbAttr { public showAbility: boolean; private extraCondition: AbAttrCondition; + /** + * @param showAbility - Whether to show this ability as a flyout during battle; default `true`. + * Should be kept in parity with mainline where possible. + */ constructor(showAbility = true) { this.showAbility = showAbility; } diff --git a/src/data/abilities/ability.ts b/src/data/abilities/ability.ts index 9a6094f4649..4609ff6ec1a 100644 --- a/src/data/abilities/ability.ts +++ b/src/data/abilities/ability.ts @@ -14,7 +14,6 @@ import { SelfStatusMove, VariablePowerAttr, applyMoveAttrs, - VariableMoveTypeAttr, RandomMovesetMoveAttr, RandomMoveAttr, NaturePowerAttr, @@ -44,10 +43,9 @@ import { PokemonTransformPhase } from "#app/phases/pokemon-transform-phase"; import { allAbilities } from "#app/data/data-lists"; import { AbAttr } from "#app/data/abilities/ab-attrs/ab-attr"; import { Ability } from "#app/data/abilities/ability-class"; -import { TrainerVariant } from "#app/field/trainer"; // Enum imports -import { Stat, type BattleStat , BATTLE_STATS, EFFECTIVE_STATS, getStatKey, type EffectiveStat } from "#enums/stat"; +import { Stat, type BattleStat, BATTLE_STATS, EFFECTIVE_STATS, getStatKey, type EffectiveStat } from "#enums/stat"; import { PokemonType } from "#enums/pokemon-type"; import { PokemonAnimType } from "#enums/pokemon-anim-type"; import { StatusEffect } from "#enums/status-effect"; @@ -61,6 +59,11 @@ import { SwitchType } from "#enums/switch-type"; import { MoveFlags } from "#enums/MoveFlags"; import { MoveTarget } from "#enums/MoveTarget"; import { MoveCategory } from "#enums/MoveCategory"; +import type { BerryType } from "#enums/berry-type"; +import { CommonAnimPhase } from "#app/phases/common-anim-phase"; +import { CommonAnim } from "../battle-anims"; +import { getBerryEffectFunc } from "../berry"; +import { BerryUsedEvent } from "#app/events/battle-scene"; // Type imports @@ -73,6 +76,7 @@ import type { BattlerIndex } from "#app/battle"; import type Move from "#app/data/moves/move"; import type { ArenaTrapTag, SuppressAbilitiesTag } from "#app/data/arena-tag"; import { SelectBiomePhase } from "#app/phases/select-biome-phase"; +import { noAbilityTypeOverrideMoves } from "../moves/invalid-moves"; export class BlockRecoilDamageAttr extends AbAttr { constructor() { @@ -1240,12 +1244,39 @@ export class MoveTypeChangeAbAttr extends PreAttackAbAttr { super(false); } - override canApplyPreAttack(pokemon: Pokemon, passive: boolean, simulated: boolean, defender: Pokemon | null, move: Move, args: any[]): boolean { - return (this.condition && this.condition(pokemon, defender, move)) ?? false; + /** + * Determine if the move type change attribute can be applied + * + * Can be applied if: + * - The ability's condition is met, e.g. pixilate only boosts normal moves, + * - The move is not forbidden from having its type changed by an ability, e.g. {@linkcode Moves.MULTI_ATTACK} + * - The user is not terastallized and using tera blast + * - The user is not a terastallized terapagos with tera stellar using tera starstorm + * @param pokemon - The pokemon that has the move type changing ability and is using the attacking move + * @param _passive - Unused + * @param _simulated - Unused + * @param _defender - The pokemon being attacked (unused) + * @param move - The move being used + * @param _args - args[0] holds the type that the move is changed to, args[1] holds the multiplier + * @returns whether the move type change attribute can be applied + */ + override canApplyPreAttack(pokemon: Pokemon, _passive: boolean, _simulated: boolean, _defender: Pokemon | null, move: Move, _args: [NumberHolder?, NumberHolder?, ...any]): boolean { + return (!this.condition || this.condition(pokemon, _defender, move)) && + !noAbilityTypeOverrideMoves.has(move.id) && + (!pokemon.isTerastallized || + (move.id !== Moves.TERA_BLAST && + (move.id !== Moves.TERA_STARSTORM || pokemon.getTeraType() !== PokemonType.STELLAR || !pokemon.hasSpecies(Species.TERAPAGOS)))); } - // TODO: Decouple this into two attributes (type change / power boost) - override applyPreAttack(pokemon: Pokemon, passive: boolean, simulated: boolean, defender: Pokemon, move: Move, args: any[]): void { + /** + * @param pokemon - The pokemon that has the move type changing ability and is using the attacking move + * @param passive - Unused + * @param simulated - Unused + * @param defender - The pokemon being attacked (unused) + * @param move - The move being used + * @param args - args[0] holds the type that the move is changed to, args[1] holds the multiplier + */ + override applyPreAttack(pokemon: Pokemon, passive: boolean, simulated: boolean, defender: Pokemon, move: Move, args: [NumberHolder?, NumberHolder?, ...any]): void { if (args[0] && args[0] instanceof NumberHolder) { args[0].value = this.newType; } @@ -2648,7 +2679,7 @@ export class PostSummonCopyAllyStatsAbAttr extends PostSummonAbAttr { } /** - * Used by Imposter + * Attribute used by {@linkcode Abilities.IMPOSTER} to transform into a random opposing pokemon on entry. */ export class PostSummonTransformAbAttr extends PostSummonAbAttr { constructor() { @@ -2683,7 +2714,7 @@ export class PostSummonTransformAbAttr extends PostSummonAbAttr { const targets = pokemon.getOpponents(); const target = this.getTarget(targets); - if (!!target.summonData?.illusion) { + if (target.summonData.illusion) { return false; } @@ -3265,13 +3296,13 @@ export class ConditionalUserFieldStatusEffectImmunityAbAttr extends UserFieldSta /** * Conditionally provides immunity to stat drop effects to the user's field. - * + * * Used by {@linkcode Abilities.FLOWER_VEIL | Flower Veil}. */ export class ConditionalUserFieldProtectStatAbAttr extends PreStatStageChangeAbAttr { /** {@linkcode BattleStat} to protect or `undefined` if **all** {@linkcode BattleStat} are protected */ protected protectedStat?: BattleStat; - + /** If the method evaluates to true, the stat will be protected. */ protected condition: (target: Pokemon) => boolean; @@ -3288,7 +3319,7 @@ export class ConditionalUserFieldProtectStatAbAttr extends PreStatStageChangeAbA * @param stat The stat being affected * @param cancelled Holds whether the stat change was already prevented. * @param args Args[0] is the target pokemon of the stat change. - * @returns + * @returns */ override canApplyPreStatStageChange(pokemon: Pokemon, passive: boolean, simulated: boolean, stat: BattleStat, cancelled: BooleanHolder, args: [Pokemon, ...any]): boolean { const target = args[0]; @@ -3408,8 +3439,12 @@ export class BlockCritAbAttr extends AbAttr { super(false); } - override apply(pokemon: Pokemon, passive: boolean, simulated: boolean, cancelled: BooleanHolder, args: any[]): void { - (args[0] as BooleanHolder).value = true; + /** + * Apply the block crit ability by setting the value in the provided boolean holder to false + * @param args - [0] is a boolean holder representing whether the attack can crit + */ + override apply(_pokemon: Pokemon, _passive: boolean, _simulated: boolean, _cancelled: BooleanHolder, args: [BooleanHolder, ...any]): void { + (args[0]).value = false; } } @@ -3420,7 +3455,7 @@ export class BonusCritAbAttr extends AbAttr { /** * Apply the bonus crit ability by increasing the value in the provided number holder by 1 - * + * * @param pokemon The pokemon with the BonusCrit ability (unused) * @param passive Unused * @param simulated Unused @@ -3573,7 +3608,7 @@ export class PreWeatherEffectAbAttr extends AbAttr { args: any[]): boolean { return true; } - + applyPreWeatherEffect( pokemon: Pokemon, passive: boolean, @@ -3626,14 +3661,10 @@ export class SuppressWeatherEffectAbAttr extends PreWeatherEffectAbAttr { * Condition function to applied to abilities related to Sheer Force. * Checks if last move used against target was affected by a Sheer Force user and: * Disables: Color Change, Pickpocket, Berserk, Anger Shell - * @returns {AbAttrCondition} If false disables the ability which the condition is applied to. + * @returns An {@linkcode AbAttrCondition} to disable the ability under the proper conditions. */ function getSheerForceHitDisableAbCondition(): AbAttrCondition { return (pokemon: Pokemon) => { - if (!pokemon.turnData) { - return true; - } - const lastReceivedAttack = pokemon.turnData.attacksReceived[0]; if (!lastReceivedAttack) { return true; @@ -3644,7 +3675,7 @@ function getSheerForceHitDisableAbCondition(): AbAttrCondition { return true; } - /**if the last move chance is greater than or equal to cero, and the last attacker's ability is sheer force*/ + /** `true` if the last move's chance is above 0 and the last attacker's ability is sheer force */ const SheerForceAffected = allMoves[lastReceivedAttack.move].chance >= 0 && lastAttacker.hasAbility(Abilities.SHEER_FORCE); return !SheerForceAffected; @@ -3714,7 +3745,7 @@ function getAnticipationCondition(): AbAttrCondition { */ function getOncePerBattleCondition(ability: Abilities): AbAttrCondition { return (pokemon: Pokemon) => { - return !pokemon.battleData?.abilitiesApplied.includes(ability); + return !pokemon.waveData.abilitiesApplied.has(ability); }; } @@ -4003,7 +4034,7 @@ export class PostTurnStatusHealAbAttr extends PostTurnAbAttr { /** * After the turn ends, resets the status of either the ability holder or their ally - * @param {boolean} allyTarget Whether to target ally, defaults to false (self-target) + * @param allyTarget Whether to target ally, defaults to false (self-target) */ export class PostTurnResetStatusAbAttr extends PostTurnAbAttr { private allyTarget: boolean; @@ -4035,79 +4066,153 @@ export class PostTurnResetStatusAbAttr extends PostTurnAbAttr { } /** - * After the turn ends, try to create an extra item + * Attribute to try and restore eaten berries after the turn ends. + * Used by {@linkcode Abilities.HARVEST}. */ -export class PostTurnLootAbAttr extends PostTurnAbAttr { +export class PostTurnRestoreBerryAbAttr extends PostTurnAbAttr { /** - * @param itemType - The type of item to create - * @param procChance - Chance to create an item - * @see {@linkcode applyPostTurn()} + * Array containing all {@linkcode BerryType | BerryTypes} that are under cap and able to be restored. + * Stored inside the class for a minor performance boost + */ + private berriesUnderCap: BerryType[] + + /** + * @param procChance - function providing chance to restore an item + * @see {@linkcode createEatenBerry()} */ constructor( - /** Extend itemType to add more options */ - private itemType: "EATEN_BERRIES" | "HELD_BERRIES", private procChance: (pokemon: Pokemon) => number ) { super(); } - override canApplyPostTurn(pokemon: Pokemon, passive: boolean, simulated: boolean, args: any[]): boolean { - // Clamp procChance to [0, 1]. Skip if didn't proc (less than pass) - const pass = Phaser.Math.RND.realInRange(0, 1); - return !(Math.max(Math.min(this.procChance(pokemon), 1), 0) < pass) && this.itemType === "EATEN_BERRIES" && !!pokemon.battleData.berriesEaten; - } + override canApplyPostTurn(pokemon: Pokemon, _passive: boolean, _simulated: boolean, _args: any[]): boolean { + // Ensure we have at least 1 recoverable berry (at least 1 berry in berriesEaten is not capped) + const cappedBerries = new Set( + globalScene.getModifiers(BerryModifier, pokemon.isPlayer()).filter( + bm => bm.pokemonId === pokemon.id && bm.getCountUnderMax() < 1 + ).map(bm => bm.berryType) + ); - override applyPostTurn(pokemon: Pokemon, passive: boolean, simulated: boolean, args: any[]): void { - this.createEatenBerry(pokemon, simulated); - } + this.berriesUnderCap = pokemon.battleData.berriesEaten.filter( + bt => !cappedBerries.has(bt) + ); - /** - * Create a new berry chosen randomly from the berries the pokemon ate this battle - * @param pokemon The pokemon with this ability - * @param simulated whether the associated ability call is simulated - * @returns whether a new berry was created - */ - createEatenBerry(pokemon: Pokemon, simulated: boolean): boolean { - const berriesEaten = pokemon.battleData.berriesEaten; - - if (!berriesEaten.length) { + if (!this.berriesUnderCap.length) { return false; } - if (simulated) { - return true; + // Clamp procChance to [0, 1]. Skip if didn't proc (less than pass) + const pass = Phaser.Math.RND.realInRange(0, 1); + return Phaser.Math.Clamp(this.procChance(pokemon), 0, 1) >= pass; + } + + override applyPostTurn(pokemon: Pokemon, passive: boolean, simulated: boolean, args: any[]): void { + if (!simulated) { + this.createEatenBerry(pokemon); } + } - const randomIdx = randSeedInt(berriesEaten.length); - const chosenBerryType = berriesEaten[randomIdx]; + /** + * Create a new berry chosen randomly from all berries the pokemon ate this battle + * @param pokemon - The {@linkcode Pokemon} with this ability + * @returns `true` if a new berry was created + */ + createEatenBerry(pokemon: Pokemon): boolean { + // Pick a random available berry to yoink + const randomIdx = randSeedInt(this.berriesUnderCap.length); + const chosenBerryType = this.berriesUnderCap[randomIdx]; + pokemon.battleData.berriesEaten.splice(randomIdx, 1); // Remove berry from memory const chosenBerry = new BerryModifierType(chosenBerryType); - berriesEaten.splice(randomIdx); // Remove berry from memory + // Add the randomly chosen berry or update the existing one const berryModifier = globalScene.findModifier( - (m) => m instanceof BerryModifier && m.berryType === chosenBerryType, + (m) => m instanceof BerryModifier && m.berryType === chosenBerryType && m.pokemonId == pokemon.id, pokemon.isPlayer() ) as BerryModifier | undefined; - if (!berryModifier) { + if (berryModifier) { + berryModifier.stackCount++ + } else { const newBerry = new BerryModifier(chosenBerry, pokemon.id, chosenBerryType, 1); if (pokemon.isPlayer()) { globalScene.addModifier(newBerry); } else { globalScene.addEnemyModifier(newBerry); } - } else if (berryModifier.stackCount < berryModifier.getMaxHeldItemCount(pokemon)) { - berryModifier.stackCount++; } - globalScene.queueMessage(i18next.t("abilityTriggers:postTurnLootCreateEatenBerry", { pokemonNameWithAffix: getPokemonNameWithAffix(pokemon), berryName: chosenBerry.name })); globalScene.updateModifiers(pokemon.isPlayer()); - + globalScene.queueMessage(i18next.t("abilityTriggers:postTurnLootCreateEatenBerry", { pokemonNameWithAffix: getPokemonNameWithAffix(pokemon), berryName: chosenBerry.name })); return true; } } /** - * Attribute used for {@linkcode Abilities.MOODY} + * Attribute to track and re-trigger last turn's berries at the end of the `BerryPhase`. + * Used by {@linkcode Abilities.CUD_CHEW}. +*/ +export class RepeatBerryNextTurnAbAttr extends PostTurnAbAttr { + /** + * @returns `true` if the pokemon ate anything last turn + */ + override canApply(pokemon: Pokemon, _passive: boolean, _simulated: boolean, _args: any[]): boolean { + // force ability popup for ability triggers on normal turns. + // Still not used if ability doesn't proc + this.showAbility = true; + return !!pokemon.summonData.berriesEatenLast.length; + } + + /** + * Cause this {@linkcode Pokemon} to regurgitate and eat all berries inside its `berriesEatenLast` array. + * Triggers a berry use animation, but does *not* count for other berry or item-related abilities. + * @param pokemon - The {@linkcode Pokemon} having a bad tummy ache + * @param _passive - N/A + * @param _simulated - N/A + * @param _cancelled - N/A + * @param _args - N/A + */ + override apply(pokemon: Pokemon, _passive: boolean, _simulated: boolean, _cancelled: BooleanHolder | null, _args: any[]): void { + globalScene.unshiftPhase( + new CommonAnimPhase(pokemon.getBattlerIndex(), pokemon.getBattlerIndex(), CommonAnim.USE_ITEM), + ); + + // Re-apply effects of all berries previously scarfed. + // This doesn't count as "eating" a berry (for unnerve/stuff cheeks/unburden) as no item is consumed. + for (const berryType of pokemon.summonData.berriesEatenLast) { + getBerryEffectFunc(berryType)(pokemon); + const bMod = new BerryModifier(new BerryModifierType(berryType), pokemon.id, berryType, 1); + globalScene.eventTarget.dispatchEvent(new BerryUsedEvent(bMod)); // trigger message + } + + // uncomment to make cheek pouch work with cud chew + // applyAbAttrs(HealFromBerryUseAbAttr, pokemon, new BooleanHolder(false)); + } + + /** + * @returns always `true` as we always want to move berries into summon data + */ + override canApplyPostTurn(pokemon: Pokemon, _passive: boolean, _simulated: boolean, _args: any[]): boolean { + this.showAbility = false; // don't show popup for turn end berry moving (should ideally be hidden) + return true; + } + + /** + * Move this {@linkcode Pokemon}'s `berriesEaten` array from `PokemonTurnData` + * into `PokemonSummonData` on turn end. + * Both arrays are cleared on switch. + * @param pokemon - The {@linkcode Pokemon} having a nice snack + * @param _passive - N/A + * @param _simulated - N/A + * @param _args - N/A + */ + override applyPostTurn(pokemon: Pokemon, _passive: boolean, _simulated: boolean, _args: any[]): void { + pokemon.summonData.berriesEatenLast = pokemon.turnData.berriesEaten; + } +} + +/** + * Attribute used for {@linkcode Abilities.MOODY} to randomly raise and lower stats at turn end. */ export class MoodyAbAttr extends PostTurnAbAttr { constructor() { @@ -4201,7 +4306,7 @@ export class PostTurnHurtIfSleepingAbAttr extends PostTurnAbAttr { } /** * Deals damage to all sleeping opponents equal to 1/8 of their max hp (min 1) - * @param pokemon Pokemon that has this ability + * @param pokemon {@linkcode Pokemon} with this ability * @param passive N/A * @param simulated `true` if applying in a simulated call. * @param args N/A @@ -4383,7 +4488,7 @@ export class PostItemLostAbAttr extends AbAttr { } /** - * Applies a Battler Tag to the Pokemon after it loses or consumes item + * Applies a Battler Tag to the Pokemon after it loses or consumes an item * @extends PostItemLostAbAttr */ export class PostItemLostApplyBattlerTagAbAttr extends PostItemLostAbAttr { @@ -4472,8 +4577,19 @@ export class DoubleBerryEffectAbAttr extends AbAttr { } } +/** + * Attribute to prevent opposing berry use while on the field. + * Used by {@linkcode Abilities.UNNERVE}, {@linkcode Abilities.AS_ONE_GLASTRIER} and {@linkcode Abilities.AS_ONE_SPECTRIER} + */ export class PreventBerryUseAbAttr extends AbAttr { - override apply(pokemon: Pokemon, passive: boolean, simulated: boolean, cancelled: BooleanHolder, args: any[]): void { + /** + * Prevent use of opposing berries. + * @param _pokemon - Unused + * @param _passive - Unused + * @param _simulated - Unused + * @param cancelled - {@linkcode BooleanHolder} containing whether to block berry use + */ + override apply(_pokemon: Pokemon, _passive: boolean, _simulated: boolean, cancelled: BooleanHolder): void { cancelled.value = true; } } @@ -4495,17 +4611,19 @@ export class HealFromBerryUseAbAttr extends AbAttr { } override apply(pokemon: Pokemon, passive: boolean, simulated: boolean, ...args: [BooleanHolder, any[]]): void { + if (simulated) { + return; + } + const { name: abilityName } = passive ? pokemon.getPassiveAbility() : pokemon.getAbility(); - if (!simulated) { - globalScene.unshiftPhase( - new PokemonHealPhase( - pokemon.getBattlerIndex(), - toDmgValue(pokemon.getMaxHp() * this.healPercent), - i18next.t("abilityTriggers:healFromBerryUse", { pokemonNameWithAffix: getPokemonNameWithAffix(pokemon), abilityName }), - true + globalScene.unshiftPhase( + new PokemonHealPhase( + pokemon.getBattlerIndex(), + toDmgValue(pokemon.getMaxHp() * this.healPercent), + i18next.t("abilityTriggers:healFromBerryUse", { pokemonNameWithAffix: getPokemonNameWithAffix(pokemon), abilityName }), + true ) ); - } } } @@ -4537,7 +4655,8 @@ export class CheckTrappedAbAttr extends AbAttr { simulated: boolean, trapped: BooleanHolder, otherPokemon: Pokemon, - args: any[]): boolean { + args: any[], + ): boolean { return true; } @@ -5060,7 +5179,7 @@ export class PostSummonStatStageChangeOnArenaAbAttr extends PostSummonStatStageC /** * Takes no damage from the first hit of a damaging move. * This is used in the Disguise and Ice Face abilities. - * + * * Does not apply to a user's substitute * @extends ReceivedMoveDamageMultiplierAbAttr */ @@ -5145,15 +5264,14 @@ export class IllusionPreSummonAbAttr extends PreSummonAbAttr { } override canApplyPreSummon(pokemon: Pokemon, passive: boolean, args: any[]): boolean { - pokemon.initSummondata() - if(pokemon.hasTrainer()){ + if (pokemon.hasTrainer()) { const party: Pokemon[] = (pokemon.isPlayer() ? globalScene.getPlayerParty() : globalScene.getEnemyParty()).filter(p => p.isAllowedInBattle()); const lastPokemon: Pokemon = party.filter(p => p !==pokemon).at(-1) || pokemon; const speciesId = lastPokemon.species.speciesId; // If the last conscious Pokémon in the party is a Terastallized Ogerpon or Terapagos, Illusion will not activate. // Illusion will also not activate if the Pokémon with Illusion is Terastallized and the last Pokémon in the party is Ogerpon or Terapagos. - if ( + if ( lastPokemon === pokemon || ((speciesId === Species.OGERPON || speciesId === Species.TERAPAGOS) && (lastPokemon.isTerastallized || pokemon.isTerastallized)) ) { @@ -5190,7 +5308,7 @@ export class PostDefendIllusionBreakAbAttr extends PostDefendAbAttr { override canApplyPostDefend(pokemon: Pokemon, passive: boolean, simulated: boolean, attacker: Pokemon, move: Move, hitResult: HitResult, args: any[]): boolean { const breakIllusion: HitResult[] = [ HitResult.EFFECTIVE, HitResult.SUPER_EFFECTIVE, HitResult.NOT_VERY_EFFECTIVE, HitResult.ONE_HIT_KO ]; - return breakIllusion.includes(hitResult) && !!pokemon.summonData?.illusion + return breakIllusion.includes(hitResult) && !!pokemon.summonData.illusion } } @@ -5411,11 +5529,8 @@ function applySingleAbAttrs( globalScene.queueAbilityDisplay(pokemon, passive, false); } - if (pokemon.summonData && !pokemon.summonData.abilitiesApplied.includes(ability.id)) { - pokemon.summonData.abilitiesApplied.push(ability.id); - } - if (pokemon.battleData && !simulated && !pokemon.battleData.abilitiesApplied.includes(ability.id)) { - pokemon.battleData.abilitiesApplied.push(ability.id); + if (!simulated) { + pokemon.waveData.abilitiesApplied.add(ability.id); } globalScene.clearPhaseQueueSplice(); @@ -5606,6 +5721,7 @@ export class PostDamageForceSwitchAbAttr extends PostDamageAbAttr { this.hpRatio = hpRatio; } + // TODO: Refactor to use more early returns public override canApplyPostDamage( pokemon: Pokemon, damage: number, @@ -5633,6 +5749,7 @@ export class PostDamageForceSwitchAbAttr extends PostDamageAbAttr { if (fordbiddenDefendingMoves.includes(enemyLastMoveUsed.move) || enemyLastMoveUsed.move === Moves.SKY_DROP && enemyLastMoveUsed.result === MoveResult.OTHER) { return false; // Will not activate if the Pokémon's HP falls below half by a move affected by Sheer Force. + // TODO: Make this use the sheer force disable condition } else if (allMoves[enemyLastMoveUsed.move].chance >= 0 && source.hasAbility(Abilities.SHEER_FORCE)) { return false; // Activate only after the last hit of multistrike moves @@ -6295,17 +6412,14 @@ export function applyOnLoseAbAttrs(pokemon: Pokemon, passive = false, simulated /** * Sets the ability of a Pokémon as revealed. - * * @param pokemon - The Pokémon whose ability is being revealed. */ function setAbilityRevealed(pokemon: Pokemon): void { - if (pokemon.battleData) { - pokemon.battleData.abilityRevealed = true; - } + pokemon.waveData.abilityRevealed = true; } /** - * Returns the Pokemon with weather-based forms + * Returns all Pokemon on field with weather-based forms */ function getPokemonWithWeatherBasedForms() { return globalScene.getField(true).filter(p => @@ -6625,9 +6739,7 @@ export function initAbilities() { .conditionalAttr(pokemon => pokemon.status ? pokemon.status.effect === StatusEffect.PARALYSIS : false, StatMultiplierAbAttr, Stat.SPD, 2) .conditionalAttr(pokemon => !!pokemon.status || pokemon.hasAbility(Abilities.COMATOSE), StatMultiplierAbAttr, Stat.SPD, 1.5), new Ability(Abilities.NORMALIZE, 4) - .attr(MoveTypeChangeAbAttr, PokemonType.NORMAL, 1.2, (user, target, move) => { - return ![ Moves.MULTI_ATTACK, Moves.REVELATION_DANCE, Moves.TERRAIN_PULSE, Moves.HIDDEN_POWER, Moves.WEATHER_BALL, Moves.NATURAL_GIFT, Moves.JUDGMENT, Moves.TECHNO_BLAST ].includes(move.id); - }), + .attr(MoveTypeChangeAbAttr, PokemonType.NORMAL, 1.2), new Ability(Abilities.SNIPER, 4) .attr(MultCritAbAttr, 1.5), new Ability(Abilities.MAGIC_GUARD, 4) @@ -6755,8 +6867,7 @@ export function initAbilities() { .attr(MovePowerBoostAbAttr, (user, target, move) => move.category === MoveCategory.SPECIAL && user?.status?.effect === StatusEffect.BURN, 1.5), new Ability(Abilities.HARVEST, 5) .attr( - PostTurnLootAbAttr, - "EATEN_BERRIES", + PostTurnRestoreBerryAbAttr, /** Rate is doubled when under sun {@link https://dex.pokemonshowdown.com/abilities/harvest} */ (pokemon) => 0.5 * (getWeatherCondition(WeatherType.SUNNY, WeatherType.HARSH_SUN)(pokemon) ? 2 : 1) ) @@ -6795,6 +6906,8 @@ export function initAbilities() { .attr(IllusionBreakAbAttr) // The Pokemon loses its illusion when damaged by a move .attr(PostDefendIllusionBreakAbAttr, true) + // Disable Illusion in fusions + .attr(NoFusionAbilityAbAttr) // Illusion is available again after a battle .conditionalAttr((pokemon) => pokemon.isAllowedInBattle(), IllusionPostBattleAbAttr, false) .uncopiable() @@ -6878,7 +6991,7 @@ export function initAbilities() { .attr(HealFromBerryUseAbAttr, 1 / 3), new Ability(Abilities.PROTEAN, 6) .attr(PokemonTypeChangeAbAttr), - //.condition((p) => !p.summonData?.abilitiesApplied.includes(Abilities.PROTEAN)), //Gen 9 Implementation + //.condition((p) => !p.summonData.abilitiesApplied.includes(Abilities.PROTEAN)), //Gen 9 Implementation new Ability(Abilities.FUR_COAT, 6) .attr(ReceivedMoveDamageMultiplierAbAttr, (target, user, move) => move.category === MoveCategory.PHYSICAL, 0.5) .ignorable(), @@ -6892,7 +7005,7 @@ export function initAbilities() { new Ability(Abilities.STRONG_JAW, 6) .attr(MovePowerBoostAbAttr, (user, target, move) => move.hasFlag(MoveFlags.BITING_MOVE), 1.5), new Ability(Abilities.REFRIGERATE, 6) - .attr(MoveTypeChangeAbAttr, PokemonType.ICE, 1.2, (user, target, move) => move.type === PokemonType.NORMAL && !move.hasAttr(VariableMoveTypeAttr)), + .attr(MoveTypeChangeAbAttr, PokemonType.ICE, 1.2, (user, target, move) => move.type === PokemonType.NORMAL), new Ability(Abilities.SWEET_VEIL, 6) .attr(UserFieldStatusEffectImmunityAbAttr, StatusEffect.SLEEP) .attr(PostSummonUserFieldRemoveStatusEffectAbAttr, StatusEffect.SLEEP) @@ -6916,11 +7029,11 @@ export function initAbilities() { new Ability(Abilities.TOUGH_CLAWS, 6) .attr(MovePowerBoostAbAttr, (user, target, move) => move.hasFlag(MoveFlags.MAKES_CONTACT), 1.3), new Ability(Abilities.PIXILATE, 6) - .attr(MoveTypeChangeAbAttr, PokemonType.FAIRY, 1.2, (user, target, move) => move.type === PokemonType.NORMAL && !move.hasAttr(VariableMoveTypeAttr)), + .attr(MoveTypeChangeAbAttr, PokemonType.FAIRY, 1.2, (user, target, move) => move.type === PokemonType.NORMAL), new Ability(Abilities.GOOEY, 6) .attr(PostDefendStatStageChangeAbAttr, (target, user, move) => move.hasFlag(MoveFlags.MAKES_CONTACT), Stat.SPD, -1, false), new Ability(Abilities.AERILATE, 6) - .attr(MoveTypeChangeAbAttr, PokemonType.FLYING, 1.2, (user, target, move) => move.type === PokemonType.NORMAL && !move.hasAttr(VariableMoveTypeAttr)), + .attr(MoveTypeChangeAbAttr, PokemonType.FLYING, 1.2, (user, target, move) => move.type === PokemonType.NORMAL), new Ability(Abilities.PARENTAL_BOND, 6) .attr(AddSecondStrikeAbAttr, 0.25), new Ability(Abilities.DARK_AURA, 6) @@ -6997,7 +7110,7 @@ export function initAbilities() { new Ability(Abilities.TRIAGE, 7) .attr(ChangeMovePriorityAbAttr, (pokemon, move) => move.hasFlag(MoveFlags.TRIAGE_MOVE), 3), new Ability(Abilities.GALVANIZE, 7) - .attr(MoveTypeChangeAbAttr, PokemonType.ELECTRIC, 1.2, (user, target, move) => move.type === PokemonType.NORMAL && !move.hasAttr(VariableMoveTypeAttr)), + .attr(MoveTypeChangeAbAttr, PokemonType.ELECTRIC, 1.2, (_user, _target, move) => move.type === PokemonType.NORMAL), new Ability(Abilities.SURGE_SURFER, 7) .conditionalAttr(getTerrainCondition(TerrainType.ELECTRIC), StatMultiplierAbAttr, Stat.SPD, 2), new Ability(Abilities.SCHOOLING, 7) @@ -7124,7 +7237,7 @@ export function initAbilities() { .attr(PostSummonStatStageChangeAbAttr, [ Stat.DEF ], 1, true), new Ability(Abilities.LIBERO, 8) .attr(PokemonTypeChangeAbAttr), - //.condition((p) => !p.summonData?.abilitiesApplied.includes(Abilities.LIBERO)), //Gen 9 Implementation + //.condition((p) => !p.summonData.abilitiesApplied.includes(Abilities.LIBERO)), //Gen 9 Implementation new Ability(Abilities.BALL_FETCH, 8) .attr(FetchBallAbAttr) .condition(getOncePerBattleCondition(Abilities.BALL_FETCH)), @@ -7339,7 +7452,7 @@ export function initAbilities() { new Ability(Abilities.OPPORTUNIST, 9) .attr(StatStageChangeCopyAbAttr), new Ability(Abilities.CUD_CHEW, 9) - .unimplemented(), + .attr(RepeatBerryNextTurnAbAttr), new Ability(Abilities.SHARPNESS, 9) .attr(MovePowerBoostAbAttr, (user, target, move) => move.hasFlag(MoveFlags.SLICING_MOVE), 1.5), new Ability(Abilities.SUPREME_OVERLORD, 9) diff --git a/src/data/arena-tag.ts b/src/data/arena-tag.ts index ff9e4068292..19c94a8a045 100644 --- a/src/data/arena-tag.ts +++ b/src/data/arena-tag.ts @@ -768,32 +768,27 @@ class SpikesTag extends ArenaTrapTag { } override activateTrap(pokemon: Pokemon, simulated: boolean): boolean { - if (pokemon.isGrounded()) { - const cancelled = new BooleanHolder(false); - applyAbAttrs(BlockNonDirectDamageAbAttr, pokemon, cancelled); - - if (simulated) { - return !cancelled.value; - } - - if (!cancelled.value) { - const damageHpRatio = 1 / (10 - 2 * this.layers); - const damage = toDmgValue(pokemon.getMaxHp() * damageHpRatio); - - globalScene.queueMessage( - i18next.t("arenaTag:spikesActivateTrap", { - pokemonNameWithAffix: getPokemonNameWithAffix(pokemon), - }), - ); - pokemon.damageAndUpdate(damage, { result: HitResult.INDIRECT }); - if (pokemon.turnData) { - pokemon.turnData.damageTaken += damage; - } - return true; - } + if (!pokemon.isGrounded()) { + return false; } - return false; + const cancelled = new BooleanHolder(false); + applyAbAttrs(BlockNonDirectDamageAbAttr, pokemon, cancelled); + if (simulated || cancelled.value) { + return !cancelled.value; + } + + const damageHpRatio = 1 / (10 - 2 * this.layers); + const damage = toDmgValue(pokemon.getMaxHp() * damageHpRatio); + + globalScene.queueMessage( + i18next.t("arenaTag:spikesActivateTrap", { + pokemonNameWithAffix: getPokemonNameWithAffix(pokemon), + }), + ); + pokemon.damageAndUpdate(damage, { result: HitResult.INDIRECT }); + pokemon.turnData.damageTaken += damage; + return true; } } @@ -962,31 +957,28 @@ class StealthRockTag extends ArenaTrapTag { override activateTrap(pokemon: Pokemon, simulated: boolean): boolean { const cancelled = new BooleanHolder(false); applyAbAttrs(BlockNonDirectDamageAbAttr, pokemon, cancelled); - if (cancelled.value) { return false; } const damageHpRatio = this.getDamageHpRatio(pokemon); + if (!damageHpRatio) { + return false; + } - if (damageHpRatio) { - if (simulated) { - return true; - } - const damage = toDmgValue(pokemon.getMaxHp() * damageHpRatio); - globalScene.queueMessage( - i18next.t("arenaTag:stealthRockActivateTrap", { - pokemonNameWithAffix: getPokemonNameWithAffix(pokemon), - }), - ); - pokemon.damageAndUpdate(damage, { result: HitResult.INDIRECT }); - if (pokemon.turnData) { - pokemon.turnData.damageTaken += damage; - } + if (simulated) { return true; } - return false; + const damage = toDmgValue(pokemon.getMaxHp() * damageHpRatio); + globalScene.queueMessage( + i18next.t("arenaTag:stealthRockActivateTrap", { + pokemonNameWithAffix: getPokemonNameWithAffix(pokemon), + }), + ); + pokemon.damageAndUpdate(damage, { result: HitResult.INDIRECT }); + pokemon.turnData.damageTaken += damage; + return true; } getMatchupScoreMultiplier(pokemon: Pokemon): number { diff --git a/src/data/balance/egg-moves.ts b/src/data/balance/egg-moves.ts index b0e8d5160fa..289ac60bcc5 100644 --- a/src/data/balance/egg-moves.ts +++ b/src/data/balance/egg-moves.ts @@ -12,7 +12,7 @@ export const speciesEggMoves = { [Species.WEEDLE]: [ Moves.THOUSAND_ARROWS, Moves.NOXIOUS_TORQUE, Moves.ATTACK_ORDER, Moves.VICTORY_DANCE ], [Species.PIDGEY]: [ Moves.BLEAKWIND_STORM, Moves.SANDSEAR_STORM, Moves.CALM_MIND, Moves.BOOMBURST ], [Species.RATTATA]: [ Moves.HYPER_FANG, Moves.PSYCHIC_FANGS, Moves.FIRE_FANG, Moves.EXTREME_SPEED ], - [Species.SPEAROW]: [ Moves.FLOATY_FALL, Moves.HYPER_DRILL, Moves.TIDY_UP, Moves.TRIPLE_ARROWS ], + [Species.SPEAROW]: [ Moves.FLOATY_FALL, Moves.EXTREME_SPEED, Moves.KNOCK_OFF, Moves.TRIPLE_ARROWS ], [Species.EKANS]: [ Moves.NOXIOUS_TORQUE, Moves.DRAGON_DANCE, Moves.SLACK_OFF, Moves.SHED_TAIL ], [Species.SANDSHREW]: [ Moves.HIGH_HORSEPOWER, Moves.DIRE_CLAW, Moves.SHORE_UP, Moves.MIGHTY_CLEAVE ], [Species.NIDORAN_F]: [ Moves.CALM_MIND, Moves.MOONLIGHT, Moves.MALIGNANT_CHAIN, Moves.SANDSEAR_STORM ], @@ -53,7 +53,7 @@ export const speciesEggMoves = { [Species.RHYHORN]: [ Moves.SHORE_UP, Moves.ICE_HAMMER, Moves.ACCELEROCK, Moves.HEAD_SMASH ], [Species.TANGELA]: [ Moves.NATURES_MADNESS, Moves.SNAP_TRAP, Moves.PARTING_SHOT, Moves.SAPPY_SEED ], [Species.KANGASKHAN]: [ Moves.POWER_UP_PUNCH, Moves.TRAILBLAZE, Moves.COVET, Moves.SEISMIC_TOSS ], - [Species.HORSEA]: [ Moves.SNIPE_SHOT, Moves.FROST_BREATH, Moves.SLUDGE_BOMB, Moves.CLANGING_SCALES ], + [Species.HORSEA]: [ Moves.SNIPE_SHOT, Moves.TAKE_HEART, Moves.SHELL_SIDE_ARM, Moves.DRAGON_ENERGY ], [Species.GOLDEEN]: [ Moves.GLACIAL_LANCE, Moves.SUPERCELL_SLAM, Moves.DRAGON_DANCE, Moves.FISHIOUS_REND ], [Species.STARYU]: [ Moves.CALM_MIND, Moves.BOUNCY_BUBBLE, Moves.MOONBLAST, Moves.MYSTICAL_POWER ], [Species.SCYTHER]: [ Moves.MIGHTY_CLEAVE, Moves.GEAR_GRIND, Moves.STORM_THROW, Moves.BITTER_BLADE ], @@ -66,7 +66,7 @@ export const speciesEggMoves = { [Species.PORYGON]: [ Moves.THUNDERCLAP, Moves.AURA_SPHERE, Moves.FLAMETHROWER, Moves.TECHNO_BLAST ], [Species.OMANYTE]: [ Moves.FREEZE_DRY, Moves.GIGA_DRAIN, Moves.POWER_GEM, Moves.STEAM_ERUPTION ], [Species.KABUTO]: [ Moves.CEASELESS_EDGE, Moves.HIGH_HORSEPOWER, Moves.CRABHAMMER, Moves.MIGHTY_CLEAVE ], - [Species.AERODACTYL]: [ Moves.FLOATY_FALL, Moves.FLARE_BLITZ, Moves.SWORDS_DANCE, Moves.MIGHTY_CLEAVE ], + [Species.AERODACTYL]: [ Moves.FLOATY_FALL, Moves.HIGH_HORSEPOWER, Moves.STONE_AXE, Moves.SWORDS_DANCE ], [Species.ARTICUNO]: [ Moves.EARTH_POWER, Moves.CALM_MIND, Moves.AURORA_VEIL, Moves.AEROBLAST ], [Species.ZAPDOS]: [ Moves.BLEAKWIND_STORM, Moves.CALM_MIND, Moves.SANDSEAR_STORM, Moves.ELECTRO_SHOT ], [Species.MOLTRES]: [ Moves.EARTH_POWER, Moves.CALM_MIND, Moves.AEROBLAST, Moves.TORCH_SONG ], @@ -78,7 +78,7 @@ export const speciesEggMoves = { [Species.CYNDAQUIL]: [ Moves.NASTY_PLOT, Moves.EARTH_POWER, Moves.FIERY_DANCE, Moves.ELECTRO_DRIFT ], [Species.TOTODILE]: [ Moves.THUNDER_PUNCH, Moves.DRAGON_DANCE, Moves.PLAY_ROUGH, Moves.SURGING_STRIKES ], [Species.SENTRET]: [ Moves.TIDY_UP, Moves.FAKE_OUT, Moves.NUZZLE, Moves.EXTREME_SPEED ], - [Species.HOOTHOOT]: [ Moves.CALM_MIND, Moves.ESPER_WING, Moves.AEROBLAST, Moves.BOOMBURST ], + [Species.HOOTHOOT]: [ Moves.TAKE_HEART, Moves.ESPER_WING, Moves.AEROBLAST, Moves.BOOMBURST ], [Species.LEDYBA]: [ Moves.POLLEN_PUFF, Moves.MAT_BLOCK, Moves.PARTING_SHOT, Moves.SPORE ], [Species.SPINARAK]: [ Moves.PARTING_SHOT, Moves.ATTACK_ORDER, Moves.GASTRO_ACID, Moves.STRENGTH_SAP ], [Species.CHINCHOU]: [ Moves.THUNDERCLAP, Moves.BOUNCY_BUBBLE, Moves.THUNDER_CAGE, Moves.TAIL_GLOW ], @@ -166,7 +166,7 @@ export const speciesEggMoves = { [Species.SPOINK]: [ Moves.AURA_SPHERE, Moves.MILK_DRINK, Moves.EXPANDING_FORCE, Moves.TAIL_GLOW ], [Species.SPINDA]: [ Moves.SUPERPOWER, Moves.SLACK_OFF, Moves.FLEUR_CANNON, Moves.V_CREATE ], [Species.TRAPINCH]: [ Moves.FIRE_LASH, Moves.DRAGON_DARTS, Moves.THOUSAND_ARROWS, Moves.DRAGON_ENERGY ], - [Species.CACNEA]: [ Moves.EARTH_POWER, Moves.CEASELESS_EDGE, Moves.NIGHT_DAZE, Moves.SAPPY_SEED ], + [Species.CACNEA]: [ Moves.EARTH_POWER, Moves.CEASELESS_EDGE, Moves.NIGHT_DAZE, Moves.IVY_CUDGEL ], [Species.SWABLU]: [ Moves.ROOST, Moves.NASTY_PLOT, Moves.FLOATY_FALL, Moves.BOOMBURST ], [Species.ZANGOOSE]: [ Moves.FACADE, Moves.HIGH_HORSEPOWER, Moves.EXTREME_SPEED, Moves.TIDY_UP ], [Species.SEVIPER]: [ Moves.ICE_BEAM, Moves.BITTER_BLADE, Moves.SUCKER_PUNCH, Moves.NO_RETREAT ], @@ -222,7 +222,7 @@ export const speciesEggMoves = { [Species.DRIFLOON]: [ Moves.PSYCHO_SHIFT, Moves.MIND_BLOWN, Moves.CALM_MIND, Moves.OBLIVION_WING ], [Species.BUNEARY]: [ Moves.TRIPLE_AXEL, Moves.EXTREME_SPEED, Moves.THUNDEROUS_KICK, Moves.SWORDS_DANCE ], [Species.GLAMEOW]: [ Moves.PARTING_SHOT, Moves.HIGH_HORSEPOWER, Moves.SWORDS_DANCE, Moves.EXTREME_SPEED ], - [Species.CHINGLING]: [ Moves.BUZZY_BUZZ, Moves.EERIE_SPELL, Moves.TORCH_SONG, Moves.BOOMBURST ], + [Species.CHINGLING]: [ Moves.ALLURING_VOICE, Moves.EERIE_SPELL, Moves.TORCH_SONG, Moves.BOOMBURST ], [Species.STUNKY]: [ Moves.CEASELESS_EDGE, Moves.FIRE_LASH, Moves.RECOVER, Moves.DIRE_CLAW ], [Species.BRONZOR]: [ Moves.RECOVER, Moves.TACHYON_CUTTER, Moves.GLARE, Moves.LUMINA_CRASH ], [Species.BONSLY]: [ Moves.ACCELEROCK, Moves.SWORDS_DANCE, Moves.STRENGTH_SAP, Moves.SAPPY_SEED ], @@ -246,7 +246,7 @@ export const speciesEggMoves = { [Species.AZELF]: [ Moves.PSYSTRIKE, Moves.AURA_SPHERE, Moves.ICE_BEAM, Moves.TAIL_GLOW ], [Species.DIALGA]: [ Moves.CORE_ENFORCER, Moves.TAKE_HEART, Moves.RECOVER, Moves.MAKE_IT_RAIN ], [Species.PALKIA]: [ Moves.MALIGNANT_CHAIN, Moves.TAKE_HEART, Moves.RECOVER, Moves.ORIGIN_PULSE ], - [Species.HEATRAN]: [ Moves.MATCHA_GOTCHA, Moves.RECOVER, Moves.ERUPTION, Moves.TACHYON_CUTTER ], + [Species.HEATRAN]: [ Moves.ENERGY_BALL, Moves.RECOVER, Moves.ERUPTION, Moves.TACHYON_CUTTER ], [Species.REGIGIGAS]: [ Moves.SKILL_SWAP, Moves.RECOVER, Moves.EXTREME_SPEED, Moves.GIGATON_HAMMER ], [Species.GIRATINA]: [ Moves.DRAGON_DANCE, Moves.SPECTRAL_THIEF, Moves.RECOVER, Moves.COLLISION_COURSE ], [Species.CRESSELIA]: [ Moves.COSMIC_POWER, Moves.BODY_PRESS, Moves.SIZZLY_SLIDE, Moves.LUMINA_CRASH ], @@ -284,10 +284,10 @@ export const speciesEggMoves = { [Species.BASCULIN]: [ Moves.LAST_RESPECTS, Moves.CLOSE_COMBAT, Moves.SPLISHY_SPLASH, Moves.NO_RETREAT ], [Species.SANDILE]: [ Moves.DIRE_CLAW, Moves.SUCKER_PUNCH, Moves.FIRE_LASH, Moves.HEADLONG_RUSH ], [Species.DARUMAKA]: [ Moves.DRAIN_PUNCH, Moves.ZIPPY_ZAP, Moves.HEADLONG_RUSH, Moves.PYRO_BALL ], - [Species.MARACTUS]: [ Moves.EARTH_POWER, Moves.QUIVER_DANCE, Moves.FIERY_DANCE, Moves.SEED_FLARE ], + [Species.MARACTUS]: [ Moves.EARTH_POWER, Moves.SIZZLY_SLIDE, Moves.FIERY_DANCE, Moves.QUIVER_DANCE ], [Species.DWEBBLE]: [ Moves.CRABHAMMER, Moves.STONE_AXE, Moves.LEECH_LIFE, Moves.MIGHTY_CLEAVE ], [Species.SCRAGGY]: [ Moves.SUCKER_PUNCH, Moves.BULLET_PUNCH, Moves.NOXIOUS_TORQUE, Moves.VICTORY_DANCE ], - [Species.SIGILYPH]: [ Moves.MOONBLAST, Moves.CALM_MIND, Moves.ESPER_WING, Moves.OBLIVION_WING ], + [Species.SIGILYPH]: [ Moves.MOONBLAST, Moves.PSYCHO_SHIFT, Moves.ESPER_WING, Moves.OBLIVION_WING ], [Species.YAMASK]: [ Moves.STRENGTH_SAP, Moves.GLARE, Moves.AURA_SPHERE, Moves.ASTRAL_BARRAGE ], [Species.TIRTOUGA]: [ Moves.ICE_SPINNER, Moves.AQUA_STEP, Moves.SHORE_UP, Moves.MIGHTY_CLEAVE ], [Species.ARCHEN]: [ Moves.ROOST, Moves.EARTHQUAKE, Moves.FLOATY_FALL, Moves.MIGHTY_CLEAVE ], @@ -319,7 +319,7 @@ export const speciesEggMoves = { [Species.DRUDDIGON]: [ Moves.FIRE_LASH, Moves.MORNING_SUN, Moves.DRAGON_DARTS, Moves.CLANGOROUS_SOUL ], [Species.GOLETT]: [ Moves.SHIFT_GEAR, Moves.DRAIN_PUNCH, Moves.HEADLONG_RUSH, Moves.RAGE_FIST ], [Species.PAWNIARD]: [ Moves.SUCKER_PUNCH, Moves.CEASELESS_EDGE, Moves.BITTER_BLADE, Moves.LAST_RESPECTS ], - [Species.BOUFFALANT]: [ Moves.SLACK_OFF, Moves.HIGH_JUMP_KICK, Moves.HEAD_SMASH, Moves.FLARE_BLITZ ], + [Species.BOUFFALANT]: [ Moves.HORN_LEECH, Moves.HIGH_JUMP_KICK, Moves.HEAD_SMASH, Moves.FLARE_BLITZ ], [Species.RUFFLET]: [ Moves.FLOATY_FALL, Moves.AURA_SPHERE, Moves.NO_RETREAT, Moves.BOLT_BEAK ], [Species.VULLABY]: [ Moves.FOUL_PLAY, Moves.BODY_PRESS, Moves.ROOST, Moves.RUINATION ], [Species.HEATMOR]: [ Moves.EARTH_POWER, Moves.OVERHEAT, Moves.THUNDERBOLT, Moves.V_CREATE ], @@ -360,7 +360,7 @@ export const speciesEggMoves = { [Species.CLAUNCHER]: [ Moves.SHELL_SMASH, Moves.ARMOR_CANNON, Moves.ENERGY_BALL, Moves.ORIGIN_PULSE ], [Species.HELIOPTILE]: [ Moves.WEATHER_BALL, Moves.HYDRO_STEAM, Moves.EARTH_POWER, Moves.BOOMBURST ], [Species.TYRUNT]: [ Moves.DRAGON_HAMMER, Moves.FLARE_BLITZ, Moves.VOLT_TACKLE, Moves.SHIFT_GEAR ], - [Species.AMAURA]: [ Moves.RECOVER, Moves.WRING_OUT, Moves.POWER_GEM, Moves.GEOMANCY ], + [Species.AMAURA]: [ Moves.RECOVER, Moves.TERA_STARSTORM, Moves.POWER_GEM, Moves.GEOMANCY ], [Species.HAWLUCHA]: [ Moves.TRIPLE_AXEL, Moves.HIGH_HORSEPOWER, Moves.FLOATY_FALL, Moves.WICKED_BLOW ], [Species.DEDENNE]: [ Moves.BOOMBURST, Moves.FAKE_OUT, Moves.NASTY_PLOT, Moves.REVIVAL_BLESSING ], [Species.CARBINK]: [ Moves.BODY_PRESS, Moves.SHORE_UP, Moves.SPARKLY_SWIRL, Moves.DIAMOND_STORM ], @@ -436,12 +436,12 @@ export const speciesEggMoves = { [Species.ALOLA_RATTATA]: [ Moves.FALSE_SURRENDER, Moves.PSYCHIC_FANGS, Moves.COIL, Moves.EXTREME_SPEED ], [Species.ALOLA_SANDSHREW]: [ Moves.SPIKY_SHIELD, Moves.LIQUIDATION, Moves.SHIFT_GEAR, Moves.GLACIAL_LANCE ], [Species.ALOLA_VULPIX]: [ Moves.MOONBLAST, Moves.GLARE, Moves.MYSTICAL_FIRE, Moves.REVIVAL_BLESSING ], - [Species.ALOLA_DIGLETT]: [ Moves.THOUSAND_WAVES, Moves.SWORDS_DANCE, Moves.TRIPLE_DIVE, Moves.MOUNTAIN_GALE ], + [Species.ALOLA_DIGLETT]: [ Moves.THOUSAND_WAVES, Moves.SWORDS_DANCE, Moves.TRIPLE_DIVE, Moves.PYRO_BALL ], [Species.ALOLA_MEOWTH]: [ Moves.BADDY_BAD, Moves.BUZZY_BUZZ, Moves.PARTING_SHOT, Moves.MAKE_IT_RAIN ], [Species.ALOLA_GEODUDE]: [ Moves.THOUSAND_WAVES, Moves.BULK_UP, Moves.STONE_AXE, Moves.EXTREME_SPEED ], [Species.ALOLA_GRIMER]: [ Moves.SUCKER_PUNCH, Moves.BARB_BARRAGE, Moves.RECOVER, Moves.SURGING_STRIKES ], - [Species.GROOKEY]: [ Moves.HIGH_HORSEPOWER, Moves.CLANGOROUS_SOUL, Moves.GRASSY_GLIDE, Moves.SAPPY_SEED ], + [Species.GROOKEY]: [ Moves.ROCK_SLIDE, Moves.PLAY_ROUGH, Moves.GRASSY_GLIDE, Moves.CLANGOROUS_SOUL ], [Species.SCORBUNNY]: [ Moves.EXTREME_SPEED, Moves.HIGH_JUMP_KICK, Moves.TRIPLE_AXEL, Moves.BOLT_STRIKE ], [Species.SOBBLE]: [ Moves.AEROBLAST, Moves.FROST_BREATH, Moves.ENERGY_BALL, Moves.NASTY_PLOT ], [Species.SKWOVET]: [ Moves.SUCKER_PUNCH, Moves.SLACK_OFF, Moves.COIL, Moves.POPULATION_BOMB ], @@ -457,7 +457,7 @@ export const speciesEggMoves = { [Species.SILICOBRA]: [ Moves.SHORE_UP, Moves.SHED_TAIL, Moves.MOUNTAIN_GALE, Moves.THOUSAND_ARROWS ], [Species.CRAMORANT]: [ Moves.APPLE_ACID, Moves.SURF, Moves.BOLT_BEAK, Moves.OBLIVION_WING ], [Species.ARROKUDA]: [ Moves.SUPERCELL_SLAM, Moves.TRIPLE_DIVE, Moves.ICE_SPINNER, Moves.SWORDS_DANCE ], - [Species.TOXEL]: [ Moves.NASTY_PLOT, Moves.BUG_BUZZ, Moves.SPARKLING_ARIA, Moves.TORCH_SONG ], + [Species.TOXEL]: [ Moves.BUZZY_BUZZ, Moves.BUG_BUZZ, Moves.SPARKLING_ARIA, Moves.TORCH_SONG ], [Species.SIZZLIPEDE]: [ Moves.BURNING_BULWARK, Moves.ZING_ZAP, Moves.FIRST_IMPRESSION, Moves.BITTER_BLADE ], [Species.CLOBBOPUS]: [ Moves.STORM_THROW, Moves.JET_PUNCH, Moves.MACH_PUNCH, Moves.SURGING_STRIKES ], [Species.SINISTEA]: [ Moves.SPLISHY_SPLASH, Moves.MATCHA_GOTCHA, Moves.DRAINING_KISS, Moves.MOONGEIST_BEAM ], diff --git a/src/data/balance/passives.ts b/src/data/balance/passives.ts index 624e242944b..73310cc2116 100644 --- a/src/data/balance/passives.ts +++ b/src/data/balance/passives.ts @@ -143,7 +143,7 @@ export const starterPassiveAbilities: StarterPassiveAbilities = { [Species.TAUROS]: { 0: Abilities.STAMINA }, [Species.MAGIKARP]: { 0: Abilities.MULTISCALE }, [Species.GYARADOS]: { 0: Abilities.MULTISCALE, 1: Abilities.MULTISCALE }, - [Species.LAPRAS]: { 0: Abilities.LIGHTNING_ROD, 1: Abilities.FILTER }, + [Species.LAPRAS]: { 0: Abilities.FILTER, 1: Abilities.FILTER }, [Species.DITTO]: { 0: Abilities.ADAPTABILITY }, [Species.EEVEE]: { 0: Abilities.PICKUP, 1: Abilities.PICKUP, 2: Abilities.FLUFFY }, [Species.VAPOREON]: { 0: Abilities.REGENERATOR }, @@ -161,7 +161,7 @@ export const starterPassiveAbilities: StarterPassiveAbilities = { [Species.OMASTAR]: { 0: Abilities.STURDY }, [Species.KABUTO]: { 0: Abilities.TOUGH_CLAWS }, [Species.KABUTOPS]: { 0: Abilities.TOUGH_CLAWS }, - [Species.AERODACTYL]: { 0: Abilities.INTIMIDATE, 1: Abilities.INTIMIDATE }, + [Species.AERODACTYL]: { 0: Abilities.INTIMIDATE, 1: Abilities.ROCKY_PAYLOAD }, [Species.ARTICUNO]: { 0: Abilities.SNOW_WARNING }, [Species.ZAPDOS]: { 0: Abilities.DRIZZLE }, [Species.MOLTRES]: { 0: Abilities.DROUGHT }, @@ -506,7 +506,7 @@ export const starterPassiveAbilities: StarterPassiveAbilities = { [Species.SNOVER]: { 0: Abilities.SLUSH_RUSH }, [Species.ABOMASNOW]: { 0: Abilities.SLUSH_RUSH, 1: Abilities.SEED_SOWER }, [Species.ROTOM]: { 0: Abilities.HADRON_ENGINE, 1: Abilities.HADRON_ENGINE, 2: Abilities.HADRON_ENGINE, 3: Abilities.HADRON_ENGINE, 4: Abilities.HADRON_ENGINE, 5: Abilities.HADRON_ENGINE }, - [Species.UXIE]: { 0: Abilities.UNNERVE }, + [Species.UXIE]: { 0: Abilities.ILLUSION }, [Species.MESPRIT]: { 0: Abilities.MOODY }, [Species.AZELF]: { 0: Abilities.NEUROFORCE }, [Species.DIALGA]: { 0: Abilities.BERSERK, 1: Abilities.BERSERK }, @@ -600,8 +600,8 @@ export const starterPassiveAbilities: StarterPassiveAbilities = { [Species.ARCHEOPS]: { 0: Abilities.MULTISCALE }, [Species.TRUBBISH]: { 0: Abilities.NEUTRALIZING_GAS }, [Species.GARBODOR]: { 0: Abilities.NEUTRALIZING_GAS, 1: Abilities.NEUTRALIZING_GAS }, - [Species.ZORUA]: { 0: Abilities.DARK_AURA }, - [Species.ZOROARK]: { 0: Abilities.DARK_AURA }, + [Species.ZORUA]: { 0: Abilities.ADAPTABILITY }, + [Species.ZOROARK]: { 0: Abilities.ADAPTABILITY }, [Species.MINCCINO]: { 0: Abilities.FUR_COAT }, [Species.CINCCINO]: { 0: Abilities.FUR_COAT }, [Species.GOTHITA]: { 0: Abilities.UNNERVE }, @@ -729,8 +729,8 @@ export const starterPassiveAbilities: StarterPassiveAbilities = { [Species.CLAWITZER]: { 0: Abilities.PROTEAN }, [Species.HELIOPTILE]: { 0: Abilities.PROTEAN }, [Species.HELIOLISK]: { 0: Abilities.PROTEAN }, - [Species.TYRUNT]: { 0: Abilities.RECKLESS }, - [Species.TYRANTRUM]: { 0: Abilities.RECKLESS }, + [Species.TYRUNT]: { 0: Abilities.SHEER_FORCE }, + [Species.TYRANTRUM]: { 0: Abilities.SHEER_FORCE }, [Species.AMAURA]: { 0: Abilities.ICE_SCALES }, [Species.AURORUS]: { 0: Abilities.ICE_SCALES }, [Species.HAWLUCHA]: { 0: Abilities.MOXIE }, @@ -744,8 +744,8 @@ export const starterPassiveAbilities: StarterPassiveAbilities = { [Species.KLEFKI]: { 0: Abilities.LEVITATE }, [Species.PHANTUMP]: { 0: Abilities.SHADOW_TAG }, [Species.TREVENANT]: { 0: Abilities.SHADOW_TAG }, - [Species.PUMPKABOO]: { 0: Abilities.WELL_BAKED_BODY, 1: Abilities.ADAPTABILITY, 2: Abilities.PRANKSTER, 3: Abilities.SEED_SOWER }, - [Species.GOURGEIST]: { 0: Abilities.WELL_BAKED_BODY, 1: Abilities.ADAPTABILITY, 2: Abilities.PRANKSTER, 3: Abilities.SEED_SOWER }, + [Species.PUMPKABOO]: { 0: Abilities.ILLUMINATE, 1: Abilities.ADAPTABILITY, 2: Abilities.WELL_BAKED_BODY, 3: Abilities.SEED_SOWER }, + [Species.GOURGEIST]: { 0: Abilities.ILLUMINATE, 1: Abilities.ADAPTABILITY, 2: Abilities.WELL_BAKED_BODY, 3: Abilities.SEED_SOWER }, [Species.BERGMITE]: { 0: Abilities.ICE_SCALES }, [Species.AVALUGG]: { 0: Abilities.ICE_SCALES }, [Species.HISUI_AVALUGG]: { 0: Abilities.ICE_SCALES }, @@ -781,7 +781,7 @@ export const starterPassiveAbilities: StarterPassiveAbilities = { [Species.CRABOMINABLE]: { 0: Abilities.WATER_BUBBLE }, [Species.ORICORIO]: { 0: Abilities.ADAPTABILITY, 1: Abilities.ADAPTABILITY, 2: Abilities.ADAPTABILITY, 3: Abilities.ADAPTABILITY }, [Species.CUTIEFLY]: { 0: Abilities.PICKUP }, - [Species.RIBOMBEE]: { 0: Abilities.TINTED_LENS }, + [Species.RIBOMBEE]: { 0: Abilities.PICKUP }, [Species.ROCKRUFF]: { 0: Abilities.PICKUP, 1: Abilities.PICKUP }, [Species.LYCANROC]: { 0: Abilities.STURDY, 1: Abilities.INTIMIDATE, 2: Abilities.STAKEOUT }, [Species.WISHIWASHI]: { 0: Abilities.REGENERATOR, 1: Abilities.REGENERATOR }, @@ -932,7 +932,7 @@ export const starterPassiveAbilities: StarterPassiveAbilities = { [Species.COPPERAJAH]: { 0: Abilities.EARTH_EATER, 1: Abilities.EARTH_EATER }, [Species.DRACOZOLT]: { 0: Abilities.NO_GUARD }, [Species.ARCTOZOLT]: { 0: Abilities.WATER_ABSORB }, - [Species.DRACOVISH]: { 0: Abilities.SWIFT_SWIM }, + [Species.DRACOVISH]: { 0: Abilities.THERMAL_EXCHANGE }, [Species.ARCTOVISH]: { 0: Abilities.STRONG_JAW }, [Species.DURALUDON]: { 0: Abilities.FILTER, 1: Abilities.UNAWARE }, [Species.ARCHALUDON]: { 0: Abilities.TRANSISTOR }, @@ -981,8 +981,8 @@ export const starterPassiveAbilities: StarterPassiveAbilities = { [Species.OVERQWIL]: { 0: Abilities.MERCILESS }, [Species.HISUI_SNEASEL]: { 0: Abilities.SCRAPPY }, [Species.SNEASLER]: { 0: Abilities.SCRAPPY }, - [Species.HISUI_ZORUA]: { 0: Abilities.ADAPTABILITY }, - [Species.HISUI_ZOROARK]: { 0: Abilities.ADAPTABILITY }, + [Species.HISUI_ZORUA]: { 0: Abilities.SHADOW_SHIELD }, + [Species.HISUI_ZOROARK]: { 0: Abilities.SHADOW_SHIELD }, [Species.SPRIGATITO]: { 0: Abilities.PICKUP }, [Species.FLORAGATO]: { 0: Abilities.MAGICIAN }, diff --git a/src/data/balance/pokemon-level-moves.ts b/src/data/balance/pokemon-level-moves.ts index dcbc2fb0c0d..0b0ba1b5f71 100644 --- a/src/data/balance/pokemon-level-moves.ts +++ b/src/data/balance/pokemon-level-moves.ts @@ -19383,6 +19383,44 @@ export const pokemonFormLevelMoves: PokemonSpeciesFormLevelMoves = { [ 100, Moves.SEED_FLARE ], ] }, + [Species.BASCULIN]: { + 1: [ + [ 1, Moves.TAIL_WHIP ], + [ 1, Moves.WATER_GUN ], + [ 4, Moves.TACKLE ], + [ 8, Moves.FLAIL ], + [ 12, Moves.AQUA_JET ], + [ 16, Moves.BITE ], + [ 20, Moves.SCARY_FACE ], + [ 24, Moves.HEADBUTT ], + [ 28, Moves.SOAK ], + [ 32, Moves.CRUNCH ], + [ 36, Moves.TAKE_DOWN ], + [ 40, Moves.FINAL_GAMBIT ], + [ 44, Moves.WAVE_CRASH ], + [ 48, Moves.THRASH ], + [ 52, Moves.DOUBLE_EDGE ], + [ 56, Moves.HEAD_SMASH ], + ], + 2: [ + [ 1, Moves.TAIL_WHIP ], + [ 1, Moves.WATER_GUN ], + [ 4, Moves.TACKLE ], + [ 8, Moves.FLAIL ], + [ 12, Moves.AQUA_JET ], + [ 16, Moves.BITE ], + [ 20, Moves.SCARY_FACE ], + [ 24, Moves.HEADBUTT ], + [ 28, Moves.SOAK ], + [ 32, Moves.CRUNCH ], + [ 36, Moves.TAKE_DOWN ], + [ 40, Moves.UPROAR ], + [ 44, Moves.WAVE_CRASH ], + [ 48, Moves.THRASH ], + [ 52, Moves.DOUBLE_EDGE ], + [ 56, Moves.HEAD_SMASH ], + ] + }, [Species.KYUREM]: { 1: [ [ 1, Moves.DRAGON_BREATH ], diff --git a/src/data/balance/signature-species.ts b/src/data/balance/signature-species.ts index e2fecaa12ff..fb8f33d4435 100644 --- a/src/data/balance/signature-species.ts +++ b/src/data/balance/signature-species.ts @@ -4,12 +4,19 @@ export type SignatureSpecies = { [key in string]: (Species | Species[])[]; }; -/* +/** * The signature species for each Gym Leader, Elite Four member, and Champion. * The key is the trainer type, and the value is an array of Species or Species arrays. * This is in a separate const so it can be accessed from other places and not just the trainerConfigs + * + * @remarks + * The `Proxy` object allows us to define a handler that will intercept + * the property access and return an empty array if the property does not exist in the object. + * + * This means that accessing `signatureSpecies` will not throw an error if the property does not exist, + * but instead default to an empty array. */ -export const signatureSpecies: SignatureSpecies = { +export const signatureSpecies: SignatureSpecies = new Proxy({ // Gym Leaders- Kanto BROCK: [Species.ONIX, Species.GEODUDE, [Species.OMANYTE, Species.KABUTO], Species.AERODACTYL], MISTY: [Species.STARYU, Species.PSYDUCK, Species.WOOPER, Species.LAPRAS], @@ -92,71 +99,8 @@ export const signatureSpecies: SignatureSpecies = { RYME: [Species.TOXEL, Species.GREAVARD, Species.SHUPPET, Species.MIMIKYU], // Tera Ghost Toxel TULIP: [Species.FLABEBE, Species.FLITTLE, Species.RALTS, Species.GIRAFARIG], // Tera Psychic Flabebe GRUSHA: [Species.SWABLU, Species.CETODDLE, Species.SNOM, Species.CUBCHOO], // Tera Ice Swablu - - // Elite Four- Kanto - LORELEI: [ - Species.JYNX, - [Species.SLOWBRO, Species.GALAR_SLOWBRO], - Species.LAPRAS, - [Species.CLOYSTER, Species.ALOLA_SANDSLASH], - ], - BRUNO: [Species.MACHAMP, Species.HITMONCHAN, Species.HITMONLEE, [Species.GOLEM, Species.ALOLA_GOLEM]], - AGATHA: [Species.GENGAR, [Species.ARBOK, Species.WEEZING], Species.CROBAT, Species.ALOLA_MAROWAK], - LANCE: [Species.DRAGONITE, Species.GYARADOS, Species.AERODACTYL, Species.ALOLA_EXEGGUTOR], - // Elite Four- Johto (Bruno included) - WILL: [Species.XATU, Species.JYNX, [Species.SLOWBRO, Species.SLOWKING], Species.EXEGGUTOR], - KOGA: [[Species.MUK, Species.WEEZING], [Species.VENOMOTH, Species.ARIADOS], Species.CROBAT, Species.TENTACRUEL], - KAREN: [Species.UMBREON, Species.HONCHKROW, Species.HOUNDOOM, Species.WEAVILE], - // Elite Four- Hoenn - SIDNEY: [ - [Species.SHIFTRY, Species.CACTURNE], - [Species.SHARPEDO, Species.CRAWDAUNT], - Species.ABSOL, - Species.MIGHTYENA, - ], - PHOEBE: [Species.SABLEYE, Species.DUSKNOIR, Species.BANETTE, [Species.DRIFBLIM, Species.MISMAGIUS]], - GLACIA: [Species.GLALIE, Species.WALREIN, Species.FROSLASS, Species.ABOMASNOW], - DRAKE: [Species.ALTARIA, Species.SALAMENCE, Species.FLYGON, Species.KINGDRA], - // Elite Four- Sinnoh - AARON: [[Species.SCIZOR, Species.KLEAVOR], Species.HERACROSS, [Species.VESPIQUEN, Species.YANMEGA], Species.DRAPION], - BERTHA: [Species.WHISCASH, Species.HIPPOWDON, Species.GLISCOR, Species.RHYPERIOR], - FLINT: [ - [Species.RAPIDASH, Species.FLAREON], - Species.MAGMORTAR, - [Species.STEELIX, Species.LOPUNNY], - Species.INFERNAPE, - ], // Tera Fire Steelix or Lopunny - LUCIAN: [Species.MR_MIME, Species.GALLADE, Species.BRONZONG, [Species.ALAKAZAM, Species.ESPEON]], - // Elite Four- Unova - SHAUNTAL: [Species.COFAGRIGUS, Species.CHANDELURE, Species.GOLURK, Species.JELLICENT], - MARSHAL: [Species.CONKELDURR, Species.MIENSHAO, Species.THROH, Species.SAWK], - GRIMSLEY: [Species.LIEPARD, Species.KINGAMBIT, Species.SCRAFTY, Species.KROOKODILE], - CAITLIN: [Species.MUSHARNA, Species.GOTHITELLE, Species.SIGILYPH, Species.REUNICLUS], - // Elite Four- Kalos - MALVA: [Species.PYROAR, Species.TORKOAL, Species.CHANDELURE, Species.TALONFLAME], - SIEBOLD: [Species.CLAWITZER, Species.GYARADOS, Species.BARBARACLE, Species.STARMIE], - WIKSTROM: [Species.KLEFKI, Species.PROBOPASS, Species.SCIZOR, Species.AEGISLASH], - DRASNA: [Species.DRAGALGE, Species.DRUDDIGON, Species.ALTARIA, Species.NOIVERN], - // Elite Four- Alola - HALA: [Species.HARIYAMA, Species.BEWEAR, Species.CRABOMINABLE, [Species.POLIWRATH, Species.ANNIHILAPE]], - MOLAYNE: [Species.KLEFKI, Species.MAGNEZONE, Species.METAGROSS, Species.ALOLA_DUGTRIO], - OLIVIA: [Species.RELICANTH, Species.CARBINK, Species.ALOLA_GOLEM, Species.LYCANROC], - ACEROLA: [[Species.BANETTE, Species.DRIFBLIM], Species.MIMIKYU, Species.DHELMISE, Species.PALOSSAND], - KAHILI: [[Species.BRAVIARY, Species.MANDIBUZZ], Species.HAWLUCHA, Species.ORICORIO, Species.TOUCANNON], - // Elite Four- Galar - MARNIE_ELITE: [Species.MORPEKO, Species.LIEPARD, [Species.TOXICROAK, Species.SCRAFTY], Species.GRIMMSNARL], - NESSA_ELITE: [Species.GOLISOPOD, [Species.QUAGSIRE, Species.PELIPPER], Species.TOXAPEX, Species.DREDNAW], - BEA_ELITE: [Species.HAWLUCHA, [Species.GRAPPLOCT, Species.SIRFETCHD], Species.FALINKS, Species.MACHAMP], - ALLISTER_ELITE: [Species.DUSKNOIR, [Species.POLTEAGEIST, Species.RUNERIGUS], Species.CURSOLA, Species.GENGAR], - RAIHAN_ELITE: [Species.GOODRA, [Species.TORKOAL, Species.TURTONATOR], Species.FLYGON, Species.ARCHALUDON], - // Elite Four- Paldea - RIKA: [Species.CLODSIRE, [Species.DUGTRIO, Species.DONPHAN], Species.CAMERUPT, Species.WHISCASH], // Tera Ground Clodsire - POPPY: [Species.TINKATON, Species.BRONZONG, Species.CORVIKNIGHT, Species.COPPERAJAH], // Tera Steel Tinkaton - LARRY_ELITE: [Species.FLAMIGO, Species.STARAPTOR, [Species.ALTARIA, Species.TROPIUS], Species.ORICORIO], // Tera Flying Flamigo; random Oricorio - HASSEL: [Species.BAXCALIBUR, [Species.FLAPPLE, Species.APPLETUN], Species.DRAGALGE, Species.NOIVERN], // Tera Dragon Baxcalibur - // Elite Four- BBL - CRISPIN: [Species.BLAZIKEN, Species.MAGMORTAR, [Species.CAMERUPT, Species.TALONFLAME], Species.ROTOM], // Tera Fire Blaziken; Heat Rotom - AMARYS: [Species.METAGROSS, Species.SCIZOR, Species.EMPOLEON, Species.SKARMORY], // Tera Steel Metagross - LACEY: [Species.EXCADRILL, Species.PRIMARINA, [Species.WHIMSICOTT, Species.ALCREMIE], Species.GRANBULL], // Tera Fairy Excadrill - DRAYTON: [Species.ARCHALUDON, Species.DRAGONITE, Species.HAXORUS, Species.SCEPTILE], // Tera Dragon Archaludon -}; +}, { + get(target, prop: string) { + return target[prop as keyof SignatureSpecies] ?? []; + } +}); diff --git a/src/data/balance/tms.ts b/src/data/balance/tms.ts index 62199fd6968..69aef9b135d 100644 --- a/src/data/balance/tms.ts +++ b/src/data/balance/tms.ts @@ -5724,7 +5724,6 @@ export const tmSpecies: TmSpecies = { Species.SCOLIPEDE, Species.WHIMSICOTT, Species.LILLIGANT, - Species.BASCULIN, Species.KROOKODILE, Species.DARMANITAN, Species.CRUSTLE, @@ -6023,6 +6022,11 @@ export const tmSpecies: TmSpecies = { Species.HISUI_DECIDUEYE, Species.PALDEA_TAUROS, Species.BLOODMOON_URSALUNA, + [ + Species.BASCULIN, + "blue-striped", + "red-striped", + ] ], [Moves.LOW_KICK]: [ Species.SANDSHREW, @@ -19335,7 +19339,6 @@ export const tmSpecies: TmSpecies = { Species.CONKELDURR, Species.THROH, Species.SAWK, - Species.BASCULIN, Species.DARMANITAN, Species.SCRAFTY, Species.ESCAVALIER, @@ -19449,6 +19452,11 @@ export const tmSpecies: TmSpecies = { Species.HISUI_BRAVIARY, Species.HISUI_DECIDUEYE, Species.PALDEA_TAUROS, + [ + Species.BASCULIN, + "blue-striped", + "red-striped", + ], ], [Moves.SPITE]: [ Species.EKANS, @@ -51341,7 +51349,6 @@ export const tmSpecies: TmSpecies = { Species.SCOLIPEDE, Species.WHIMSICOTT, Species.LILLIGANT, - Species.BASCULIN, Species.KROOKODILE, Species.DARMANITAN, Species.CRUSTLE, @@ -51655,6 +51662,11 @@ export const tmSpecies: TmSpecies = { Species.HISUI_DECIDUEYE, Species.PALDEA_TAUROS, Species.BLOODMOON_URSALUNA, + [ + Species.BASCULIN, + "blue-striped", + "red-striped", + ], ], [Moves.NASTY_PLOT]: [ Species.PIKACHU, diff --git a/src/data/battle-anims.ts b/src/data/battle-anims.ts index 0999e9db6ff..454bd40130c 100644 --- a/src/data/battle-anims.ts +++ b/src/data/battle-anims.ts @@ -1132,7 +1132,6 @@ export abstract class BattleAnim { if (priority === 0) { // Place the sprite in front of the pokemon on the field. targetSprite = globalScene.getEnemyField().find(p => p) ?? globalScene.getPlayerField().find(p => p); - console.log(typeof targetSprite); moveFunc = globalScene.field.moveBelow; } else if (priority === 2 && this.bgSprite) { moveFunc = globalScene.field.moveAbove; diff --git a/src/data/battler-tags.ts b/src/data/battler-tags.ts index ee41f0435b9..8a512f3c16c 100644 --- a/src/data/battler-tags.ts +++ b/src/data/battler-tags.ts @@ -1,4 +1,5 @@ import { globalScene } from "#app/global-scene"; +import Overrides from "#app/overrides"; import { applyAbAttrs, BlockNonDirectDamageAbAttr, @@ -91,7 +92,12 @@ export class BattlerTag { onOverlap(_pokemon: Pokemon): void {} + /** + * Tick down this {@linkcode BattlerTag}'s duration. + * @returns `true` if the tag should be kept (`turnCount` > 0`) + */ lapse(_pokemon: Pokemon, _lapseType: BattlerTagLapseType): boolean { + // TODO: Maybe flip this (return `true` if tag needs removal) return --this.turnCount > 0; } @@ -108,9 +114,9 @@ export class BattlerTag { } /** - * When given a battler tag or json representing one, load the data for it. - * This is meant to be inherited from by any battler tag with custom attributes - * @param {BattlerTag | any} source A battler tag + * Load the data for a given {@linkcode BattlerTag} or JSON representation thereof. + * Should be inherited from by any battler tag with custom attributes. + * @param source The battler tag to load */ loadTag(source: BattlerTag | any): void { this.turnCount = source.turnCount; @@ -120,7 +126,7 @@ export class BattlerTag { /** * Helper function that retrieves the source Pokemon object - * @returns The source {@linkcode Pokemon} or `null` if none is found + * @returns The source {@linkcode Pokemon}, or `null` if none is found */ public getSourcePokemon(): Pokemon | null { return this.sourceId ? globalScene.getPokemonById(this.sourceId) : null; @@ -140,8 +146,8 @@ export interface TerrainBattlerTag { * in-game. This is not to be confused with {@linkcode Moves.DISABLE}. * * Descendants can override {@linkcode isMoveRestricted} to restrict moves that - * match a condition. A restricted move gets cancelled before it is used. Players and enemies should not be allowed - * to select restricted moves. + * match a condition. A restricted move gets cancelled before it is used. + * Players and enemies should not be allowed to select restricted moves. */ export abstract class MoveRestrictionBattlerTag extends BattlerTag { constructor( @@ -746,31 +752,33 @@ export class ConfusedTag extends BattlerTag { } lapse(pokemon: Pokemon, lapseType: BattlerTagLapseType): boolean { - const ret = lapseType !== BattlerTagLapseType.CUSTOM && super.lapse(pokemon, lapseType); + const shouldLapse = lapseType !== BattlerTagLapseType.CUSTOM && super.lapse(pokemon, lapseType); - if (ret) { - globalScene.queueMessage( - i18next.t("battlerTags:confusedLapse", { - pokemonNameWithAffix: getPokemonNameWithAffix(pokemon), - }), - ); - globalScene.unshiftPhase(new CommonAnimPhase(pokemon.getBattlerIndex(), undefined, CommonAnim.CONFUSION)); - - // 1/3 chance of hitting self with a 40 base power move - if (pokemon.randSeedInt(3) === 0) { - const atk = pokemon.getEffectiveStat(Stat.ATK); - const def = pokemon.getEffectiveStat(Stat.DEF); - const damage = toDmgValue( - ((((2 * pokemon.level) / 5 + 2) * 40 * atk) / def / 50 + 2) * (pokemon.randSeedIntRange(85, 100) / 100), - ); - globalScene.queueMessage(i18next.t("battlerTags:confusedLapseHurtItself")); - pokemon.damageAndUpdate(damage, { result: HitResult.CONFUSION }); - pokemon.battleData.hitCount++; - (globalScene.getCurrentPhase() as MovePhase).cancel(); - } + if (!shouldLapse) { + return false; } - return ret; + globalScene.queueMessage( + i18next.t("battlerTags:confusedLapse", { + pokemonNameWithAffix: getPokemonNameWithAffix(pokemon), + }), + ); + globalScene.unshiftPhase(new CommonAnimPhase(pokemon.getBattlerIndex(), undefined, CommonAnim.CONFUSION)); + + // 1/3 chance of hitting self with a 40 base power move + if (pokemon.randSeedInt(3) === 0 || Overrides.CONFUSION_ACTIVATION_OVERRIDE === true) { + const atk = pokemon.getEffectiveStat(Stat.ATK); + const def = pokemon.getEffectiveStat(Stat.DEF); + const damage = toDmgValue( + ((((2 * pokemon.level) / 5 + 2) * 40 * atk) / def / 50 + 2) * (pokemon.randSeedIntRange(85, 100) / 100), + ); + // Intentionally don't increment rage fist's hitCount + globalScene.queueMessage(i18next.t("battlerTags:confusedLapseHurtItself")); + pokemon.damageAndUpdate(damage, { result: HitResult.CONFUSION }); + (globalScene.getCurrentPhase() as MovePhase).cancel(); + } + + return true; } getDescriptor(): string { @@ -1117,8 +1125,8 @@ export class FrenzyTag extends BattlerTag { } /** - * Applies the effects of the move Encore onto the target Pokemon - * Encore forces the target Pokemon to use its most-recent move for 3 turns + * Applies the effects of {@linkcode Moves.ENCORE} onto the target Pokemon. + * Encore forces the target Pokemon to use its most-recent move for 3 turns. */ export class EncoreTag extends MoveRestrictionBattlerTag { public moveId: Moves; @@ -1133,10 +1141,6 @@ export class EncoreTag extends MoveRestrictionBattlerTag { ); } - /** - * When given a battler tag or json representing one, load the data for it. - * @param {BattlerTag | any} source A battler tag - */ loadTag(source: BattlerTag | any): void { super.loadTag(source); this.moveId = source.moveId as Moves; diff --git a/src/data/berry.ts b/src/data/berry.ts index 22950c0beca..ecc3e92ca64 100644 --- a/src/data/berry.ts +++ b/src/data/berry.ts @@ -5,10 +5,8 @@ import { getStatusEffectHealText } from "./status-effect"; import { NumberHolder, toDmgValue, randSeedInt } from "#app/utils/common"; import { DoubleBerryEffectAbAttr, - PostItemLostAbAttr, ReduceBerryUseThresholdAbAttr, applyAbAttrs, - applyPostItemLostAbAttrs, } from "./abilities/ability"; import i18next from "i18next"; import { BattlerTagType } from "#enums/battler-tag-type"; @@ -70,97 +68,94 @@ export function getBerryPredicate(berryType: BerryType): BerryPredicate { } } -export type BerryEffectFunc = (pokemon: Pokemon, berryOwner?: Pokemon) => void; +export type BerryEffectFunc = (consumer: Pokemon) => void; export function getBerryEffectFunc(berryType: BerryType): BerryEffectFunc { - switch (berryType) { - case BerryType.SITRUS: - case BerryType.ENIGMA: - return (pokemon: Pokemon, berryOwner?: Pokemon) => { - if (pokemon.battleData) { - pokemon.battleData.berriesEaten.push(berryType); - } - const hpHealed = new NumberHolder(toDmgValue(pokemon.getMaxHp() / 4)); - applyAbAttrs(DoubleBerryEffectAbAttr, pokemon, null, false, hpHealed); - globalScene.unshiftPhase( - new PokemonHealPhase( - pokemon.getBattlerIndex(), - hpHealed.value, - i18next.t("battle:hpHealBerry", { - pokemonNameWithAffix: getPokemonNameWithAffix(pokemon), - berryName: getBerryName(berryType), - }), - true, - ), - ); - applyPostItemLostAbAttrs(PostItemLostAbAttr, berryOwner ?? pokemon, false); - }; - case BerryType.LUM: - return (pokemon: Pokemon, berryOwner?: Pokemon) => { - if (pokemon.battleData) { - pokemon.battleData.berriesEaten.push(berryType); - } - if (pokemon.status) { - globalScene.queueMessage(getStatusEffectHealText(pokemon.status.effect, getPokemonNameWithAffix(pokemon))); - } - pokemon.resetStatus(true, true); - pokemon.updateInfo(); - applyPostItemLostAbAttrs(PostItemLostAbAttr, berryOwner ?? pokemon, false); - }; - case BerryType.LIECHI: - case BerryType.GANLON: - case BerryType.PETAYA: - case BerryType.APICOT: - case BerryType.SALAC: - return (pokemon: Pokemon, berryOwner?: Pokemon) => { - if (pokemon.battleData) { - pokemon.battleData.berriesEaten.push(berryType); - } - // Offset BerryType such that LIECHI -> Stat.ATK = 1, GANLON -> Stat.DEF = 2, so on and so forth - const stat: BattleStat = berryType - BerryType.ENIGMA; - const statStages = new NumberHolder(1); - applyAbAttrs(DoubleBerryEffectAbAttr, pokemon, null, false, statStages); - globalScene.unshiftPhase(new StatStageChangePhase(pokemon.getBattlerIndex(), true, [stat], statStages.value)); - applyPostItemLostAbAttrs(PostItemLostAbAttr, berryOwner ?? pokemon, false); - }; - case BerryType.LANSAT: - return (pokemon: Pokemon, berryOwner?: Pokemon) => { - if (pokemon.battleData) { - pokemon.battleData.berriesEaten.push(berryType); - } - pokemon.addTag(BattlerTagType.CRIT_BOOST); - applyPostItemLostAbAttrs(PostItemLostAbAttr, berryOwner ?? pokemon, false); - }; - case BerryType.STARF: - return (pokemon: Pokemon, berryOwner?: Pokemon) => { - if (pokemon.battleData) { - pokemon.battleData.berriesEaten.push(berryType); - } - const randStat = randSeedInt(Stat.SPD, Stat.ATK); - const stages = new NumberHolder(2); - applyAbAttrs(DoubleBerryEffectAbAttr, pokemon, null, false, stages); - globalScene.unshiftPhase(new StatStageChangePhase(pokemon.getBattlerIndex(), true, [randStat], stages.value)); - applyPostItemLostAbAttrs(PostItemLostAbAttr, berryOwner ?? pokemon, false); - }; - case BerryType.LEPPA: - return (pokemon: Pokemon, berryOwner?: Pokemon) => { - if (pokemon.battleData) { - pokemon.battleData.berriesEaten.push(berryType); - } - const ppRestoreMove = pokemon.getMoveset().find(m => !m.getPpRatio()) - ? pokemon.getMoveset().find(m => !m.getPpRatio()) - : pokemon.getMoveset().find(m => m.getPpRatio() < 1); - if (ppRestoreMove !== undefined) { - ppRestoreMove!.ppUsed = Math.max(ppRestoreMove!.ppUsed - 10, 0); - globalScene.queueMessage( - i18next.t("battle:ppHealBerry", { - pokemonNameWithAffix: getPokemonNameWithAffix(pokemon), - moveName: ppRestoreMove!.getName(), - berryName: getBerryName(berryType), - }), + return (consumer: Pokemon) => { + // Apply an effect pertaining to what berry we're using + switch (berryType) { + case BerryType.SITRUS: + case BerryType.ENIGMA: + { + const hpHealed = new NumberHolder(toDmgValue(consumer.getMaxHp() / 4)); + applyAbAttrs(DoubleBerryEffectAbAttr, consumer, null, false, hpHealed); + globalScene.unshiftPhase( + new PokemonHealPhase( + consumer.getBattlerIndex(), + hpHealed.value, + i18next.t("battle:hpHealBerry", { + pokemonNameWithAffix: getPokemonNameWithAffix(consumer), + berryName: getBerryName(berryType), + }), + true, + ), ); - applyPostItemLostAbAttrs(PostItemLostAbAttr, berryOwner ?? pokemon, false); } - }; - } + break; + case BerryType.LUM: + { + if (consumer.status) { + globalScene.queueMessage( + getStatusEffectHealText(consumer.status.effect, getPokemonNameWithAffix(consumer)), + ); + } + consumer.resetStatus(true, true); + consumer.updateInfo(); + } + break; + case BerryType.LIECHI: + case BerryType.GANLON: + case BerryType.PETAYA: + case BerryType.APICOT: + case BerryType.SALAC: + { + // Offset BerryType such that LIECHI --> Stat.ATK = 1, GANLON --> Stat.DEF = 2, etc etc. + const stat: BattleStat = berryType - BerryType.ENIGMA; + const statStages = new NumberHolder(1); + applyAbAttrs(DoubleBerryEffectAbAttr, consumer, null, false, statStages); + globalScene.unshiftPhase( + new StatStageChangePhase(consumer.getBattlerIndex(), true, [stat], statStages.value), + ); + } + break; + + case BerryType.LANSAT: + { + consumer.addTag(BattlerTagType.CRIT_BOOST); + } + break; + + case BerryType.STARF: + { + const randStat = randSeedInt(Stat.SPD, Stat.ATK); + const stages = new NumberHolder(2); + applyAbAttrs(DoubleBerryEffectAbAttr, consumer, null, false, stages); + globalScene.unshiftPhase( + new StatStageChangePhase(consumer.getBattlerIndex(), true, [randStat], stages.value), + ); + } + break; + + case BerryType.LEPPA: + { + // Pick the first move completely out of PP, or else the first one that has any PP missing + const ppRestoreMove = + consumer.getMoveset().find(m => m.ppUsed === m.getMovePp()) ?? + consumer.getMoveset().find(m => m.ppUsed < m.getMovePp()); + if (ppRestoreMove) { + ppRestoreMove.ppUsed = Math.max(ppRestoreMove.ppUsed - 10, 0); + globalScene.queueMessage( + i18next.t("battle:ppHealBerry", { + pokemonNameWithAffix: getPokemonNameWithAffix(consumer), + moveName: ppRestoreMove.getName(), + berryName: getBerryName(berryType), + }), + ); + } + } + break; + default: + console.error("Incorrect BerryType %d passed to GetBerryEffectFunc", berryType); + } + }; } diff --git a/src/data/challenge.ts b/src/data/challenge.ts index 7388f397c7e..b4b8db2cc10 100644 --- a/src/data/challenge.ts +++ b/src/data/challenge.ts @@ -1,4 +1,5 @@ -import { BooleanHolder, type NumberHolder, randSeedItem, deepCopy } from "#app/utils/common"; +import { BooleanHolder, type NumberHolder, randSeedItem } from "#app/utils/common"; +import { deepCopy } from "#app/utils/data"; import i18next from "i18next"; import type { DexAttrProps, GameData } from "#app/system/game-data"; import { defaultStarterSpecies } from "#app/system/game-data"; diff --git a/src/data/custom-pokemon-data.ts b/src/data/custom-pokemon-data.ts index 704835e9dbc..20f6ea96174 100644 --- a/src/data/custom-pokemon-data.ts +++ b/src/data/custom-pokemon-data.ts @@ -1,36 +1,31 @@ import type { Abilities } from "#enums/abilities"; import type { PokemonType } from "#enums/pokemon-type"; -import { isNullOrUndefined } from "#app/utils/common"; import type { Nature } from "#enums/nature"; /** - * Data that can customize a Pokemon in non-standard ways from its Species - * Used by Mystery Encounters and Mints - * Also used as a counter how often a Pokemon got hit until new arena encounter + * Data that can customize a Pokemon in non-standard ways from its Species. + * Includes abilities, nature, changed types, etc. */ export class CustomPokemonData { - public spriteScale: number; + // TODO: Change the default value for all these from -1 to something a bit more sensible + /** + * The scale at which to render this Pokemon's sprite. + */ + public spriteScale = -1; public ability: Abilities | -1; public passive: Abilities | -1; public nature: Nature | -1; public types: PokemonType[]; - /** `hitsReceivedCount` aka `hitsRecCount` saves how often the pokemon got hit until a new arena encounter (used for Rage Fist) */ - public hitsRecCount: number; + /** Deprecated but needed for session save migration */ + // TODO: Remove this once pre-session migration is implemented + public hitsRecCount: number | null = null; constructor(data?: CustomPokemonData | Partial) { - if (!isNullOrUndefined(data)) { - Object.assign(this, data); - } - - this.spriteScale = this.spriteScale ?? -1; - this.ability = this.ability ?? -1; - this.passive = this.passive ?? -1; - this.nature = this.nature ?? -1; - this.types = this.types ?? []; - this.hitsRecCount = this.hitsRecCount ?? 0; - } - - resetHitReceivedCount(): void { - this.hitsRecCount = 0; + this.spriteScale = data?.spriteScale ?? -1; + this.ability = data?.ability ?? -1; + this.passive = data?.passive ?? -1; + this.nature = data?.nature ?? -1; + this.types = data?.types ?? []; + this.hitsRecCount = data?.hitsRecCount ?? null; } } diff --git a/src/data/egg.ts b/src/data/egg.ts index 55a253e843f..0b7733bf199 100644 --- a/src/data/egg.ts +++ b/src/data/egg.ts @@ -598,7 +598,7 @@ export class Egg { } private getEggTier(): EggTier { - return speciesEggTiers[this.species]; + return speciesEggTiers[this.species] ?? EggTier.COMMON; } //// diff --git a/src/data/moves/invalid-moves.ts b/src/data/moves/invalid-moves.ts index 5cd45de7939..025c0383f43 100644 --- a/src/data/moves/invalid-moves.ts +++ b/src/data/moves/invalid-moves.ts @@ -240,3 +240,18 @@ export const invalidMirrorMoveMoves: ReadonlySet = new Set([ Moves.WATER_SPORT, Moves.WIDE_GUARD, ]); + +/** Set of moves that can never have their type overridden by an ability like Pixilate or Normalize + * + * Excludes tera blast and tera starstorm, as these are only conditionally forbidden + */ +export const noAbilityTypeOverrideMoves: ReadonlySet = new Set([ + Moves.WEATHER_BALL, + Moves.JUDGMENT, + Moves.REVELATION_DANCE, + Moves.MULTI_ATTACK, + Moves.TERRAIN_PULSE, + Moves.NATURAL_GIFT, + Moves.TECHNO_BLAST, + Moves.HIDDEN_POWER, +]); diff --git a/src/data/moves/move.ts b/src/data/moves/move.ts index b0ade540add..87bcd3e0b64 100644 --- a/src/data/moves/move.ts +++ b/src/data/moves/move.ts @@ -123,7 +123,6 @@ import { MoveFlags } from "#enums/MoveFlags"; import { MoveEffectTrigger } from "#enums/MoveEffectTrigger"; import { MultiHitType } from "#enums/MultiHitType"; import { invalidAssistMoves, invalidCopycatMoves, invalidMetronomeMoves, invalidMirrorMoveMoves, invalidSleepTalkMoves } from "./invalid-moves"; -import { TrainerVariant } from "#app/field/trainer"; import { SelectBiomePhase } from "#app/phases/select-biome-phase"; type MoveConditionFunc = (user: Pokemon, target: Pokemon, move: Move) => boolean; @@ -653,7 +652,7 @@ export default class Move implements Localizable { break; case MoveFlags.IGNORE_ABILITIES: if (user.hasAbilityWithAttr(MoveAbilityBypassAbAttr)) { - const abilityEffectsIgnored = new BooleanHolder(false); + const abilityEffectsIgnored = new BooleanHolder(false); applyAbAttrs(MoveAbilityBypassAbAttr, user, abilityEffectsIgnored, false, this); if (abilityEffectsIgnored.value) { return true; @@ -812,8 +811,9 @@ export default class Move implements Localizable { const power = new NumberHolder(this.power); const typeChangeMovePowerMultiplier = new NumberHolder(1); + const typeChangeHolder = new NumberHolder(this.type); - applyPreAttackAbAttrs(MoveTypeChangeAbAttr, source, target, this, true, null, typeChangeMovePowerMultiplier); + applyPreAttackAbAttrs(MoveTypeChangeAbAttr, source, target, this, true, typeChangeHolder, typeChangeMovePowerMultiplier); const sourceTeraType = source.getTeraType(); if (source.isTerastallized && sourceTeraType === this.type && power.value < 60 && this.priority <= 0 && !this.hasAttr(MultiHitAttr) && !globalScene.findModifier(m => m instanceof PokemonMultiHitModifier && m.pokemonId === source.id)) { @@ -843,7 +843,7 @@ export default class Move implements Localizable { power.value *= typeChangeMovePowerMultiplier.value; - const typeBoost = source.findTag(t => t instanceof TypeBoostTag && t.boostedType === this.type) as TypeBoostTag; + const typeBoost = source.findTag(t => t instanceof TypeBoostTag && t.boostedType === typeChangeHolder.value) as TypeBoostTag; if (typeBoost) { power.value *= typeBoost.boostValue; } @@ -851,8 +851,8 @@ export default class Move implements Localizable { applyMoveAttrs(VariablePowerAttr, source, target, this, power); if (!this.hasAttr(TypelessAttr)) { - globalScene.arena.applyTags(WeakenMoveTypeTag, simulated, this.type, power); - globalScene.applyModifiers(AttackTypeBoosterModifier, source.isPlayer(), source, this.type, power); + globalScene.arena.applyTags(WeakenMoveTypeTag, simulated, typeChangeHolder.value, power); + globalScene.applyModifiers(AttackTypeBoosterModifier, source.isPlayer(), source, typeChangeHolder.value, power); } if (source.getTag(HelpingHandTag)) { @@ -1810,10 +1810,7 @@ export class HalfSacrificialAttr extends MoveEffectAttr { } /** - * Attribute to put in a {@link https://bulbapedia.bulbagarden.net/wiki/Substitute_(doll) | Substitute Doll} - * for the user. - * @extends MoveEffectAttr - * @see {@linkcode apply} + * Attribute to put in a {@link https://bulbapedia.bulbagarden.net/wiki/Substitute_(doll) | Substitute Doll} for the user. */ export class AddSubstituteAttr extends MoveEffectAttr { /** The ratio of the user's max HP that is required to apply this effect */ @@ -1830,11 +1827,11 @@ export class AddSubstituteAttr extends MoveEffectAttr { /** * Removes 1/4 of the user's maximum HP (rounded down) to create a substitute for the user - * @param user the {@linkcode Pokemon} that used the move. - * @param target n/a - * @param move the {@linkcode Move} with this attribute. - * @param args n/a - * @returns true if the attribute successfully applies, false otherwise + * @param user - The {@linkcode Pokemon} that used the move. + * @param target - n/a + * @param move - The {@linkcode Move} with this attribute. + * @param args - n/a + * @returns `true` if the attribute successfully applies, `false` otherwise */ apply(user: Pokemon, target: Pokemon, move: Move, args: any[]): boolean { if (!super.apply(user, target, move, args)) { @@ -1855,12 +1852,12 @@ export class AddSubstituteAttr extends MoveEffectAttr { } getCondition(): MoveConditionFunc { - return (user, target, move) => !user.getTag(SubstituteTag) && user.hp > (this.roundUp ? Math.ceil(user.getMaxHp() * this.hpCost) : Math.floor(user.getMaxHp() * this.hpCost)) && user.getMaxHp() > 1; + return (user, _target, _move) => !user.getTag(SubstituteTag) && user.hp > (this.roundUp ? Math.ceil(user.getMaxHp() * this.hpCost) : Math.floor(user.getMaxHp() * this.hpCost)) && user.getMaxHp() > 1; } /** * Get the substitute-specific failure message if one should be displayed. - * @param user The pokemon using the move. + * @param user - The pokemon using the move. * @returns The substitute-specific failure message if the conditions apply, otherwise `undefined` */ getFailedText(user: Pokemon, _target: Pokemon, _move: Move): string | undefined { @@ -2464,13 +2461,14 @@ export class StatusEffectAttr extends MoveEffectAttr { apply(user: Pokemon, target: Pokemon, move: Move, args: any[]): boolean { const moveChance = this.getMoveChance(user, target, move, this.selfTarget, true); const statusCheck = moveChance < 0 || moveChance === 100 || user.randSeedInt(100) < moveChance; + const quiet = move.category !== MoveCategory.STATUS; if (statusCheck) { const pokemon = this.selfTarget ? user : target; - if (user !== target && move.category === MoveCategory.STATUS && !target.canSetStatus(this.effect, false, false, user, true)) { + if (user !== target && move.category === MoveCategory.STATUS && !target.canSetStatus(this.effect, quiet, false, user, true)) { return false; } if (((!pokemon.status || this.overrideStatus) || (pokemon.status.effect === this.effect && moveChance < 0)) - && pokemon.trySetStatus(this.effect, true, user, this.turnsRemaining, null, this.overrideStatus)) { + && pokemon.trySetStatus(this.effect, true, user, this.turnsRemaining, null, this.overrideStatus, quiet)) { applyPostAttackAbAttrs(ConfusionOnStatusEffectAbAttr, user, target, move, null, false, this.effect); return true; } @@ -2542,10 +2540,10 @@ export class PsychoShiftEffectAttr extends MoveEffectAttr { return !target.status && target.canSetStatus(user.status?.effect, true, false, user) ? -10 : 0; } } + /** - * The following needs to be implemented for Thief - * "If the user faints due to the target's Ability (Rough Skin or Iron Barbs) or held Rocky Helmet, it cannot remove the target's held item." - * "If Knock Off causes a Pokémon with the Sticky Hold Ability to faint, it can now remove that Pokémon's held item." + * Attribute to steal items upon this move's use. + * Used for {@linkcode Moves.THIEF} and {@linkcode Moves.COVET}. */ export class StealHeldItemChanceAttr extends MoveEffectAttr { private chance: number; @@ -2560,18 +2558,22 @@ export class StealHeldItemChanceAttr extends MoveEffectAttr { if (rand >= this.chance) { return false; } + const heldItems = this.getTargetHeldItems(target).filter((i) => i.isTransferable); - if (heldItems.length) { - const poolType = target.isPlayer() ? ModifierPoolType.PLAYER : target.hasTrainer() ? ModifierPoolType.TRAINER : ModifierPoolType.WILD; - const highestItemTier = heldItems.map((m) => m.type.getOrInferTier(poolType)).reduce((highestTier, tier) => Math.max(tier!, highestTier), 0); // TODO: is the bang after tier correct? - const tierHeldItems = heldItems.filter((m) => m.type.getOrInferTier(poolType) === highestItemTier); - const stolenItem = tierHeldItems[user.randSeedInt(tierHeldItems.length)]; - if (globalScene.tryTransferHeldItemModifier(stolenItem, user, false)) { - globalScene.queueMessage(i18next.t("moveTriggers:stoleItem", { pokemonName: getPokemonNameWithAffix(user), targetName: getPokemonNameWithAffix(target), itemName: stolenItem.type.name })); - return true; - } + if (!heldItems.length) { + return false; } - return false; + + const poolType = target.isPlayer() ? ModifierPoolType.PLAYER : target.hasTrainer() ? ModifierPoolType.TRAINER : ModifierPoolType.WILD; + const highestItemTier = heldItems.map((m) => m.type.getOrInferTier(poolType)).reduce((highestTier, tier) => Math.max(tier!, highestTier), 0); // TODO: is the bang after tier correct? + const tierHeldItems = heldItems.filter((m) => m.type.getOrInferTier(poolType) === highestItemTier); + const stolenItem = tierHeldItems[user.randSeedInt(tierHeldItems.length)]; + if (!globalScene.tryTransferHeldItemModifier(stolenItem, user, false)) { + return false; + } + + globalScene.queueMessage(i18next.t("moveTriggers:stoleItem", { pokemonName: getPokemonNameWithAffix(user), targetName: getPokemonNameWithAffix(target), itemName: stolenItem.type.name })); + return true; } getTargetHeldItems(target: Pokemon): PokemonHeldItemModifier[] { @@ -2595,58 +2597,62 @@ export class StealHeldItemChanceAttr extends MoveEffectAttr { * Used for Incinerate and Knock Off. * Not Implemented Cases: (Same applies for Thief) * "If the user faints due to the target's Ability (Rough Skin or Iron Barbs) or held Rocky Helmet, it cannot remove the target's held item." - * "If Knock Off causes a Pokémon with the Sticky Hold Ability to faint, it can now remove that Pokémon's held item." + * "If the Pokémon is knocked out by the attack, Sticky Hold does not protect the held item."" */ export class RemoveHeldItemAttr extends MoveEffectAttr { - /** Optional restriction for item pool to berries only i.e. Differentiating Incinerate and Knock Off */ + /** Optional restriction for item pool to berries only; i.e. Incinerate */ private berriesOnly: boolean; - constructor(berriesOnly: boolean) { + constructor(berriesOnly: boolean = false) { super(false); this.berriesOnly = berriesOnly; } /** - * - * @param user {@linkcode Pokemon} that used the move - * @param target Target {@linkcode Pokemon} that the moves applies to - * @param move {@linkcode Move} that is used + * Attempt to permanently remove a held + * @param user - The {@linkcode Pokemon} that used the move + * @param target - The {@linkcode Pokemon} targeted by the move + * @param move - N/A * @param args N/A - * @returns True if an item was removed + * @returns `true` if an item was able to be removed */ apply(user: Pokemon, target: Pokemon, move: Move, args: any[]): boolean { if (!this.berriesOnly && target.isPlayer()) { // "Wild Pokemon cannot knock off Player Pokemon's held items" (See Bulbapedia) return false; } + // Check for abilities that block item theft + // TODO: This should not trigger if the target would faint beforehand const cancelled = new BooleanHolder(false); - applyAbAttrs(BlockItemTheftAbAttr, target, cancelled); // Check for abilities that block item theft + applyAbAttrs(BlockItemTheftAbAttr, target, cancelled); - if (cancelled.value === true) { + if (cancelled.value) { return false; } - // Considers entire transferrable item pool by default (Knock Off). Otherwise berries only if specified (Incinerate). + // Considers entire transferrable item pool by default (Knock Off). + // Otherwise only consider berries (Incinerate). let heldItems = this.getTargetHeldItems(target).filter(i => i.isTransferable); if (this.berriesOnly) { heldItems = heldItems.filter(m => m instanceof BerryModifier && m.pokemonId === target.id, target.isPlayer()); } - if (heldItems.length) { - const removedItem = heldItems[user.randSeedInt(heldItems.length)]; + if (!heldItems.length) { + return false; + } - // Decrease item amount and update icon - target.loseHeldItem(removedItem); - globalScene.updateModifiers(target.isPlayer()); + const removedItem = heldItems[user.randSeedInt(heldItems.length)]; + // Decrease item amount and update icon + target.loseHeldItem(removedItem); + globalScene.updateModifiers(target.isPlayer()); - if (this.berriesOnly) { - globalScene.queueMessage(i18next.t("moveTriggers:incineratedItem", { pokemonName: getPokemonNameWithAffix(user), targetName: getPokemonNameWithAffix(target), itemName: removedItem.type.name })); - } else { - globalScene.queueMessage(i18next.t("moveTriggers:knockedOffItem", { pokemonName: getPokemonNameWithAffix(user), targetName: getPokemonNameWithAffix(target), itemName: removedItem.type.name })); - } + if (this.berriesOnly) { + globalScene.queueMessage(i18next.t("moveTriggers:incineratedItem", { pokemonName: getPokemonNameWithAffix(user), targetName: getPokemonNameWithAffix(target), itemName: removedItem.type.name })); + } else { + globalScene.queueMessage(i18next.t("moveTriggers:knockedOffItem", { pokemonName: getPokemonNameWithAffix(user), targetName: getPokemonNameWithAffix(target), itemName: removedItem.type.name })); } return true; @@ -2672,17 +2678,18 @@ export class RemoveHeldItemAttr extends MoveEffectAttr { * Attribute that causes targets of the move to eat a berry. Used for Teatime, Stuff Cheeks */ export class EatBerryAttr extends MoveEffectAttr { - protected chosenBerry: BerryModifier | undefined; + protected chosenBerry: BerryModifier; constructor(selfTarget: boolean) { super(selfTarget); } + /** * Causes the target to eat a berry. - * @param user {@linkcode Pokemon} Pokemon that used the move - * @param target {@linkcode Pokemon} Pokemon that will eat a berry - * @param move {@linkcode Move} The move being used + * @param user The {@linkcode Pokemon} Pokemon that used the move + * @param target The {@linkcode Pokemon} Pokemon that will eat the berry + * @param move The {@linkcode Move} being used * @param args Unused - * @returns {boolean} true if the function succeeds + * @returns `true` if the function succeeds */ apply(user: Pokemon, target: Pokemon, move: Move, args: any[]): boolean { if (!super.apply(user, target, move, args)) { @@ -2695,6 +2702,8 @@ export class EatBerryAttr extends MoveEffectAttr { if (heldBerries.length <= 0) { return false; } + + // pick a random berry to gobble and check if we preserve it this.chosenBerry = heldBerries[user.randSeedInt(heldBerries.length)]; const preserve = new BooleanHolder(false); // check for berry pouch preservation @@ -2702,7 +2711,10 @@ export class EatBerryAttr extends MoveEffectAttr { if (!preserve.value) { this.reduceBerryModifier(pokemon); } - this.eatBerry(pokemon); + + // Don't update harvest for berries preserved via Berry pouch (no item dupes lol) + this.eatBerry(target, undefined, !preserve.value); + return true; } @@ -2718,46 +2730,64 @@ export class EatBerryAttr extends MoveEffectAttr { globalScene.updateModifiers(target.isPlayer()); } - eatBerry(consumer: Pokemon, berryOwner?: Pokemon) { - getBerryEffectFunc(this.chosenBerry!.berryType)(consumer, berryOwner); // consumer eats the berry + + /** + * Internal function to apply berry effects. + * + * @param consumer - The {@linkcode Pokemon} eating the berry; assumed to also be owner if `berryOwner` is omitted + * @param berryOwner - The {@linkcode Pokemon} whose berry is being eaten; defaults to `consumer` if not specified. + * @param updateHarvest - Whether to prevent harvest from tracking berries; + * defaults to whether `consumer` equals `berryOwner` (i.e. consuming own berry). + */ + protected eatBerry(consumer: Pokemon, berryOwner: Pokemon = consumer, updateHarvest = consumer === berryOwner) { + // consumer eats berry, owner triggers unburden and similar effects + getBerryEffectFunc(this.chosenBerry.berryType)(consumer); + applyPostItemLostAbAttrs(PostItemLostAbAttr, berryOwner, false); applyAbAttrs(HealFromBerryUseAbAttr, consumer, new BooleanHolder(false)); + consumer.recordEatenBerry(this.chosenBerry.berryType, updateHarvest); } } /** - * Attribute used for moves that steal a random berry from the target. The user then eats the stolen berry. - * Used for Pluck & Bug Bite. + * Attribute used for moves that steal and eat a random berry from the target. + * Used for {@linkcode Moves.PLUCK} & {@linkcode Moves.BUG_BITE}. */ export class StealEatBerryAttr extends EatBerryAttr { constructor() { super(false); } + /** * User steals a random berry from the target and then eats it. - * @param user - Pokemon that used the move and will eat the stolen berry - * @param target - Pokemon that will have its berry stolen - * @param move - Move being used - * @param args Unused - * @returns true if the function succeeds + * @param user - The {@linkcode Pokemon} using the move; will eat the stolen berry + * @param target - The {@linkcode Pokemon} having its berry stolen + * @param move - The {@linkcode Move} being used + * @param args N/A + * @returns `true` if the function succeeds */ apply(user: Pokemon, target: Pokemon, move: Move, args: any[]): boolean { + // check for abilities that block item theft const cancelled = new BooleanHolder(false); - applyAbAttrs(BlockItemTheftAbAttr, target, cancelled); // check for abilities that block item theft + applyAbAttrs(BlockItemTheftAbAttr, target, cancelled); if (cancelled.value === true) { return false; } + // check if the target even _has_ a berry in the first place + // TODO: Check on cart if Pluck displays messages when used against sticky hold mons w/o berries const heldBerries = this.getTargetHeldBerries(target); if (heldBerries.length <= 0) { return false; } - // if the target has berries, pick a random berry and steal it + + // pick a random berry and eat it this.chosenBerry = heldBerries[user.randSeedInt(heldBerries.length)]; applyPostItemLostAbAttrs(PostItemLostAbAttr, target, false); const message = i18next.t("battle:stealEatBerry", { pokemonName: user.name, targetName: target.name, berryName: this.chosenBerry.type.name }); globalScene.queueMessage(message); this.reduceBerryModifier(target); this.eatBerry(user, target); + return true; } } @@ -3167,7 +3197,7 @@ export class StatStageChangeAttr extends MoveEffectAttr { private get showMessage () { return this.options?.showMessage ?? true; } - + /** * Attempts to change stats of the user or target (depending on value of selfTarget) if conditions are met * @param user {@linkcode Pokemon} the user of the move @@ -3460,7 +3490,8 @@ export class CutHpStatStageBoostAttr extends StatStageChangeAttr { /** * Attribute implementing the stat boosting effect of {@link https://bulbapedia.bulbagarden.net/wiki/Order_Up_(move) | Order Up}. * If the user has a Pokemon with {@link https://bulbapedia.bulbagarden.net/wiki/Commander_(Ability) | Commander} in their mouth, - * one of the user's stats are increased by 1 stage, depending on the "commanding" Pokemon's form. + * one of the user's stats are increased by 1 stage, depending on the "commanding" Pokemon's form. This effect does not respect + * effect chance, but Order Up itself may be boosted by Sheer Force. */ export class OrderUpStatBoostAttr extends MoveEffectAttr { constructor() { @@ -4110,30 +4141,23 @@ export class FriendshipPowerAttr extends VariablePowerAttr { /** * This Attribute calculates the current power of {@linkcode Moves.RAGE_FIST}. - * The counter for power calculation does not reset on every wave but on every new arena encounter + * The counter for power calculation does not reset on every wave but on every new arena encounter. + * Self-inflicted confusion damage and hits taken by a Subsitute are ignored. */ export class RageFistPowerAttr extends VariablePowerAttr { apply(user: Pokemon, target: Pokemon, move: Move, args: any[]): boolean { - const { hitCount, prevHitCount } = user.battleData; + /* Reasons this works correctly: + * Confusion calls user.damageAndUpdate() directly (no counter increment), + * Substitute hits call user.damageAndUpdate() with a damage value of 0, also causing + no counter increment + */ + const hitCount = user.battleData.hitCount; const basePower: NumberHolder = args[0]; - this.updateHitReceivedCount(user, hitCount, prevHitCount); - - basePower.value = 50 + (Math.min(user.customPokemonData.hitsRecCount, 6) * 50); - + basePower.value = 50 * (1 + Math.min(hitCount, 6)); return true; } - /** - * Updates the number of hits the Pokemon has taken in battle - * @param user Pokemon calling Rage Fist - * @param hitCount The number of received hits this battle - * @param previousHitCount The number of received hits this battle since last time Rage Fist was used - */ - protected updateHitReceivedCount(user: Pokemon, hitCount: number, previousHitCount: number): void { - user.customPokemonData.hitsRecCount += (hitCount - previousHitCount); - user.battleData.prevHitCount = hitCount; - } } /** @@ -4364,10 +4388,10 @@ export class LastMoveDoublePowerAttr extends VariablePowerAttr { const userAlly = user.getAlly(); const enemyAlly = enemy?.getAlly(); - if (!isNullOrUndefined(userAlly) && userAlly.turnData.acted) { + if (userAlly?.turnData.acted) { pokemonActed.push(userAlly); } - if (!isNullOrUndefined(enemyAlly) && enemyAlly.turnData.acted) { + if (enemyAlly?.turnData.acted) { pokemonActed.push(enemyAlly); } } @@ -4435,13 +4459,10 @@ export class CombinedPledgeStabBoostAttr extends MoveAttr { * @extends VariablePowerAttr */ export class RoundPowerAttr extends VariablePowerAttr { - override apply(user: Pokemon, target: Pokemon, move: Move, args: any[]): boolean { + override apply(user: Pokemon, target: Pokemon, move: Move, args: [NumberHolder]): boolean { const power = args[0]; - if (!(power instanceof NumberHolder)) { - return false; - } - if (user.turnData?.joinedRound) { + if (user.turnData.joinedRound) { power.value *= 2; return true; } @@ -4837,7 +4858,12 @@ export class FormChangeItemTypeAttr extends VariableMoveTypeAttr { return true; } - return false; + // Force move to have its original typing if it changed + if (moveType.value === move.type) { + return false; + } + moveType.value = move.type + return true; } } @@ -4988,7 +5014,11 @@ export class WeatherBallTypeAttr extends VariableMoveTypeAttr { moveType.value = PokemonType.ICE; break; default: - return false; + if (moveType.value === move.type) { + return false; + } + moveType.value = move.type; + break; } return true; } @@ -5036,7 +5066,12 @@ export class TerrainPulseTypeAttr extends VariableMoveTypeAttr { moveType.value = PokemonType.PSYCHIC; break; default: - return false; + if (moveType.value === move.type) { + return false; + } + // force move to have its original typing if it was changed + moveType.value = move.type; + break; } return true; } @@ -6141,7 +6176,7 @@ export class RevivalBlessingAttr extends MoveEffectAttr { const faintedPokemon = globalScene.getEnemyParty().filter((p) => p.isFainted() && !p.isBoss()); const pokemon = faintedPokemon[user.randSeedInt(faintedPokemon.length)]; const slotIndex = globalScene.getEnemyParty().findIndex((p) => pokemon.id === p.id); - pokemon.resetStatus(); + pokemon.resetStatus(true, false, false, true); pokemon.heal(Math.min(toDmgValue(0.5 * pokemon.getMaxHp()), pokemon.getMaxHp())); globalScene.queueMessage(i18next.t("moveTriggers:revivalBlessing", { pokemonName: getPokemonNameWithAffix(pokemon) }), 0, true); const allyPokemon = user.getAlly(); @@ -6333,11 +6368,11 @@ export class ForceSwitchOutAttr extends MoveEffectAttr { if (!allyPokemon?.isActive(true) && switchOutTarget.hp) { globalScene.pushPhase(new BattleEndPhase(false)); - + if (globalScene.gameMode.hasRandomBiomes || globalScene.isNewBiome()) { globalScene.pushPhase(new SelectBiomePhase()); } - + globalScene.pushPhase(new NewBattlePhase()); } } @@ -7760,17 +7795,27 @@ export class StatusIfBoostedAttr extends MoveEffectAttr { } } +/** + * Attribute to fail move usage unless all of the user's other moves have been used at least once. + * Used by {@linkcode Moves.LAST_RESORT}. + */ export class LastResortAttr extends MoveAttr { + // TODO: Verify behavior as Bulbapedia page is _extremely_ poorly documented getCondition(): MoveConditionFunc { - return (user: Pokemon, target: Pokemon, move: Move) => { - const uniqueUsedMoveIds = new Set(); - const movesetMoveIds = user.getMoveset().map(m => m.moveId); - user.getMoveHistory().map(m => { - if (m.move !== move.id && movesetMoveIds.find(mm => mm === m.move)) { - uniqueUsedMoveIds.add(m.move); - } - }); - return uniqueUsedMoveIds.size >= movesetMoveIds.length - 1; + return (user: Pokemon, _target: Pokemon, move: Move) => { + const movesInMoveset = new Set(user.getMoveset().map(m => m.moveId)); + if (!movesInMoveset.delete(move.id) || !movesInMoveset.size) { + return false; // Last resort fails if used when not in user's moveset or no other moves exist + } + + const movesInHistory = new Set( + user.getMoveHistory() + .filter(m => !m.virtual) // TODO: Change to (m) => m < MoveUseType.INDIRECT after Dancer PR refactors virtual into enum + .map(m => m.move) + ); + + // Since `Set.intersection()` is only present in ESNext, we have to coerce it to an array to check inclusion + return [...movesInMoveset].every(m => movesInHistory.has(m)) }; } } @@ -7978,13 +8023,18 @@ export class MoveCondition { } } +/** + * Condition to allow a move's use only on the first turn this Pokemon is sent into battle + * (or the start of a new wave, whichever comes first). + */ + export class FirstMoveCondition extends MoveCondition { constructor() { - super((user, target, move) => user.battleSummonData?.waveTurnCount === 1); + super((user, _target, _move) => user.tempSummonData.waveTurnCount === 1); } - getUserBenefitScore(user: Pokemon, target: Pokemon, move: Move): number { - return this.apply(user, target, move) ? 10 : -20; + getUserBenefitScore(user: Pokemon, _target: Pokemon, _move: Move): number { + return this.apply(user, _target, _move) ? 10 : -20; } } @@ -8622,10 +8672,12 @@ export function initMoves() { new StatusMove(Moves.TRANSFORM, PokemonType.NORMAL, -1, 10, -1, 0, 1) .attr(TransformAttr) .condition((user, target, move) => !target.getTag(BattlerTagType.SUBSTITUTE)) - .condition((user, target, move) => !target.summonData?.illusion && !user.summonData?.illusion) + .condition((user, target, move) => !target.summonData.illusion && !user.summonData.illusion) // transforming from or into fusion pokemon causes various problems (such as crashes) .condition((user, target, move) => !target.getTag(BattlerTagType.SUBSTITUTE) && !user.fusionSpecies && !target.fusionSpecies) - .ignoresProtect(), + .ignoresProtect() + // Transforming should copy the target's rage fist hit count + .edgeCase(), new AttackMove(Moves.BUBBLE, PokemonType.WATER, MoveCategory.SPECIAL, 40, 100, 30, 10, 0, 1) .attr(StatStageChangeAttr, [ Stat.SPD ], -1) .target(MoveTarget.ALL_NEAR_ENEMIES), @@ -8695,7 +8747,10 @@ export function initMoves() { .attr(MultiHitPowerIncrementAttr, 3) .checkAllHits(), new AttackMove(Moves.THIEF, PokemonType.DARK, MoveCategory.PHYSICAL, 60, 100, 25, -1, 0, 2) - .attr(StealHeldItemChanceAttr, 0.3), + .attr(StealHeldItemChanceAttr, 0.3) + .edgeCase(), + // Should not be able to steal held item if user faints due to Rough Skin, Iron Barbs, etc. + // Should be able to steal items from pokemon with Sticky Hold if the damage causes them to faint new StatusMove(Moves.SPIDER_WEB, PokemonType.BUG, -1, 10, -1, 0, 2) .condition(failIfGhostTypeCondition) .attr(AddBattlerTagAttr, BattlerTagType.TRAPPED, false, true, 1) @@ -8985,6 +9040,7 @@ export function initMoves() { .soundBased() .target(MoveTarget.RANDOM_NEAR_ENEMY) .partial(), // Does not lock the user, does not stop Pokemon from sleeping + // Likely can make use of FrenzyAttr and an ArenaTag (just without the FrenzyMissFunc) new SelfStatusMove(Moves.STOCKPILE, PokemonType.NORMAL, -1, 20, -1, 0, 3) .condition(user => (user.getTag(StockpilingTag)?.stockpiledCount ?? 0) < 3) .attr(AddBattlerTagAttr, BattlerTagType.STOCKPILING, true), @@ -9082,7 +9138,10 @@ export function initMoves() { .reflectable(), new AttackMove(Moves.KNOCK_OFF, PokemonType.DARK, MoveCategory.PHYSICAL, 65, 100, 20, -1, 0, 3) .attr(MovePowerMultiplierAttr, (user, target, move) => target.getHeldItems().filter(i => i.isTransferable).length > 0 ? 1.5 : 1) - .attr(RemoveHeldItemAttr, false), + .attr(RemoveHeldItemAttr, false) + .edgeCase(), + // Should not be able to remove held item if user faints due to Rough Skin, Iron Barbs, etc. + // Should be able to remove items from pokemon with Sticky Hold if the damage causes them to faint new AttackMove(Moves.ENDEAVOR, PokemonType.NORMAL, MoveCategory.PHYSICAL, -1, 100, 5, -1, 0, 3) .attr(MatchHpAttr) .condition(failOnBossCondition), @@ -9270,7 +9329,10 @@ export function initMoves() { .attr(HighCritAttr) .attr(StatusEffectAttr, StatusEffect.POISON), new AttackMove(Moves.COVET, PokemonType.NORMAL, MoveCategory.PHYSICAL, 60, 100, 25, -1, 0, 3) - .attr(StealHeldItemChanceAttr, 0.3), + .attr(StealHeldItemChanceAttr, 0.3) + .edgeCase(), + // Should not be able to steal held item if user faints due to Rough Skin, Iron Barbs, etc. + // Should be able to steal items from pokemon with Sticky Hold if the damage causes them to faint new AttackMove(Moves.VOLT_TACKLE, PokemonType.ELECTRIC, MoveCategory.PHYSICAL, 120, 100, 15, 10, 0, 3) .attr(RecoilAttr, false, 0.33) .attr(StatusEffectAttr, StatusEffect.PARALYSIS) @@ -9332,6 +9394,11 @@ export function initMoves() { new AttackMove(Moves.NATURAL_GIFT, PokemonType.NORMAL, MoveCategory.PHYSICAL, -1, 100, 15, -1, 0, 4) .makesContact(false) .unimplemented(), + /* + NOTE: To whoever tries to implement this, reminder to push to battleData.berriesEaten + and enable the harvest test.. + Do NOT push to berriesEatenLast or else cud chew will puke the berry. + */ new AttackMove(Moves.FEINT, PokemonType.NORMAL, MoveCategory.PHYSICAL, 30, 100, 10, -1, 2, 4) .attr(RemoveBattlerTagAttr, [ BattlerTagType.PROTECTED ]) .attr(RemoveArenaTagsAttr, [ ArenaTagType.QUICK_GUARD, ArenaTagType.WIDE_GUARD, ArenaTagType.MAT_BLOCK, ArenaTagType.CRAFTY_SHIELD ], false) @@ -9409,7 +9476,8 @@ export function initMoves() { .makesContact(true) .attr(PunishmentPowerAttr), new AttackMove(Moves.LAST_RESORT, PokemonType.NORMAL, MoveCategory.PHYSICAL, 140, 100, 5, -1, 0, 4) - .attr(LastResortAttr), + .attr(LastResortAttr) + .edgeCase(), // May or may not need to ignore remotely called moves depending on how it works new StatusMove(Moves.WORRY_SEED, PokemonType.GRASS, 100, 10, -1, 0, 4) .attr(AbilityChangeAttr, Abilities.INSOMNIA) .reflectable(), @@ -9776,7 +9844,9 @@ export function initMoves() { .hidesTarget(), new AttackMove(Moves.INCINERATE, PokemonType.FIRE, MoveCategory.SPECIAL, 60, 100, 15, -1, 0, 5) .target(MoveTarget.ALL_NEAR_ENEMIES) - .attr(RemoveHeldItemAttr, true), + .attr(RemoveHeldItemAttr, true) + .edgeCase(), + // Should be able to remove items from pokemon with Sticky Hold if the damage causes them to faint new StatusMove(Moves.QUASH, PokemonType.DARK, 100, 15, -1, 0, 5) .condition(failIfSingleBattle) .condition((user, target, move) => !target.turnData.acted) @@ -9951,7 +10021,7 @@ export function initMoves() { .condition(new FirstMoveCondition()) .condition(failIfLastCondition), new AttackMove(Moves.BELCH, PokemonType.POISON, MoveCategory.SPECIAL, 120, 90, 10, -1, 0, 6) - .condition((user, target, move) => user.battleData.berriesEaten.length > 0), + .condition((user, target, move) => user.battleData.hasEatenBerry), new StatusMove(Moves.ROTOTILLER, PokemonType.GROUND, -1, 10, -1, 0, 6) .target(MoveTarget.ALL) .condition((user, target, move) => { @@ -10963,7 +11033,7 @@ export function initMoves() { .makesContact(false), new AttackMove(Moves.LUMINA_CRASH, PokemonType.PSYCHIC, MoveCategory.SPECIAL, 80, 100, 10, 100, 0, 9) .attr(StatStageChangeAttr, [ Stat.SPDEF ], -2), - new AttackMove(Moves.ORDER_UP, PokemonType.DRAGON, MoveCategory.PHYSICAL, 80, 100, 10, -1, 0, 9) + new AttackMove(Moves.ORDER_UP, PokemonType.DRAGON, MoveCategory.PHYSICAL, 80, 100, 10, 100, 0, 9) .attr(OrderUpStatBoostAttr) .makesContact(false), new AttackMove(Moves.JET_PUNCH, PokemonType.WATER, MoveCategory.PHYSICAL, 60, 100, 15, -1, 1, 9) @@ -11077,7 +11147,6 @@ export function initMoves() { new AttackMove(Moves.TWIN_BEAM, PokemonType.PSYCHIC, MoveCategory.SPECIAL, 40, 100, 10, -1, 0, 9) .attr(MultiHitAttr, MultiHitType._2), new AttackMove(Moves.RAGE_FIST, PokemonType.GHOST, MoveCategory.PHYSICAL, 50, 100, 10, -1, 0, 9) - .edgeCase() // Counter incorrectly increases on confusion self-hits .attr(RageFistPowerAttr) .punchingMove(), new AttackMove(Moves.ARMOR_CANNON, PokemonType.FIRE, MoveCategory.SPECIAL, 120, 100, 5, -1, 0, 9) diff --git a/src/data/mystery-encounters/encounters/absolute-avarice-encounter.ts b/src/data/mystery-encounters/encounters/absolute-avarice-encounter.ts index e0486c83e77..acfc8cb16a1 100644 --- a/src/data/mystery-encounters/encounters/absolute-avarice-encounter.ts +++ b/src/data/mystery-encounters/encounters/absolute-avarice-encounter.ts @@ -37,7 +37,6 @@ import type HeldModifierConfig from "#app/interfaces/held-modifier-config"; import type { BerryType } from "#enums/berry-type"; import { StatStageChangePhase } from "#app/phases/stat-stage-change-phase"; import { Stat } from "#enums/stat"; -import { CLASSIC_MODE_MYSTERY_ENCOUNTER_WAVES } from "#app/constants"; import i18next from "i18next"; /** the i18n namespace for this encounter */ @@ -52,8 +51,8 @@ export const AbsoluteAvariceEncounter: MysteryEncounter = MysteryEncounterBuilde MysteryEncounterType.ABSOLUTE_AVARICE, ) .withEncounterTier(MysteryEncounterTier.GREAT) - .withSceneWaveRangeRequirement(...CLASSIC_MODE_MYSTERY_ENCOUNTER_WAVES) - .withSceneRequirement(new PersistentModifierRequirement("BerryModifier", 4)) // Must have at least 4 berries to spawn + .withSceneWaveRangeRequirement(20, 180) + .withSceneRequirement(new PersistentModifierRequirement("BerryModifier", 6)) // Must have at least 6 berries to spawn .withFleeAllowed(false) .withIntroSpriteConfigs([ { @@ -220,9 +219,9 @@ export const AbsoluteAvariceEncounter: MysteryEncounter = MysteryEncounterBuilde // Do NOT remove the real berries yet or else it will be persisted in the session data - // SpDef buff below wave 50, +1 to all stats otherwise + // +1 SpDef below wave 50, SpDef and Speed otherwise const statChangesForBattle: (Stat.ATK | Stat.DEF | Stat.SPATK | Stat.SPDEF | Stat.SPD | Stat.ACC | Stat.EVA)[] = - globalScene.currentBattle.waveIndex < 50 ? [Stat.SPDEF] : [Stat.ATK, Stat.DEF, Stat.SPATK, Stat.SPDEF, Stat.SPD]; + globalScene.currentBattle.waveIndex < 50 ? [Stat.SPDEF] : [Stat.SPDEF, Stat.SPD]; // Calculate boss mon const config: EnemyPartyConfig = { @@ -233,7 +232,7 @@ export const AbsoluteAvariceEncounter: MysteryEncounter = MysteryEncounterBuilde isBoss: true, bossSegments: 3, shiny: false, // Shiny lock because of consistency issues between the different options - moveSet: [Moves.THRASH, Moves.BODY_PRESS, Moves.STUFF_CHEEKS, Moves.CRUNCH], + moveSet: [Moves.THRASH, Moves.CRUNCH, Moves.BODY_PRESS, Moves.SLACK_OFF], modifierConfigs: bossModifierConfigs, tags: [BattlerTagType.MYSTERY_ENCOUNTER_POST_SUMMON], mysteryEncounterBattleEffects: (pokemon: Pokemon) => { diff --git a/src/data/mystery-encounters/encounters/bug-type-superfan-encounter.ts b/src/data/mystery-encounters/encounters/bug-type-superfan-encounter.ts index 001faf3a67f..87b223d5245 100644 --- a/src/data/mystery-encounters/encounters/bug-type-superfan-encounter.ts +++ b/src/data/mystery-encounters/encounters/bug-type-superfan-encounter.ts @@ -146,24 +146,34 @@ const POOL_4_POKEMON = [Species.GENESECT, Species.SLITHER_WING, Species.BUZZWOLE const PHYSICAL_TUTOR_MOVES = [ Moves.MEGAHORN, - Moves.X_SCISSOR, Moves.ATTACK_ORDER, - Moves.PIN_MISSILE, + Moves.BUG_BITE, Moves.FIRST_IMPRESSION, + Moves.LUNGE ]; -const SPECIAL_TUTOR_MOVES = [Moves.SILVER_WIND, Moves.BUG_BUZZ, Moves.SIGNAL_BEAM, Moves.POLLEN_PUFF]; +const SPECIAL_TUTOR_MOVES = [ + Moves.SILVER_WIND, + Moves.SIGNAL_BEAM, + Moves.BUG_BUZZ, + Moves.POLLEN_PUFF, + Moves.STRUGGLE_BUG +]; -const STATUS_TUTOR_MOVES = [Moves.STRING_SHOT, Moves.STICKY_WEB, Moves.SILK_TRAP, Moves.RAGE_POWDER, Moves.HEAL_ORDER]; +const STATUS_TUTOR_MOVES = [ + Moves.STRING_SHOT, + Moves.DEFEND_ORDER, + Moves.RAGE_POWDER, + Moves.STICKY_WEB, + Moves.SILK_TRAP +]; const MISC_TUTOR_MOVES = [ - Moves.BUG_BITE, Moves.LEECH_LIFE, - Moves.DEFEND_ORDER, - Moves.QUIVER_DANCE, - Moves.TAIL_GLOW, - Moves.INFESTATION, Moves.U_TURN, + Moves.HEAL_ORDER, + Moves.QUIVER_DANCE, + Moves.INFESTATION, ]; /** diff --git a/src/data/mystery-encounters/encounters/clowning-around-encounter.ts b/src/data/mystery-encounters/encounters/clowning-around-encounter.ts index 24c076f750e..ce5eb2cfdd1 100644 --- a/src/data/mystery-encounters/encounters/clowning-around-encounter.ts +++ b/src/data/mystery-encounters/encounters/clowning-around-encounter.ts @@ -397,9 +397,6 @@ export const ClowningAroundEncounter: MysteryEncounter = MysteryEncounterBuilder newTypes.push(secondType); // Apply the type changes (to both base and fusion, if pokemon is fused) - if (!pokemon.customPokemonData) { - pokemon.customPokemonData = new CustomPokemonData(); - } pokemon.customPokemonData.types = newTypes; if (pokemon.isFusion()) { if (!pokemon.fusionCustomPokemonData) { diff --git a/src/data/mystery-encounters/encounters/global-trade-system-encounter.ts b/src/data/mystery-encounters/encounters/global-trade-system-encounter.ts index b0721ddfee9..bb41bc7883c 100644 --- a/src/data/mystery-encounters/encounters/global-trade-system-encounter.ts +++ b/src/data/mystery-encounters/encounters/global-trade-system-encounter.ts @@ -684,7 +684,7 @@ function doPokemonTradeSequence(tradedPokemon: PlayerPokemon, receivedPokemon: P sprite.setPipelineData("shiny", tradedPokemon.shiny); sprite.setPipelineData("variant", tradedPokemon.variant); ["spriteColors", "fusionSpriteColors"].map(k => { - if (tradedPokemon.summonData?.speciesForm) { + if (tradedPokemon.summonData.speciesForm) { k += "Base"; } sprite.pipelineData[k] = tradedPokemon.getSprite().pipelineData[k]; @@ -710,7 +710,7 @@ function doPokemonTradeSequence(tradedPokemon: PlayerPokemon, receivedPokemon: P sprite.setPipelineData("shiny", receivedPokemon.shiny); sprite.setPipelineData("variant", receivedPokemon.variant); ["spriteColors", "fusionSpriteColors"].map(k => { - if (receivedPokemon.summonData?.speciesForm) { + if (receivedPokemon.summonData.speciesForm) { k += "Base"; } sprite.pipelineData[k] = receivedPokemon.getSprite().pipelineData[k]; diff --git a/src/data/mystery-encounters/encounters/mysterious-chest-encounter.ts b/src/data/mystery-encounters/encounters/mysterious-chest-encounter.ts index e9976ba04aa..e6c11378163 100644 --- a/src/data/mystery-encounters/encounters/mysterious-chest-encounter.ts +++ b/src/data/mystery-encounters/encounters/mysterious-chest-encounter.ts @@ -29,8 +29,8 @@ import { Species } from "#enums/species"; const namespace = "mysteryEncounters/mysteriousChest"; const RAND_LENGTH = 100; -const TRAP_PERCENT = 35; -const COMMON_REWARDS_PERCENT = 20; +const TRAP_PERCENT = 30; +const COMMON_REWARDS_PERCENT = 25; const ULTRA_REWARDS_PERCENT = 30; const ROGUE_REWARDS_PERCENT = 10; const MASTER_REWARDS_PERCENT = 5; diff --git a/src/data/mystery-encounters/encounters/slumbering-snorlax-encounter.ts b/src/data/mystery-encounters/encounters/slumbering-snorlax-encounter.ts index 41c20f35ba1..2654f6b18d8 100644 --- a/src/data/mystery-encounters/encounters/slumbering-snorlax-encounter.ts +++ b/src/data/mystery-encounters/encounters/slumbering-snorlax-encounter.ts @@ -19,6 +19,7 @@ import { setEncounterRewards, } from "../utils/encounter-phase-utils"; import { queueEncounterMessage } from "#app/data/mystery-encounters/utils/encounter-dialogue-utils"; +import { Nature } from "#enums/nature"; import { Moves } from "#enums/moves"; import { BattlerIndex } from "#app/battle"; import { AiType, PokemonMove } from "#app/field/pokemon"; @@ -26,9 +27,10 @@ import { getPokemonSpecies } from "#app/data/pokemon-species"; import { MysteryEncounterTier } from "#enums/mystery-encounter-tier"; import { MysteryEncounterOptionMode } from "#enums/mystery-encounter-option-mode"; import { PartyHealPhase } from "#app/phases/party-heal-phase"; -import { CLASSIC_MODE_MYSTERY_ENCOUNTER_WAVES } from "#app/constants"; import { BerryType } from "#enums/berry-type"; +import { Stat } from "#enums/stat"; import { CustomPokemonData } from "#app/data/custom-pokemon-data"; +import { randSeedInt } from "#app/utils/common"; /** i18n namespace for the encounter */ const namespace = "mysteryEncounters/slumberingSnorlax"; @@ -42,7 +44,7 @@ export const SlumberingSnorlaxEncounter: MysteryEncounter = MysteryEncounterBuil MysteryEncounterType.SLUMBERING_SNORLAX, ) .withEncounterTier(MysteryEncounterTier.GREAT) - .withSceneWaveRangeRequirement(...CLASSIC_MODE_MYSTERY_ENCOUNTER_WAVES) + .withSceneWaveRangeRequirement(15, 150) .withCatchAllowed(true) .withHideWildIntroMessage(true) .withFleeAllowed(false) @@ -72,16 +74,26 @@ export const SlumberingSnorlaxEncounter: MysteryEncounter = MysteryEncounterBuil species: bossSpecies, isBoss: true, shiny: false, // Shiny lock because shiny is rolled only if the battle option is picked - status: [StatusEffect.SLEEP, 5], // Extra turns on timer for Snorlax's start of fight moves - moveSet: [Moves.REST, Moves.SLEEP_TALK, Moves.CRUNCH, Moves.GIGA_IMPACT], + status: [StatusEffect.SLEEP, 6], // Extra turns on timer for Snorlax's start of fight moves + nature: Nature.DOCILE, + moveSet: [Moves.BODY_SLAM, Moves.CRUNCH, Moves.SLEEP_TALK, Moves.REST], modifierConfigs: [ { modifier: generateModifierType(modifierTypes.BERRY, [BerryType.SITRUS]) as PokemonHeldItemModifierType, - stackCount: 2, }, { modifier: generateModifierType(modifierTypes.BERRY, [BerryType.ENIGMA]) as PokemonHeldItemModifierType, - stackCount: 2, + }, + { + modifier: generateModifierType(modifierTypes.BASE_STAT_BOOSTER, [Stat.HP]) as PokemonHeldItemModifierType, + }, + { + modifier: generateModifierType(modifierTypes.SOOTHE_BELL) as PokemonHeldItemModifierType, + stackCount: randSeedInt(2, 0), + }, + { + modifier: generateModifierType(modifierTypes.LUCKY_EGG) as PokemonHeldItemModifierType, + stackCount: randSeedInt(2, 0), }, ], customPokemonData: new CustomPokemonData({ spriteScale: 1.25 }), @@ -128,12 +140,6 @@ export const SlumberingSnorlaxEncounter: MysteryEncounter = MysteryEncounterBuil move: new PokemonMove(Moves.SNORE), ignorePp: true, }, - { - sourceBattlerIndex: BattlerIndex.ENEMY, - targets: [BattlerIndex.PLAYER], - move: new PokemonMove(Moves.SNORE), - ignorePp: true, - }, ); await initBattleWithEnemyConfig(encounter.enemyPartyConfigs[0]); }, diff --git a/src/data/mystery-encounters/encounters/the-expert-pokemon-breeder-encounter.ts b/src/data/mystery-encounters/encounters/the-expert-pokemon-breeder-encounter.ts index 076171b3e5e..15063bc2763 100644 --- a/src/data/mystery-encounters/encounters/the-expert-pokemon-breeder-encounter.ts +++ b/src/data/mystery-encounters/encounters/the-expert-pokemon-breeder-encounter.ts @@ -11,7 +11,6 @@ import { randSeedShuffle } from "#app/utils/common"; import type MysteryEncounter from "../mystery-encounter"; import { MysteryEncounterBuilder } from "../mystery-encounter"; import { MysteryEncounterTier } from "#enums/mystery-encounter-tier"; -import { CLASSIC_MODE_MYSTERY_ENCOUNTER_WAVES } from "#app/constants"; import { Biome } from "#enums/biome"; import { TrainerType } from "#enums/trainer-type"; import i18next from "i18next"; @@ -123,7 +122,7 @@ export const TheExpertPokemonBreederEncounter: MysteryEncounter = MysteryEncount MysteryEncounterType.THE_EXPERT_POKEMON_BREEDER, ) .withEncounterTier(MysteryEncounterTier.ULTRA) - .withSceneWaveRangeRequirement(...CLASSIC_MODE_MYSTERY_ENCOUNTER_WAVES) + .withSceneWaveRangeRequirement(25, 180) .withScenePartySizeRequirement(4, 6, true) // Must have at least 4 legal pokemon in party .withIntroSpriteConfigs([]) // These are set in onInit() .withIntroDialogue([ @@ -483,9 +482,9 @@ function getPartyConfig(): EnemyPartyConfig { abilityIndex: 1, // Magic Guard shiny: false, nature: Nature.ADAMANT, - moveSet: [Moves.METEOR_MASH, Moves.FIRE_PUNCH, Moves.ICE_PUNCH, Moves.THUNDER_PUNCH], + moveSet: [Moves.FIRE_PUNCH, Moves.ICE_PUNCH, Moves.THUNDER_PUNCH, Moves.METEOR_MASH], ivs: [31, 31, 31, 31, 31, 31], - tera: PokemonType.STEEL, + tera: PokemonType.FAIRY, }, ], }; diff --git a/src/data/mystery-encounters/encounters/the-pokemon-salesman-encounter.ts b/src/data/mystery-encounters/encounters/the-pokemon-salesman-encounter.ts index bfba553af5d..25798de3b4a 100644 --- a/src/data/mystery-encounters/encounters/the-pokemon-salesman-encounter.ts +++ b/src/data/mystery-encounters/encounters/the-pokemon-salesman-encounter.ts @@ -88,7 +88,7 @@ export const ThePokemonSalesmanEncounter: MysteryEncounter = MysteryEncounterBui const r = randSeedInt(SHINY_MAGIKARP_WEIGHT); - const validEventEncounters = timedEventManager + let validEventEncounters = timedEventManager .getEventEncounters() .filter( s => @@ -106,7 +106,7 @@ export const ThePokemonSalesmanEncounter: MysteryEncounter = MysteryEncounterBui * If an event with more than 1 valid event encounter species is active, you have 20% chance to get one of those * If the rolled species has no HA, and there are valid event encounters, you will get one of those * If the rolled species has no HA and there are no valid event encounters, you will get Shiny Magikarp - * Mons rolled from the event encounter pool get 2 extra shiny rolls + * Mons rolled from the event encounter pool get 3 extra shiny rolls */ if ( r === 0 || @@ -116,17 +116,44 @@ export const ThePokemonSalesmanEncounter: MysteryEncounter = MysteryEncounterBui // If you roll 1%, give shiny Magikarp with random variant species = getPokemonSpecies(Species.MAGIKARP); pokemon = new PlayerPokemon(species, 5, 2, undefined, undefined, true); - } else if ( + } + else if ( (validEventEncounters.length > 0 && (r <= EVENT_THRESHOLD || (isNullOrUndefined(species.abilityHidden) || species.abilityHidden === Abilities.NONE))) ) { - // If you roll 20%, give event encounter with 2 extra shiny rolls and its HA, if it has one - const enc = randSeedItem(validEventEncounters); - species = getPokemonSpecies(enc.species); - pokemon = new PlayerPokemon(species, 5, species.abilityHidden === Abilities.NONE ? undefined : 2, enc.formIndex); - pokemon.trySetShinySeed(); - pokemon.trySetShinySeed(); - } else { + tries = 0; + do { + // If you roll 20%, give event encounter with 3 extra shiny rolls and its HA, if it has one + const enc = randSeedItem(validEventEncounters); + species = getPokemonSpecies(enc.species); + pokemon = new PlayerPokemon(species, 5, species.abilityHidden === Abilities.NONE ? undefined : 2, enc.formIndex); + pokemon.trySetShinySeed(); + pokemon.trySetShinySeed(); + pokemon.trySetShinySeed(); + if (pokemon.shiny || pokemon.abilityIndex === 2) { + break; + } + tries++; + } while (tries < 6); + if (!pokemon.shiny && pokemon.abilityIndex !== 2) { + // If, after 6 tries, you STILL somehow don't have an HA or shiny mon, pick from only the event mons that have an HA. + if (validEventEncounters.some(s => !!getPokemonSpecies(s.species).abilityHidden)) { + validEventEncounters.filter(s => !!getPokemonSpecies(s.species).abilityHidden); + const enc = randSeedItem(validEventEncounters); + species = getPokemonSpecies(enc.species); + pokemon = new PlayerPokemon(species, 5, 2, enc.formIndex); + pokemon.trySetShinySeed(); + pokemon.trySetShinySeed(); + pokemon.trySetShinySeed(); + } + else { + // If there's, and this would never happen, no eligible event encounters with a hidden ability, just do Magikarp + species = getPokemonSpecies(Species.MAGIKARP); + pokemon = new PlayerPokemon(species, 5, 2, undefined, undefined, true); + } + } + } + else { pokemon = new PlayerPokemon(species, 5, 2, species.formIndex); } pokemon.generateAndPopulateMoveset(); diff --git a/src/data/mystery-encounters/encounters/the-winstrate-challenge-encounter.ts b/src/data/mystery-encounters/encounters/the-winstrate-challenge-encounter.ts index bc7c570abca..3cbe42591d8 100644 --- a/src/data/mystery-encounters/encounters/the-winstrate-challenge-encounter.ts +++ b/src/data/mystery-encounters/encounters/the-winstrate-challenge-encounter.ts @@ -222,7 +222,8 @@ function endTrainerBattleAndShowDialogue(): Promise { globalScene.triggerPokemonFormChange(pokemon, SpeciesFormChangeAbilityTrigger); } - pokemon.resetBattleData(); + // Each trainer battle is supposed to be a new fight, so reset all per-battle activation effects + pokemon.resetBattleAndWaveData(); applyPostBattleInitAbAttrs(PostBattleInitAbAttr, pokemon); } diff --git a/src/data/mystery-encounters/encounters/weird-dream-encounter.ts b/src/data/mystery-encounters/encounters/weird-dream-encounter.ts index cd9ffefb516..cceda25fcb4 100644 --- a/src/data/mystery-encounters/encounters/weird-dream-encounter.ts +++ b/src/data/mystery-encounters/encounters/weird-dream-encounter.ts @@ -23,7 +23,6 @@ import { allSpecies, getPokemonSpecies } from "#app/data/pokemon-species"; import type { PokemonHeldItemModifier } from "#app/modifier/modifier"; import { HiddenAbilityRateBoosterModifier, PokemonFormChangeItemModifier } from "#app/modifier/modifier"; import { achvs } from "#app/system/achv"; -import { CustomPokemonData } from "#app/data/custom-pokemon-data"; import { showEncounterText } from "#app/data/mystery-encounters/utils/encounter-dialogue-utils"; import type { PokemonHeldItemModifierType } from "#app/modifier/modifier-type"; import { modifierTypes } from "#app/modifier/modifier-type"; @@ -601,9 +600,6 @@ async function postProcessTransformedPokemon( newType = randSeedInt(18) as PokemonType; } newTypes.push(newType); - if (!newPokemon.customPokemonData) { - newPokemon.customPokemonData = new CustomPokemonData(); - } newPokemon.customPokemonData.types = newTypes; // Enable passive if previous had it diff --git a/src/data/mystery-encounters/mystery-encounters.ts b/src/data/mystery-encounters/mystery-encounters.ts index 5dd952b2bce..1a36dc27df2 100644 --- a/src/data/mystery-encounters/mystery-encounters.ts +++ b/src/data/mystery-encounters/mystery-encounters.ts @@ -226,9 +226,9 @@ const anyBiomeEncounters: MysteryEncounterType[] = [ */ export const mysteryEncountersByBiome = new Map([ [Biome.TOWN, []], - [Biome.PLAINS, [MysteryEncounterType.SLUMBERING_SNORLAX, MysteryEncounterType.ABSOLUTE_AVARICE]], + [Biome.PLAINS, [MysteryEncounterType.SLUMBERING_SNORLAX]], [Biome.GRASS, [MysteryEncounterType.SLUMBERING_SNORLAX, MysteryEncounterType.ABSOLUTE_AVARICE]], - [Biome.TALL_GRASS, [MysteryEncounterType.ABSOLUTE_AVARICE]], + [Biome.TALL_GRASS, [MysteryEncounterType.SLUMBERING_SNORLAX, MysteryEncounterType.ABSOLUTE_AVARICE]], [Biome.METROPOLIS, []], [Biome.FOREST, [MysteryEncounterType.SAFARI_ZONE, MysteryEncounterType.ABSOLUTE_AVARICE]], [Biome.SEA, [MysteryEncounterType.LOST_AT_SEA]], diff --git a/src/data/mystery-encounters/utils/encounter-phase-utils.ts b/src/data/mystery-encounters/utils/encounter-phase-utils.ts index 67904fc856c..0215928bbe8 100644 --- a/src/data/mystery-encounters/utils/encounter-phase-utils.ts +++ b/src/data/mystery-encounters/utils/encounter-phase-utils.ts @@ -10,7 +10,7 @@ import { import { showEncounterText } from "#app/data/mystery-encounters/utils/encounter-dialogue-utils"; import type { AiType, PlayerPokemon } from "#app/field/pokemon"; import type Pokemon from "#app/field/pokemon"; -import { EnemyPokemon, FieldPosition, PokemonMove, PokemonSummonData } from "#app/field/pokemon"; +import { EnemyPokemon, FieldPosition, PokemonMove } from "#app/field/pokemon"; import type { CustomModifierSettings, ModifierType } from "#app/modifier/modifier-type"; import { getPartyLuckValue, @@ -348,11 +348,6 @@ export async function initBattleWithEnemyConfig(partyConfig: EnemyPartyConfig): enemyPokemon.status = new Status(status, 0, cureTurn); } - // Set summon data fields - if (!enemyPokemon.summonData) { - enemyPokemon.summonData = new PokemonSummonData(); - } - // Set ability if (!isNullOrUndefined(config.abilityIndex)) { enemyPokemon.abilityIndex = config.abilityIndex; @@ -390,14 +385,11 @@ export async function initBattleWithEnemyConfig(partyConfig: EnemyPartyConfig): } } - // mysteryEncounterBattleEffects will only be used IFF MYSTERY_ENCOUNTER_POST_SUMMON tag is applied + // mysteryEncounterBattleEffects will only be used if MYSTERY_ENCOUNTER_POST_SUMMON tag is applied if (config.mysteryEncounterBattleEffects) { enemyPokemon.mysteryEncounterBattleEffects = config.mysteryEncounterBattleEffects; } - // Requires re-priming summon data to update everything properly - enemyPokemon.primeSummonData(enemyPokemon.summonData); - if (enemyPokemon.isShiny() && !enemyPokemon["shinySparkle"]) { enemyPokemon.initShinySparkle(); } diff --git a/src/data/mystery-encounters/utils/encounter-pokemon-utils.ts b/src/data/mystery-encounters/utils/encounter-pokemon-utils.ts index ed94a46ac18..a6a87b4ab9a 100644 --- a/src/data/mystery-encounters/utils/encounter-pokemon-utils.ts +++ b/src/data/mystery-encounters/utils/encounter-pokemon-utils.ts @@ -1031,9 +1031,6 @@ export function applyAbilityOverrideToPokemon(pokemon: Pokemon, ability: Abiliti } pokemon.fusionCustomPokemonData.ability = ability; } else { - if (!pokemon.customPokemonData) { - pokemon.customPokemonData = new CustomPokemonData(); - } pokemon.customPokemonData.ability = ability; } } diff --git a/src/data/mystery-encounters/utils/encounter-transformation-sequence.ts b/src/data/mystery-encounters/utils/encounter-transformation-sequence.ts index 578c2efefdb..ebef47eac2d 100644 --- a/src/data/mystery-encounters/utils/encounter-transformation-sequence.ts +++ b/src/data/mystery-encounters/utils/encounter-transformation-sequence.ts @@ -88,7 +88,7 @@ export function doPokemonTransformationSequence( sprite.setPipelineData("shiny", previousPokemon.shiny); sprite.setPipelineData("variant", previousPokemon.variant); ["spriteColors", "fusionSpriteColors"].map(k => { - if (previousPokemon.summonData?.speciesForm) { + if (previousPokemon.summonData.speciesForm) { k += "Base"; } sprite.pipelineData[k] = previousPokemon.getSprite().pipelineData[k]; @@ -108,7 +108,7 @@ export function doPokemonTransformationSequence( sprite.setPipelineData("shiny", transformPokemon.shiny); sprite.setPipelineData("variant", transformPokemon.variant); ["spriteColors", "fusionSpriteColors"].map(k => { - if (transformPokemon.summonData?.speciesForm) { + if (transformPokemon.summonData.speciesForm) { k += "Base"; } sprite.pipelineData[k] = transformPokemon.getSprite().pipelineData[k]; diff --git a/src/data/pokemon-species.ts b/src/data/pokemon-species.ts index 2fff2b562c0..59167ba47f6 100644 --- a/src/data/pokemon-species.ts +++ b/src/data/pokemon-species.ts @@ -33,6 +33,7 @@ import { SpeciesFormKey } from "#enums/species-form-key"; import { starterPassiveAbilities } from "#app/data/balance/passives"; import { loadPokemonVariantAssets } from "#app/sprites/pokemon-sprite"; import { hasExpSprite } from "#app/sprites/sprite-utils"; +import { Gender } from "./gender"; export enum Region { NORMAL, @@ -485,6 +486,7 @@ export abstract class PokemonSpeciesForm { break; case Species.ZACIAN: case Species.ZAMAZENTA: + // biome-ignore lint/suspicious/noFallthroughSwitchClause: Falls through if (formSpriteKey.startsWith("behemoth")) { formSpriteKey = "crowned"; } @@ -748,7 +750,7 @@ export abstract class PokemonSpeciesForm { let paletteColors: Map = new Map(); const originalRandom = Math.random; - Math.random = () => Phaser.Math.RND.realInRange(0, 1); + Math.random = Phaser.Math.RND.frac; globalScene.executeWithSeedOffset( () => { @@ -878,6 +880,21 @@ export default class PokemonSpecies extends PokemonSpeciesForm implements Locali return this.name; } + /** + * Pick and return a random {@linkcode Gender} for a {@linkcode Pokemon}. + * @returns A randomly rolled gender based on this Species' {@linkcode malePercent}. + */ + generateGender(): Gender { + if (isNullOrUndefined(this.malePercent)) { + return Gender.GENDERLESS; + } + + if (Phaser.Math.RND.realInRange(0, 1) <= this.malePercent) { + return Gender.MALE; + } + return Gender.FEMALE; + } + /** * Find the name of species with proper attachments for regionals and separate starter forms (Floette, Ursaluna) * @returns a string with the region name or other form name attached diff --git a/src/data/trainers/TrainerPartyTemplate.ts b/src/data/trainers/TrainerPartyTemplate.ts index 1952bcc179e..ccc494218e9 100644 --- a/src/data/trainers/TrainerPartyTemplate.ts +++ b/src/data/trainers/TrainerPartyTemplate.ts @@ -224,18 +224,19 @@ export const trainerPartyTemplates = { */ export function getEvilGruntPartyTemplate(): TrainerPartyTemplate { const waveIndex = globalScene.currentBattle?.waveIndex; - switch (waveIndex) { - case ClassicFixedBossWaves.EVIL_GRUNT_1: - return trainerPartyTemplates.TWO_AVG; - case ClassicFixedBossWaves.EVIL_GRUNT_2: - return trainerPartyTemplates.THREE_AVG; - case ClassicFixedBossWaves.EVIL_GRUNT_3: - return trainerPartyTemplates.TWO_AVG_ONE_STRONG; - case ClassicFixedBossWaves.EVIL_ADMIN_1: - return trainerPartyTemplates.GYM_LEADER_4; // 3avg 1 strong 1 stronger - default: - return trainerPartyTemplates.GYM_LEADER_5; // 3 avg 2 strong 1 stronger + if (waveIndex <= ClassicFixedBossWaves.EVIL_GRUNT_1){ + return trainerPartyTemplates.TWO_AVG; } + if (waveIndex <= ClassicFixedBossWaves.EVIL_GRUNT_2){ + return trainerPartyTemplates.THREE_AVG; + } + if (waveIndex <= ClassicFixedBossWaves.EVIL_GRUNT_3){ + return trainerPartyTemplates.TWO_AVG_ONE_STRONG; + } + if (waveIndex <= ClassicFixedBossWaves.EVIL_ADMIN_1){ + return trainerPartyTemplates.GYM_LEADER_4; // 3avg 1 strong 1 stronger + } + return trainerPartyTemplates.GYM_LEADER_5; // 3 avg 2 strong 1 stronger } export function getWavePartyTemplate(...templates: TrainerPartyTemplate[]) { diff --git a/src/data/trainers/trainer-config.ts b/src/data/trainers/trainer-config.ts index a2e62e6761b..50acf84efa6 100644 --- a/src/data/trainers/trainer-config.ts +++ b/src/data/trainers/trainer-config.ts @@ -707,11 +707,11 @@ export class TrainerConfig { /** * Initializes the trainer configuration for an Elite Four member. - * @param {Species | Species[]} signatureSpecies The signature species for the Elite Four member. - * @param isMale Whether the Elite Four Member is Male or Female (for localization of the title). - * @param specialtyType {PokemonType} The specialty type for the Elite Four member. - * @param teraSlot Optional, sets the party member in this slot to Terastallize. - * @returns {TrainerConfig} The updated TrainerConfig instance. + * @param signatureSpecies - The signature species for the Elite Four member. + * @param isMale - Whether the Elite Four Member is Male or Female (for localization of the title). + * @param specialtyType - The specialty type for the Elite Four member. + * @param teraSlot - Optional, sets the party member in this slot to Terastallize. + * @returns The updated TrainerConfig instance. **/ initForEliteFour( signatureSpecies: (Species | Species[])[], @@ -2853,146 +2853,688 @@ export const trainerConfigs: TrainerConfigs = { .setMixedBattleBgm("battle_paldea_gym"), [TrainerType.LORELEI]: new TrainerConfig((t = TrainerType.LORELEI)) - .initForEliteFour(signatureSpecies["LORELEI"], false, PokemonType.ICE) + .initForEliteFour(signatureSpecies["LORELEI"], false, PokemonType.ICE, 2) .setBattleBgm("battle_kanto_gym") - .setMixedBattleBgm("battle_kanto_gym"), + .setMixedBattleBgm("battle_kanto_gym") + .setPartyMemberFunc(0, getRandomPartyMemberFunc([Species.DEWGONG], TrainerSlot.TRAINER, true, p => { + p.abilityIndex = 0; // Thick Fat + p.generateAndPopulateMoveset(); + }), + ) + .setPartyMemberFunc(2, getRandomPartyMemberFunc([Species.SLOWBRO, Species.GALAR_SLOWBRO], TrainerSlot.TRAINER, true, p => { // Tera Ice Slowbro/G-Slowbro + p.generateAndPopulateMoveset(); + if (!p.moveset.some(move => !isNullOrUndefined(move) && move.moveId === Moves.ICE_BEAM)) { // Check if Ice Beam is in the moveset, if not, replace the third move with Ice Beam. + p.moveset[2] = new PokemonMove(Moves.ICE_BEAM); + } + }), + ) + .setPartyMemberFunc(3, getRandomPartyMemberFunc([Species.JYNX])) + .setPartyMemberFunc(4, getRandomPartyMemberFunc([Species.CLOYSTER, Species.ALOLA_SANDSLASH])) + .setPartyMemberFunc(5, getRandomPartyMemberFunc([Species.LAPRAS], TrainerSlot.TRAINER, true, p => { + p.setBoss(true, 2); + p.generateAndPopulateMoveset(); + }), + ), [TrainerType.BRUNO]: new TrainerConfig(++t) - .initForEliteFour(signatureSpecies["BRUNO"], true, PokemonType.FIGHTING) + .initForEliteFour(signatureSpecies["BRUNO"], true, PokemonType.FIGHTING, 2) .setBattleBgm("battle_kanto_gym") - .setMixedBattleBgm("battle_kanto_gym"), + .setMixedBattleBgm("battle_kanto_gym") + .setPartyMemberFunc(0, getRandomPartyMemberFunc([Species.HITMONLEE, Species.HITMONCHAN, Species.HITMONTOP])) + .setPartyMemberFunc(2, getRandomPartyMemberFunc([Species.STEELIX], TrainerSlot.TRAINER, true, p => { // Tera Fighting Steelix + p.generateAndPopulateMoveset(); + if (!p.moveset.some(move => !isNullOrUndefined(move) && move.moveId === Moves.BODY_PRESS)) { // Check if Body Press is in the moveset, if not, replace the third move with Body Press. + p.moveset[2] = new PokemonMove(Moves.BODY_PRESS); + } + }), + ) + .setPartyMemberFunc(3, getRandomPartyMemberFunc([Species.POLIWRATH])) + .setPartyMemberFunc(4, getRandomPartyMemberFunc([Species.ANNIHILAPE])) + .setPartyMemberFunc( + 5, + getRandomPartyMemberFunc([Species.MACHAMP], TrainerSlot.TRAINER, true, p => { + p.setBoss(true, 2); + p.generateAndPopulateMoveset(); + }), + ), [TrainerType.AGATHA]: new TrainerConfig(++t) - .initForEliteFour(signatureSpecies["AGATHA"], false, PokemonType.GHOST) + .initForEliteFour(signatureSpecies["AGATHA"], false, PokemonType.GHOST, 2) .setBattleBgm("battle_kanto_gym") - .setMixedBattleBgm("battle_kanto_gym"), + .setMixedBattleBgm("battle_kanto_gym") + .setPartyMemberFunc(0, getRandomPartyMemberFunc([Species.MISMAGIUS])) + .setPartyMemberFunc(2, getRandomPartyMemberFunc([Species.ARBOK, Species.WEEZING], TrainerSlot.TRAINER, true, p => { // Tera Ghost Arbok/Weezing + p.generateAndPopulateMoveset(); + if (!p.moveset.some(move => !isNullOrUndefined(move) && move.moveId === Moves.TERA_BLAST)) { // Check if Tera Blast is in the moveset, if not, replace the third move with Tera Blast. + p.moveset[2] = new PokemonMove(Moves.TERA_BLAST); + } + }), + ) + .setPartyMemberFunc(3, getRandomPartyMemberFunc([Species.ALOLA_MAROWAK])) + .setPartyMemberFunc(4, getRandomPartyMemberFunc([Species.CURSOLA])) + .setPartyMemberFunc(5, getRandomPartyMemberFunc([Species.GENGAR], TrainerSlot.TRAINER, true, p => { + p.setBoss(true, 2); + p.generateAndPopulateMoveset(); + }), + ), [TrainerType.LANCE]: new TrainerConfig(++t) .setName("Lance") - .initForEliteFour(signatureSpecies["LANCE"], true, PokemonType.DRAGON) + .initForEliteFour(signatureSpecies["LANCE"], true, PokemonType.DRAGON, 2) .setBattleBgm("battle_kanto_gym") - .setMixedBattleBgm("battle_kanto_gym"), + .setMixedBattleBgm("battle_kanto_gym") + .setPartyMemberFunc(0, getRandomPartyMemberFunc([Species.KINGDRA])) + .setPartyMemberFunc(2, getRandomPartyMemberFunc([Species.GYARADOS, Species.AERODACTYL], TrainerSlot.TRAINER, true, p => { // Tera Dragon Gyarados/Aerodactyl + p.generateAndPopulateMoveset(); + if (!p.moveset.some(move => !isNullOrUndefined(move) && move.moveId === Moves.TERA_BLAST)) { // Check if Tera Blast is in the moveset, if not, replace the third move with Tera Blast. + p.moveset[2] = new PokemonMove(Moves.TERA_BLAST); + } + }), + ) + .setPartyMemberFunc(3, getRandomPartyMemberFunc([Species.ALOLA_EXEGGUTOR])) + .setPartyMemberFunc(4, getRandomPartyMemberFunc([Species.SALAMENCE])) + .setPartyMemberFunc(5, getRandomPartyMemberFunc([Species.DRAGONITE], TrainerSlot.TRAINER, true, p => { + p.setBoss(true, 2); + p.generateAndPopulateMoveset(); + }), + ), [TrainerType.WILL]: new TrainerConfig(++t) - .initForEliteFour(signatureSpecies["WILL"], true, PokemonType.PSYCHIC) + .initForEliteFour(signatureSpecies["WILL"], true, PokemonType.PSYCHIC, 2) .setBattleBgm("battle_johto_gym") - .setMixedBattleBgm("battle_johto_gym"), + .setMixedBattleBgm("battle_johto_gym") + .setPartyMemberFunc(0, getRandomPartyMemberFunc([Species.JYNX])) + .setPartyMemberFunc(2, getRandomPartyMemberFunc([Species.SLOWKING, Species.GALAR_SLOWKING])) // Tera Psychic Slowking/G-Slowking + .setPartyMemberFunc(3, getRandomPartyMemberFunc([Species.EXEGGUTOR])) + .setPartyMemberFunc(4, getRandomPartyMemberFunc([Species.WYRDEER, Species.FARIGIRAF])) + .setPartyMemberFunc(5, getRandomPartyMemberFunc([Species.XATU], TrainerSlot.TRAINER, true, p => { + p.setBoss(true, 2); + p.generateAndPopulateMoveset(); + }), + ), [TrainerType.KOGA]: new TrainerConfig(++t) - .initForEliteFour(signatureSpecies["KOGA"], true, PokemonType.POISON) + .initForEliteFour(signatureSpecies["KOGA"], true, PokemonType.POISON, 2) .setBattleBgm("battle_johto_gym") - .setMixedBattleBgm("battle_johto_gym"), + .setMixedBattleBgm("battle_johto_gym") + .setPartyMemberFunc(0, getRandomPartyMemberFunc([Species.VENOMOTH], TrainerSlot.TRAINER, true, p => { + p.abilityIndex = 1; // Tinted Lens + p.generateAndPopulateMoveset(); + }), + ) + .setPartyMemberFunc(2, getRandomPartyMemberFunc([Species.MUK, Species.WEEZING])) // Tera Poison Muk/Weezing + .setPartyMemberFunc(3, getRandomPartyMemberFunc([Species.TENTACRUEL])) + .setPartyMemberFunc(4, getRandomPartyMemberFunc([Species.SNEASLER, Species.OVERQWIL])) + .setPartyMemberFunc(5, getRandomPartyMemberFunc([Species.CROBAT], TrainerSlot.TRAINER, true, p => { + p.setBoss(true, 2); + p.generateAndPopulateMoveset(); + }), + ), [TrainerType.KAREN]: new TrainerConfig(++t) - .initForEliteFour(signatureSpecies["KAREN"], false, PokemonType.DARK) + .initForEliteFour(signatureSpecies["KAREN"], false, PokemonType.DARK, 2) .setBattleBgm("battle_johto_gym") - .setMixedBattleBgm("battle_johto_gym"), + .setMixedBattleBgm("battle_johto_gym") + .setPartyMemberFunc(0, getRandomPartyMemberFunc([Species.UMBREON])) + .setPartyMemberFunc(2, getRandomPartyMemberFunc([Species.GENGAR], TrainerSlot.TRAINER, true, p => { // Tera Dark Gengar + p.generateAndPopulateMoveset(); + if (!p.moveset.some(move => !isNullOrUndefined(move) && move.moveId === Moves.DARK_PULSE)) { // Check if Dark Pulse is in the moveset, if not, replace the third move with Dark Pulse. + p.moveset[2] = new PokemonMove(Moves.DARK_PULSE); + } + }), + ) + .setPartyMemberFunc(3, getRandomPartyMemberFunc([Species.HONCHKROW])) + .setPartyMemberFunc(4, getRandomPartyMemberFunc([Species.WEAVILE])) + .setPartyMemberFunc(5, getRandomPartyMemberFunc([Species.HOUNDOOM], TrainerSlot.TRAINER, true, p => { + p.setBoss(true, 2); + p.generateAndPopulateMoveset(); + }), + ), [TrainerType.SIDNEY]: new TrainerConfig(++t) - .initForEliteFour(signatureSpecies["SIDNEY"], true, PokemonType.DARK) - .setMixedBattleBgm("battle_hoenn_elite"), + .initForEliteFour(signatureSpecies["SIDNEY"], true, PokemonType.DARK, 2) + .setMixedBattleBgm("battle_hoenn_elite") + .setPartyMemberFunc(0, getRandomPartyMemberFunc([Species.MIGHTYENA], TrainerSlot.TRAINER, true, p => { + p.abilityIndex = 0; // Intimidate + p.generateAndPopulateMoveset(); + }), + ) + .setPartyMemberFunc(2, getRandomPartyMemberFunc([Species.OBSTAGOON])) // Tera Dark Obstagoon + .setPartyMemberFunc(3, getRandomPartyMemberFunc([Species.SHIFTRY, Species.CACTURNE])) + .setPartyMemberFunc(4, getRandomPartyMemberFunc([Species.SHARPEDO, Species.CRAWDAUNT])) + .setPartyMemberFunc( + 5, + getRandomPartyMemberFunc([Species.ABSOL], TrainerSlot.TRAINER, true, p => { + p.setBoss(true, 2); + p.generateAndPopulateMoveset(); + }), + ), [TrainerType.PHOEBE]: new TrainerConfig(++t) - .initForEliteFour(signatureSpecies["PHOEBE"], false, PokemonType.GHOST) - .setMixedBattleBgm("battle_hoenn_elite"), + .initForEliteFour(signatureSpecies["PHOEBE"], false, PokemonType.GHOST, 2) + .setMixedBattleBgm("battle_hoenn_elite") + .setPartyMemberFunc(0, getRandomPartyMemberFunc([Species.SABLEYE])) + .setPartyMemberFunc(2, getRandomPartyMemberFunc([Species.BANETTE])) // Tera Ghost Banette + .setPartyMemberFunc(3, getRandomPartyMemberFunc([Species.DRIFBLIM, Species.MISMAGIUS])) + .setPartyMemberFunc(4, getRandomPartyMemberFunc([Species.ORICORIO, Species.ALOLA_MAROWAK], TrainerSlot.TRAINER, true, p => { + p.generateAndPopulateMoveset(); + p.formIndex = p.species.speciesId === Species.ORICORIO ? 3 : 0; // Oricorio-Sensu + }), + ) + .setPartyMemberFunc(5, getRandomPartyMemberFunc([Species.DUSKNOIR], TrainerSlot.TRAINER, true, p => { + p.setBoss(true, 2); + p.generateAndPopulateMoveset(); + }), + ), [TrainerType.GLACIA]: new TrainerConfig(++t) - .initForEliteFour(signatureSpecies["GLACIA"], false, PokemonType.ICE) - .setMixedBattleBgm("battle_hoenn_elite"), + .initForEliteFour(signatureSpecies["GLACIA"], false, PokemonType.ICE, 2) + .setMixedBattleBgm("battle_hoenn_elite") + .setPartyMemberFunc(0, getRandomPartyMemberFunc([Species.ABOMASNOW], TrainerSlot.TRAINER, true, p => { + p.abilityIndex = 0; // Snow Warning + p.generateAndPopulateMoveset(); + }), + ) + .setPartyMemberFunc(2, getRandomPartyMemberFunc([Species.GLALIE])) // Tera Ice Glalie + .setPartyMemberFunc(3, getRandomPartyMemberFunc([Species.FROSLASS])) + .setPartyMemberFunc(4, getRandomPartyMemberFunc([Species.ALOLA_NINETALES])) + .setPartyMemberFunc(5, getRandomPartyMemberFunc([Species.WALREIN], TrainerSlot.TRAINER, true, p => { + p.setBoss(true, 2); + p.generateAndPopulateMoveset(); + }), + ), [TrainerType.DRAKE]: new TrainerConfig(++t) - .initForEliteFour(signatureSpecies["DRAKE"], true, PokemonType.DRAGON) - .setMixedBattleBgm("battle_hoenn_elite"), + .initForEliteFour(signatureSpecies["DRAKE"], true, PokemonType.DRAGON, 2) + .setMixedBattleBgm("battle_hoenn_elite") + .setPartyMemberFunc(0, getRandomPartyMemberFunc([Species.ALTARIA])) + .setPartyMemberFunc(2, getRandomPartyMemberFunc([Species.DHELMISE], TrainerSlot.TRAINER, true, p => { // Tera Dragon Dhelmise + p.generateAndPopulateMoveset(); + if (!p.moveset.some(move => !isNullOrUndefined(move) && move.moveId === Moves.TERA_BLAST)) { // Check if Tera Blast is in the moveset, if not, replace the third move with Tera Blast. + p.moveset[2] = new PokemonMove(Moves.TERA_BLAST); + } + }), + ) + .setPartyMemberFunc(3, getRandomPartyMemberFunc([Species.FLYGON])) + .setPartyMemberFunc(4, getRandomPartyMemberFunc([Species.KINGDRA])) + .setPartyMemberFunc(5, getRandomPartyMemberFunc([Species.SALAMENCE], TrainerSlot.TRAINER, true, p => { + p.setBoss(true, 2); + p.generateAndPopulateMoveset(); + }), + ), [TrainerType.AARON]: new TrainerConfig(++t) - .initForEliteFour(signatureSpecies["AARON"], true, PokemonType.BUG) + .initForEliteFour(signatureSpecies["AARON"], true, PokemonType.BUG, 5) .setBattleBgm("battle_sinnoh_gym") - .setMixedBattleBgm("battle_sinnoh_gym"), + .setMixedBattleBgm("battle_sinnoh_gym") + .setPartyMemberFunc(0, getRandomPartyMemberFunc([Species.YANMEGA])) + .setPartyMemberFunc(2, getRandomPartyMemberFunc([Species.HERACROSS])) + .setPartyMemberFunc(3, getRandomPartyMemberFunc([Species.VESPIQUEN])) + .setPartyMemberFunc(4, getRandomPartyMemberFunc([Species.SCIZOR, Species.KLEAVOR])) + .setPartyMemberFunc(5, getRandomPartyMemberFunc([Species.DRAPION], TrainerSlot.TRAINER, true, p => { // Tera Bug Drapion + p.setBoss(true, 2); + p.abilityIndex = 1; // Sniper + p.generateAndPopulateMoveset(); + if (!p.moveset.some(move => !isNullOrUndefined(move) && move.moveId === Moves.X_SCISSOR)) { // Check if X-Scissor is in the moveset, if not, replace the third move with X-Scissor. + p.moveset[2] = new PokemonMove(Moves.X_SCISSOR); + } + }), + ), [TrainerType.BERTHA]: new TrainerConfig(++t) - .initForEliteFour(signatureSpecies["BERTHA"], false, PokemonType.GROUND) + .initForEliteFour(signatureSpecies["BERTHA"], false, PokemonType.GROUND, 2) .setBattleBgm("battle_sinnoh_gym") - .setMixedBattleBgm("battle_sinnoh_gym"), + .setMixedBattleBgm("battle_sinnoh_gym") + .setPartyMemberFunc(0, getRandomPartyMemberFunc([Species.WHISCASH])) + .setPartyMemberFunc(2, getRandomPartyMemberFunc([Species.HIPPOWDON], TrainerSlot.TRAINER, true, p => { // Tera Ground Hippowdon + p.abilityIndex = 0; // Sand Stream + p.generateAndPopulateMoveset(); + }), + ) + .setPartyMemberFunc(3, getRandomPartyMemberFunc([Species.GLISCOR])) + .setPartyMemberFunc(4, getRandomPartyMemberFunc([Species.MAMOSWINE, Species.URSALUNA])) + .setPartyMemberFunc(5, getRandomPartyMemberFunc([Species.RHYPERIOR], TrainerSlot.TRAINER, true, p => { + p.setBoss(true, 2); + p.abilityIndex = 1; // Solid Rock + p.generateAndPopulateMoveset(); + }), + ), [TrainerType.FLINT]: new TrainerConfig(++t) - .initForEliteFour(signatureSpecies["FLINT"], true, PokemonType.FIRE, 3) + .initForEliteFour(signatureSpecies["FLINT"], true, PokemonType.FIRE, 2) .setBattleBgm("battle_sinnoh_gym") - .setMixedBattleBgm("battle_sinnoh_gym"), + .setMixedBattleBgm("battle_sinnoh_gym") + .setPartyMemberFunc(0, getRandomPartyMemberFunc([Species.RAPIDASH])) + .setPartyMemberFunc(2, getRandomPartyMemberFunc([Species.STEELIX, Species.LOPUNNY], TrainerSlot.TRAINER, true, p => { // Tera Fire Steelix/Lopunny + p.generateAndPopulateMoveset(); + if (!p.moveset.some(move => !isNullOrUndefined(move) && move.moveId === Moves.TERA_BLAST)) { // Check if Tera Blast is in the moveset, if not, replace the third move with Tera Blast. + p.moveset[2] = new PokemonMove(Moves.TERA_BLAST); + } + }), + ) + .setPartyMemberFunc(3, getRandomPartyMemberFunc([Species.INFERNAPE])) + .setPartyMemberFunc(4, getRandomPartyMemberFunc([Species.ARCANINE, Species.HISUI_ARCANINE])) + .setPartyMemberFunc(5, getRandomPartyMemberFunc([Species.MAGMORTAR], TrainerSlot.TRAINER, true, p => { + p.setBoss(true, 2); + p.generateAndPopulateMoveset(); + }), + ), [TrainerType.LUCIAN]: new TrainerConfig(++t) - .initForEliteFour(signatureSpecies["LUCIAN"], true, PokemonType.PSYCHIC) + .initForEliteFour(signatureSpecies["LUCIAN"], true, PokemonType.PSYCHIC, 2) .setBattleBgm("battle_sinnoh_gym") - .setMixedBattleBgm("battle_sinnoh_gym"), + .setMixedBattleBgm("battle_sinnoh_gym") + .setPartyMemberFunc(0, getRandomPartyMemberFunc([Species.ESPEON, Species.ALAKAZAM])) + .setPartyMemberFunc(2, getRandomPartyMemberFunc([Species.FARIGIRAF])) // Tera Psychic Farigiraf + .setPartyMemberFunc(3, getRandomPartyMemberFunc([Species.BRONZONG])) + .setPartyMemberFunc(4, getRandomPartyMemberFunc([Species.MR_RIME, Species.HISUI_BRAVIARY])) + .setPartyMemberFunc(5, getRandomPartyMemberFunc([Species.GALLADE], TrainerSlot.TRAINER, true, p => { + p.setBoss(true, 2); + p.abilityIndex = 1; // Sharpness + p.generateAndPopulateMoveset(); + }), + ), [TrainerType.SHAUNTAL]: new TrainerConfig(++t) - .initForEliteFour(signatureSpecies["SHAUNTAL"], false, PokemonType.GHOST) - .setMixedBattleBgm("battle_unova_elite"), + .initForEliteFour(signatureSpecies["SHAUNTAL"], false, PokemonType.GHOST, 2) + .setMixedBattleBgm("battle_unova_elite") + .setPartyMemberFunc(0, getRandomPartyMemberFunc([Species.COFAGRIGUS])) + .setPartyMemberFunc(2, getRandomPartyMemberFunc([Species.GOLURK])) // Tera Ghost Golurk + .setPartyMemberFunc(3, getRandomPartyMemberFunc([Species.JELLICENT])) + .setPartyMemberFunc(4, getRandomPartyMemberFunc([Species.MISMAGIUS, Species.FROSLASS ])) + .setPartyMemberFunc(5, getRandomPartyMemberFunc([Species.CHANDELURE], TrainerSlot.TRAINER, true, p => { + p.setBoss(true, 2); + p.generateAndPopulateMoveset(); + }), + ), [TrainerType.MARSHAL]: new TrainerConfig(++t) - .initForEliteFour(signatureSpecies["MARSHAL"], true, PokemonType.FIGHTING) - .setMixedBattleBgm("battle_unova_elite"), + .initForEliteFour(signatureSpecies["MARSHAL"], true, PokemonType.FIGHTING, 2) + .setMixedBattleBgm("battle_unova_elite") + .setPartyMemberFunc(0, getRandomPartyMemberFunc([Species.THROH, Species.SAWK])) + .setPartyMemberFunc(2, getRandomPartyMemberFunc([Species.MIENSHAO])) // Tera Fighting Mienshao + .setPartyMemberFunc(3, getRandomPartyMemberFunc([Species.EMBOAR])) + .setPartyMemberFunc(4, getRandomPartyMemberFunc([Species.BRELOOM, Species.TOXICROAK])) + .setPartyMemberFunc(5, getRandomPartyMemberFunc([Species.CONKELDURR], TrainerSlot.TRAINER, true, p => { + p.setBoss(true, 2); + p.generateAndPopulateMoveset(); + }), + ), [TrainerType.GRIMSLEY]: new TrainerConfig(++t) - .initForEliteFour(signatureSpecies["GRIMSLEY"], true, PokemonType.DARK) - .setMixedBattleBgm("battle_unova_elite"), + .initForEliteFour(signatureSpecies["GRIMSLEY"], true, PokemonType.DARK, 2) + .setMixedBattleBgm("battle_unova_elite") + .setPartyMemberFunc(0, getRandomPartyMemberFunc([Species.LIEPARD])) + .setPartyMemberFunc(2, getRandomPartyMemberFunc([Species.KROOKODILE])) // Tera Dark Krookodile + .setPartyMemberFunc(3, getRandomPartyMemberFunc([Species.SCRAFTY])) + .setPartyMemberFunc(4, getRandomPartyMemberFunc([Species.ZOROARK, Species.HISUI_SAMUROTT])) + .setPartyMemberFunc(5, getRandomPartyMemberFunc([Species.KINGAMBIT], TrainerSlot.TRAINER, true, p => { + p.setBoss(true, 2); + p.generateAndPopulateMoveset(); + }), + ), [TrainerType.CAITLIN]: new TrainerConfig(++t) - .initForEliteFour(signatureSpecies["CAITLIN"], false, PokemonType.PSYCHIC) - .setMixedBattleBgm("battle_unova_elite"), + .initForEliteFour(signatureSpecies["CAITLIN"], false, PokemonType.PSYCHIC, 2) + .setMixedBattleBgm("battle_unova_elite") + .setPartyMemberFunc(0, getRandomPartyMemberFunc([Species.MUSHARNA])) + .setPartyMemberFunc(2, getRandomPartyMemberFunc([Species.REUNICLUS])) // Tera Psychic Reuniclus + .setPartyMemberFunc(3, getRandomPartyMemberFunc([Species.GALLADE], TrainerSlot.TRAINER, true, p => { + p.abilityIndex = 1; // Sharpness + p.generateAndPopulateMoveset(); + }), + ) + .setPartyMemberFunc(4, getRandomPartyMemberFunc([Species.SIGILYPH, Species.HISUI_BRAVIARY])) + .setPartyMemberFunc( + 5, + getRandomPartyMemberFunc([Species.GOTHITELLE], TrainerSlot.TRAINER, true, p => { + p.setBoss(true, 2); + p.generateAndPopulateMoveset(); + }), + ), [TrainerType.MALVA]: new TrainerConfig(++t) - .initForEliteFour(signatureSpecies["MALVA"], false, PokemonType.FIRE) - .setMixedBattleBgm("battle_kalos_elite"), + .initForEliteFour(signatureSpecies["MALVA"], false, PokemonType.FIRE, 2) + .setMixedBattleBgm("battle_kalos_elite") + .setPartyMemberFunc(0, getRandomPartyMemberFunc([Species.PYROAR], TrainerSlot.TRAINER, true, p => { + p.generateAndPopulateMoveset(); + p.gender = Gender.FEMALE; + }), + ) + .setPartyMemberFunc(2, getRandomPartyMemberFunc([Species.HOUNDOOM])) // Tera Fire Houndoom + .setPartyMemberFunc(3, getRandomPartyMemberFunc([Species.TORKOAL], TrainerSlot.TRAINER, true, p => { + p.abilityIndex = 1; // Drought + p.generateAndPopulateMoveset(); + }), + ) + .setPartyMemberFunc(4, getRandomPartyMemberFunc([Species.CHANDELURE, Species.DELPHOX])) + .setPartyMemberFunc(5, getRandomPartyMemberFunc([Species.TALONFLAME], TrainerSlot.TRAINER, true, p => { + p.setBoss(true, 2); + p.generateAndPopulateMoveset(); + }), + ), [TrainerType.SIEBOLD]: new TrainerConfig(++t) - .initForEliteFour(signatureSpecies["SIEBOLD"], true, PokemonType.WATER) - .setMixedBattleBgm("battle_kalos_elite"), + .initForEliteFour(signatureSpecies["SIEBOLD"], true, PokemonType.WATER, 2) + .setMixedBattleBgm("battle_kalos_elite") + .setPartyMemberFunc(0, getRandomPartyMemberFunc([Species.CLAWITZER])) + .setPartyMemberFunc(2, getRandomPartyMemberFunc([Species.GYARADOS])) // Tera Water Gyarados + .setPartyMemberFunc(3, getRandomPartyMemberFunc([Species.STARMIE])) + .setPartyMemberFunc(4, getRandomPartyMemberFunc([Species.BLASTOISE, Species.DONDOZO])) + .setPartyMemberFunc(5, getRandomPartyMemberFunc([Species.BARBARACLE], TrainerSlot.TRAINER, true, p => { + p.setBoss(true, 2); + p.abilityIndex = 1; // Tough Claws + p.generateAndPopulateMoveset(); + }), + ), [TrainerType.WIKSTROM]: new TrainerConfig(++t) - .initForEliteFour(signatureSpecies["WIKSTROM"], true, PokemonType.STEEL) - .setMixedBattleBgm("battle_kalos_elite"), + .initForEliteFour(signatureSpecies["WIKSTROM"], true, PokemonType.STEEL, 2) + .setMixedBattleBgm("battle_kalos_elite") + .setPartyMemberFunc(0, getRandomPartyMemberFunc([Species.KLEFKI])) + .setPartyMemberFunc(2, getRandomPartyMemberFunc([Species.CERULEDGE], TrainerSlot.TRAINER, true, p => { // Tera Steel Ceruledge + p.generateAndPopulateMoveset(); + if (!p.moveset.some(move => !isNullOrUndefined(move) && move.moveId === Moves.IRON_HEAD)) { // Check if Iron Head is in the moveset, if not, replace the third move with Iron Head. + p.moveset[2] = new PokemonMove(Moves.IRON_HEAD); + } + }), + ) + .setPartyMemberFunc(3, getRandomPartyMemberFunc([Species.SCIZOR])) + .setPartyMemberFunc(4, getRandomPartyMemberFunc([Species.CORVIKNIGHT])) + .setPartyMemberFunc(5, getRandomPartyMemberFunc([Species.AEGISLASH], TrainerSlot.TRAINER, true, p => { + p.setBoss(true, 2); + p.generateAndPopulateMoveset(); + }), + ), [TrainerType.DRASNA]: new TrainerConfig(++t) - .initForEliteFour(signatureSpecies["DRASNA"], false, PokemonType.DRAGON) - .setMixedBattleBgm("battle_kalos_elite"), + .initForEliteFour(signatureSpecies["DRASNA"], false, PokemonType.DRAGON, 2) + .setMixedBattleBgm("battle_kalos_elite") + .setPartyMemberFunc(0, getRandomPartyMemberFunc([Species.DRAGALGE])) + .setPartyMemberFunc(2, getRandomPartyMemberFunc([Species.GARCHOMP])) // Tera Dragon Garchomp + .setPartyMemberFunc(3, getRandomPartyMemberFunc([Species.ALTARIA])) + .setPartyMemberFunc(4, getRandomPartyMemberFunc([Species.DRUDDIGON])) + .setPartyMemberFunc(5, getRandomPartyMemberFunc([Species.NOIVERN], TrainerSlot.TRAINER, true, p => { + p.setBoss(true, 2); + p.generateAndPopulateMoveset(); + }), + ), [TrainerType.HALA]: new TrainerConfig(++t) - .initForEliteFour(signatureSpecies["HALA"], true, PokemonType.FIGHTING) - .setMixedBattleBgm("battle_alola_elite"), + .initForEliteFour(signatureSpecies["HALA"], true, PokemonType.FIGHTING, 2) + .setMixedBattleBgm("battle_alola_elite") + .setPartyMemberFunc(0, getRandomPartyMemberFunc([Species.HARIYAMA])) + .setPartyMemberFunc(2, getRandomPartyMemberFunc([Species.INCINEROAR], TrainerSlot.TRAINER, true, p => { // Tera Fighting Incineroar + p.generateAndPopulateMoveset(); + if (!p.moveset.some(move => !isNullOrUndefined(move) && move.moveId === Moves.CROSS_CHOP)) { // Check if Cross Chop is in the moveset, if not, replace the third move with Cross Chop. + p.moveset[2] = new PokemonMove(Moves.CROSS_CHOP); + } + }), + ) + .setPartyMemberFunc(3, getRandomPartyMemberFunc([Species.BEWEAR])) + .setPartyMemberFunc(4, getRandomPartyMemberFunc([Species.POLIWRATH, Species.ANNIHILAPE])) + .setPartyMemberFunc(5, getRandomPartyMemberFunc([Species.CRABOMINABLE], TrainerSlot.TRAINER, true, p => { + p.setBoss(true, 2); + p.generateAndPopulateMoveset(); + }), + ), [TrainerType.MOLAYNE]: new TrainerConfig(++t) - .initForEliteFour(signatureSpecies["MOLAYNE"], true, PokemonType.STEEL) - .setMixedBattleBgm("battle_alola_elite"), + .initForEliteFour(signatureSpecies["MOLAYNE"], true, PokemonType.STEEL, 2) + .setMixedBattleBgm("battle_alola_elite") + .setPartyMemberFunc(0, getRandomPartyMemberFunc([Species.KLEFKI])) + .setPartyMemberFunc(2, getRandomPartyMemberFunc([Species.ALOLA_SANDSLASH])) // Tera Steel A-Sandslash + .setPartyMemberFunc(3, getRandomPartyMemberFunc([Species.MAGNEZONE])) + .setPartyMemberFunc(4, getRandomPartyMemberFunc([Species.METAGROSS, Species.KINGAMBIT])) + .setPartyMemberFunc(5, getRandomPartyMemberFunc([Species.ALOLA_DUGTRIO], TrainerSlot.TRAINER, true, p => { + p.setBoss(true, 2); + p.generateAndPopulateMoveset(); + }), + ), [TrainerType.OLIVIA]: new TrainerConfig(++t) - .initForEliteFour(signatureSpecies["OLIVIA"], false, PokemonType.ROCK) - .setMixedBattleBgm("battle_alola_elite"), + .initForEliteFour(signatureSpecies["OLIVIA"], false, PokemonType.ROCK, 2) + .setMixedBattleBgm("battle_alola_elite") + .setPartyMemberFunc(0, getRandomPartyMemberFunc([Species.GIGALITH], TrainerSlot.TRAINER, true, p => { + p.abilityIndex = 1; // Sand Stream + p.generateAndPopulateMoveset(); + }), + ) + .setPartyMemberFunc(2, getRandomPartyMemberFunc([Species.PROBOPASS])) // Tera Rock Probopass + .setPartyMemberFunc(3, getRandomPartyMemberFunc([Species.ALOLA_GOLEM])) + .setPartyMemberFunc(4, getRandomPartyMemberFunc([Species.RELICANTH, Species.CARBINK])) + .setPartyMemberFunc(5, getRandomPartyMemberFunc([Species.LYCANROC], TrainerSlot.TRAINER, true, p => { + p.setBoss(true, 2); + p.formIndex = 1; + p.generateAndPopulateMoveset(); + }), + ), [TrainerType.ACEROLA]: new TrainerConfig(++t) - .initForEliteFour(signatureSpecies["ACEROLA"], false, PokemonType.GHOST) - .setMixedBattleBgm("battle_alola_elite"), + .initForEliteFour(signatureSpecies["ACEROLA"], false, PokemonType.GHOST, 2) + .setMixedBattleBgm("battle_alola_elite") + .setPartyMemberFunc(0, getRandomPartyMemberFunc([Species.DRIFBLIM])) + .setPartyMemberFunc(2, getRandomPartyMemberFunc([Species.MIMIKYU])) // Tera Ghost Mimikyu + .setPartyMemberFunc(3, getRandomPartyMemberFunc([Species.DHELMISE])) + .setPartyMemberFunc(4, getRandomPartyMemberFunc([Species.FROSLASS])) + .setPartyMemberFunc(5, getRandomPartyMemberFunc([Species.PALOSSAND], TrainerSlot.TRAINER, true, p => { + p.setBoss(true, 2); + p.generateAndPopulateMoveset(); + }), + ), [TrainerType.KAHILI]: new TrainerConfig(++t) - .initForEliteFour(signatureSpecies["KAHILI"], false, PokemonType.FLYING) - .setMixedBattleBgm("battle_alola_elite"), + .initForEliteFour(signatureSpecies["KAHILI"], false, PokemonType.FLYING, 2) + .setMixedBattleBgm("battle_alola_elite") + .setPartyMemberFunc(0, getRandomPartyMemberFunc([Species.HAWLUCHA])) + .setPartyMemberFunc(2, getRandomPartyMemberFunc([Species.DECIDUEYE], TrainerSlot.TRAINER, true, p => { // Tera Flying Decidueye + p.generateAndPopulateMoveset(); + if (!p.moveset.some(move => !isNullOrUndefined(move) && move.moveId === Moves.BRAVE_BIRD)) { // Check if Brave Bird is in the moveset, if not, replace the third move with Brave Bird. + p.moveset[2] = new PokemonMove(Moves.BRAVE_BIRD); + } + }), + ) + .setPartyMemberFunc(3, getRandomPartyMemberFunc([Species.BRAVIARY, Species.MANDIBUZZ])) + .setPartyMemberFunc(4, getRandomPartyMemberFunc([Species.ORICORIO])) + .setPartyMemberFunc(5, getRandomPartyMemberFunc([Species.TOUCANNON], TrainerSlot.TRAINER, true, p => { + p.setBoss(true, 2); + p.generateAndPopulateMoveset(); + }), + ), [TrainerType.MARNIE_ELITE]: new TrainerConfig(++t) .setName("Marnie") - .initForEliteFour(signatureSpecies["MARNIE_ELITE"], false, PokemonType.DARK) - .setMixedBattleBgm("battle_galar_elite"), + .initForEliteFour(signatureSpecies["MARNIE_ELITE"], false, PokemonType.DARK, 2) + .setMixedBattleBgm("battle_galar_elite") + .setPartyMemberFunc(0, getRandomPartyMemberFunc([Species.LIEPARD])) + .setPartyMemberFunc(2, getRandomPartyMemberFunc([Species.TOXICROAK], TrainerSlot.TRAINER, true, p => { // Tera Dark Toxicroak + p.generateAndPopulateMoveset(); + if (!p.moveset.some(move => !isNullOrUndefined(move) && move.moveId === Moves.SUCKER_PUNCH)) { + // Check if Sucker Punch is in the moveset, if not, replace the third move with Sucker Punch. + p.moveset[2] = new PokemonMove(Moves.SUCKER_PUNCH); + } + }), + ) + .setPartyMemberFunc(3, getRandomPartyMemberFunc([Species.SCRAFTY, Species.PANGORO])) + .setPartyMemberFunc(4, getRandomPartyMemberFunc([Species.MORPEKO])) + .setPartyMemberFunc(5, getRandomPartyMemberFunc([Species.GRIMMSNARL], TrainerSlot.TRAINER, true, p => { + p.setBoss(true, 2); + p.generateAndPopulateMoveset(); + }), + ), [TrainerType.NESSA_ELITE]: new TrainerConfig(++t) .setName("Nessa") - .initForEliteFour(signatureSpecies["NESSA_ELITE"], false, PokemonType.WATER) - .setMixedBattleBgm("battle_galar_elite"), + .initForEliteFour(signatureSpecies["NESSA_ELITE"], false, PokemonType.WATER, 2) + .setMixedBattleBgm("battle_galar_elite") + .setPartyMemberFunc(0, getRandomPartyMemberFunc([Species.GOLISOPOD])) + .setPartyMemberFunc(2, getRandomPartyMemberFunc([Species.EISCUE], TrainerSlot.TRAINER, true, p => { // Tera Water Eiscue + p.generateAndPopulateMoveset(); + if (!p.moveset.some(move => !isNullOrUndefined(move) && move.moveId === Moves.LIQUIDATION)) { // Check if Liquidation is in the moveset, if not, replace the third move with Liquidation. + p.moveset[2] = new PokemonMove(Moves.LIQUIDATION); + } + }), + ) + .setPartyMemberFunc(3, getRandomPartyMemberFunc([Species.PELIPPER], TrainerSlot.TRAINER, true, p => { + p.abilityIndex = 1; // Drizzle + p.generateAndPopulateMoveset(); + }), + ) + .setPartyMemberFunc(4, getRandomPartyMemberFunc([Species.TOXAPEX])) + .setPartyMemberFunc(5, getRandomPartyMemberFunc([Species.DREDNAW], TrainerSlot.TRAINER, true, p => { + p.setBoss(true, 2); + p.generateAndPopulateMoveset(); + }), + ), [TrainerType.BEA_ELITE]: new TrainerConfig(++t) .setName("Bea") - .initForEliteFour(signatureSpecies["BEA_ELITE"], false, PokemonType.FIGHTING) - .setMixedBattleBgm("battle_galar_elite"), + .initForEliteFour(signatureSpecies["BEA_ELITE"], false, PokemonType.FIGHTING, 2) + .setMixedBattleBgm("battle_galar_elite") + .setPartyMemberFunc(0, getRandomPartyMemberFunc([Species.HAWLUCHA])) + .setPartyMemberFunc(2, getRandomPartyMemberFunc([Species.SIRFETCHD])) // Tera Fighting Sirfetch'd + .setPartyMemberFunc(3, getRandomPartyMemberFunc([Species.GRAPPLOCT, Species.FALINKS])) + .setPartyMemberFunc(4, getRandomPartyMemberFunc([Species.HITMONTOP])) + .setPartyMemberFunc(5, getRandomPartyMemberFunc([Species.MACHAMP], TrainerSlot.TRAINER, true, p => { + p.setBoss(true, 2); + p.generateAndPopulateMoveset(); + }), + ), [TrainerType.ALLISTER_ELITE]: new TrainerConfig(++t) .setName("Allister") - .initForEliteFour(signatureSpecies["ALLISTER_ELITE"], true, PokemonType.GHOST) - .setMixedBattleBgm("battle_galar_elite"), + .initForEliteFour(signatureSpecies["ALLISTER_ELITE"], true, PokemonType.GHOST, 2) + .setMixedBattleBgm("battle_galar_elite") + .setPartyMemberFunc(0, getRandomPartyMemberFunc([Species.DUSKNOIR])) + .setPartyMemberFunc(2, getRandomPartyMemberFunc([Species.RUNERIGUS])) // Tera Ghost Runerigus + .setPartyMemberFunc(3, getRandomPartyMemberFunc([Species.POLTEAGEIST, Species.SINISTCHA])) + .setPartyMemberFunc(4, getRandomPartyMemberFunc([Species.CURSOLA])) + .setPartyMemberFunc(5, getRandomPartyMemberFunc([Species.GENGAR], TrainerSlot.TRAINER, true, p => { + p.setBoss(true, 2); + p.generateAndPopulateMoveset(); + }), + ), [TrainerType.RAIHAN_ELITE]: new TrainerConfig(++t) .setName("Raihan") - .initForEliteFour(signatureSpecies["RAIHAN_ELITE"], true, PokemonType.DRAGON) - .setMixedBattleBgm("battle_galar_elite"), + .initForEliteFour(signatureSpecies["RAIHAN_ELITE"], true, PokemonType.DRAGON, 2) + .setMixedBattleBgm("battle_galar_elite") + .setPartyMemberFunc(0, getRandomPartyMemberFunc([Species.FLYGON])) + .setPartyMemberFunc(2, getRandomPartyMemberFunc([Species.TORKOAL], TrainerSlot.TRAINER, true, p => { // Tera Dragon Torkoal + p.abilityIndex = 1; // Drought + p.generateAndPopulateMoveset(); + if (!p.moveset.some(move => !isNullOrUndefined(move) && move.moveId === Moves.TERA_BLAST)) { // Check if Tera Blast is in the moveset, if not, replace the third move with Tera Blast. + p.moveset[2] = new PokemonMove(Moves.TERA_BLAST); + } + }), + ) + .setPartyMemberFunc(3, getRandomPartyMemberFunc([Species.GOODRA])) + .setPartyMemberFunc(4, getRandomPartyMemberFunc([Species.TURTONATOR])) + .setPartyMemberFunc(5, getRandomPartyMemberFunc([Species.ARCHALUDON], TrainerSlot.TRAINER, true, p => { + p.setBoss(true, 2); + p.generateAndPopulateMoveset(); + }), + ), [TrainerType.RIKA]: new TrainerConfig(++t) .initForEliteFour(signatureSpecies["RIKA"], false, PokemonType.GROUND, 5) - .setMixedBattleBgm("battle_paldea_elite"), + .setMixedBattleBgm("battle_paldea_elite") + .setPartyMemberFunc(0, getRandomPartyMemberFunc([Species.DUGTRIO])) + .setPartyMemberFunc(2, getRandomPartyMemberFunc([Species.DONPHAN])) + .setPartyMemberFunc(3, getRandomPartyMemberFunc([Species.SWAMPERT, Species.TORTERRA])) + .setPartyMemberFunc(4, getRandomPartyMemberFunc([Species.CAMERUPT])) + .setPartyMemberFunc(5, getRandomPartyMemberFunc([Species.CLODSIRE], TrainerSlot.TRAINER, true, p => { // Tera Ground Clodsire + p.setBoss(true, 2); + p.generateAndPopulateMoveset(); + }), + ), [TrainerType.POPPY]: new TrainerConfig(++t) .initForEliteFour(signatureSpecies["POPPY"], false, PokemonType.STEEL, 5) - .setMixedBattleBgm("battle_paldea_elite"), + .setMixedBattleBgm("battle_paldea_elite") + .setPartyMemberFunc(0, getRandomPartyMemberFunc([Species.COPPERAJAH])) + .setPartyMemberFunc(2, getRandomPartyMemberFunc([Species.MAGNEZONE])) + .setPartyMemberFunc(3, getRandomPartyMemberFunc([Species.BRONZONG, Species.CORVIKNIGHT], TrainerSlot.TRAINER, true, p => { + p.abilityIndex = p.species.speciesId === Species.BRONZONG ? 0 : 1; // Levitate Bronzong, Unnerve Corviknight + p.generateAndPopulateMoveset(); + }), + ) + .setPartyMemberFunc(4, getRandomPartyMemberFunc([Species.STEELIX])) + .setPartyMemberFunc(5, getRandomPartyMemberFunc([Species.TINKATON], TrainerSlot.TRAINER, true, p => { // Tera Steel Tinkaton + p.setBoss(true, 2); + p.generateAndPopulateMoveset(); + }), + ), [TrainerType.LARRY_ELITE]: new TrainerConfig(++t) .setName("Larry") .initForEliteFour(signatureSpecies["LARRY_ELITE"], true, PokemonType.FLYING, 5) - .setMixedBattleBgm("battle_paldea_elite"), + .setMixedBattleBgm("battle_paldea_elite") + .setPartyMemberFunc(0, getRandomPartyMemberFunc([Species.ALTARIA])) + .setPartyMemberFunc(2, getRandomPartyMemberFunc([Species.BOMBIRDIER])) + .setPartyMemberFunc(3, getRandomPartyMemberFunc([Species.TROPIUS])) + .setPartyMemberFunc(4, getRandomPartyMemberFunc([Species.STARAPTOR])) + .setPartyMemberFunc(5, getRandomPartyMemberFunc([Species.FLAMIGO], TrainerSlot.TRAINER, true, p => { // Tera Flying Flamigo + p.setBoss(true, 2); + p.generateAndPopulateMoveset(); + }), + ), [TrainerType.HASSEL]: new TrainerConfig(++t) .initForEliteFour(signatureSpecies["HASSEL"], true, PokemonType.DRAGON, 5) - .setMixedBattleBgm("battle_paldea_elite"), + .setMixedBattleBgm("battle_paldea_elite") + .setPartyMemberFunc(0, getRandomPartyMemberFunc([Species.NOIVERN])) + .setPartyMemberFunc(2, getRandomPartyMemberFunc([Species.DRAGALGE])) + .setPartyMemberFunc(3, getRandomPartyMemberFunc([Species.FLAPPLE, Species.APPLETUN, Species.HYDRAPPLE])) + .setPartyMemberFunc(4, getRandomPartyMemberFunc([Species.HAXORUS])) + .setPartyMemberFunc(5, getRandomPartyMemberFunc([Species.BAXCALIBUR], TrainerSlot.TRAINER, true, p => { // Tera Dragon Baxcalibur + p.setBoss(true, 2); + p.generateAndPopulateMoveset(); + }), + ), [TrainerType.CRISPIN]: new TrainerConfig(++t) - .initForEliteFour(signatureSpecies["CRISPIN"], true, PokemonType.FIRE, 5) - .setMixedBattleBgm("battle_bb_elite"), + .initForEliteFour(signatureSpecies["CRISPIN"], true, PokemonType.FIRE, 2) + .setMixedBattleBgm("battle_bb_elite") + .setPartyMemberFunc(0, getRandomPartyMemberFunc([Species.ROTOM], TrainerSlot.TRAINER, true, p => { + p.formIndex = 1; // Heat Rotom + p.generateAndPopulateMoveset(); + }), + ) + .setPartyMemberFunc(2, getRandomPartyMemberFunc([Species.EXEGGUTOR], TrainerSlot.TRAINER, true, p => { // Tera Fire Exeggutor + p.generateAndPopulateMoveset(); + if (!p.moveset.some(move => !isNullOrUndefined(move) && move.moveId === Moves.TERA_BLAST)) { // Check if Tera Blast is in the moveset, if not, replace the third move with Tera Blast. + p.moveset[2] = new PokemonMove(Moves.TERA_BLAST); + } + }), + ) + .setPartyMemberFunc(3, getRandomPartyMemberFunc([Species.TALONFLAME], TrainerSlot.TRAINER, true, p => { + p.generateAndPopulateMoveset(); + if (!p.moveset.some(move => !isNullOrUndefined(move) && move.moveId === Moves.SUNNY_DAY)) { // Check if Sunny Day is in the moveset, if not, replace the third move with Sunny Day. + p.moveset[2] = new PokemonMove(Moves.SUNNY_DAY); + } + }), + ) + .setPartyMemberFunc(4, getRandomPartyMemberFunc([Species.MAGMORTAR])) + .setPartyMemberFunc(5, getRandomPartyMemberFunc([Species.BLAZIKEN], TrainerSlot.TRAINER, true, p => { + p.setBoss(true, 2); + p.generateAndPopulateMoveset(); + }), + ), [TrainerType.AMARYS]: new TrainerConfig(++t) - .initForEliteFour(signatureSpecies["AMARYS"], false, PokemonType.STEEL, 5) - .setMixedBattleBgm("battle_bb_elite"), + .initForEliteFour(signatureSpecies["AMARYS"], false, PokemonType.STEEL, 2) + .setMixedBattleBgm("battle_bb_elite") + .setPartyMemberFunc(0, getRandomPartyMemberFunc([Species.SKARMORY])) + .setPartyMemberFunc(2, getRandomPartyMemberFunc([Species.REUNICLUS], TrainerSlot.TRAINER, true, p => { // Tera Steel Reuniclus + p.generateAndPopulateMoveset(); + if (!p.moveset.some(move => !isNullOrUndefined(move) && move.moveId === Moves.FLASH_CANNON)) { // Check if Flash Cannon is in the moveset, if not, replace the third move with Flash Cannon. + p.moveset[2] = new PokemonMove(Moves.FLASH_CANNON); + } + }), + ) + .setPartyMemberFunc(3, getRandomPartyMemberFunc([Species.EMPOLEON])) + .setPartyMemberFunc(4, getRandomPartyMemberFunc([Species.SCIZOR])) + .setPartyMemberFunc(5, getRandomPartyMemberFunc([Species.METAGROSS], TrainerSlot.TRAINER, true, p => { + p.setBoss(true, 2); + p.generateAndPopulateMoveset(); + }), + ), [TrainerType.LACEY]: new TrainerConfig(++t) .initForEliteFour(signatureSpecies["LACEY"], false, PokemonType.FAIRY, 5) - .setMixedBattleBgm("battle_bb_elite"), + .setMixedBattleBgm("battle_bb_elite") + .setPartyMemberFunc(0, getRandomPartyMemberFunc([Species.WHIMSICOTT])) + .setPartyMemberFunc(2, getRandomPartyMemberFunc([Species.PRIMARINA])) + .setPartyMemberFunc(3, getRandomPartyMemberFunc([Species.GRANBULL])) + .setPartyMemberFunc(4, getRandomPartyMemberFunc([Species.ALCREMIE])) + .setPartyMemberFunc(5, getRandomPartyMemberFunc([Species.EXCADRILL], TrainerSlot.TRAINER, true, p => { // Tera Fairy Excadrill + p.setBoss(true, 2); + p.generateAndPopulateMoveset(); + if (!p.moveset.some(move => !isNullOrUndefined(move) && move.moveId === Moves.TERA_BLAST)) { // Check if Tera Blast is in the moveset, if not, replace the third move with Tera Blast. + p.moveset[2] = new PokemonMove(Moves.TERA_BLAST); + } + }), + ), [TrainerType.DRAYTON]: new TrainerConfig(++t) - .initForEliteFour(signatureSpecies["DRAYTON"], true, PokemonType.DRAGON, 5) - .setMixedBattleBgm("battle_bb_elite"), + .initForEliteFour(signatureSpecies["DRAYTON"], true, PokemonType.DRAGON, 2) + .setMixedBattleBgm("battle_bb_elite") + .setPartyMemberFunc(0, getRandomPartyMemberFunc([Species.DRAGONITE])) + .setPartyMemberFunc(2, getRandomPartyMemberFunc([Species.SCEPTILE], TrainerSlot.TRAINER, true, p => { // Tera Dragon Sceptile + p.generateAndPopulateMoveset(); + if (!p.moveset.some(move => !isNullOrUndefined(move) && move.moveId === Moves.DUAL_CHOP)) { // Check if Dual Chop is in the moveset, if not, replace the third move with Dual Chop. + p.moveset[2] = new PokemonMove(Moves.DUAL_CHOP); + } + }), + ) + .setPartyMemberFunc(3, getRandomPartyMemberFunc([Species.HAXORUS])) + .setPartyMemberFunc(4, getRandomPartyMemberFunc([Species.KINGDRA, Species.DRACOVISH])) + .setPartyMemberFunc(5, getRandomPartyMemberFunc([Species.ARCHALUDON], TrainerSlot.TRAINER, true, p => { + p.setBoss(true, 2); + p.generateAndPopulateMoveset(); + }), + ), [TrainerType.BLUE]: new TrainerConfig((t = TrainerType.BLUE)) .initForChampion(true) @@ -3003,29 +3545,18 @@ export const trainerConfigs: TrainerConfigs = { .setDoubleTitle("champion_double") .setPartyMemberFunc(0, getRandomPartyMemberFunc([Species.ALAKAZAM])) .setPartyMemberFunc(1, getRandomPartyMemberFunc([Species.MACHAMP])) - .setPartyMemberFunc( - 2, - getRandomPartyMemberFunc([Species.HO_OH], TrainerSlot.TRAINER, true, p => { + .setPartyMemberFunc(2, getRandomPartyMemberFunc([Species.HO_OH], TrainerSlot.TRAINER, true, p => { p.generateAndPopulateMoveset(); p.pokeball = PokeballType.MASTER_BALL; }), ) - .setPartyMemberFunc(3, getRandomPartyMemberFunc([Species.RHYPERIOR, Species.ELECTIVIRE, Species.MAGMORTAR])) - .setPartyMemberFunc( - 4, - getRandomPartyMemberFunc( - [Species.ARCANINE, Species.EXEGGUTOR, Species.GYARADOS], - TrainerSlot.TRAINER, - true, - p => { + .setPartyMemberFunc(3, getRandomPartyMemberFunc([Species.RHYPERIOR, Species.ELECTIVIRE])) + .setPartyMemberFunc(4, getRandomPartyMemberFunc([Species.ARCANINE, Species.EXEGGUTOR, Species.GYARADOS], TrainerSlot.TRAINER, true, p => { p.generateAndPopulateMoveset(); p.setBoss(true, 2); - }, - ), + }), ) - .setPartyMemberFunc( - 5, - getRandomPartyMemberFunc([Species.PIDGEOT], TrainerSlot.TRAINER, true, p => { + .setPartyMemberFunc(5, getRandomPartyMemberFunc([Species.PIDGEOT], TrainerSlot.TRAINER, true, p => { p.formIndex = 1; // Mega Pidgeot p.generateAndPopulateMoveset(); p.generateName(); @@ -3040,9 +3571,7 @@ export const trainerConfigs: TrainerConfigs = { .setHasDouble("red_blue_double") .setDoubleTrainerType(TrainerType.BLUE) .setDoubleTitle("champion_double") - .setPartyMemberFunc( - 0, - getRandomPartyMemberFunc([Species.PIKACHU], TrainerSlot.TRAINER, true, p => { + .setPartyMemberFunc(0, getRandomPartyMemberFunc([Species.PIKACHU], TrainerSlot.TRAINER, true, p => { p.formIndex = 8; // G-Max Pikachu p.generateAndPopulateMoveset(); p.generateName(); @@ -3050,34 +3579,24 @@ export const trainerConfigs: TrainerConfigs = { }), ) .setPartyMemberFunc(1, getRandomPartyMemberFunc([Species.ESPEON, Species.UMBREON, Species.SYLVEON])) - .setPartyMemberFunc( - 2, - getRandomPartyMemberFunc([Species.LUGIA], TrainerSlot.TRAINER, true, p => { + .setPartyMemberFunc(2, getRandomPartyMemberFunc([Species.LUGIA], TrainerSlot.TRAINER, true, p => { p.generateAndPopulateMoveset(); p.pokeball = PokeballType.MASTER_BALL; }), ) .setPartyMemberFunc(3, getRandomPartyMemberFunc([Species.MEGANIUM, Species.TYPHLOSION, Species.FERALIGATR])) - .setPartyMemberFunc( - 4, - getRandomPartyMemberFunc([Species.SNORLAX], TrainerSlot.TRAINER, true, p => { + .setPartyMemberFunc(4, getRandomPartyMemberFunc([Species.SNORLAX], TrainerSlot.TRAINER, true, p => { p.generateAndPopulateMoveset(); p.setBoss(true, 2); }), ) - .setPartyMemberFunc( - 5, - getRandomPartyMemberFunc( - [Species.VENUSAUR, Species.CHARIZARD, Species.BLASTOISE], - TrainerSlot.TRAINER, - true, - p => { + .setPartyMemberFunc(5, getRandomPartyMemberFunc( + [Species.VENUSAUR, Species.CHARIZARD, Species.BLASTOISE], TrainerSlot.TRAINER, true, p => { p.formIndex = 1; // Mega Venusaur, Mega Charizard X, or Mega Blastoise p.generateAndPopulateMoveset(); p.generateName(); p.gender = Gender.MALE; - }, - ), + }), ) .setInstantTera(3), // Tera Grass Meganium / Fire Typhlosion / Water Feraligatr [TrainerType.LANCE_CHAMPION]: new TrainerConfig(++t) @@ -3087,25 +3606,20 @@ export const trainerConfigs: TrainerConfigs = { .setMixedBattleBgm("battle_johto_champion") .setPartyMemberFunc(0, getRandomPartyMemberFunc([Species.GYARADOS, Species.KINGDRA])) .setPartyMemberFunc(1, getRandomPartyMemberFunc([Species.AERODACTYL])) - .setPartyMemberFunc( - 2, - getRandomPartyMemberFunc([Species.SALAMENCE], TrainerSlot.TRAINER, true, p => { + .setPartyMemberFunc(2, getRandomPartyMemberFunc([Species.SALAMENCE], TrainerSlot.TRAINER, true, p => { p.formIndex = 1; // Mega Salamence p.generateAndPopulateMoveset(); p.generateName(); }), ) .setPartyMemberFunc(3, getRandomPartyMemberFunc([Species.CHARIZARD])) - .setPartyMemberFunc( - 4, - getRandomPartyMemberFunc([Species.TYRANITAR, Species.GARCHOMP, Species.KOMMO_O], TrainerSlot.TRAINER, true, p => { + .setPartyMemberFunc(4, getRandomPartyMemberFunc([Species.TYRANITAR, Species.GARCHOMP, Species.KOMMO_O], TrainerSlot.TRAINER, true, p => { p.teraType = PokemonType.DRAGON; + p.generateAndPopulateMoveset(); p.abilityIndex = p.species.speciesId === Species.KOMMO_O ? 1 : 2; // Soundproof Kommo-o, Unnerve Tyranitar, Rough Skin Garchomp }), ) - .setPartyMemberFunc( - 5, - getRandomPartyMemberFunc([Species.DRAGONITE], TrainerSlot.TRAINER, true, p => { + .setPartyMemberFunc(5, getRandomPartyMemberFunc([Species.DRAGONITE], TrainerSlot.TRAINER, true, p => { p.generateAndPopulateMoveset(); p.gender = Gender.MALE; p.setBoss(true, 2); @@ -3121,24 +3635,18 @@ export const trainerConfigs: TrainerConfigs = { .setDoubleTitle("champion_double") .setPartyMemberFunc(0, getRandomPartyMemberFunc([Species.SKARMORY])) .setPartyMemberFunc(1, getRandomPartyMemberFunc([Species.CRADILY, Species.ARMALDO])) - .setPartyMemberFunc( - 2, - getRandomPartyMemberFunc([Species.AGGRON], TrainerSlot.TRAINER, true, p => { + .setPartyMemberFunc(2, getRandomPartyMemberFunc([Species.AGGRON], TrainerSlot.TRAINER, true, p => { p.generateAndPopulateMoveset(); p.setBoss(true, 2); }), ) .setPartyMemberFunc(3, getRandomPartyMemberFunc([Species.GOLURK, Species.RUNERIGUS])) - .setPartyMemberFunc( - 4, - getRandomPartyMemberFunc([Species.REGIROCK, Species.REGICE, Species.REGISTEEL], TrainerSlot.TRAINER, true, p => { + .setPartyMemberFunc(4, getRandomPartyMemberFunc([Species.REGIROCK, Species.REGICE, Species.REGISTEEL], TrainerSlot.TRAINER, true, p => { p.generateAndPopulateMoveset(); p.pokeball = PokeballType.ULTRA_BALL; }), ) - .setPartyMemberFunc( - 5, - getRandomPartyMemberFunc([Species.METAGROSS], TrainerSlot.TRAINER, true, p => { + .setPartyMemberFunc(5, getRandomPartyMemberFunc([Species.METAGROSS], TrainerSlot.TRAINER, true, p => { p.formIndex = 1; // Mega Metagross p.generateAndPopulateMoveset(); p.generateName(); @@ -3152,17 +3660,13 @@ export const trainerConfigs: TrainerConfigs = { .setHasDouble("wallace_steven_double") .setDoubleTrainerType(TrainerType.STEVEN) .setDoubleTitle("champion_double") - .setPartyMemberFunc( - 0, - getRandomPartyMemberFunc([Species.PELIPPER], TrainerSlot.TRAINER, true, p => { + .setPartyMemberFunc(0, getRandomPartyMemberFunc([Species.PELIPPER], TrainerSlot.TRAINER, true, p => { p.abilityIndex = 1; // Drizzle p.generateAndPopulateMoveset(); }), ) .setPartyMemberFunc(1, getRandomPartyMemberFunc([Species.LUDICOLO])) - .setPartyMemberFunc( - 2, - getRandomPartyMemberFunc([Species.LATIAS, Species.LATIOS], TrainerSlot.TRAINER, true, p => { + .setPartyMemberFunc(2, getRandomPartyMemberFunc([Species.LATIAS, Species.LATIOS], TrainerSlot.TRAINER, true, p => { p.formIndex = 1; // Mega Latios or Mega Latias p.generateAndPopulateMoveset(); p.generateName(); @@ -3170,16 +3674,12 @@ export const trainerConfigs: TrainerConfigs = { }), ) .setPartyMemberFunc(3, getRandomPartyMemberFunc([Species.SWAMPERT, Species.GASTRODON, Species.SEISMITOAD])) - .setPartyMemberFunc( - 4, - getRandomPartyMemberFunc([Species.REGIELEKI, Species.REGIDRAGO], TrainerSlot.TRAINER, true, p => { + .setPartyMemberFunc(4, getRandomPartyMemberFunc([Species.REGIELEKI, Species.REGIDRAGO], TrainerSlot.TRAINER, true, p => { p.generateAndPopulateMoveset(); p.pokeball = PokeballType.ULTRA_BALL; }), ) - .setPartyMemberFunc( - 5, - getRandomPartyMemberFunc([Species.MILOTIC], TrainerSlot.TRAINER, true, p => { + .setPartyMemberFunc(5, getRandomPartyMemberFunc([Species.MILOTIC], TrainerSlot.TRAINER, true, p => { p.generateAndPopulateMoveset(); p.gender = Gender.FEMALE; p.setBoss(true, 2); @@ -3190,41 +3690,24 @@ export const trainerConfigs: TrainerConfigs = { .initForChampion(false) .setBattleBgm("battle_sinnoh_champion") .setMixedBattleBgm("battle_sinnoh_champion") - .setPartyMemberFunc( - 0, - getRandomPartyMemberFunc([Species.SPIRITOMB], TrainerSlot.TRAINER, true, p => { - p.generateAndPopulateMoveset(); - }), - ) + .setPartyMemberFunc(0, getRandomPartyMemberFunc([Species.SPIRITOMB])) .setPartyMemberFunc(1, getRandomPartyMemberFunc([Species.LUCARIO])) - .setPartyMemberFunc( - 2, - getRandomPartyMemberFunc([Species.GIRATINA], TrainerSlot.TRAINER, true, p => { + .setPartyMemberFunc(2, getRandomPartyMemberFunc([Species.GIRATINA], TrainerSlot.TRAINER, true, p => { p.generateAndPopulateMoveset(); p.pokeball = PokeballType.MASTER_BALL; }), ) - .setPartyMemberFunc( - 3, - getRandomPartyMemberFunc( - [Species.MILOTIC, Species.ROSERADE, Species.HISUI_ARCANINE], - TrainerSlot.TRAINER, - true, - p => { - p.teraType = p.species.type1; - }, - ), + .setPartyMemberFunc(3, getRandomPartyMemberFunc([Species.MILOTIC, Species.ROSERADE, Species.HISUI_ARCANINE], TrainerSlot.TRAINER, true, p => { + p.generateAndPopulateMoveset(); + p.teraType = p.species.type1; + }), ) - .setPartyMemberFunc( - 4, - getRandomPartyMemberFunc([Species.TOGEKISS], TrainerSlot.TRAINER, true, p => { + .setPartyMemberFunc(4, getRandomPartyMemberFunc([Species.TOGEKISS], TrainerSlot.TRAINER, true, p => { p.generateAndPopulateMoveset(); p.setBoss(true, 2); }), ) - .setPartyMemberFunc( - 5, - getRandomPartyMemberFunc([Species.GARCHOMP], TrainerSlot.TRAINER, true, p => { + .setPartyMemberFunc(5, getRandomPartyMemberFunc([Species.GARCHOMP], TrainerSlot.TRAINER, true, p => { p.formIndex = 1; // Mega Garchomp p.generateAndPopulateMoveset(); p.generateName(); @@ -3240,46 +3723,28 @@ export const trainerConfigs: TrainerConfigs = { .setBattleBgm("battle_champion_alder") .setMixedBattleBgm("battle_champion_alder") .setPartyMemberFunc(0, getRandomPartyMemberFunc([Species.BOUFFALANT, Species.BRAVIARY])) - .setPartyMemberFunc( - 1, - getRandomPartyMemberFunc( - [Species.HISUI_LILLIGANT, Species.HISUI_ZOROARK, Species.BASCULEGION], - TrainerSlot.TRAINER, - true, - p => { + .setPartyMemberFunc(1, getRandomPartyMemberFunc([Species.HISUI_LILLIGANT, Species.HISUI_ZOROARK, Species.BASCULEGION], TrainerSlot.TRAINER, true, p => { p.generateAndPopulateMoveset(); p.pokeball = PokeballType.ROGUE_BALL; - }, - ), + }), ) - .setPartyMemberFunc( - 2, - getRandomPartyMemberFunc([Species.ZEKROM], TrainerSlot.TRAINER, true, p => { + .setPartyMemberFunc(2, getRandomPartyMemberFunc([Species.ZEKROM], TrainerSlot.TRAINER, true, p => { p.generateAndPopulateMoveset(); p.pokeball = PokeballType.MASTER_BALL; }), ) - .setPartyMemberFunc( - 3, - getRandomPartyMemberFunc([Species.KELDEO], TrainerSlot.TRAINER, true, p => { + .setPartyMemberFunc(3, getRandomPartyMemberFunc([Species.KELDEO], TrainerSlot.TRAINER, true, p => { p.generateAndPopulateMoveset(); p.pokeball = PokeballType.ULTRA_BALL; }), ) - .setPartyMemberFunc( - 4, - getRandomPartyMemberFunc( - [Species.CHANDELURE, Species.KROOKODILE, Species.REUNICLUS, Species.CONKELDURR], - TrainerSlot.TRAINER, - true, - p => { - p.teraType = p.species.speciesId === Species.KROOKODILE ? PokemonType.DARK : p.species.type1; - }, - ), + .setPartyMemberFunc(4, getRandomPartyMemberFunc( + [Species.CHANDELURE, Species.KROOKODILE, Species.REUNICLUS, Species.CONKELDURR], TrainerSlot.TRAINER, true, p => { + p.generateAndPopulateMoveset(); + p.teraType = p.species.speciesId === Species.KROOKODILE ? PokemonType.DARK : p.species.type1; + }), ) - .setPartyMemberFunc( - 5, - getRandomPartyMemberFunc([Species.VOLCARONA], TrainerSlot.TRAINER, true, p => { + .setPartyMemberFunc(5, getRandomPartyMemberFunc([Species.VOLCARONA], TrainerSlot.TRAINER, true, p => { p.generateAndPopulateMoveset(); p.gender = Gender.MALE; p.setBoss(true, 2); @@ -3295,35 +3760,23 @@ export const trainerConfigs: TrainerConfigs = { .setDoubleTitle("champion_double") .setPartyMemberFunc(0, getRandomPartyMemberFunc([Species.DRUDDIGON])) .setPartyMemberFunc(1, getRandomPartyMemberFunc([Species.ARCHEOPS])) - .setPartyMemberFunc( - 2, - getRandomPartyMemberFunc([Species.RESHIRAM], TrainerSlot.TRAINER, true, p => { + .setPartyMemberFunc(2, getRandomPartyMemberFunc([Species.RESHIRAM], TrainerSlot.TRAINER, true, p => { p.generateAndPopulateMoveset(); p.pokeball = PokeballType.MASTER_BALL; }), ) - .setPartyMemberFunc( - 3, - getRandomPartyMemberFunc( - [Species.SALAMENCE, Species.HYDREIGON, Species.ARCHALUDON], - TrainerSlot.TRAINER, - true, - p => { - p.teraType = PokemonType.DRAGON; - }, - ), + .setPartyMemberFunc(3, getRandomPartyMemberFunc([Species.SALAMENCE, Species.HYDREIGON, Species.ARCHALUDON], TrainerSlot.TRAINER, true, p => { + p.generateAndPopulateMoveset(); + p.teraType = PokemonType.DRAGON; + }), ) - .setPartyMemberFunc( - 4, - getRandomPartyMemberFunc([Species.LAPRAS], TrainerSlot.TRAINER, true, p => { + .setPartyMemberFunc(4, getRandomPartyMemberFunc([Species.LAPRAS], TrainerSlot.TRAINER, true, p => { p.formIndex = 1; // G-Max Lapras p.generateAndPopulateMoveset(); p.generateName(); }), ) - .setPartyMemberFunc( - 5, - getRandomPartyMemberFunc([Species.HAXORUS], TrainerSlot.TRAINER, true, p => { + .setPartyMemberFunc(5, getRandomPartyMemberFunc([Species.HAXORUS], TrainerSlot.TRAINER, true, p => { p.abilityIndex = 1; // Mold Breaker p.generateAndPopulateMoveset(); p.gender = Gender.FEMALE; @@ -3334,38 +3787,28 @@ export const trainerConfigs: TrainerConfigs = { [TrainerType.DIANTHA]: new TrainerConfig(++t) .initForChampion(false) .setMixedBattleBgm("battle_kalos_champion") - .setPartyMemberFunc( - 0, - getRandomPartyMemberFunc([Species.HAWLUCHA], TrainerSlot.TRAINER, true, p => { + .setPartyMemberFunc(0, getRandomPartyMemberFunc([Species.HAWLUCHA], TrainerSlot.TRAINER, true, p => { p.generateAndPopulateMoveset(); }), ) .setPartyMemberFunc(1, getRandomPartyMemberFunc([Species.TREVENANT, Species.GOURGEIST])) - .setPartyMemberFunc( - 2, - getRandomPartyMemberFunc([Species.XERNEAS], TrainerSlot.TRAINER, true, p => { + .setPartyMemberFunc(2, getRandomPartyMemberFunc([Species.XERNEAS], TrainerSlot.TRAINER, true, p => { p.generateAndPopulateMoveset(); p.pokeball = PokeballType.MASTER_BALL; }), ) - .setPartyMemberFunc( - 3, - getRandomPartyMemberFunc([Species.TYRANTRUM, Species.AURORUS], TrainerSlot.TRAINER, true, p => { + .setPartyMemberFunc(3, getRandomPartyMemberFunc([Species.TYRANTRUM, Species.AURORUS], TrainerSlot.TRAINER, true, p => { p.generateAndPopulateMoveset(); p.abilityIndex = 2; // Rock Head Tyrantrum, Snow Warning Aurorus p.teraType = p.species.type2!; }), ) - .setPartyMemberFunc( - 4, - getRandomPartyMemberFunc([Species.GOODRA], TrainerSlot.TRAINER, true, p => { + .setPartyMemberFunc(4, getRandomPartyMemberFunc([Species.GOODRA], TrainerSlot.TRAINER, true, p => { p.generateAndPopulateMoveset(); p.setBoss(true, 2); }), ) - .setPartyMemberFunc( - 5, - getRandomPartyMemberFunc([Species.GARDEVOIR], TrainerSlot.TRAINER, true, p => { + .setPartyMemberFunc(5, getRandomPartyMemberFunc([Species.GARDEVOIR], TrainerSlot.TRAINER, true, p => { p.formIndex = 1; // Mega Gardevoir p.generateAndPopulateMoveset(); p.generateName(); @@ -3376,45 +3819,29 @@ export const trainerConfigs: TrainerConfigs = { [TrainerType.KUKUI]: new TrainerConfig(++t) .initForChampion(true) .setMixedBattleBgm("battle_champion_kukui") - .setPartyMemberFunc( - 0, - getRandomPartyMemberFunc([Species.LYCANROC], TrainerSlot.TRAINER, true, p => { + .setPartyMemberFunc(0, getRandomPartyMemberFunc([Species.LYCANROC], TrainerSlot.TRAINER, true, p => { p.generateAndPopulateMoveset(); p.formIndex = 2; // Dusk Lycanroc }), ) .setPartyMemberFunc(1, getRandomPartyMemberFunc([Species.MAGNEZONE, Species.ALOLA_NINETALES])) - .setPartyMemberFunc( - 2, - getRandomPartyMemberFunc( - [Species.TORNADUS, Species.THUNDURUS, Species.LANDORUS], - TrainerSlot.TRAINER, - true, - p => { - p.formIndex = 1; // Therian Formes + .setPartyMemberFunc(2, getRandomPartyMemberFunc([Species.TORNADUS, Species.THUNDURUS, Species.LANDORUS], TrainerSlot.TRAINER, true, p => { p.formIndex = 1; // Therian Formes p.generateAndPopulateMoveset(); p.pokeball = PokeballType.ULTRA_BALL; - }, - ), + }), ) - .setPartyMemberFunc( - 3, - getRandomPartyMemberFunc([Species.TAPU_KOKO, Species.TAPU_FINI], TrainerSlot.TRAINER, true, p => { + .setPartyMemberFunc(3, getRandomPartyMemberFunc([Species.TAPU_KOKO, Species.TAPU_FINI], TrainerSlot.TRAINER, true, p => { p.generateAndPopulateMoveset(); p.setBoss(true, 2); p.pokeball = PokeballType.ULTRA_BALL; }), ) - .setPartyMemberFunc( - 4, - getRandomPartyMemberFunc([Species.SNORLAX], TrainerSlot.TRAINER, true, p => { + .setPartyMemberFunc(4, getRandomPartyMemberFunc([Species.SNORLAX], TrainerSlot.TRAINER, true, p => { p.generateAndPopulateMoveset(); p.formIndex = 1; // G-Max Snorlax }), ) - .setPartyMemberFunc( - 5, - getRandomPartyMemberFunc([Species.INCINEROAR, Species.HISUI_DECIDUEYE], TrainerSlot.TRAINER, true, p => { + .setPartyMemberFunc(5, getRandomPartyMemberFunc([Species.INCINEROAR, Species.HISUI_DECIDUEYE], TrainerSlot.TRAINER, true, p => { p.generateAndPopulateMoveset(); p.gender = Gender.MALE; p.teraType = p.species.type2!; @@ -3424,39 +3851,26 @@ export const trainerConfigs: TrainerConfigs = { [TrainerType.HAU]: new TrainerConfig(++t) .initForChampion(true) .setMixedBattleBgm("battle_alola_champion") - .setPartyMemberFunc( - 0, - getRandomPartyMemberFunc([Species.ALOLA_RAICHU], TrainerSlot.TRAINER, true, p => { - p.generateAndPopulateMoveset(); - }), - ) + .setPartyMemberFunc(0, getRandomPartyMemberFunc([Species.ALOLA_RAICHU])) .setPartyMemberFunc(1, getRandomPartyMemberFunc([Species.NOIVERN])) - .setPartyMemberFunc( - 2, - getRandomPartyMemberFunc([Species.SOLGALEO], TrainerSlot.TRAINER, true, p => { + .setPartyMemberFunc(2, getRandomPartyMemberFunc([Species.SOLGALEO], TrainerSlot.TRAINER, true, p => { p.generateAndPopulateMoveset(); p.pokeball = PokeballType.MASTER_BALL; }), ) - .setPartyMemberFunc( - 3, - getRandomPartyMemberFunc([Species.TAPU_LELE, Species.TAPU_BULU], TrainerSlot.TRAINER, true, p => { + .setPartyMemberFunc(3, getRandomPartyMemberFunc([Species.TAPU_LELE, Species.TAPU_BULU], TrainerSlot.TRAINER, true, p => { p.generateAndPopulateMoveset(); p.pokeball = PokeballType.ULTRA_BALL; p.teraType = p.species.type1; }), ) - .setPartyMemberFunc( - 4, - getRandomPartyMemberFunc([Species.ZYGARDE], TrainerSlot.TRAINER, true, p => { + .setPartyMemberFunc(4, getRandomPartyMemberFunc([Species.ZYGARDE], TrainerSlot.TRAINER, true, p => { p.formIndex = 1; // Zygarde 10% forme, Aura Break p.generateAndPopulateMoveset(); p.pokeball = PokeballType.ROGUE_BALL; }), ) - .setPartyMemberFunc( - 5, - getRandomPartyMemberFunc([Species.DECIDUEYE, Species.PRIMARINA], TrainerSlot.TRAINER, true, p => { + .setPartyMemberFunc(5, getRandomPartyMemberFunc([Species.DECIDUEYE, Species.PRIMARINA], TrainerSlot.TRAINER, true, p => { p.generateAndPopulateMoveset(); p.setBoss(true, 2); p.gender = p.species.speciesId === Species.PRIMARINA ? Gender.FEMALE : Gender.MALE; @@ -3466,36 +3880,20 @@ export const trainerConfigs: TrainerConfigs = { [TrainerType.LEON]: new TrainerConfig(++t) .initForChampion(true) .setMixedBattleBgm("battle_galar_champion") - .setPartyMemberFunc( - 0, - getRandomPartyMemberFunc([Species.AEGISLASH], TrainerSlot.TRAINER, true, p => { - p.generateAndPopulateMoveset(); - }), - ) + .setPartyMemberFunc(0, getRandomPartyMemberFunc([Species.AEGISLASH])) .setPartyMemberFunc(1, getRandomPartyMemberFunc([Species.RHYPERIOR, Species.SEISMITOAD, Species.MR_RIME])) - .setPartyMemberFunc( - 2, - getRandomPartyMemberFunc([Species.ZACIAN], TrainerSlot.TRAINER, true, p => { + .setPartyMemberFunc(2, getRandomPartyMemberFunc([Species.ZACIAN], TrainerSlot.TRAINER, true, p => { p.generateAndPopulateMoveset(); p.pokeball = PokeballType.MASTER_BALL; }), ) .setPartyMemberFunc(3, getRandomPartyMemberFunc([Species.DRAGAPULT])) - .setPartyMemberFunc( - 4, - getRandomPartyMemberFunc( - [Species.RILLABOOM, Species.CINDERACE, Species.INTELEON], - TrainerSlot.TRAINER, - true, - p => { + .setPartyMemberFunc(4,getRandomPartyMemberFunc([Species.RILLABOOM, Species.CINDERACE, Species.INTELEON], TrainerSlot.TRAINER, true, p => { p.generateAndPopulateMoveset(); p.setBoss(true, 2); - }, - ), + }), ) - .setPartyMemberFunc( - 5, - getRandomPartyMemberFunc([Species.CHARIZARD], TrainerSlot.TRAINER, true, p => { + .setPartyMemberFunc(5, getRandomPartyMemberFunc([Species.CHARIZARD], TrainerSlot.TRAINER, true, p => { p.formIndex = 3; // G-Max Charizard p.generateAndPopulateMoveset(); p.generateName(); @@ -3506,46 +3904,34 @@ export const trainerConfigs: TrainerConfigs = { [TrainerType.MUSTARD]: new TrainerConfig(++t) .initForChampion(true) .setMixedBattleBgm("battle_mustard") - .setPartyMemberFunc( - 0, - getRandomPartyMemberFunc([Species.CORVIKNIGHT], TrainerSlot.TRAINER, true, p => { + .setPartyMemberFunc(0, getRandomPartyMemberFunc([Species.CORVIKNIGHT], TrainerSlot.TRAINER, true, p => { p.generateAndPopulateMoveset(); p.pokeball = PokeballType.ULTRA_BALL; }), ) - .setPartyMemberFunc( - 1, - getRandomPartyMemberFunc([Species.KOMMO_O], TrainerSlot.TRAINER, true, p => { + .setPartyMemberFunc(1, getRandomPartyMemberFunc([Species.KOMMO_O], TrainerSlot.TRAINER, true, p => { p.generateAndPopulateMoveset(); p.pokeball = PokeballType.ULTRA_BALL; }), ) - .setPartyMemberFunc( - 2, - getRandomPartyMemberFunc([Species.GALAR_SLOWBRO, Species.GALAR_SLOWKING], TrainerSlot.TRAINER, true, p => { + .setPartyMemberFunc(2, getRandomPartyMemberFunc([Species.GALAR_SLOWBRO, Species.GALAR_SLOWKING], TrainerSlot.TRAINER, true, p => { p.generateAndPopulateMoveset(); p.pokeball = PokeballType.ULTRA_BALL; - p.teraType = PokemonType.PSYCHIC; + p.teraType = p.species.type1; }), ) - .setPartyMemberFunc( - 3, - getRandomPartyMemberFunc([Species.GALAR_DARMANITAN], TrainerSlot.TRAINER, true, p => { + .setPartyMemberFunc(3, getRandomPartyMemberFunc([Species.GALAR_DARMANITAN], TrainerSlot.TRAINER, true, p => { p.generateAndPopulateMoveset(); p.pokeball = PokeballType.ULTRA_BALL; }), ) - .setPartyMemberFunc( - 4, - getRandomPartyMemberFunc([Species.BLASTOISE, Species.VENUSAUR], TrainerSlot.TRAINER, true, p => { + .setPartyMemberFunc(4, getRandomPartyMemberFunc([Species.BLASTOISE, Species.VENUSAUR], TrainerSlot.TRAINER, true, p => { p.generateAndPopulateMoveset(); p.setBoss(true, 2); p.pokeball = PokeballType.ULTRA_BALL; }), ) - .setPartyMemberFunc( - 5, - getRandomPartyMemberFunc([Species.URSHIFU], TrainerSlot.TRAINER, true, p => { + .setPartyMemberFunc(5, getRandomPartyMemberFunc([Species.URSHIFU], TrainerSlot.TRAINER, true, p => { p.formIndex = randSeedInt(2, 2); // Random G-Max Urshifu p.generateAndPopulateMoveset(); p.generateName(); @@ -3553,32 +3939,30 @@ export const trainerConfigs: TrainerConfigs = { p.pokeball = PokeballType.ULTRA_BALL; }), ) - .setInstantTera(2), // Tera Psychic Galar-Slowbro / Galar-Slowking + .setInstantTera(2), // Tera Poison Galar-Slowbro / Galar-Slowking [TrainerType.GEETA]: new TrainerConfig(++t) .initForChampion(false) .setMixedBattleBgm("battle_champion_geeta") - .setPartyMemberFunc( - 0, - getRandomPartyMemberFunc([Species.GLIMMORA], TrainerSlot.TRAINER, true, p => { + .setPartyMemberFunc(0, getRandomPartyMemberFunc([Species.GLIMMORA], TrainerSlot.TRAINER, true, p => { p.generateAndPopulateMoveset(); p.gender = Gender.MALE; p.setBoss(true, 2); }), ) .setPartyMemberFunc(1, getRandomPartyMemberFunc([Species.ESPATHRA, Species.VELUZA])) - .setPartyMemberFunc( - 2, - getRandomPartyMemberFunc([Species.MIRAIDON], TrainerSlot.TRAINER, true, p => { + .setPartyMemberFunc(2, getRandomPartyMemberFunc([Species.MIRAIDON], TrainerSlot.TRAINER, true, p => { p.generateAndPopulateMoveset(); p.pokeball = PokeballType.MASTER_BALL; }), ) .setPartyMemberFunc(3, getRandomPartyMemberFunc([Species.BAXCALIBUR])) .setPartyMemberFunc(4, getRandomPartyMemberFunc([Species.CHESNAUGHT, Species.DELPHOX, Species.GRENINJA])) - .setPartyMemberFunc( - 5, - getRandomPartyMemberFunc([Species.KINGAMBIT], TrainerSlot.TRAINER, true, p => { + .setPartyMemberFunc(5, getRandomPartyMemberFunc([Species.KINGAMBIT], TrainerSlot.TRAINER, true, p => { p.generateAndPopulateMoveset(); + if (!p.moveset.some(move => !isNullOrUndefined(move) && move.moveId === Moves.TERA_BLAST)) { + // Check if Tera Blast is in the moveset, if not, replace the third move with Tera Blast. + p.moveset[2] = new PokemonMove(Moves.TERA_BLAST); + } p.abilityIndex = 1; // Supreme Overlord p.teraType = PokemonType.FLYING; }), @@ -3587,75 +3971,50 @@ export const trainerConfigs: TrainerConfigs = { [TrainerType.NEMONA]: new TrainerConfig(++t) .initForChampion(false) .setMixedBattleBgm("battle_champion_nemona") - .setPartyMemberFunc( - 0, - getRandomPartyMemberFunc([Species.LYCANROC], TrainerSlot.TRAINER, true, p => { + .setPartyMemberFunc(0, getRandomPartyMemberFunc([Species.LYCANROC], TrainerSlot.TRAINER, true, p => { p.formIndex = 0; // Midday form p.generateAndPopulateMoveset(); }), ) .setPartyMemberFunc(1, getRandomPartyMemberFunc([Species.PAWMOT])) - .setPartyMemberFunc( - 2, - getRandomPartyMemberFunc([Species.KORAIDON], TrainerSlot.TRAINER, true, p => { + .setPartyMemberFunc(2, getRandomPartyMemberFunc([Species.KORAIDON], TrainerSlot.TRAINER, true, p => { p.generateAndPopulateMoveset(); p.pokeball = PokeballType.MASTER_BALL; }), ) .setPartyMemberFunc(3, getRandomPartyMemberFunc([Species.GHOLDENGO])) - .setPartyMemberFunc( - 4, - getRandomPartyMemberFunc([Species.ARMAROUGE, Species.CERULEDGE], TrainerSlot.TRAINER, true, p => { + .setPartyMemberFunc(4, getRandomPartyMemberFunc([Species.ARMAROUGE, Species.CERULEDGE], TrainerSlot.TRAINER, true, p => { + p.generateAndPopulateMoveset(); p.teraType = p.species.type2!; }), ) - .setPartyMemberFunc( - 5, - getRandomPartyMemberFunc( - [Species.MEOWSCARADA, Species.SKELEDIRGE, Species.QUAQUAVAL], - TrainerSlot.TRAINER, - true, - p => { + .setPartyMemberFunc(5, getRandomPartyMemberFunc([Species.MEOWSCARADA, Species.SKELEDIRGE, Species.QUAQUAVAL], TrainerSlot.TRAINER, true, p => { p.generateAndPopulateMoveset(); p.gender = Gender.MALE; p.setBoss(true, 2); - }, - ), + }), ) .setInstantTera(4), // Tera Psychic Armarouge / Ghost Ceruledge [TrainerType.KIERAN]: new TrainerConfig(++t) .initForChampion(true) .setMixedBattleBgm("battle_champion_kieran") - .setPartyMemberFunc( - 0, - getRandomPartyMemberFunc([Species.POLIWRATH, Species.POLITOED], TrainerSlot.TRAINER, true, p => { - p.generateAndPopulateMoveset(); - }), - ) - .setPartyMemberFunc( - 1, - getRandomPartyMemberFunc([Species.INCINEROAR, Species.GRIMMSNARL], TrainerSlot.TRAINER, true, p => { + .setPartyMemberFunc(0, getRandomPartyMemberFunc([Species.POLIWRATH, Species.POLITOED])) + .setPartyMemberFunc(1, getRandomPartyMemberFunc([Species.INCINEROAR, Species.GRIMMSNARL], TrainerSlot.TRAINER, true, p => { p.generateAndPopulateMoveset(); p.abilityIndex = p.species.speciesId === Species.INCINEROAR ? 2 : 0; // Intimidate Incineroar, Prankster Grimmsnarl }), ) - .setPartyMemberFunc( - 2, - getRandomPartyMemberFunc([Species.TERAPAGOS], TrainerSlot.TRAINER, true, p => { + .setPartyMemberFunc(2, getRandomPartyMemberFunc([Species.TERAPAGOS], TrainerSlot.TRAINER, true, p => { p.generateAndPopulateMoveset(); p.pokeball = PokeballType.MASTER_BALL; }), ) - .setPartyMemberFunc( - 3, - getRandomPartyMemberFunc([Species.URSALUNA, Species.BLOODMOON_URSALUNA], TrainerSlot.TRAINER, true, p => { + .setPartyMemberFunc(3, getRandomPartyMemberFunc([Species.URSALUNA, Species.BLOODMOON_URSALUNA], TrainerSlot.TRAINER, true, p => { p.generateAndPopulateMoveset(); p.pokeball = PokeballType.ULTRA_BALL; }), ) - .setPartyMemberFunc( - 4, - getRandomPartyMemberFunc([Species.OGERPON], TrainerSlot.TRAINER, true, p => { + .setPartyMemberFunc(4, getRandomPartyMemberFunc([Species.OGERPON], TrainerSlot.TRAINER, true, p => { p.formIndex = randSeedInt(4); // Random Ogerpon Tera Mask p.generateAndPopulateMoveset(); p.pokeball = PokeballType.ULTRA_BALL; @@ -3665,9 +4024,7 @@ export const trainerConfigs: TrainerConfigs = { } }), ) - .setPartyMemberFunc( - 5, - getRandomPartyMemberFunc([Species.HYDRAPPLE], TrainerSlot.TRAINER, true, p => { + .setPartyMemberFunc(5, getRandomPartyMemberFunc([Species.HYDRAPPLE], TrainerSlot.TRAINER, true, p => { p.generateAndPopulateMoveset(); p.gender = Gender.MALE; p.setBoss(true, 2); @@ -4830,7 +5187,7 @@ export const trainerConfigs: TrainerConfigs = { p.pokeball = PokeballType.ULTRA_BALL; p.formIndex = randSeedInt(4, 1); // Shock, Burn, Chill, or Douse Drive if (!p.moveset.some(move => !isNullOrUndefined(move) && move.moveId === Moves.TECHNO_BLAST)) { - // Check if Techno Blast is in the moveset, if not, replace the first move with Techno Blast. + // Check if Techno Blast is in the moveset, if not, replace the third move with Techno Blast. p.moveset[2] = new PokemonMove(Moves.TECHNO_BLAST); } }), diff --git a/src/data/weather.ts b/src/data/weather.ts index 81559304661..be9107798df 100644 --- a/src/data/weather.ts +++ b/src/data/weather.ts @@ -369,6 +369,7 @@ export function getRandomWeatherType(arena: Arena): WeatherType { if (hasSun) { weatherPool.push({ weatherType: WeatherType.SUNNY, weight: 2 }); } + break; case Biome.VOLCANO: weatherPool = [ { diff --git a/src/enums/biome.ts b/src/enums/biome.ts index bb9eaf454cc..7284528767d 100644 --- a/src/enums/biome.ts +++ b/src/enums/biome.ts @@ -1,4 +1,5 @@ export enum Biome { + // TODO: Should -1 be part of the enum signature (for "unknown place") TOWN, PLAINS, GRASS, diff --git a/src/field/pokemon.ts b/src/field/pokemon.ts index 7654b26fda7..37f4017761d 100644 --- a/src/field/pokemon.ts +++ b/src/field/pokemon.ts @@ -124,6 +124,7 @@ import { TarShotTag, AutotomizedTag, PowerTrickTag, + loadBattlerTag, type GrudgeTag, } from "../data/battler-tags"; import { WeatherType } from "#enums/weather-type"; @@ -185,6 +186,7 @@ import { applyAllyStatMultiplierAbAttrs, AllyStatMultiplierAbAttr, MoveAbilityBypassAbAttr, + PreSummonAbAttr, } from "#app/data/abilities/ability"; import { allAbilities } from "#app/data/data-lists"; import type PokemonData from "#app/system/pokemon-data"; @@ -305,6 +307,12 @@ type getBaseDamageParams = Omit type getAttackDamageParams = Omit; export default abstract class Pokemon extends Phaser.GameObjects.Container { + /** + * This pokemon's {@link https://bulbapedia.bulbagarden.net/wiki/Personality_value | Personality value/PID}, + * used to determine various parameters of this Pokemon. + * Represented as a random 32-bit unsigned integer. + * TODO: Stop treating this like a unique ID and stop treating 0 as no pokemon + */ public id: number; public name: string; public nickname: string; @@ -334,7 +342,8 @@ export default abstract class Pokemon extends Phaser.GameObjects.Container { public luck: number; public pauseEvolutions: boolean; public pokerus: boolean; - public switchOutStatus: boolean; + public switchOutStatus = false; + public evoCounter: number; public teraType: PokemonType; public isTerastallized: boolean; public stellarTypesBoosted: PokemonType[]; @@ -349,13 +358,23 @@ export default abstract class Pokemon extends Phaser.GameObjects.Container { public fusionCustomPokemonData: CustomPokemonData | null; public fusionTeraType: PokemonType; - private summonDataPrimer: PokemonSummonData | null; + public customPokemonData: CustomPokemonData = new CustomPokemonData(); - public summonData: PokemonSummonData; - public battleData: PokemonBattleData; - public battleSummonData: PokemonBattleSummonData; - public turnData: PokemonTurnData; - public customPokemonData: CustomPokemonData; + /* Pokemon data types, in vaguely decreasing order of precedence */ + + /** + * Data that resets only on *battle* end (hit count, harvest berries, etc.) + * Kept between waves. + */ + public battleData: PokemonBattleData = new PokemonBattleData(); + /** Data that resets on switch or battle end (stat stages, battler tags, etc.) */ + public summonData: PokemonSummonData = new PokemonSummonData(); + /** Similar to {@linkcode PokemonSummonData}, but is reset on reload (not saved to file). */ + public tempSummonData: PokemonTempSummonData = new PokemonTempSummonData(); + /** Wave data correponding to moves/ability information revealed */ + public waveData: PokemonWaveData = new PokemonWaveData(); + /** Per-turn data like hit count & flinch tracking */ + public turnData: PokemonTurnData = new PokemonTurnData(); /** Used by Mystery Encounters to execute pokemon-specific logic (such as stat boosts) at start of battle */ public mysteryEncounterBattleEffects?: (pokemon: Pokemon) => void; @@ -369,6 +388,7 @@ export default abstract class Pokemon extends Phaser.GameObjects.Container { private shinySparkle: Phaser.GameObjects.Sprite; + // TODO: Rework this eventually constructor( x: number, y: number, @@ -389,38 +409,12 @@ export default abstract class Pokemon extends Phaser.GameObjects.Container { throw `Cannot create a player Pokemon for species '${species.getName(formIndex)}'`; } - const hiddenAbilityChance = new NumberHolder( - BASE_HIDDEN_ABILITY_CHANCE, - ); - if (!this.hasTrainer()) { - globalScene.applyModifiers( - HiddenAbilityRateBoosterModifier, - true, - hiddenAbilityChance, - ); - } - this.species = species; this.pokeball = dataSource?.pokeball || PokeballType.POKEBALL; this.level = level; - this.switchOutStatus = false; - // Determine the ability index - if (abilityIndex !== undefined) { - this.abilityIndex = abilityIndex; // Use the provided ability index if it is defined - } else { - // If abilityIndex is not provided, determine it based on species and hidden ability - const hasHiddenAbility = !randSeedInt(hiddenAbilityChance.value); - const randAbilityIndex = randSeedInt(2); - if (species.abilityHidden && hasHiddenAbility) { - // If the species has a hidden ability and the hidden ability is present - this.abilityIndex = 2; - } else { - // If there is no hidden ability or species does not have a hidden ability - this.abilityIndex = - species.ability2 !== species.ability1 ? randAbilityIndex : 0; // Use random ability index if species has a second ability, otherwise use 0 - } - } + this.abilityIndex = abilityIndex ?? this.generateAbilityIndex() + if (formIndex !== undefined) { this.formIndex = formIndex; } @@ -436,6 +430,7 @@ export default abstract class Pokemon extends Phaser.GameObjects.Container { this.exp = dataSource?.exp || getLevelTotalExp(this.level, species.growthRate); this.levelExp = dataSource?.levelExp || 0; + if (dataSource) { this.id = dataSource.id; this.hp = dataSource.hp; @@ -510,8 +505,6 @@ export default abstract class Pokemon extends Phaser.GameObjects.Container { this.variant = this.shiny ? this.generateShinyVariant() : 0; } - this.customPokemonData = new CustomPokemonData(); - if (nature !== undefined) { this.setNature(nature); } else { @@ -552,6 +545,9 @@ export default abstract class Pokemon extends Phaser.GameObjects.Container { this.stellarTypesBoosted = []; } + this.summonData = new PokemonSummonData(dataSource?.summonData); + this.battleData = new PokemonBattleData(dataSource?.battleData); + this.generateName(); if (!species.isObtainable()) { @@ -561,14 +557,15 @@ export default abstract class Pokemon extends Phaser.GameObjects.Container { if (!dataSource) { this.calculateStats(); } + } /** * @param {boolean} useIllusion - Whether we want the fake name or the real name of the Pokemon (for Illusion ability). */ getNameToRender(useIllusion: boolean = true) { - const name: string = (!useIllusion && !!this.summonData?.illusion) ? this.summonData?.illusion.basePokemon!.name : this.name; - const nickname: string = (!useIllusion && !!this.summonData?.illusion) ? this.summonData?.illusion.basePokemon!.nickname : this.nickname; + const name: string = (!useIllusion && this.summonData.illusion) ? this.summonData.illusion.basePokemon.name : this.name; + const nickname: string = (!useIllusion && this.summonData.illusion) ? this.summonData.illusion.basePokemon.nickname : this.nickname; try { if (nickname) { return decodeURIComponent(escape(atob(nickname))); @@ -582,7 +579,7 @@ export default abstract class Pokemon extends Phaser.GameObjects.Container { getPokeball(useIllusion = false){ if(useIllusion){ - return this.summonData?.illusion?.pokeball ?? this.pokeball + return this.summonData.illusion?.pokeball ?? this.pokeball } else { return this.pokeball } @@ -677,9 +674,10 @@ export default abstract class Pokemon extends Phaser.GameObjects.Container { } /** - * Checks if the pokemon is allowed in battle (ie: not fainted, and allowed under any active challenges). - * @param onField `true` to also check if the pokemon is currently on the field, defaults to `false` - * @returns `true` if the pokemon is "active". Returns `false` if there is no active {@linkcode BattleScene} + * Checks if this {@linkcode Pokemon} is allowed in battle (ie: not fainted, and allowed under any active challenges). + * @param onField `true` to also check if the pokemon is currently on the field; default `false` + * @returns `true` if the pokemon is "active", as described above. + * Returns `false` if there is no active {@linkcode BattleScene} or the pokemon is disallowed. */ public isActive(onField = false): boolean { if (!globalScene) { @@ -721,11 +719,38 @@ export default abstract class Pokemon extends Phaser.GameObjects.Container { } } + /** Generate `abilityIndex` based on species and hidden ability if not pre-defined. */ + private generateAbilityIndex(): number { + + // Roll for hidden ability chance, applying any ability charms for enemy mons + const hiddenAbilityChance = new NumberHolder( + BASE_HIDDEN_ABILITY_CHANCE, + ); + if (!this.hasTrainer()) { + globalScene.applyModifiers( + HiddenAbilityRateBoosterModifier, + true, + hiddenAbilityChance, + ); + } + + // If the roll succeeded and we have one, use HA; otherwise pick a random ability + const hasHiddenAbility = !randSeedInt(hiddenAbilityChance.value); + if (this.species.abilityHidden && hasHiddenAbility) { + return 2; + } + + // only use random ability if species has a second ability + return this.species.ability2 !== this.species.ability1 ? randSeedInt(2) : 0; + } + + + /** * Generate an illusion of the last pokemon in the party, as other wild pokemon in the area. */ setIllusion(pokemon: Pokemon): boolean { - if(!!this.summonData?.illusion){ + if (this.summonData.illusion) { this.breakIllusion(); } if (this.hasTrainer()) { @@ -785,15 +810,15 @@ export default abstract class Pokemon extends Phaser.GameObjects.Container { } breakIllusion(): boolean { - if (!this.summonData?.illusion) { + if (!this.summonData.illusion) { return false; } else { - this.name = this.summonData?.illusion.basePokemon.name; - this.nickname = this.summonData?.illusion.basePokemon.nickname; - this.shiny = this.summonData?.illusion.basePokemon.shiny; - this.variant = this.summonData?.illusion.basePokemon.variant; - this.fusionVariant = this.summonData?.illusion.basePokemon.fusionVariant; - this.fusionShiny = this.summonData?.illusion.basePokemon.fusionShiny; + this.name = this.summonData.illusion.basePokemon.name; + this.nickname = this.summonData.illusion.basePokemon.nickname; + this.shiny = this.summonData.illusion.basePokemon.shiny; + this.variant = this.summonData.illusion.basePokemon.variant; + this.fusionVariant = this.summonData.illusion.basePokemon.fusionVariant; + this.fusionShiny = this.summonData.illusion.basePokemon.fusionShiny; this.summonData.illusion = null; } if (this.isOnField()) { @@ -823,13 +848,13 @@ export default abstract class Pokemon extends Phaser.GameObjects.Container { const loadPromises: Promise[] = []; // Assets for moves loadPromises.push(loadMoveAnimations(this.getMoveset().map(m => m.getMove().id))); - + // Load the assets for the species form - const formIndex = !!this.summonData?.illusion && useIllusion ? this.summonData?.illusion.formIndex : this.formIndex; + const formIndex = useIllusion && this.summonData.illusion ? this.summonData.illusion.formIndex : this.formIndex; loadPromises.push( this.getSpeciesForm(false, useIllusion).loadAssets( - this.getGender(useIllusion) === Gender.FEMALE, - formIndex, + this.getGender(useIllusion) === Gender.FEMALE, + formIndex, this.isShiny(useIllusion), this.getVariant(useIllusion) ), @@ -842,13 +867,13 @@ export default abstract class Pokemon extends Phaser.GameObjects.Container { ); } if (this.getFusionSpeciesForm()) { - const fusionFormIndex = !!this.summonData?.illusion && useIllusion ? this.summonData?.illusion.fusionFormIndex : this.fusionFormIndex; - const fusionShiny = !!this.summonData?.illusion && !useIllusion ? this.summonData?.illusion.basePokemon!.fusionShiny : this.fusionShiny; - const fusionVariant = !!this.summonData?.illusion && !useIllusion ? this.summonData?.illusion.basePokemon!.fusionVariant : this.fusionVariant; + const fusionFormIndex = useIllusion && this.summonData.illusion ? this.summonData.illusion.fusionFormIndex : this.fusionFormIndex; + const fusionShiny = !useIllusion && this.summonData.illusion?.basePokemon ? this.summonData.illusion.basePokemon.fusionShiny : this.fusionShiny; + const fusionVariant = !useIllusion && this.summonData.illusion?.basePokemon ? this.summonData.illusion.basePokemon.fusionVariant : this.fusionVariant; loadPromises.push(this.getFusionSpeciesForm(false, useIllusion).loadAssets( - this.getFusionGender(false, useIllusion) === Gender.FEMALE, - fusionFormIndex, - fusionShiny, + this.getFusionGender(false, useIllusion) === Gender.FEMALE, + fusionFormIndex, + fusionShiny, fusionVariant )); globalScene.loadPokemonAtlas( @@ -883,26 +908,29 @@ export default abstract class Pokemon extends Phaser.GameObjects.Container { const originalWarn = console.warn; // Ignore warnings for missing frames, because there will be a lot console.warn = () => {}; - const battleFrameNames = globalScene.anims.generateFrameNames(this.getBattleSpriteKey(), { + const battleSpriteKey = this.getBattleSpriteKey(this.isPlayer(), ignoreOverride); + const battleFrameNames = globalScene.anims.generateFrameNames(battleSpriteKey, { zeroPad: 4, suffix: ".png", start: 1, end: 400, }); console.warn = originalWarn; - globalScene.anims.create({ - key: this.getBattleSpriteKey(), - frames: battleFrameNames, - frameRate: 10, - repeat: -1, - }); + if (!globalScene.anims.exists(battleSpriteKey)) { + globalScene.anims.create({ + key: battleSpriteKey, + frames: battleFrameNames, + frameRate: 10, + repeat: -1, + }); + } } // With everything loaded, now begin playing the animation. this.playAnim(); // update the fusion palette this.updateFusionPalette(); - if (this.summonData?.speciesForm) { + if (this.summonData.speciesForm) { this.updateFusionPalette(true); } } @@ -1012,11 +1040,11 @@ export default abstract class Pokemon extends Phaser.GameObjects.Container { } getSpriteId(ignoreOverride?: boolean): string { - const formIndex: integer = !!this.summonData?.illusion ? this.summonData?.illusion.formIndex! : this.formIndex; + const formIndex = this.summonData.illusion?.formIndex ?? this.formIndex; return this.getSpeciesForm(ignoreOverride, true).getSpriteId( - this.getGender(ignoreOverride, true) === Gender.FEMALE, - formIndex, - this.shiny, + this.getGender(ignoreOverride, true) === Gender.FEMALE, + formIndex, + this.shiny, this.variant ); } @@ -1026,13 +1054,13 @@ export default abstract class Pokemon extends Phaser.GameObjects.Container { back = this.isPlayer(); } - const formIndex: integer = !!this.summonData?.illusion ? this.summonData?.illusion.formIndex! : this.formIndex; + const formIndex = this.summonData.illusion?.formIndex ?? this.formIndex; return this.getSpeciesForm(ignoreOverride, true).getSpriteId( - this.getGender(ignoreOverride, true) === Gender.FEMALE, - formIndex, - this.shiny, - this.variant, + this.getGender(ignoreOverride, true) === Gender.FEMALE, + formIndex, + this.shiny, + this.variant, back ); } @@ -1041,8 +1069,8 @@ export default abstract class Pokemon extends Phaser.GameObjects.Container { return this.getSpeciesForm(ignoreOverride, false).getSpriteKey( this.getGender(ignoreOverride) === Gender.FEMALE, this.formIndex, - this.summonData?.illusion?.basePokemon.shiny ?? this.shiny, - this.summonData?.illusion?.basePokemon.variant ?? this.variant + this.summonData.illusion?.basePokemon.shiny ?? this.shiny, + this.summonData.illusion?.basePokemon.variant ?? this.variant ); } @@ -1051,11 +1079,11 @@ export default abstract class Pokemon extends Phaser.GameObjects.Container { } getFusionSpriteId(ignoreOverride?: boolean): string { - const fusionFormIndex: integer = !!this.summonData?.illusion ? this.summonData?.illusion.fusionFormIndex! : this.fusionFormIndex; + const fusionFormIndex = this.summonData.illusion?.fusionFormIndex ?? this.fusionFormIndex; return this.getFusionSpeciesForm(ignoreOverride, true).getSpriteId( - this.getFusionGender(ignoreOverride, true) === Gender.FEMALE, - fusionFormIndex, - this.fusionShiny, + this.getFusionGender(ignoreOverride, true) === Gender.FEMALE, + fusionFormIndex, + this.fusionShiny, this.fusionVariant ); } @@ -1065,13 +1093,13 @@ export default abstract class Pokemon extends Phaser.GameObjects.Container { back = this.isPlayer(); } - const fusionFormIndex: integer = !!this.summonData?.illusion ? this.summonData?.illusion.fusionFormIndex! : this.fusionFormIndex; + const fusionFormIndex = this.summonData.illusion?.fusionFormIndex ?? this.fusionFormIndex; return this.getFusionSpeciesForm(ignoreOverride, true).getSpriteId( - this.getFusionGender(ignoreOverride, true) === Gender.FEMALE, - fusionFormIndex, - this.fusionShiny, - this.fusionVariant, + this.getFusionGender(ignoreOverride, true) === Gender.FEMALE, + fusionFormIndex, + this.fusionShiny, + this.fusionVariant, back ); } @@ -1090,53 +1118,62 @@ export default abstract class Pokemon extends Phaser.GameObjects.Container { ); } - getIconAtlasKey(ignoreOverride?: boolean): string { - const formIndex: integer = !!this.summonData?.illusion ? this.summonData?.illusion.formIndex : this.formIndex; - return this.getSpeciesForm(ignoreOverride, true).getIconAtlasKey( - formIndex, - this.shiny, - this.variant + getIconAtlasKey(ignoreOverride?: boolean, useIllusion: boolean = true): string { + const formIndex = useIllusion && this.summonData.illusion?.formIndex ? this.summonData.illusion?.formIndex : this.formIndex; + const variant = !useIllusion && !!this.summonData.illusion ? this.summonData.illusion?.basePokemon.variant : this.variant; + return this.getSpeciesForm(ignoreOverride, useIllusion).getIconAtlasKey( + formIndex, + this.isBaseShiny(useIllusion), + variant ); } - getFusionIconAtlasKey(ignoreOverride?: boolean): string { - return this.getFusionSpeciesForm(ignoreOverride, true).getIconAtlasKey( - this.fusionFormIndex, - this.fusionShiny, - this.fusionVariant + getFusionIconAtlasKey(ignoreOverride?: boolean, useIllusion: boolean = true): string { + const fusionFormIndex = useIllusion && this.summonData.illusion?.fusionFormIndex ? this.summonData.illusion?.fusionFormIndex : this.fusionFormIndex; + const fusionVariant = !useIllusion && !!this.summonData.illusion ? this.summonData.illusion?.basePokemon.fusionVariant : this.fusionVariant; + return this.getFusionSpeciesForm(ignoreOverride, useIllusion).getIconAtlasKey( + fusionFormIndex, + this.isFusionShiny(), + fusionVariant ); } - getIconId(ignoreOverride?: boolean): string { - const formIndex: integer = !!this.summonData?.illusion ? this.summonData?.illusion.formIndex : this.formIndex; - return this.getSpeciesForm(ignoreOverride, true).getIconId( - this.getGender(ignoreOverride, true) === Gender.FEMALE, - formIndex, - this.shiny, - this.variant + getIconId(ignoreOverride?: boolean, useIllusion: boolean = true): string { + const formIndex = useIllusion && this.summonData.illusion?.formIndex ? this.summonData.illusion?.formIndex : this.formIndex; + const variant = !useIllusion && !!this.summonData.illusion ? this.summonData.illusion?.basePokemon.variant : this.variant; + return this.getSpeciesForm(ignoreOverride, useIllusion).getIconId( + this.getGender(ignoreOverride, useIllusion) === Gender.FEMALE, + formIndex, + this.isBaseShiny(), + variant ); } - getFusionIconId(ignoreOverride?: boolean): string { - const fusionFormIndex: integer = !!this.summonData?.illusion ? this.summonData?.illusion.fusionFormIndex! : this.fusionFormIndex; - return this.getFusionSpeciesForm(ignoreOverride, true).getIconId( - this.getFusionGender(ignoreOverride, true) === Gender.FEMALE, - fusionFormIndex, - this.fusionShiny, - this.fusionVariant + getFusionIconId(ignoreOverride?: boolean, useIllusion: boolean = true): string { + const fusionFormIndex = useIllusion && this.summonData.illusion?.fusionFormIndex ? this.summonData.illusion?.fusionFormIndex : this.fusionFormIndex; + const fusionVariant = !useIllusion && !!this.summonData.illusion ? this.summonData.illusion?.basePokemon.fusionVariant : this.fusionVariant; + return this.getFusionSpeciesForm(ignoreOverride, useIllusion).getIconId( + this.getFusionGender(ignoreOverride, useIllusion) === Gender.FEMALE, + fusionFormIndex, + this.isFusionShiny(), + fusionVariant ); } /** - * @param {boolean} useIllusion - Whether we want the speciesForm of the illusion or not. + * Get this {@linkcode Pokemon}'s {@linkcode PokemonSpeciesForm}. + * @param ignoreOverride - Whether to ignore overridden species from {@linkcode Moves.TRANSFORM}, default `false`. + * This overrides `useIllusion` if `true`. + * @param useIllusion - `true` to use the speciesForm of the illusion; default `false`. */ - getSpeciesForm(ignoreOverride?: boolean, useIllusion: boolean = false): PokemonSpeciesForm { - const species: PokemonSpecies = useIllusion && !!this.summonData?.illusion ? getPokemonSpecies(this.summonData?.illusion.species) : this.species; - const formIndex: integer = useIllusion && !!this.summonData?.illusion ? this.summonData?.illusion.formIndex : this.formIndex; - - if (!ignoreOverride && this.summonData?.speciesForm) { + getSpeciesForm(ignoreOverride: boolean = false, useIllusion: boolean = false): PokemonSpeciesForm { + if (!ignoreOverride && this.summonData.speciesForm) { return this.summonData.speciesForm; } + + const species: PokemonSpecies = useIllusion && this.summonData.illusion ? getPokemonSpecies(this.summonData.illusion.species) : this.species; + const formIndex = useIllusion && this.summonData.illusion ? this.summonData.illusion.formIndex : this.formIndex; + if (species.forms && species.forms.length > 0) { return species.forms[formIndex]; } @@ -1148,14 +1185,14 @@ export default abstract class Pokemon extends Phaser.GameObjects.Container { * @param {boolean} useIllusion - Whether we want the fusionSpeciesForm of the illusion or not. */ getFusionSpeciesForm(ignoreOverride?: boolean, useIllusion: boolean = false): PokemonSpeciesForm { - const fusionSpecies: PokemonSpecies = useIllusion && !!this.summonData?.illusion ? this.summonData?.illusion.fusionSpecies! : this.fusionSpecies!; - const fusionFormIndex: integer = useIllusion && !!this.summonData?.illusion ? this.summonData?.illusion.fusionFormIndex! : this.fusionFormIndex; + const fusionSpecies: PokemonSpecies = useIllusion && this.summonData.illusion ? this.summonData.illusion.fusionSpecies! : this.fusionSpecies!; + const fusionFormIndex = useIllusion && this.summonData.illusion ? this.summonData.illusion.fusionFormIndex! : this.fusionFormIndex; - if (!ignoreOverride && this.summonData?.speciesForm) { + if (!ignoreOverride && this.summonData.fusionSpeciesForm) { return this.summonData.fusionSpeciesForm; } if ( - !fusionSpecies?.forms?.length || + !fusionSpecies?.forms?.length || fusionFormIndex >= fusionSpecies?.forms.length ) { return fusionSpecies; @@ -1183,12 +1220,15 @@ export default abstract class Pokemon extends Phaser.GameObjects.Container { formKey === "ruchbah-starmobile" || formKey === "caph-starmobile" ) { + // G-Max and starmobiles have flat 1.5x scale return 1.5; } - if (this.customPokemonData.spriteScale > 0) { - return this.customPokemonData.spriteScale; + + // TODO: Rather than using -1 as a default... why don't we just change it to 1???????? + if (this.customPokemonData.spriteScale <= 0) { + return 1; } - return 1; + return this.customPokemonData.spriteScale; } /** Resets the pokemon's field sprite properties, including position, alpha, and scale */ @@ -1382,12 +1422,12 @@ export default abstract class Pokemon extends Phaser.GameObjects.Container { } /** - * Retrieves the entire set of stats of the {@linkcode Pokemon}. - * @param bypassSummonData prefer actual stats (`true` by default) or in-battle overriden stats (`false`) - * @returns the numeric values of the {@linkcode Pokemon}'s stats + * Retrieves the entire set of stats of this {@linkcode Pokemon}. + * @param bypassSummonData - whether to use actual stats or in-battle overriden stats from Transform; default `true` + * @returns the numeric values of this {@linkcode Pokemon}'s stats */ getStats(bypassSummonData = true): number[] { - if (!bypassSummonData && this.summonData?.stats) { + if (!bypassSummonData && this.summonData.stats) { return this.summonData.stats; } return this.stats; @@ -1402,7 +1442,6 @@ export default abstract class Pokemon extends Phaser.GameObjects.Container { getStat(stat: PermanentStat, bypassSummonData = true): number { if ( !bypassSummonData && - this.summonData && this.summonData.stats[stat] !== 0 ) { return this.summonData.stats[stat]; @@ -1419,12 +1458,14 @@ export default abstract class Pokemon extends Phaser.GameObjects.Container { * @param bypassSummonData write to actual stats (`true` by default) or in-battle overridden stats (`false`) */ setStat(stat: PermanentStat, value: number, bypassSummonData = true): void { - if (value >= 0) { - if (!bypassSummonData && this.summonData) { - this.summonData.stats[stat] = value; - } else { - this.stats[stat] = value; - } + if (value < 0) { + return; + } + + if (!bypassSummonData) { + this.summonData.stats[stat] = value; + } else { + this.stats[stat] = value; } } @@ -1453,20 +1494,17 @@ export default abstract class Pokemon extends Phaser.GameObjects.Container { * @param value the desired numeric value */ setStatStage(stat: BattleStat, value: number): void { - if (this.summonData) { - if (value >= -6) { - this.summonData.statStages[stat - 1] = Math.min(value, 6); - } else { - this.summonData.statStages[stat - 1] = Math.max(value, -6); - } + if (value >= -6) { + this.summonData.statStages[stat - 1] = Math.min(value, 6); + } else { + this.summonData.statStages[stat - 1] = Math.max(value, -6); } } /** * Calculate the critical-hit stage of a move used against this pokemon by * the given source - * - * @param source - The {@linkcode Pokemon} who using the move + * @param source - The {@linkcode Pokemon} using the move * @param move - The {@linkcode Move} being used * @returns The final critical-hit stage value */ @@ -1824,9 +1862,9 @@ export default abstract class Pokemon extends Phaser.GameObjects.Container { * @param {boolean} useIllusion - Whether we want the fake or real gender (illusion ability). */ getGender(ignoreOverride?: boolean, useIllusion: boolean = false): Gender { - if (useIllusion && !!this.summonData?.illusion) { - return this.summonData?.illusion.gender!; - } else if (!ignoreOverride && this.summonData?.gender !== undefined) { + if (useIllusion && this.summonData.illusion) { + return this.summonData.illusion.gender; + } else if (!ignoreOverride && !isNullOrUndefined(this.summonData.gender)) { return this.summonData.gender; } return this.gender; @@ -1836,9 +1874,9 @@ export default abstract class Pokemon extends Phaser.GameObjects.Container { * @param {boolean} useIllusion - Whether we want the fake or real gender (illusion ability). */ getFusionGender(ignoreOverride?: boolean, useIllusion: boolean = false): Gender { - if (useIllusion && !!this.summonData?.illusion) { - return this.summonData?.illusion.fusionGender!; - } else if (!ignoreOverride && this.summonData?.fusionGender !== undefined) { + if (useIllusion && this.summonData.illusion?.fusionGender) { + return this.summonData.illusion.fusionGender; + } else if (!ignoreOverride && !isNullOrUndefined(this.summonData.fusionGender)) { return this.summonData.fusionGender; } return this.fusionGender; @@ -1848,21 +1886,37 @@ export default abstract class Pokemon extends Phaser.GameObjects.Container { * @param {boolean} useIllusion - Whether we want the fake or real shininess (illusion ability). */ isShiny(useIllusion: boolean = false): boolean { - if (!useIllusion && !!this.summonData?.illusion) { - return this.summonData?.illusion.basePokemon?.shiny || (!!this.summonData?.illusion.fusionSpecies && this.summonData?.illusion.basePokemon?.fusionShiny) || false; + if (!useIllusion && this.summonData.illusion) { + return this.summonData.illusion.basePokemon?.shiny || (this.summonData.illusion.fusionSpecies && this.summonData.illusion.basePokemon?.fusionShiny) || false; } else { return this.shiny || (this.isFusion(useIllusion) && this.fusionShiny); } } + isBaseShiny(useIllusion: boolean = false){ + if (!useIllusion && this.summonData.illusion) { + return !!this.summonData.illusion.basePokemon?.shiny; + } else { + return this.shiny; + } + } + + isFusionShiny(useIllusion: boolean = false){ + if (!useIllusion && this.summonData.illusion) { + return !!this.summonData.illusion.basePokemon?.fusionShiny; + } else { + return this.isFusion(useIllusion) && this.fusionShiny; + } + } + /** - * + * * @param useIllusion - Whether we want the fake or real shininess (illusion ability). * @returns `true` if the {@linkcode Pokemon} is shiny and the fusion is shiny as well, `false` otherwise */ isDoubleShiny(useIllusion: boolean = false): boolean { - if (!useIllusion && !!this.summonData?.illusion) { - return this.isFusion(false) && this.summonData?.illusion.basePokemon.shiny && this.summonData?.illusion.basePokemon.fusionShiny; + if (!useIllusion && this.summonData.illusion?.basePokemon) { + return this.isFusion(false) && this.summonData.illusion.basePokemon.shiny && this.summonData.illusion.basePokemon.fusionShiny; } else { return this.isFusion(useIllusion) && this.shiny && this.fusionShiny; } @@ -1872,25 +1926,23 @@ export default abstract class Pokemon extends Phaser.GameObjects.Container { * @param {boolean} useIllusion - Whether we want the fake or real variant (illusion ability). */ getVariant(useIllusion: boolean = false): Variant { - if (!useIllusion && !!this.summonData?.illusion) { - return !this.isFusion(false) - ? this.summonData?.illusion.basePokemon!.variant + if (!useIllusion && this.summonData.illusion) { + return !this.isFusion(false) + ? this.summonData.illusion.basePokemon!.variant : Math.max(this.variant, this.fusionVariant) as Variant; } else { - return !this.isFusion(true) - ? this.variant + return !this.isFusion(true) + ? this.variant : Math.max(this.variant, this.fusionVariant) as Variant; } } getBaseVariant(doubleShiny: boolean): Variant { if (doubleShiny) { - return !!this.summonData?.illusion - ? this.summonData?.illusion.basePokemon!.variant - : this.variant; - } else { - return this.getVariant(); + return this.summonData.illusion?.basePokemon?.variant ?? this.variant; } + + return this.getVariant(); } getLuck(): number { @@ -1898,19 +1950,18 @@ export default abstract class Pokemon extends Phaser.GameObjects.Container { } isFusion(useIllusion: boolean = false): boolean { - if (useIllusion && !!this.summonData?.illusion) { - return !!this.summonData?.illusion.fusionSpecies; - } else { - return !!this.fusionSpecies; + if (useIllusion && this.summonData.illusion) { + return !!this.summonData.illusion.fusionSpecies; } + return !!this.fusionSpecies; } /** * @param {boolean} useIllusion - Whether we want the fake name or the real name of the Pokemon (for Illusion ability). */ getName(useIllusion: boolean = false): string { - return (!useIllusion && !!this.summonData?.illusion && this.summonData?.illusion.basePokemon) - ? this.summonData?.illusion.basePokemon.name + return (!useIllusion && this.summonData.illusion?.basePokemon) + ? this.summonData.illusion.basePokemon.name : this.name; } @@ -1944,7 +1995,7 @@ export default abstract class Pokemon extends Phaser.GameObjects.Container { getMoveset(ignoreOverride?: boolean): PokemonMove[] { const ret = - !ignoreOverride && this.summonData?.moveset + !ignoreOverride && this.summonData.moveset ? this.summonData.moveset : this.moveset; @@ -2026,14 +2077,14 @@ export default abstract class Pokemon extends Phaser.GameObjects.Container { * @param includeTeraType - `true` to include tera-formed type; Default: `false` * @param forDefend - `true` if the pokemon is defending from an attack; Default: `false` * @param ignoreOverride - If `true`, ignore ability changing effects; Default: `false` - * @param useIllusion - `true` to return the types of the illusion instead of the actual types; "AUTO" will depend on forDefend param; Default: "AUTO" + * @param useIllusion - `true` to return the types of the illusion instead of the actual types; Default: `false` * @returns array of {@linkcode PokemonType} */ public getTypes( - includeTeraType = false, - forDefend: boolean = false, - ignoreOverride?: boolean, - useIllusion: boolean | "AUTO" = "AUTO" + includeTeraType = false, + forDefend: boolean = false, + ignoreOverride: boolean = false, + useIllusion: boolean = false ): PokemonType[] { const types: PokemonType[] = []; @@ -2049,17 +2100,16 @@ export default abstract class Pokemon extends Phaser.GameObjects.Container { } if (!types.length || !includeTeraType) { - const doIllusion: boolean = (useIllusion === "AUTO") ? !forDefend : useIllusion; if ( - !ignoreOverride && - this.summonData?.types && - this.summonData.types.length > 0 && - (!this.summonData?.illusion || !doIllusion) + !ignoreOverride && + this.summonData.types && + this.summonData.types.length > 0 && + (!this.summonData.illusion || !useIllusion) ) { this.summonData.types.forEach(t => types.push(t)); } else { - const speciesForm = this.getSpeciesForm(ignoreOverride, doIllusion); - const fusionSpeciesForm = this.getFusionSpeciesForm(ignoreOverride, doIllusion); + const speciesForm = this.getSpeciesForm(ignoreOverride, useIllusion); + const fusionSpeciesForm = this.getFusionSpeciesForm(ignoreOverride, useIllusion); const customTypes = this.customPokemonData.types?.length > 0; // First type, checking for "permanently changed" types from ME @@ -2135,10 +2185,9 @@ export default abstract class Pokemon extends Phaser.GameObjects.Container { } } - // the type added to Pokemon from moves like Forest's Curse or Trick Or Treat + // check type added to Pokemon from moves like Forest's Curse or Trick Or Treat if ( !ignoreOverride && - this.summonData && this.summonData.addedType && !types.includes(this.summonData.addedType) ) { @@ -2181,7 +2230,7 @@ export default abstract class Pokemon extends Phaser.GameObjects.Container { * @returns The non-passive {@linkcode Ability} of the pokemon */ public getAbility(ignoreOverride = false): Ability { - if (!ignoreOverride && this.summonData?.ability) { + if (!ignoreOverride && this.summonData.ability) { return allAbilities[this.summonData.ability]; } if (Overrides.ABILITY_OVERRIDE && this.isPlayer()) { @@ -2247,8 +2296,8 @@ export default abstract class Pokemon extends Phaser.GameObjects.Container { * Accounts for all the various effects which can affect whether an ability will be present or * in effect, and both passive and non-passive. * @param attrType - {@linkcode AbAttr} The ability attribute to check for. - * @param canApply - If `false`, it doesn't check whether the ability is currently active; Default `true` - * @param ignoreOverride - If `true`, it ignores ability changing effects; Default `false` + * @param canApply - Whether to check if the ability is currently active; Default `true` + * @param ignoreOverride - Whether to ignore ability changing effects; Default `false` * @returns An array of all the ability attributes on this ability. */ public getAbilityAttrs( @@ -2360,7 +2409,7 @@ export default abstract class Pokemon extends Phaser.GameObjects.Container { return false; } if ( - this.summonData?.abilitySuppressed && + this.summonData.abilitySuppressed && ability.isSuppressable ) { return false; @@ -2368,8 +2417,9 @@ export default abstract class Pokemon extends Phaser.GameObjects.Container { const suppressAbilitiesTag = arena.getTag( ArenaTagType.NEUTRALIZING_GAS, ) as SuppressAbilitiesTag; + const suppressOffField = ability.hasAttr(PreSummonAbAttr); if ( - this.isOnField() && + (this.isOnField() || suppressOffField) && suppressAbilitiesTag && !suppressAbilitiesTag.isBeingRemoved() ) { @@ -2401,15 +2451,15 @@ export default abstract class Pokemon extends Phaser.GameObjects.Container { * Checks whether a pokemon has the specified ability and it's in effect. Accounts for all the various * effects which can affect whether an ability will be present or in effect, and both passive and * non-passive. This is the primary way to check whether a pokemon has a particular ability. - * @param {Abilities} ability The ability to check for - * @param {boolean} canApply If false, it doesn't check whether the ability is currently active - * @param {boolean} ignoreOverride If true, it ignores ability changing effects - * @returns {boolean} Whether the ability is present and active + * @param ability The ability to check for + * @param canApply - Whether to check if the ability is currently active; default `true` + * @param ignoreOverride Whether to ignore ability changing effects; default `false` + * @returns `true` if the ability is present and active */ public hasAbility( ability: Abilities, canApply = true, - ignoreOverride?: boolean, + ignoreOverride = false, ): boolean { if ( this.getAbility(ignoreOverride).id === ability && @@ -2432,15 +2482,15 @@ export default abstract class Pokemon extends Phaser.GameObjects.Container { * Accounts for all the various effects which can affect whether an ability will be present or * in effect, and both passive and non-passive. This is one of the two primary ways to check * whether a pokemon has a particular ability. - * @param {AbAttr} attrType The ability attribute to check for - * @param {boolean} canApply If false, it doesn't check whether the ability is currently active - * @param {boolean} ignoreOverride If true, it ignores ability changing effects - * @returns {boolean} Whether an ability with that attribute is present and active + * @param attrType The {@link AbAttr | ability attribute} to check for + * @param canApply - Whether to check if the ability is currently active; default `true` + * @param ignoreOverride Whether to ignore ability changing effects; default `false` + * @returns `true` if an ability with the given {@linkcode AbAttr} is present and active */ public hasAbilityWithAttr( attrType: Constructor, canApply = true, - ignoreOverride?: boolean, + ignoreOverride = false, ): boolean { if ( (!canApply || this.canApplyAbility()) && @@ -2589,9 +2639,15 @@ export default abstract class Pokemon extends Phaser.GameObjects.Container { null, move, simulated, - moveTypeHolder, + moveTypeHolder ); + // If the user is terastallized and the move is tera blast, or tera starstorm that is stellar type, + // then bypass the check for ion deluge and electrify + if (this.isTerastallized && (move.id === Moves.TERA_BLAST || move.id === Moves.TERA_STARSTORM && moveTypeHolder.value === PokemonType.STELLAR)) { + return moveTypeHolder.value as PokemonType; + } + globalScene.arena.applyTags( ArenaTagType.ION_DELUGE, simulated, @@ -2633,14 +2689,14 @@ export default abstract class Pokemon extends Phaser.GameObjects.Container { const moveType = source.getMoveType(move); const typeMultiplier = new NumberHolder( - move.category !== MoveCategory.STATUS || + move.category !== MoveCategory.STATUS || move.hasAttr(RespectAttackTypeImmunityAttr) ? this.getAttackTypeEffectiveness( - moveType, - source, - false, - simulated, - move, + moveType, + source, + false, + simulated, + move, useIllusion ) : 1); @@ -2751,11 +2807,11 @@ export default abstract class Pokemon extends Phaser.GameObjects.Container { * @returns a multiplier for the type effectiveness */ getAttackTypeEffectiveness( - moveType: PokemonType, - source?: Pokemon, - ignoreStrongWinds: boolean = false, - simulated: boolean = true, - move?: Move, + moveType: PokemonType, + source?: Pokemon, + ignoreStrongWinds: boolean = false, + simulated: boolean = true, + move?: Move, useIllusion: boolean = false ): TypeDamageMultiplier { if (moveType === PokemonType.STELLAR) { @@ -3115,7 +3171,7 @@ export default abstract class Pokemon extends Phaser.GameObjects.Container { } const move = new PokemonMove(moveId); this.moveset[moveIndex] = move; - if (this.summonData?.moveset) { + if (this.summonData.moveset) { this.summonData.moveset[moveIndex] = move; } } @@ -3856,7 +3912,7 @@ export default abstract class Pokemon extends Phaser.GameObjects.Container { getOpponent(targetIndex: number): Pokemon | null { const ret = this.getOpponents()[targetIndex]; - if (ret.summonData) { + if (ret.summonData) { // TODO: why does this check for summonData and can we remove it? return ret; } return null; @@ -3864,7 +3920,7 @@ export default abstract class Pokemon extends Phaser.GameObjects.Container { /** * Returns the pokemon that oppose this one and are active - * + * * @param onField - whether to also check if the pokemon is currently on the field (defaults to true) */ getOpponents(onField = true): Pokemon[] { @@ -4174,12 +4230,12 @@ export default abstract class Pokemon extends Phaser.GameObjects.Container { /** Determine the STAB multiplier for a move used against this pokemon. - * + * * @param source - The attacking {@linkcode Pokemon} * @param move - The {@linkcode Move} used in the attack * @param ignoreSourceAbility - If `true`, ignores the attacking Pokemon's ability effects * @param simulated - If `true`, suppresses changes to game state during the calculation - * + * * @returns The STAB multiplier for the move used against this Pokemon */ calculateStabMultiplier(source: Pokemon, move: Move, ignoreSourceAbility: boolean, simulated: boolean): number { @@ -4574,7 +4630,7 @@ export default abstract class Pokemon extends Phaser.GameObjects.Container { }; } - /** Calculate whether the given move critically hits this pokemon + /** Calculate whether the given move critically hits this pokemon * @param source - The {@linkcode Pokemon} using the move * @param move - The {@linkcode Move} being used * @param simulated - If `true`, suppresses changes to game state during calculation (defaults to `true`) @@ -4603,16 +4659,16 @@ export default abstract class Pokemon extends Phaser.GameObjects.Container { applyAbAttrs(BlockCritAbAttr, this, null, simulated, isCritical); return isCritical.value; - + } /** * Called by damageAndUpdate() * @param damage integer * @param ignoreSegments boolean, not currently used - * @param preventEndure used to update damage if endure or sturdy - * @param ignoreFaintPhase flag on wheter to add FaintPhase if pokemon after applying damage faints - * @returns integer representing damage + * @param preventEndure used to update damage if endure or sturdy + * @param ignoreFaintPhas flag on whether to add FaintPhase if pokemon after applying damage faints + * @returns integer representing damage dealt */ damage( damage: number, @@ -4625,6 +4681,7 @@ export default abstract class Pokemon extends Phaser.GameObjects.Container { } const surviveDamage = new BooleanHolder(false); + // check for endure and other abilities that would prevent us from death if (!preventEndure && this.hp - damage <= 0) { if (this.hp >= 1 && this.getTag(BattlerTagType.ENDURING)) { surviveDamage.value = this.lapseTag(BattlerTagType.ENDURING); @@ -4668,7 +4725,7 @@ export default abstract class Pokemon extends Phaser.GameObjects.Container { /** * Given the damage, adds a new DamagePhase and update HP values, etc. - * + * * Checks for 'Indirect' HitResults to account for Endure/Reviver Seed applying correctly * @param damage integer - passed to damage() * @param result an enum if it's super effective, not very, etc. @@ -4680,25 +4737,25 @@ export default abstract class Pokemon extends Phaser.GameObjects.Container { */ damageAndUpdate(damage: number, { - result = HitResult.EFFECTIVE, - isCritical = false, - ignoreSegments = false, - ignoreFaintPhase = false, + result = HitResult.EFFECTIVE, + isCritical = false, + ignoreSegments = false, + ignoreFaintPhase = false, source = undefined, }: { - result?: DamageResult, - isCritical?: boolean, - ignoreSegments?: boolean, - ignoreFaintPhase?: boolean, + result?: DamageResult, + isCritical?: boolean, + ignoreSegments?: boolean, + ignoreFaintPhase?: boolean, source?: Pokemon, } = {} ): number { const isIndirectDamage = [ HitResult.INDIRECT, HitResult.INDIRECT_KO ].includes(result); const damagePhase = new DamageAnimPhase( - this.getBattlerIndex(), - damage, - result as DamageResult, + this.getBattlerIndex(), + damage, + result as DamageResult, isCritical ); globalScene.unshiftPhase(damagePhase); @@ -4711,6 +4768,11 @@ export default abstract class Pokemon extends Phaser.GameObjects.Container { isIndirectDamage, ignoreFaintPhase, ); + // Ensure the battle-info bar's HP is updated, though only if the battle info is visible + // TODO: When battle-info UI is refactored, make this only update the HP bar + if (this.battleInfo.visible) { + this.updateInfo(); + } // Damage amount may have changed, but needed to be queued before calling damage function damagePhase.updateAmount(damage); /** @@ -4834,51 +4896,51 @@ export default abstract class Pokemon extends Phaser.GameObjects.Container { getTag(tagType: BattlerTagType.GRUDGE): GrudgeTag | nil; /** @overload */ - getTag(tagType: BattlerTagType): BattlerTag | nil; + getTag(tagType: BattlerTagType): BattlerTag | undefined; /** @overload */ - getTag(tagType: Constructor): T | nil; + getTag(tagType: Constructor): T | undefined; - getTag(tagType: BattlerTagType | Constructor): BattlerTag | nil { - if (!this.summonData) { - return null; - } + getTag(tagType: BattlerTagType | Constructor): BattlerTag | undefined { return tagType instanceof Function ? this.summonData.tags.find(t => t instanceof tagType) : this.summonData.tags.find(t => t.tagType === tagType); } findTag(tagFilter: (tag: BattlerTag) => boolean) { - if (!this.summonData) { - return null; - } return this.summonData.tags.find(t => tagFilter(t)); } findTags(tagFilter: (tag: BattlerTag) => boolean): BattlerTag[] { - if (!this.summonData) { - return []; - } return this.summonData.tags.filter(t => tagFilter(t)); } + /** + * Tick down the first {@linkcode BattlerTag} found matching the given {@linkcode BattlerTagType}, + * removing it if its duration goes below 0. + * @param tagType the {@linkcode BattlerTagType} to check against + * @returns `true` if the tag was present + */ lapseTag(tagType: BattlerTagType): boolean { - if (!this.summonData) { - return false; - } const tags = this.summonData.tags; const tag = tags.find(t => t.tagType === tagType); - if (tag && !tag.lapse(this, BattlerTagLapseType.CUSTOM)) { + if (!tag) { + return false + } + + if (!tag.lapse(this, BattlerTagLapseType.CUSTOM)) { tag.onRemove(this); tags.splice(tags.indexOf(tag), 1); } - return !!tag; + return true } + /** + * Tick down all {@linkcode BattlerTags} matching the given {@linkcode BattlerTagLapseType}, + * removing any whose durations fall below 0. + * @param tagType the {@linkcode BattlerTagLapseType} to tick down + */ lapseTags(lapseType: BattlerTagLapseType): void { - if (!this.summonData) { - return; - } const tags = this.summonData.tags; tags .filter( @@ -4893,23 +4955,24 @@ export default abstract class Pokemon extends Phaser.GameObjects.Container { }); } - removeTag(tagType: BattlerTagType): boolean { - if (!this.summonData) { - return false; - } + /** + * Remove the first tag matching the given {@linkcode BattlerTagType}. + * @param tagType the {@linkcode BattlerTagType} to search for and remove + */ + removeTag(tagType: BattlerTagType): void { const tags = this.summonData.tags; const tag = tags.find(t => t.tagType === tagType); if (tag) { tag.onRemove(this); tags.splice(tags.indexOf(tag), 1); } - return !!tag; } - findAndRemoveTags(tagFilter: (tag: BattlerTag) => boolean): boolean { - if (!this.summonData) { - return false; - } + /** + * Find and remove all {@linkcode BattlerTag}s matching the given function. + * @param tagFilter a function dictating which tags to remove + */ + findAndRemoveTags(tagFilter: (tag: BattlerTag) => boolean): void { const tags = this.summonData.tags; const tagsToRemove = tags.filter(t => tagFilter(t)); for (const tag of tagsToRemove) { @@ -4917,7 +4980,6 @@ export default abstract class Pokemon extends Phaser.GameObjects.Container { tag.onRemove(this); tags.splice(tags.indexOf(tag), 1); } - return true; } removeTagsBySourceId(sourceId: number): void { @@ -4925,13 +4987,11 @@ export default abstract class Pokemon extends Phaser.GameObjects.Container { } transferTagsBySourceId(sourceId: number, newSourceId: number): void { - if (!this.summonData) { - return; - } - const tags = this.summonData.tags; - tags - .filter(t => t.sourceId === sourceId) - .forEach(t => (t.sourceId = newSourceId)); + this.summonData.tags.forEach(t => { + if (t.sourceId === sourceId) { + t.sourceId = newSourceId; + } + }) } /** @@ -5047,7 +5107,7 @@ export default abstract class Pokemon extends Phaser.GameObjects.Container { } public getMoveHistory(): TurnMove[] { - return this.battleSummonData.moveHistory; + return this.summonData.moveHistory; } public pushMoveHistory(turnMove: TurnMove): void { @@ -5345,7 +5405,7 @@ export default abstract class Pokemon extends Phaser.GameObjects.Container { } const message = effect && this.status?.effect === effect ? getStatusEffectOverlapText(effect ?? StatusEffect.NONE, getPokemonNameWithAffix(this)) - : i18next.t("abilityTriggers:moveImmunity", { + : i18next.t("abilityTriggers:moveImmunity", { pokemonNameWithAffix: getPokemonNameWithAffix(this), }); globalScene.queueMessage(message); @@ -5490,9 +5550,9 @@ export default abstract class Pokemon extends Phaser.GameObjects.Container { sourcePokemon !== this && this.isSafeguarded(sourcePokemon) ) { - if(!quiet){ + if(!quiet){ globalScene.queueMessage( - i18next.t("moveTriggers:safeguard", { targetName: getPokemonNameWithAffix(this) + i18next.t("moveTriggers:safeguard", { targetName: getPokemonNameWithAffix(this) })); } return false; @@ -5507,9 +5567,10 @@ export default abstract class Pokemon extends Phaser.GameObjects.Container { sourcePokemon: Pokemon | null = null, turnsRemaining = 0, sourceText: string | null = null, - overrideStatus?: boolean + overrideStatus?: boolean, + quiet = true, ): boolean { - if (!this.canSetStatus(effect, false, overrideStatus, sourcePokemon)) { + if (!this.canSetStatus(effect, quiet, overrideStatus, sourcePokemon)) { return false; } if (this.isFainted() && effect !== StatusEffect.FAINT) { @@ -5579,13 +5640,44 @@ export default abstract class Pokemon extends Phaser.GameObjects.Container { * @param revive Whether revive should be cured; defaults to true. * @param confusion Whether resetStatus should include confusion or not; defaults to false. * @param reloadAssets Whether to reload the assets or not; defaults to false. + * @param asPhase Whether to reset the status in a phase or immediately */ - resetStatus(revive = true, confusion = false, reloadAssets = false): void { + resetStatus(revive = true, confusion = false, reloadAssets = false, asPhase = true): void { const lastStatus = this.status?.effect; if (!revive && lastStatus === StatusEffect.FAINT) { return; } - globalScene.unshiftPhase(new ResetStatusPhase(this, confusion, reloadAssets)); + + if (asPhase) { + globalScene.unshiftPhase(new ResetStatusPhase(this, confusion, reloadAssets)); + } else { + this.clearStatus(confusion, reloadAssets); + } + } + + /** + * Performs the action of clearing a Pokemon's status + * + * This is a helper to {@linkcode resetStatus}, which should be called directly instead of this method + */ + public clearStatus(confusion: boolean, reloadAssets: boolean) { + const lastStatus = this.status?.effect; + this.status = null; + if (lastStatus === StatusEffect.SLEEP) { + this.setFrameRate(10); + if (this.getTag(BattlerTagType.NIGHTMARE)) { + this.lapseTag(BattlerTagType.NIGHTMARE); + } + } + if (confusion) { + if (this.getTag(BattlerTagType.CONFUSED)) { + this.lapseTag(BattlerTagType.CONFUSED); + } + } + if (reloadAssets) { + this.loadAssets(false).then(() => this.playAnim()); + } + this.updateInfo(true); } /** @@ -5607,65 +5699,19 @@ export default abstract class Pokemon extends Phaser.GameObjects.Container { return false; } - primeSummonData(summonDataPrimer: PokemonSummonData): void { - this.summonDataPrimer = summonDataPrimer; - } - - // For PreSummonAbAttr to get access to summonData - initSummondata(): void { - this.summonData = this.summonData ?? this.summonDataPrimer ?? new PokemonSummonData() - } - + /** + * Reset this Pokemon's {@linkcode PokemonSummonData | SummonData} and {@linkcode PokemonTempSummonData | TempSummonData} + * in preparation for switching pokemon, as well as removing any relevant on-switch tags. + */ resetSummonData(): void { - const illusion: IllusionData | null = this.summonData?.illusion; - if (this.summonData?.speciesForm) { + const illusion: IllusionData | null = this.summonData.illusion; + if (this.summonData.speciesForm) { this.summonData.speciesForm = null; this.updateFusionPalette(); } this.summonData = new PokemonSummonData(); + this.tempSummonData = new PokemonTempSummonData(); this.setSwitchOutStatus(false); - if (!this.battleData) { - this.resetBattleData(); - } - this.resetBattleSummonData(); - if (this.summonDataPrimer) { - for (const k of Object.keys(this.summonDataPrimer)) { - if (this.summonDataPrimer[k]) { - this.summonData[k] = this.summonDataPrimer[k]; - } - } - // If this Pokemon has a Substitute when loading in, play an animation to add its sprite - if (this.getTag(SubstituteTag)) { - globalScene.triggerPokemonBattleAnim( - this, - PokemonAnimType.SUBSTITUTE_ADD, - ); - this.getTag(SubstituteTag)!.sourceInFocus = false; - } - - // If this Pokemon has Commander and Dondozo as an active ally, hide this Pokemon's sprite. - if ( - this.hasAbilityWithAttr(CommanderAbAttr) && - globalScene.currentBattle.double && - this.getAlly()?.species.speciesId === Species.DONDOZO - ) { - this.setVisible(false); - } - this.summonDataPrimer = null; - } - this.summonData.illusion = illusion - this.updateInfo(); - } - - resetBattleData(): void { - this.battleData = new PokemonBattleData(); - } - - resetBattleSummonData(): void { - this.battleSummonData = new PokemonBattleSummonData(); - if (this.getTag(BattlerTagType.SEEDED)) { - this.lapseTag(BattlerTagType.SEEDED); - } if (globalScene) { globalScene.triggerPokemonFormChange( this, @@ -5673,6 +5719,45 @@ export default abstract class Pokemon extends Phaser.GameObjects.Container { true, ); } + + // If this Pokemon has a Substitute when loading in, play an animation to add its sprite + if (this.getTag(SubstituteTag)) { + globalScene.triggerPokemonBattleAnim( + this, + PokemonAnimType.SUBSTITUTE_ADD, + ); + this.getTag(SubstituteTag)!.sourceInFocus = false; + } + + // If this Pokemon has Commander and Dondozo as an active ally, hide this Pokemon's sprite. + if ( + this.hasAbilityWithAttr(CommanderAbAttr) && + globalScene.currentBattle.double && + this.getAlly()?.species.speciesId === Species.DONDOZO + ) { + this.setVisible(false); + } + this.summonData.illusion = illusion + this.updateInfo(); + } + + /** + * Reset a {@linkcode Pokemon}'s per-battle {@linkcode PokemonBattleData | battleData}, + * as well as any transient {@linkcode PokemonWaveData | waveData} for the current wave. + * Should be called once per arena transition (new biome/trainer battle/Mystery Encounter). + */ + resetBattleAndWaveData(): void { + this.battleData = new PokemonBattleData(); + this.resetWaveData(); + } + + /** + * Reset a {@linkcode Pokemon}'s {@linkcode PokemonWaveData | waveData}. + * Should be called upon starting a new wave in addition to whenever an arena transition occurs. + * @see {@linkcode resetBattleAndWaveData()} + */ + resetWaveData(): void { + this.waveData = new PokemonWaveData(); } resetTera(): void { @@ -5793,10 +5878,10 @@ export default abstract class Pokemon extends Phaser.GameObjects.Container { .filter(s => !!s) .map(s => { s.pipelineData[ - `spriteColors${ignoreOveride && this.summonData?.speciesForm ? "Base" : ""}` + `spriteColors${ignoreOveride && this.summonData.speciesForm ? "Base" : ""}` ] = []; s.pipelineData[ - `fusionSpriteColors${ignoreOveride && this.summonData?.speciesForm ? "Base" : ""}` + `fusionSpriteColors${ignoreOveride && this.summonData.speciesForm ? "Base" : ""}` ] = []; }); return; @@ -6153,10 +6238,10 @@ export default abstract class Pokemon extends Phaser.GameObjects.Container { .filter(s => !!s) .map(s => { s.pipelineData[ - `spriteColors${ignoreOveride && this.summonData?.speciesForm ? "Base" : ""}` + `spriteColors${ignoreOveride && this.summonData.speciesForm ? "Base" : ""}` ] = spriteColors; s.pipelineData[ - `fusionSpriteColors${ignoreOveride && this.summonData?.speciesForm ? "Base" : ""}` + `fusionSpriteColors${ignoreOveride && this.summonData.speciesForm ? "Base" : ""}` ] = fusionSpriteColors; }); @@ -6209,7 +6294,7 @@ export default abstract class Pokemon extends Phaser.GameObjects.Container { if (clearEffects) { this.destroySubstitute(); - this.resetSummonData(); // this also calls `resetBattleSummonData` + this.resetSummonData(); } if (hideInfo) { this.hideInfo(); @@ -6279,7 +6364,10 @@ export default abstract class Pokemon extends Phaser.GameObjects.Container { heldItem: PokemonHeldItemModifier, forBattle = true, ): boolean { - if (heldItem.pokemonId === -1 || heldItem.pokemonId === this.id) { + if (heldItem.pokemonId !== -1 && heldItem.pokemonId !== this.id) { + return false; + } + heldItem.stackCount--; if (heldItem.stackCount <= 0) { globalScene.removeModifier(heldItem, !this.isPlayer()); @@ -6287,10 +6375,23 @@ export default abstract class Pokemon extends Phaser.GameObjects.Container { if (forBattle) { applyPostItemLostAbAttrs(PostItemLostAbAttr, this, false); } + return true; - } else { - return false; + } + + /** + * Record a berry being eaten for ability and move triggers. + * Only tracks things that proc _every_ time a berry is eaten. + * @param berryType The type of berry being eaten. + * @param updateHarvest Whether to track the berry for harvest; default `true`. + */ + public recordEatenBerry(berryType: BerryType, updateHarvest: boolean = true) { + this.battleData.hasEatenBerry = true; + if (updateHarvest) { + // Only track for harvest if we actually consumed the berry + this.battleData.berriesEaten.push(berryType) } + this.turnData.berriesEaten.push(berryType); } } @@ -6855,6 +6956,8 @@ export class PlayerPokemon extends Pokemon { if (partyMemberIndex > fusedPartyMemberIndex) { partyMemberIndex--; } + + // combine the two mons' held items const fusedPartyMemberHeldModifiers = globalScene.findModifiers( m => m instanceof PokemonHeldItemModifier && m.pokemonId === pokemon.id, true, @@ -7165,9 +7268,9 @@ export class EnemyPokemon extends Pokemon { p.getAttackDamage({ source: this, move, - ignoreAbility: !p.battleData.abilityRevealed, + ignoreAbility: !p.waveData.abilityRevealed, ignoreSourceAbility: false, - ignoreAllyAbility: !p.getAlly()?.battleData.abilityRevealed, + ignoreAllyAbility: !p.getAlly()?.waveData.abilityRevealed, ignoreSourceAllyAbility: false, isCritical, } @@ -7229,11 +7332,18 @@ export class EnemyPokemon extends Pokemon { ) { targetScore = -20; } else if (move instanceof AttackMove) { - /** - * Attack moves are given extra multipliers to their base benefit score based on - * the move's type effectiveness against the target and whether the move is a STAB move. - */ - const effectiveness = target.getMoveEffectiveness(this, move, !target.battleData?.abilityRevealed, undefined, undefined, true); + /** + * Attack moves are given extra multipliers to their base benefit score based on + * the move's type effectiveness against the target and whether the move is a STAB move. + */ + const effectiveness = target.getMoveEffectiveness( + this, + move, + !target.waveData.abilityRevealed, + undefined, + undefined, + true); + if (target.isPlayer() !== this.isPlayer()) { targetScore *= effectiveness; if (this.isOfType(move.type)) { @@ -7676,53 +7786,136 @@ export interface AttackMoveResult { sourceBattlerIndex: BattlerIndex; } +/** + * Persistent in-battle data for a {@linkcode Pokemon}. + * Resets on switch or new battle. + */ export class PokemonSummonData { /** [Atk, Def, SpAtk, SpDef, Spd, Acc, Eva] */ public statStages: number[] = [0, 0, 0, 0, 0, 0, 0]; public moveQueue: TurnMove[] = []; public tags: BattlerTag[] = []; public abilitySuppressed = false; - public abilitiesApplied: Abilities[] = []; - public speciesForm: PokemonSpeciesForm | null; - public fusionSpeciesForm: PokemonSpeciesForm; - public ability: Abilities = Abilities.NONE; - public passiveAbility: Abilities = Abilities.NONE; - public gender: Gender; - public fusionGender: Gender; + + // Overrides for transform. + // TODO: Move these into a separate class & add rage fist hit count + public speciesForm: PokemonSpeciesForm | null = null; + public fusionSpeciesForm: PokemonSpeciesForm | null = null; + public ability: Abilities | undefined; + public passiveAbility: Abilities | undefined; + public gender: Gender | undefined; + public fusionGender: Gender | undefined; public stats: number[] = [0, 0, 0, 0, 0, 0]; - public moveset: PokemonMove[]; - public illusionBroken: boolean = false; + public moveset: PokemonMove[] | null; // If not initialized this value will not be populated from save data. public types: PokemonType[] = []; public addedType: PokemonType | null = null; + + /** Data pertaining to this pokemon's illusion. */ public illusion: IllusionData | null = null; -} + public illusionBroken: boolean = false; -export class PokemonBattleData { - /** counts the hits the pokemon received */ - public hitCount = 0; - /** used for {@linkcode Moves.RAGE_FIST} in order to save hit Counts received before Rage Fist is applied */ - public prevHitCount = 0; - public endured = false; - public berriesEaten: BerryType[] = []; - public abilitiesApplied: Abilities[] = []; - public abilityRevealed: boolean = false; -} + /** Array containing all berries eaten in the last turn; used by {@linkcode Abilities.CUD_CHEW} */ + public berriesEatenLast: BerryType[] = []; -export class PokemonBattleSummonData { - /** The number of turns the pokemon has passed since entering the battle */ - public turnCount = 1; - /** The number of turns the pokemon has passed since the start of the wave */ - public waveTurnCount = 1; - /** The list of moves the pokemon has used since entering the battle */ + /** + * An array of all moves this pokemon has used since entering the battle. + * Used for most moves and abilities that check prior move usage or copy already-used moves. + */ public moveHistory: TurnMove[] = []; + + constructor(source?: PokemonSummonData | Partial) { + if (isNullOrUndefined(source)) { + return; + } + + // TODO: Rework this into an actual generic function for use elsewhere + for (const [key, value] of Object.entries(source)) { + if (isNullOrUndefined(value) && this.hasOwnProperty(key)) { + continue; + } + + if (key === "moveset") { + this.moveset = value?.map((m: any) => PokemonMove.loadMove(m)); + continue; + } + + if (key === "tags") { + // load battler tags + this.tags = value.map((t: BattlerTag) => loadBattlerTag(t)); + continue; + } + this[key] = value; + } + } } + // TODO: Merge this inside `summmonData` but exclude from save if/when a save data serializer is added +export class PokemonTempSummonData { + /** + * The number of turns this pokemon has spent without switching out. + * Only currently used for positioning the battle cursor. + */ + turnCount: number = 1; + + /** + * The number of turns this pokemon has spent in the active position since the start of the wave + * without switching out. + * Reset on switch and new wave, but not stored in `SummonData` to avoid being written to the save file. + + * Used to evaluate "first turn only" conditions such as + * {@linkcode Moves.FAKE_OUT | Fake Out} and {@linkcode Moves.FIRST_IMPRESSION | First Impression}). + */ + waveTurnCount = 1; + +} + +/** + * Persistent data for a {@linkcode Pokemon}. + * Resets at the start of a new battle (but not on switch). + */ +export class PokemonBattleData { + /** Counter tracking direct hits this Pokemon has received during this battle; used for {@linkcode Moves.RAGE_FIST} */ + public hitCount = 0; + /** Whether this Pokemon has eaten a berry this battle; used for {@linkcode Moves.BELCH} */ + public hasEatenBerry: boolean = false; + /** Array containing all berries eaten and not yet recovered during this current battle; used by {@linkcode Abilities.HARVEST} */ + public berriesEaten: BerryType[] = []; + + constructor(source?: PokemonBattleData | Partial) { + if (!isNullOrUndefined(source)) { + this.hitCount = source.hitCount ?? 0; + this.hasEatenBerry = source.hasEatenBerry ?? false; + this.berriesEaten = source.berriesEaten ?? []; + } + } +} + +/** + * Temporary data for a {@linkcode Pokemon}. + * Resets on new wave/battle start (but not on switch). + */ +export class PokemonWaveData { + /** Whether the pokemon has endured due to a {@linkcode BattlerTagType.ENDURE_TOKEN} */ + public endured = false; + /** + * A set of all the abilities this {@linkcode Pokemon} has used in this wave. + * Used to track once per battle conditions, as well as (hopefully) by the updated AI for move effectiveness. + */ + public abilitiesApplied: Set = new Set; + /** Whether the pokemon's ability has been revealed or not */ + public abilityRevealed = false; +} + +/** + * Temporary data for a {@linkcode Pokemon}. + * Resets at the start of a new turn, as well as on switch. + */ export class PokemonTurnData { public flinched = false; public acted = false; - /** How many times the move should hit the target(s) */ + /** How many times the current move should hit the target(s) */ public hitCount = 0; /** * - `-1` = Calculate how many hits are left @@ -7746,6 +7939,12 @@ export class PokemonTurnData { * forced to act again in the same turn */ public extraTurns = 0; + /** + * All berries eaten by this pokemon in this turn. + * Saved into {@linkcode PokemonSummonData | SummonData} by {@linkcode Abilities.CUD_CHEW} on turn end. + * @see {@linkcode PokemonSummonData.berriesEatenLast} + */ + public berriesEaten: BerryType[] = [] } export enum AiType { @@ -7783,8 +7982,8 @@ export type DamageResult = | HitResult.SUPER_EFFECTIVE | HitResult.NOT_VERY_EFFECTIVE | HitResult.ONE_HIT_KO - | HitResult.CONFUSION - | HitResult.INDIRECT_KO + | HitResult.CONFUSION + | HitResult.INDIRECT_KO | HitResult.INDIRECT; /** Interface containing the results of a damage calculation for a given move */ @@ -7801,8 +8000,8 @@ export interface DamageCalculationResult { * Wrapper class for the {@linkcode Move} class for Pokemon to interact with. * These are the moves assigned to a {@linkcode Pokemon} object. * It links to {@linkcode Move} class via the move ID. - * Compared to {@linkcode Move}, this class also tracks if a move has received. - * PP Ups, amount of PP used, and things like that. + * Compared to {@linkcode Move}, this class also tracks things like + * PP Ups recieved, PP used, etc. * @see {@linkcode isUsable} - checks if move is restricted, out of PP, or not implemented. * @see {@linkcode getMove} - returns {@linkcode Move} object by looking it up via ID. * @see {@linkcode usePp} - removes a point of PP from the move. @@ -7873,9 +8072,9 @@ export class PokemonMove { /** * Sets {@link ppUsed} for this move and ensures the value does not exceed {@link getMovePp} - * @param {number} count Amount of PP to use + * @param count Amount of PP to use */ - usePp(count = 1) { + usePp(count: number = 1) { this.ppUsed = Math.min(this.ppUsed + count, this.getMovePp()); } @@ -7895,9 +8094,9 @@ export class PokemonMove { } /** - * Copies an existing move or creates a valid PokemonMove object from json representing one - * @param {PokemonMove | any} source The data for the move to copy - * @return {PokemonMove} A valid pokemonmove object + * Copies an existing move or creates a valid {@linkcode PokemonMove} object from json representing one + * @param source The data for the move to copy; can be a {@linkcode PokemonMove} or JSON object representing one + * @returns A valid {@linkcode PokemonMove} object */ static loadMove(source: PokemonMove | any): PokemonMove { return new PokemonMove( diff --git a/src/inputs-controller.ts b/src/inputs-controller.ts index 7fde0f2aca8..02a95f71ac4 100644 --- a/src/inputs-controller.ts +++ b/src/inputs-controller.ts @@ -1,5 +1,6 @@ import Phaser from "phaser"; -import { deepCopy, getEnumValues } from "#app/utils/common"; +import { getEnumValues } from "#app/utils/common"; +import { deepCopy } from "#app/utils/data"; import pad_generic from "./configs/inputs/pad_generic"; import pad_unlicensedSNES from "./configs/inputs/pad_unlicensedSNES"; import pad_xbox360 from "./configs/inputs/pad_xbox360"; diff --git a/src/modifier/modifier-type.ts b/src/modifier/modifier-type.ts index 1dd36c7d863..8afac8b8a1a 100644 --- a/src/modifier/modifier-type.ts +++ b/src/modifier/modifier-type.ts @@ -130,6 +130,7 @@ import { getStatKey, Stat, TEMP_BATTLE_STATS } from "#enums/stat"; import { StatusEffect } from "#enums/status-effect"; import i18next from "i18next"; import { timedEventManager } from "#app/global-event-manager"; +import { TYPE_BOOST_ITEM_BOOST_PERCENT } from "#app/constants"; const outputModifierData = false; const useMaxWeightForOutput = false; @@ -791,6 +792,7 @@ export class BerryModifierType extends PokemonHeldItemModifierType implements Ge ); this.berryType = berryType; + this.id = "BERRY"; // needed to prevent harvest item deletion; remove after modifier rework } get name(): string { @@ -1327,7 +1329,7 @@ class AttackTypeBoosterModifierTypeGenerator extends ModifierTypeGenerator { constructor() { super((party: Pokemon[], pregenArgs?: any[]) => { if (pregenArgs && pregenArgs.length === 1 && pregenArgs[0] in PokemonType) { - return new AttackTypeBoosterModifierType(pregenArgs[0] as PokemonType, 20); + return new AttackTypeBoosterModifierType(pregenArgs[0] as PokemonType, TYPE_BOOST_ITEM_BOOST_PERCENT); } const attackMoveTypes = party.flatMap(p => @@ -1375,7 +1377,7 @@ class AttackTypeBoosterModifierTypeGenerator extends ModifierTypeGenerator { weight += typeWeight; } - return new AttackTypeBoosterModifierType(type!, 20); + return new AttackTypeBoosterModifierType(type!, TYPE_BOOST_ITEM_BOOST_PERCENT); }); } } @@ -3653,7 +3655,7 @@ function getNewModifierTypeOption( } tier += upgradeCount; } - } else if (retryCount === 10 && tier) { + } else if (retryCount >= 100 && tier) { retryCount = 0; tier--; } diff --git a/src/modifier/modifier.ts b/src/modifier/modifier.ts index 851cb963e5d..9919874792b 100644 --- a/src/modifier/modifier.ts +++ b/src/modifier/modifier.ts @@ -47,7 +47,12 @@ import { } from "./modifier-type"; import { Color, ShadowColor } from "#enums/color"; import { FRIENDSHIP_GAIN_FROM_RARE_CANDY } from "#app/data/balance/starters"; -import { applyAbAttrs, CommanderAbAttr } from "#app/data/abilities/ability"; +import { + applyAbAttrs, + applyPostItemLostAbAttrs, + CommanderAbAttr, + PostItemLostAbAttr, +} from "#app/data/abilities/ability"; import { globalScene } from "#app/global-scene"; export type ModifierPredicate = (modifier: Modifier) => boolean; @@ -232,6 +237,10 @@ export abstract class PersistentModifier extends Modifier { abstract getMaxStackCount(forThreshold?: boolean): number; + getCountUnderMax(): number { + return this.getMaxStackCount() - this.getStackCount(); + } + isIconVisible(): boolean { return true; } @@ -653,7 +662,9 @@ export class TerastallizeAccessModifier extends PersistentModifier { } export abstract class PokemonHeldItemModifier extends PersistentModifier { + /** The ID of the {@linkcode Pokemon} that this item belongs to. */ public pokemonId: number; + /** Whether this item can be transfered to or stolen by another Pokemon. */ public isTransferable = true; constructor(type: ModifierType, pokemonId: number, stackCount?: number) { @@ -699,7 +710,7 @@ export abstract class PokemonHeldItemModifier extends PersistentModifier { if (!forSummary) { const pokemon = this.getPokemon(); if (pokemon) { - const pokemonIcon = globalScene.addPokemonIcon(pokemon, -2, 10, 0, 0.5); + const pokemonIcon = globalScene.addPokemonIcon(pokemon, -2, 10, 0, 0.5, undefined, true); container.add(pokemonIcon); container.setName(pokemon.id.toString()); } @@ -1213,20 +1224,20 @@ export class PokemonIncrementingStatModifier extends PokemonHeldItemModifier { * @returns always `true` */ override apply(_pokemon: Pokemon, stat: Stat, statHolder: NumberHolder): boolean { - // Modifies the passed in stat number holder by +1 per stack for HP, +2 per stack for other stats - // If the Macho Brace is at max stacks (50), adds additional 5% to total HP and 10% to other stats + // Modifies the passed in stat number holder by +2 per stack for HP, +1 per stack for other stats + // If the Macho Brace is at max stacks (50), adds additional 10% to total HP and 5% to other stats const isHp = stat === Stat.HP; if (isHp) { - statHolder.value += this.stackCount; - if (this.stackCount === this.getMaxHeldItemCount()) { - statHolder.value = Math.floor(statHolder.value * 1.05); - } - } else { statHolder.value += 2 * this.stackCount; if (this.stackCount === this.getMaxHeldItemCount()) { statHolder.value = Math.floor(statHolder.value * 1.1); } + } else { + statHolder.value += this.stackCount; + if (this.stackCount === this.getMaxHeldItemCount()) { + statHolder.value = Math.floor(statHolder.value * 1.05); + } } return true; @@ -1589,7 +1600,8 @@ export class AttackTypeBoosterModifier extends PokemonHeldItemModifier { return ( super.shouldApply(pokemon, moveType, movePower) && typeof moveType === "number" && - movePower instanceof NumberHolder + movePower instanceof NumberHolder && + this.moveType === moveType ); } @@ -1748,14 +1760,15 @@ export class FlinchChanceModifier extends PokemonHeldItemModifier { } /** - * Applies {@linkcode FlinchChanceModifier} - * @param pokemon the {@linkcode Pokemon} that holds the item - * @param flinched {@linkcode BooleanHolder} that is `true` if the pokemon flinched - * @returns `true` if {@linkcode FlinchChanceModifier} has been applied + * Applies {@linkcode FlinchChanceModifier} to randomly flinch targets hit. + * @param pokemon - The {@linkcode Pokemon} that holds the item + * @param flinched - A {@linkcode BooleanHolder} holding whether the pokemon has flinched + * @returns `true` if {@linkcode FlinchChanceModifier} was applied successfully */ override apply(pokemon: Pokemon, flinched: BooleanHolder): boolean { - // The check for pokemon.battleSummonData is to ensure that a crash doesn't occur when a Pokemon with King's Rock procs a flinch - if (pokemon.battleSummonData && !flinched.value && pokemon.randSeedInt(100) < this.getStackCount() * this.chance) { + // The check for pokemon.summonData is to ensure that a crash doesn't occur when a Pokemon with King's Rock procs a flinch + // TODO: Since summonData is always defined now, we can probably remove this + if (pokemon.summonData && !flinched.value && pokemon.randSeedInt(100) < this.getStackCount() * this.chance) { flinched.value = true; return true; } @@ -1881,6 +1894,7 @@ export class HitHealModifier extends PokemonHeldItemModifier { */ override apply(pokemon: Pokemon): boolean { if (pokemon.turnData.totalDamageDealt && !pokemon.isFullHp()) { + // TODO: this shouldn't be undefined AFAIK globalScene.unshiftPhase( new PokemonHealPhase( pokemon.getBattlerIndex(), @@ -1976,11 +1990,15 @@ export class BerryModifier extends PokemonHeldItemModifier { override apply(pokemon: Pokemon): boolean { const preserve = new BooleanHolder(false); globalScene.applyModifiers(PreserveBerryModifier, pokemon.isPlayer(), pokemon, preserve); + this.consumed = !preserve.value; + // munch the berry and trigger unburden-like effects getBerryEffectFunc(this.berryType)(pokemon); - if (!preserve.value) { - this.consumed = true; - } + applyPostItemLostAbAttrs(PostItemLostAbAttr, pokemon, false); + + // Update berry eaten trackers for Belch, Harvest, Cud Chew, etc. + // Don't recover it if we proc berry pouch (no item duplication) + pokemon.recordEatenBerry(this.berryType, this.consumed); return true; } @@ -2019,9 +2037,7 @@ export class PreserveBerryModifier extends PersistentModifier { * @returns always `true` */ override apply(pokemon: Pokemon, doPreserve: BooleanHolder): boolean { - if (!doPreserve.value) { - doPreserve.value = pokemon.randSeedInt(10) < this.getStackCount() * 3; - } + doPreserve.value ||= pokemon.randSeedInt(10) < this.getStackCount() * 3; return true; } @@ -2062,7 +2078,7 @@ export class PokemonInstantReviveModifier extends PokemonHeldItemModifier { ); // Remove the Pokemon's FAINT status - pokemon.resetStatus(true, false, true); + pokemon.resetStatus(true, false, true, false); // Reapply Commander on the Pokemon's side of the field, if applicable const field = pokemon.isPlayer() ? globalScene.getPlayerField() : globalScene.getEnemyField(); @@ -2270,7 +2286,7 @@ export class PokemonHpRestoreModifier extends ConsumablePokemonModifier { restorePoints = Math.floor(restorePoints * multiplier); } if (this.fainted || this.healStatus) { - pokemon.resetStatus(true, true); + pokemon.resetStatus(true, true, false, false); } pokemon.hp = Math.min( pokemon.hp + @@ -2290,7 +2306,7 @@ export class PokemonStatusHealModifier extends ConsumablePokemonModifier { * @returns always `true` */ override apply(playerPokemon: PlayerPokemon): boolean { - playerPokemon.resetStatus(true, true); + playerPokemon.resetStatus(true, true, false, false); return true; } } @@ -3713,7 +3729,7 @@ export class EnemyAttackStatusEffectChanceModifier extends EnemyPersistentModifi super(type, stackCount); this.effect = effect; - //Hardcode temporarily + // Hardcode temporarily this.chance = 0.025 * (this.effect === StatusEffect.BURN || this.effect === StatusEffect.POISON ? 2 : 1); } @@ -3820,13 +3836,13 @@ export class EnemyEndureChanceModifier extends EnemyPersistentModifier { * @returns `true` if {@linkcode Pokemon} endured */ override apply(target: Pokemon): boolean { - if (target.battleData.endured || target.randSeedInt(100) >= this.chance * this.getStackCount()) { + if (target.waveData.endured || target.randSeedInt(100) >= this.chance * this.getStackCount()) { return false; } target.addTag(BattlerTagType.ENDURE_TOKEN, 1); - target.battleData.endured = true; + target.waveData.endured = true; return true; } diff --git a/src/overrides.ts b/src/overrides.ts index 7e6a46f2f85..5bbd29b355f 100644 --- a/src/overrides.ts +++ b/src/overrides.ts @@ -104,8 +104,16 @@ class DefaultOverrides { readonly BYPASS_TUTORIAL_SKIP_OVERRIDE: boolean = false; /** Set to `true` to be able to re-earn already unlocked achievements */ readonly ACHIEVEMENTS_REUNLOCK_OVERRIDE: boolean = false; - /** Set to `true` to force Paralysis and Freeze to always activate, or `false` to force them to not activate */ + /** + * Set to `true` to force Paralysis and Freeze to always activate, + * or `false` to force them to not activate (or clear for freeze). + */ readonly STATUS_ACTIVATION_OVERRIDE: boolean | null = null; + /** + * Set to `true` to force confusion to always trigger, + * or `false` to force it to never trigger. + */ + readonly CONFUSION_ACTIVATION_OVERRIDE: boolean | null = null; // ---------------- // PLAYER OVERRIDES diff --git a/src/phases/battle-end-phase.ts b/src/phases/battle-end-phase.ts index 275a9017dfa..b4bb28fe55e 100644 --- a/src/phases/battle-end-phase.ts +++ b/src/phases/battle-end-phase.ts @@ -59,8 +59,8 @@ export class BattleEndPhase extends BattlePhase { } for (const pokemon of globalScene.getField()) { - if (pokemon?.battleSummonData) { - pokemon.battleSummonData.waveTurnCount = 1; + if (pokemon) { + pokemon.tempSummonData.waveTurnCount = 1; } } diff --git a/src/phases/berry-phase.ts b/src/phases/berry-phase.ts index b20b1736d4f..b027469ea5e 100644 --- a/src/phases/berry-phase.ts +++ b/src/phases/berry-phase.ts @@ -1,4 +1,9 @@ -import { applyAbAttrs, PreventBerryUseAbAttr, HealFromBerryUseAbAttr } from "#app/data/abilities/ability"; +import { + applyAbAttrs, + PreventBerryUseAbAttr, + HealFromBerryUseAbAttr, + RepeatBerryNextTurnAbAttr, +} from "#app/data/abilities/ability"; import { CommonAnim } from "#app/data/battle-anims"; import { BerryUsedEvent } from "#app/events/battle-scene"; import { getPokemonNameWithAffix } from "#app/messages"; @@ -8,47 +13,65 @@ import { BooleanHolder } from "#app/utils/common"; import { FieldPhase } from "./field-phase"; import { CommonAnimPhase } from "./common-anim-phase"; import { globalScene } from "#app/global-scene"; +import type Pokemon from "#app/field/pokemon"; -/** The phase after attacks where the pokemon eat berries */ +/** + * The phase after attacks where the pokemon eat berries. + * Also triggers Cud Chew's "repeat berry use" effects + */ export class BerryPhase extends FieldPhase { start() { super.start(); this.executeForAll(pokemon => { - const hasUsableBerry = !!globalScene.findModifier(m => { - return m instanceof BerryModifier && m.shouldApply(pokemon); - }, pokemon.isPlayer()); - - if (hasUsableBerry) { - const cancelled = new BooleanHolder(false); - pokemon.getOpponents().map(opp => applyAbAttrs(PreventBerryUseAbAttr, opp, cancelled)); - - if (cancelled.value) { - globalScene.queueMessage( - i18next.t("abilityTriggers:preventBerryUse", { - pokemonNameWithAffix: getPokemonNameWithAffix(pokemon), - }), - ); - } else { - globalScene.unshiftPhase( - new CommonAnimPhase(pokemon.getBattlerIndex(), pokemon.getBattlerIndex(), CommonAnim.USE_ITEM), - ); - - for (const berryModifier of globalScene.applyModifiers(BerryModifier, pokemon.isPlayer(), pokemon)) { - if (berryModifier.consumed) { - berryModifier.consumed = false; - pokemon.loseHeldItem(berryModifier); - } - globalScene.eventTarget.dispatchEvent(new BerryUsedEvent(berryModifier)); // Announce a berry was used - } - - globalScene.updateModifiers(pokemon.isPlayer()); - - applyAbAttrs(HealFromBerryUseAbAttr, pokemon, new BooleanHolder(false)); - } - } + this.eatBerries(pokemon); + applyAbAttrs(RepeatBerryNextTurnAbAttr, pokemon, null); }); this.end(); } + + /** + * Attempt to eat all of a given {@linkcode Pokemon}'s berries once. + * @param pokemon - The {@linkcode Pokemon} to check + */ + eatBerries(pokemon: Pokemon): void { + const hasUsableBerry = !!globalScene.findModifier( + m => m instanceof BerryModifier && m.shouldApply(pokemon), + pokemon.isPlayer(), + ); + + if (!hasUsableBerry) { + return; + } + + // TODO: If both opponents on field have unnerve, which one displays its message? + const cancelled = new BooleanHolder(false); + pokemon.getOpponents().forEach(opp => applyAbAttrs(PreventBerryUseAbAttr, opp, cancelled)); + if (cancelled.value) { + globalScene.queueMessage( + i18next.t("abilityTriggers:preventBerryUse", { + pokemonNameWithAffix: getPokemonNameWithAffix(pokemon), + }), + ); + return; + } + + globalScene.unshiftPhase( + new CommonAnimPhase(pokemon.getBattlerIndex(), pokemon.getBattlerIndex(), CommonAnim.USE_ITEM), + ); + + for (const berryModifier of globalScene.applyModifiers(BerryModifier, pokemon.isPlayer(), pokemon)) { + // No need to track berries being eaten; already done inside applyModifiers + if (berryModifier.consumed) { + berryModifier.consumed = false; + pokemon.loseHeldItem(berryModifier); + } + globalScene.eventTarget.dispatchEvent(new BerryUsedEvent(berryModifier)); + } + globalScene.updateModifiers(pokemon.isPlayer()); + + // Abilities.CHEEK_POUCH only works once per round of nom noms + applyAbAttrs(HealFromBerryUseAbAttr, pokemon, new BooleanHolder(false)); + } } diff --git a/src/phases/encounter-phase.ts b/src/phases/encounter-phase.ts index 20ed69119f9..5b799bd9316 100644 --- a/src/phases/encounter-phase.ts +++ b/src/phases/encounter-phase.ts @@ -113,12 +113,6 @@ export class EncounterPhase extends BattlePhase { } if (!this.loaded) { if (battle.battleType === BattleType.TRAINER) { - //resets hitRecCount during Trainer ecnounter - for (const pokemon of globalScene.getPlayerParty()) { - if (pokemon) { - pokemon.customPokemonData.resetHitReceivedCount(); - } - } battle.enemyParty[e] = battle.trainer?.genPartyMember(e)!; // TODO:: is the bang correct here? } else { let enemySpecies = globalScene.randomSpecies(battle.waveIndex, level, true); @@ -140,7 +134,6 @@ export class EncounterPhase extends BattlePhase { if (globalScene.currentBattle.battleSpec === BattleSpec.FINAL_BOSS) { battle.enemyParty[e].ivs = new Array(6).fill(31); } - // biome-ignore lint/complexity/noForEach: Improves readability globalScene .getPlayerParty() .slice(0, !battle.double ? 1 : 2) @@ -195,7 +188,7 @@ export class EncounterPhase extends BattlePhase { ]; const moveset: string[] = []; for (const move of enemyPokemon.getMoveset()) { - moveset.push(move!.getName()); // TODO: remove `!` after moveset-null removal PR + moveset.push(move.getName()); } console.log( @@ -288,6 +281,7 @@ export class EncounterPhase extends BattlePhase { }); if (!this.loaded && battle.battleType !== BattleType.MYSTERY_ENCOUNTER) { + // generate modifiers for MEs, overriding prior ones as applicable regenerateModifierPoolThresholds( globalScene.getEnemyField(), battle.battleType === BattleType.TRAINER ? ModifierPoolType.TRAINER : ModifierPoolType.WILD, @@ -300,8 +294,8 @@ export class EncounterPhase extends BattlePhase { } } - if (battle.battleType === BattleType.TRAINER) { - globalScene.currentBattle.trainer!.genAI(globalScene.getEnemyParty()); + if (battle.battleType === BattleType.TRAINER && globalScene.currentBattle.trainer) { + globalScene.currentBattle.trainer.genAI(globalScene.getEnemyParty()); } globalScene.ui.setMode(UiMode.MESSAGE).then(() => { @@ -342,8 +336,10 @@ export class EncounterPhase extends BattlePhase { } for (const pokemon of globalScene.getPlayerParty()) { + // Currently, a new wave is not considered a new battle if there is no arena reset + // Therefore, we only reset wave data here if (pokemon) { - pokemon.resetBattleData(); + pokemon.resetWaveData(); } } @@ -558,7 +554,7 @@ export class EncounterPhase extends BattlePhase { if (enemyPokemon.isShiny(true)) { globalScene.unshiftPhase(new ShinySparklePhase(BattlerIndex.ENEMY + e)); } - /** This sets Eternatus' held item to be untransferrable, preventing it from being stolen */ + /** This sets Eternatus' held item to be untransferrable, preventing it from being stolen */ if ( enemyPokemon.species.speciesId === Species.ETERNATUS && (globalScene.gameMode.isBattleClassicFinalBoss(globalScene.currentBattle.waveIndex) || diff --git a/src/phases/evolution-phase.ts b/src/phases/evolution-phase.ts index 7b013555f40..8fc8a8be031 100644 --- a/src/phases/evolution-phase.ts +++ b/src/phases/evolution-phase.ts @@ -146,7 +146,7 @@ export class EvolutionPhase extends Phase { sprite.setPipelineData("shiny", this.pokemon.shiny); sprite.setPipelineData("variant", this.pokemon.variant); ["spriteColors", "fusionSpriteColors"].map(k => { - if (this.pokemon.summonData?.speciesForm) { + if (this.pokemon.summonData.speciesForm) { k += "Base"; } sprite.pipelineData[k] = this.pokemon.getSprite().pipelineData[k]; @@ -178,7 +178,7 @@ export class EvolutionPhase extends Phase { sprite.setPipelineData("shiny", evolvedPokemon.shiny); sprite.setPipelineData("variant", evolvedPokemon.variant); ["spriteColors", "fusionSpriteColors"].map(k => { - if (evolvedPokemon.summonData?.speciesForm) { + if (evolvedPokemon.summonData.speciesForm) { k += "Base"; } sprite.pipelineData[k] = evolvedPokemon.getSprite().pipelineData[k]; diff --git a/src/phases/faint-phase.ts b/src/phases/faint-phase.ts index 7614e4eabf9..6eb526cbcac 100644 --- a/src/phases/faint-phase.ts +++ b/src/phases/faint-phase.ts @@ -126,7 +126,7 @@ export class FaintPhase extends PokemonPhase { pokemon.resetTera(); - if (pokemon.turnData?.attacksReceived?.length) { + if (pokemon.turnData.attacksReceived?.length) { const lastAttack = pokemon.turnData.attacksReceived[0]; applyPostFaintAbAttrs( PostFaintAbAttr, @@ -144,7 +144,7 @@ export class FaintPhase extends PokemonPhase { for (const p of alivePlayField) { applyPostKnockOutAbAttrs(PostKnockOutAbAttr, p, pokemon); } - if (pokemon.turnData?.attacksReceived?.length) { + if (pokemon.turnData.attacksReceived?.length) { const defeatSource = this.source; if (defeatSource?.isOnField()) { diff --git a/src/phases/field-phase.ts b/src/phases/field-phase.ts index 98c1ced510f..c37f0e960e7 100644 --- a/src/phases/field-phase.ts +++ b/src/phases/field-phase.ts @@ -6,8 +6,7 @@ type PokemonFunc = (pokemon: Pokemon) => void; export abstract class FieldPhase extends BattlePhase { executeForAll(func: PokemonFunc): void { - const field = globalScene.getField(true).filter(p => p.summonData); - for (const pokemon of field) { + for (const pokemon of globalScene.getField(true)) { func(pokemon); } } diff --git a/src/phases/form-change-phase.ts b/src/phases/form-change-phase.ts index ac7edadf244..5517fb0f402 100644 --- a/src/phases/form-change-phase.ts +++ b/src/phases/form-change-phase.ts @@ -51,7 +51,7 @@ export class FormChangePhase extends EvolutionPhase { sprite.setPipelineData("shiny", transformedPokemon.shiny); sprite.setPipelineData("variant", transformedPokemon.variant); ["spriteColors", "fusionSpriteColors"].map(k => { - if (transformedPokemon.summonData?.speciesForm) { + if (transformedPokemon.summonData.speciesForm) { k += "Base"; } sprite.pipelineData[k] = transformedPokemon.getSprite().pipelineData[k]; diff --git a/src/phases/game-over-phase.ts b/src/phases/game-over-phase.ts index 304d876a99e..3a3305fd45e 100644 --- a/src/phases/game-over-phase.ts +++ b/src/phases/game-over-phase.ts @@ -31,6 +31,7 @@ import ChallengeData from "#app/system/challenge-data"; import TrainerData from "#app/system/trainer-data"; import ArenaData from "#app/system/arena-data"; import { pokerogueApi } from "#app/plugins/api/pokerogue-api"; +import { MessagePhase } from "./message-phase"; export class GameOverPhase extends BattlePhase { private isVictory: boolean; @@ -122,7 +123,7 @@ export class GameOverPhase extends BattlePhase { globalScene.disableMenu = true; globalScene.time.delayedCall(1000, () => { let firstClear = false; - if (this.isVictory && newClear) { + if (this.isVictory) { if (globalScene.gameMode.isClassic) { firstClear = globalScene.validateAchv(achvs.CLASSIC_VICTORY); globalScene.validateAchv(achvs.UNEVOLVED_CLASSIC_VICTORY); @@ -226,7 +227,17 @@ export class GameOverPhase extends BattlePhase { isVictory: this.isVictory, clientSessionId: clientSessionId, }) - .then(success => doGameOver(!!success)); + .then(success => doGameOver(!globalScene.gameMode.isDaily || !!success)) + .catch(_err => { + globalScene.clearPhaseQueue(); + globalScene.clearPhaseQueueSplice(); + globalScene.unshiftPhase(new MessagePhase(i18next.t("menu:serverCommunicationFailed"), 2500)); + // force the game to reload after 2 seconds. + setTimeout(() => { + window.location.reload(); + }, 2000); + this.end(); + }); } else if (this.isVictory) { globalScene.gameData.offlineNewClear().then(result => { doGameOver(result); diff --git a/src/phases/move-effect-phase.ts b/src/phases/move-effect-phase.ts index dd2d1bba6d4..915f4cae4a7 100644 --- a/src/phases/move-effect-phase.ts +++ b/src/phases/move-effect-phase.ts @@ -209,11 +209,13 @@ export class MoveEffectPhase extends PokemonPhase { * @throws Error if there was an unexpected hit check result */ private applyToTargets(user: Pokemon, targets: Pokemon[]): void { + let firstHit = true; for (const [i, target] of targets.entries()) { const [hitCheckResult, effectiveness] = this.hitChecks[i]; switch (hitCheckResult) { case HitCheckResult.HIT: - this.applyMoveEffects(target, effectiveness); + this.applyMoveEffects(target, effectiveness, firstHit); + firstHit = false; if (isFieldTargeted(this.move)) { // Stop processing other targets if the move is a field move return; @@ -280,9 +282,6 @@ export class MoveEffectPhase extends PokemonPhase { super.end(); return; } - if (isNullOrUndefined(user.turnData)) { - user.resetTurnData(); - } } /** @@ -769,15 +768,12 @@ export class MoveEffectPhase extends PokemonPhase { * - Invoking {@linkcode applyOnTargetEffects} if the move does not hit a substitute * - Triggering form changes and emergency exit / wimp out if this is the last hit * - * @param target the {@linkcode Pokemon} hit by this phase's move. - * @param effectiveness the effectiveness of the move (as previously evaluated in {@linkcode hitCheck}) + * @param target - the {@linkcode Pokemon} hit by this phase's move. + * @param effectiveness - The effectiveness of the move (as previously evaluated in {@linkcode hitCheck}) + * @param firstTarget - Whether this is the first target successfully struck by the move */ - protected applyMoveEffects(target: Pokemon, effectiveness: TypeDamageMultiplier): void { + protected applyMoveEffects(target: Pokemon, effectiveness: TypeDamageMultiplier, firstTarget: boolean): void { const user = this.getUserPokemon(); - - /** The first target hit by the move */ - const firstTarget = target === this.getTargets().find((_, i) => this.hitChecks[i][1] > 0); - if (isNullOrUndefined(user)) { return; } @@ -923,6 +919,14 @@ export class MoveEffectPhase extends PokemonPhase { target.destroySubstitute(); target.lapseTag(BattlerTagType.COMMANDED); + + // Force `lastHit` to be true if this is a multi hit move with hits left + // `hitsLeft` must be left as-is in order for the message displaying the number of hits + // to display the proper number. + // Note: When Dragon Darts' smart targeting is implemented, this logic may need to be adjusted. + if (!this.lastHit && user.turnData.hitsLeft > 1) { + this.lastHit = true; + } } /** @@ -962,7 +966,7 @@ export class MoveEffectPhase extends PokemonPhase { const result = this.applyMoveDamage(user, target, effectiveness); - if (user.turnData.hitsLeft === 1 && target.isFainted()) { + if (user.turnData.hitsLeft === 1 || target.isFainted()) { this.queueHitResultMessage(result); } diff --git a/src/phases/move-phase.ts b/src/phases/move-phase.ts index b24d7b61ebb..e704b040d20 100644 --- a/src/phases/move-phase.ts +++ b/src/phases/move-phase.ts @@ -618,7 +618,7 @@ export class MovePhase extends BattlePhase { globalScene.eventTarget.dispatchEvent(new MoveUsedEvent(this.pokemon?.id, this.move.getMove(), ppUsed)); } - if (this.cancelled && this.pokemon.summonData?.tags?.find(t => t.tagType === BattlerTagType.FRENZY)) { + if (this.cancelled && this.pokemon.summonData.tags?.find(t => t.tagType === BattlerTagType.FRENZY)) { frenzyMissFunc(this.pokemon, this.move.getMove()); } diff --git a/src/phases/mystery-encounter-phases.ts b/src/phases/mystery-encounter-phases.ts index 011dd26db92..fd0c4ef7949 100644 --- a/src/phases/mystery-encounter-phases.ts +++ b/src/phases/mystery-encounter-phases.ts @@ -229,8 +229,7 @@ export class MysteryEncounterBattleStartCleanupPhase extends Phase { // Lapse any residual flinches/endures but ignore all other turn-end battle tags const includedLapseTags = [BattlerTagType.FLINCHED, BattlerTagType.ENDURING]; - const field = globalScene.getField(true).filter(p => p.summonData); - field.forEach(pokemon => { + globalScene.getField(true).forEach(pokemon => { const tags = pokemon.summonData.tags; tags .filter( diff --git a/src/phases/new-biome-encounter-phase.ts b/src/phases/new-biome-encounter-phase.ts index 6a7afcb8da8..ef027bfd77a 100644 --- a/src/phases/new-biome-encounter-phase.ts +++ b/src/phases/new-biome-encounter-phase.ts @@ -7,17 +7,17 @@ export class NewBiomeEncounterPhase extends NextEncounterPhase { doEncounter(): void { globalScene.playBgm(undefined, true); + // Reset all battle and wave data, perform form changes, etc. + // We do this because new biomes are considered "arena transitions" akin to MEs and trainer battles for (const pokemon of globalScene.getPlayerParty()) { if (pokemon) { - pokemon.resetBattleData(); - pokemon.customPokemonData.resetHitReceivedCount(); + pokemon.resetBattleAndWaveData(); + if (pokemon.isOnField()) { + applyAbAttrs(PostBiomeChangeAbAttr, pokemon, null); + } } } - for (const pokemon of globalScene.getPlayerParty().filter(p => p.isOnField())) { - applyAbAttrs(PostBiomeChangeAbAttr, pokemon, null); - } - const enemyField = globalScene.getEnemyField(); const moveTargets: any[] = [globalScene.arenaEnemy, enemyField]; const mysteryEncounter = globalScene.currentBattle?.mysteryEncounter?.introVisuals; diff --git a/src/phases/next-encounter-phase.ts b/src/phases/next-encounter-phase.ts index e5e61312c3b..30b4004363c 100644 --- a/src/phases/next-encounter-phase.ts +++ b/src/phases/next-encounter-phase.ts @@ -1,6 +1,10 @@ import { globalScene } from "#app/global-scene"; import { EncounterPhase } from "./encounter-phase"; +/** + * The phase between defeating an encounter and starting another wild wave. + * Handles generating, loading and preparing for it. + */ export class NextEncounterPhase extends EncounterPhase { start() { super.start(); @@ -9,9 +13,12 @@ export class NextEncounterPhase extends EncounterPhase { doEncounter(): void { globalScene.playBgm(undefined, true); + // Reset all player transient wave data/intel before starting a new wild encounter. + // We exclusively reset wave data here as wild waves are considered one continuous "battle" + // for lack of an arena transition. for (const pokemon of globalScene.getPlayerParty()) { if (pokemon) { - pokemon.resetBattleData(); + pokemon.resetWaveData(); } } diff --git a/src/phases/party-heal-phase.ts b/src/phases/party-heal-phase.ts index a208ccfff92..4a9f8a0c888 100644 --- a/src/phases/party-heal-phase.ts +++ b/src/phases/party-heal-phase.ts @@ -21,7 +21,7 @@ export class PartyHealPhase extends BattlePhase { globalScene.ui.fadeOut(1000).then(() => { for (const pokemon of globalScene.getPlayerParty()) { pokemon.hp = pokemon.getMaxHp(); - pokemon.resetStatus(); + pokemon.resetStatus(true, false, false, true); for (const move of pokemon.moveset) { move.ppUsed = 0; } diff --git a/src/phases/quiet-form-change-phase.ts b/src/phases/quiet-form-change-phase.ts index f476919a628..76411f62f77 100644 --- a/src/phases/quiet-form-change-phase.ts +++ b/src/phases/quiet-form-change-phase.ts @@ -74,7 +74,7 @@ export class QuietFormChangePhase extends BattlePhase { isTerastallized: this.pokemon.isTerastallized, }); ["spriteColors", "fusionSpriteColors"].map(k => { - if (this.pokemon.summonData?.speciesForm) { + if (this.pokemon.summonData.speciesForm) { k += "Base"; } sprite.pipelineData[k] = this.pokemon.getSprite().pipelineData[k]; diff --git a/src/phases/reset-status-phase.ts b/src/phases/reset-status-phase.ts index 0ba3559d9b7..19bfc3027e2 100644 --- a/src/phases/reset-status-phase.ts +++ b/src/phases/reset-status-phase.ts @@ -1,7 +1,5 @@ import type Pokemon from "#app/field/pokemon"; import { BattlePhase } from "#app/phases/battle-phase"; -import { BattlerTagType } from "#enums/battler-tag-type"; -import { StatusEffect } from "#enums/status-effect"; /** * Phase which handles resetting a Pokemon's status to none @@ -22,23 +20,7 @@ export class ResetStatusPhase extends BattlePhase { } public override start() { - const lastStatus = this.pokemon.status?.effect; - this.pokemon.status = null; - if (lastStatus === StatusEffect.SLEEP) { - this.pokemon.setFrameRate(10); - if (this.pokemon.getTag(BattlerTagType.NIGHTMARE)) { - this.pokemon.lapseTag(BattlerTagType.NIGHTMARE); - } - } - if (this.affectConfusion) { - if (this.pokemon.getTag(BattlerTagType.CONFUSED)) { - this.pokemon.lapseTag(BattlerTagType.CONFUSED); - } - } - if (this.reloadAssets) { - this.pokemon.loadAssets(false).then(() => this.pokemon.playAnim()); - } - this.pokemon.updateInfo(true); + this.pokemon.clearStatus(this.affectConfusion, this.reloadAssets); this.end(); } } diff --git a/src/phases/revival-blessing-phase.ts b/src/phases/revival-blessing-phase.ts index 2de1c616f69..598d9109abc 100644 --- a/src/phases/revival-blessing-phase.ts +++ b/src/phases/revival-blessing-phase.ts @@ -32,7 +32,7 @@ export class RevivalBlessingPhase extends BattlePhase { } pokemon.resetTurnData(); - pokemon.resetStatus(); + pokemon.resetStatus(true, false, false, false); pokemon.heal(Math.min(toDmgValue(0.5 * pokemon.getMaxHp()), pokemon.getMaxHp())); globalScene.queueMessage( i18next.t("moveTriggers:revivalBlessing", { diff --git a/src/phases/select-biome-phase.ts b/src/phases/select-biome-phase.ts index 4811c4e6b8f..efd376eb5ba 100644 --- a/src/phases/select-biome-phase.ts +++ b/src/phases/select-biome-phase.ts @@ -13,6 +13,8 @@ export class SelectBiomePhase extends BattlePhase { start() { super.start(); + globalScene.resetSeed(); + const currentBiome = globalScene.arena.biomeType; const nextWaveIndex = globalScene.currentBattle.waveIndex + 1; diff --git a/src/phases/show-ability-phase.ts b/src/phases/show-ability-phase.ts index 8097af33fe0..d6193ac3946 100644 --- a/src/phases/show-ability-phase.ts +++ b/src/phases/show-ability-phase.ts @@ -50,9 +50,7 @@ export class ShowAbilityPhase extends PokemonPhase { } globalScene.abilityBar.showAbility(this.pokemonName, this.abilityName, this.passive, this.player).then(() => { - if (pokemon?.battleData) { - pokemon.battleData.abilityRevealed = true; - } + pokemon.waveData.abilityRevealed = true; this.end(); }); diff --git a/src/phases/stat-stage-change-phase.ts b/src/phases/stat-stage-change-phase.ts index 9d64a81bbb4..6731e45025c 100644 --- a/src/phases/stat-stage-change-phase.ts +++ b/src/phases/stat-stage-change-phase.ts @@ -217,16 +217,8 @@ export class StatStageChangePhase extends PokemonPhase { for (const s of filteredStats) { if (stages.value > 0 && pokemon.getStatStage(s) < 6) { - if (!pokemon.turnData) { - // Temporary fix for missing turn data struct on turn 1 - pokemon.resetTurnData(); - } pokemon.turnData.statStagesIncreased = true; } else if (stages.value < 0 && pokemon.getStatStage(s) > -6) { - if (!pokemon.turnData) { - // Temporary fix for missing turn data struct on turn 1 - pokemon.resetTurnData(); - } pokemon.turnData.statStagesDecreased = true; } diff --git a/src/phases/summon-phase.ts b/src/phases/summon-phase.ts index ee27fc28247..fef9b356348 100644 --- a/src/phases/summon-phase.ts +++ b/src/phases/summon-phase.ts @@ -177,11 +177,7 @@ export class SummonPhase extends PartyMemberPokemonPhase { } globalScene.currentBattle.seenEnemyPartyMemberIds.add(pokemon.id); } - addPokeballOpenParticles( - pokemon.x, - pokemon.y - 16, - pokemon.getPokeball(true), - ); + addPokeballOpenParticles(pokemon.x, pokemon.y - 16, pokemon.getPokeball(true)); globalScene.updateModifiers(this.player); globalScene.updateFieldScale(); pokemon.showInfo(); @@ -200,9 +196,8 @@ export class SummonPhase extends PartyMemberPokemonPhase { onComplete: () => { pokemon.cry(pokemon.getHpRatio() > 0.25 ? undefined : { rate: 0.85 }); pokemon.getSprite().clearTint(); - pokemon.resetSummonData(); // necessary to stay transformed during wild waves - if (pokemon.summonData?.speciesForm) { + if (pokemon.summonData.speciesForm) { pokemon.loadAssets(false); } globalScene.time.delayedCall(1000, () => this.end()); @@ -266,7 +261,6 @@ export class SummonPhase extends PartyMemberPokemonPhase { onComplete: () => { pokemon.cry(pokemon.getHpRatio() > 0.25 ? undefined : { rate: 0.85 }); pokemon.getSprite().clearTint(); - pokemon.resetSummonData(); globalScene.updateFieldScale(); globalScene.time.delayedCall(1000, () => this.end()); }, diff --git a/src/phases/switch-summon-phase.ts b/src/phases/switch-summon-phase.ts index f8728f3f9b9..bb31f87cc3d 100644 --- a/src/phases/switch-summon-phase.ts +++ b/src/phases/switch-summon-phase.ts @@ -33,10 +33,10 @@ export class SwitchSummonPhase extends SummonPhase { * @param fieldIndex - Position on the battle field * @param slotIndex - The index of pokemon (in party of 6) to switch into * @param doReturn - Whether to render "comeback" dialogue - * @param player - (Optional) `true` if the switch is from the player + * @param player - Whether the switch came from the player or enemy; default `true` */ - constructor(switchType: SwitchType, fieldIndex: number, slotIndex: number, doReturn: boolean, player?: boolean) { - super(fieldIndex, player !== undefined ? player : true); + constructor(switchType: SwitchType, fieldIndex: number, slotIndex: number, doReturn: boolean, player = true) { + super(fieldIndex, player); this.switchType = switchType; this.slotIndex = slotIndex; @@ -67,7 +67,8 @@ export class SwitchSummonPhase extends SummonPhase { !(this.player ? globalScene.getPlayerParty() : globalScene.getEnemyParty())[this.slotIndex]) ) { if (this.player) { - return this.switchAndSummon(); + this.switchAndSummon(); + return; } globalScene.time.delayedCall(750, () => this.switchAndSummon()); return; @@ -120,14 +121,23 @@ export class SwitchSummonPhase extends SummonPhase { switchAndSummon() { const party = this.player ? this.getParty() : globalScene.getEnemyParty(); - const switchedInPokemon = party[this.slotIndex]; + const switchedInPokemon: Pokemon | undefined = party[this.slotIndex]; this.lastPokemon = this.getPokemon(); + applyPreSummonAbAttrs(PreSummonAbAttr, switchedInPokemon); applyPreSwitchOutAbAttrs(PreSwitchOutAbAttr, this.lastPokemon); - if (this.switchType === SwitchType.BATON_PASS && switchedInPokemon) { - (this.player ? globalScene.getEnemyField() : globalScene.getPlayerField()).forEach(enemyPokemon => + if (!switchedInPokemon) { + this.end(); + return; + } + + if (this.switchType === SwitchType.BATON_PASS) { + // If switching via baton pass, update opposing tags coming from the prior pokemon + (this.player ? globalScene.getEnemyField() : globalScene.getPlayerField()).forEach((enemyPokemon: Pokemon) => enemyPokemon.transferTagsBySourceId(this.lastPokemon.id, switchedInPokemon.id), ); + + // If the recipient pokemon lacks a baton, give our baton to it during the swap if ( !globalScene.findModifier( m => @@ -140,14 +150,8 @@ export class SwitchSummonPhase extends SummonPhase { m instanceof SwitchEffectTransferModifier && (m as SwitchEffectTransferModifier).pokemonId === this.lastPokemon.id, ) as SwitchEffectTransferModifier; - if ( - batonPassModifier && - !globalScene.findModifier( - m => - m instanceof SwitchEffectTransferModifier && - (m as SwitchEffectTransferModifier).pokemonId === switchedInPokemon.id, - ) - ) { + + if (batonPassModifier) { globalScene.tryTransferHeldItemModifier( batonPassModifier, switchedInPokemon, @@ -160,49 +164,48 @@ export class SwitchSummonPhase extends SummonPhase { } } } - if (switchedInPokemon) { - party[this.slotIndex] = this.lastPokemon; - party[this.fieldIndex] = switchedInPokemon; - const showTextAndSummon = () => { - globalScene.ui.showText( - this.player - ? i18next.t("battle:playerGo", { - pokemonName: getPokemonNameWithAffix(switchedInPokemon), - }) - : i18next.t("battle:trainerGo", { - trainerName: globalScene.currentBattle.trainer?.getName( - !(this.fieldIndex % 2) ? TrainerSlot.TRAINER : TrainerSlot.TRAINER_PARTNER, - ), - pokemonName: this.getPokemon().getNameToRender(), - }), - ); - /** - * If this switch is passing a Substitute, make the switched Pokemon match the returned Pokemon's state as it left. - * Otherwise, clear any persisting tags on the returned Pokemon. - */ - if (this.switchType === SwitchType.BATON_PASS || this.switchType === SwitchType.SHED_TAIL) { - const substitute = this.lastPokemon.getTag(SubstituteTag); - if (substitute) { - switchedInPokemon.x += this.lastPokemon.getSubstituteOffset()[0]; - switchedInPokemon.y += this.lastPokemon.getSubstituteOffset()[1]; - switchedInPokemon.setAlpha(0.5); - } - } else { - switchedInPokemon.resetSummonData(); + + party[this.slotIndex] = this.lastPokemon; + party[this.fieldIndex] = switchedInPokemon; + const showTextAndSummon = () => { + globalScene.ui.showText( + this.player + ? i18next.t("battle:playerGo", { + pokemonName: getPokemonNameWithAffix(switchedInPokemon), + }) + : i18next.t("battle:trainerGo", { + trainerName: globalScene.currentBattle.trainer?.getName( + !(this.fieldIndex % 2) ? TrainerSlot.TRAINER : TrainerSlot.TRAINER_PARTNER, + ), + pokemonName: this.getPokemon().getNameToRender(), + }), + ); + + /** + * If this switch is passing a Substitute, make the switched Pokemon matches the returned Pokemon's state as it left. + * Otherwise, clear any persisting tags on the returned Pokemon. + */ + if (this.switchType === SwitchType.BATON_PASS || this.switchType === SwitchType.SHED_TAIL) { + const substitute = this.lastPokemon.getTag(SubstituteTag); + if (substitute) { + switchedInPokemon.x += this.lastPokemon.getSubstituteOffset()[0]; + switchedInPokemon.y += this.lastPokemon.getSubstituteOffset()[1]; + switchedInPokemon.setAlpha(0.5); } - this.summon(); - }; - if (this.player) { - showTextAndSummon(); } else { - globalScene.time.delayedCall(1500, () => { - this.hideEnemyTrainer(); - globalScene.pbTrayEnemy.hide(); - showTextAndSummon(); - }); + switchedInPokemon.resetSummonData(); } + this.summon(); + }; + + if (this.player) { + showTextAndSummon(); } else { - this.end(); + globalScene.time.delayedCall(1500, () => { + this.hideEnemyTrainer(); + globalScene.pbTrayEnemy.hide(); + showTextAndSummon(); + }); } } @@ -220,15 +223,15 @@ export class SwitchSummonPhase extends SummonPhase { const lastPokemonHasForceSwitchAbAttr = this.lastPokemon.hasAbilityWithAttr(PostDamageForceSwitchAbAttr) && !this.lastPokemon.isFainted(); - // Compensate for turn spent summoning - // Or compensate for force switch move if switched out pokemon is not fainted + // Compensate for turn spent summoning/forced switch if switched out pokemon is not fainted. + // Needed as we increment turn counters in `TurnEndPhase`. if ( currentCommand === Command.POKEMON || lastPokemonIsForceSwitchedAndNotFainted || lastPokemonHasForceSwitchAbAttr ) { - pokemon.battleSummonData.turnCount--; - pokemon.battleSummonData.waveTurnCount--; + pokemon.tempSummonData.turnCount--; + pokemon.tempSummonData.waveTurnCount--; } if (this.switchType === SwitchType.BATON_PASS && pokemon) { @@ -240,12 +243,13 @@ export class SwitchSummonPhase extends SummonPhase { } } + // Reset turn data if not initial switch (since it gets initialized to an empty object on turn start) if (this.switchType !== SwitchType.INITIAL_SWITCH) { pokemon.resetTurnData(); pokemon.turnData.switchedInThisTurn = true; } - this.lastPokemon?.resetSummonData(); + this.lastPokemon.resetSummonData(); globalScene.triggerPokemonFormChange(pokemon, SpeciesFormChangeActiveTrigger, true); // Reverts to weather-based forms when weather suppressors (Cloud Nine/Air Lock) are switched out diff --git a/src/phases/turn-end-phase.ts b/src/phases/turn-end-phase.ts index fe16a4a864e..756c497802b 100644 --- a/src/phases/turn-end-phase.ts +++ b/src/phases/turn-end-phase.ts @@ -54,11 +54,10 @@ export class TurnEndPhase extends FieldPhase { } globalScene.applyModifiers(TurnStatusEffectModifier, pokemon.isPlayer(), pokemon); - globalScene.applyModifiers(TurnHeldItemTransferModifier, pokemon.isPlayer(), pokemon); - pokemon.battleSummonData.turnCount++; - pokemon.battleSummonData.waveTurnCount++; + pokemon.tempSummonData.turnCount++; + pokemon.tempSummonData.waveTurnCount++; }; this.executeForAll(handlePokemon); diff --git a/src/phases/turn-start-phase.ts b/src/phases/turn-start-phase.ts index 622b9cdcbd1..b802780bbb8 100644 --- a/src/phases/turn-start-phase.ts +++ b/src/phases/turn-start-phase.ts @@ -72,19 +72,16 @@ export class TurnStartPhase extends FieldPhase { // This occurs before the main loop because of battles with more than two Pokemon const battlerBypassSpeed = {}; - globalScene - .getField(true) - .filter(p => p.summonData) - .map(p => { - const bypassSpeed = new BooleanHolder(false); - const canCheckHeldItems = new BooleanHolder(true); - applyAbAttrs(BypassSpeedChanceAbAttr, p, null, false, bypassSpeed); - applyAbAttrs(PreventBypassSpeedChanceAbAttr, p, null, false, bypassSpeed, canCheckHeldItems); - if (canCheckHeldItems.value) { - globalScene.applyModifiers(BypassSpeedChanceModifier, p.isPlayer(), p, bypassSpeed); - } - battlerBypassSpeed[p.getBattlerIndex()] = bypassSpeed; - }); + globalScene.getField(true).map(p => { + const bypassSpeed = new BooleanHolder(false); + const canCheckHeldItems = new BooleanHolder(true); + applyAbAttrs(BypassSpeedChanceAbAttr, p, null, false, bypassSpeed); + applyAbAttrs(PreventBypassSpeedChanceAbAttr, p, null, false, bypassSpeed, canCheckHeldItems); + if (canCheckHeldItems.value) { + globalScene.applyModifiers(BypassSpeedChanceModifier, p.isPlayer(), p, bypassSpeed); + } + battlerBypassSpeed[p.getBattlerIndex()] = bypassSpeed; + }); // The function begins sorting orderedTargets based on command priority, move priority, and possible speed bypasses. // Non-FIGHT commands (SWITCH, BALL, RUN) have a higher command priority and will always occur before any FIGHT commands. diff --git a/src/plugins/api/pokerogue-session-savedata-api.ts b/src/plugins/api/pokerogue-session-savedata-api.ts index e703d55a242..aac8b9b93ad 100644 --- a/src/plugins/api/pokerogue-session-savedata-api.ts +++ b/src/plugins/api/pokerogue-session-savedata-api.ts @@ -20,17 +20,20 @@ export class PokerogueSessionSavedataApi extends ApiBase { * *This is **NOT** the same as {@linkcode clear | clear()}.* * @param params The {@linkcode NewClearSessionSavedataRequest} to send * @returns The raw savedata as `string`. + * @throws Error if the request fails */ public async newclear(params: NewClearSessionSavedataRequest) { try { const urlSearchParams = this.toUrlSearchParams(params); const response = await this.doGet(`/savedata/session/newclear?${urlSearchParams}`); const json = await response.json(); - - return Boolean(json); + if (response.ok) { + return Boolean(json); + } + throw new Error("Could not newclear session!"); } catch (err) { console.warn("Could not newclear session!", err); - return false; + throw new Error("Could not newclear session!"); } } diff --git a/src/system/game-data.ts b/src/system/game-data.ts index 8573c774054..0c5e0b349ed 100644 --- a/src/system/game-data.ts +++ b/src/system/game-data.ts @@ -118,15 +118,17 @@ export function getDataTypeKey(dataType: GameDataType, slotId = 0): string { } export function encrypt(data: string, bypassLogin: boolean): string { - return (bypassLogin ? (data: string) => btoa(data) : (data: string) => AES.encrypt(data, saveKey))( - data, - ) as unknown as string; // TODO: is this correct? + return (bypassLogin + ? (data: string) => btoa(encodeURIComponent(data)) + : (data: string) => AES.encrypt(data, saveKey))(data) as unknown as string; // TODO: is this correct? } export function decrypt(data: string, bypassLogin: boolean): string { - return (bypassLogin ? (data: string) => atob(data) : (data: string) => AES.decrypt(data, saveKey).toString(enc.Utf8))( - data, - ); + return ( + bypassLogin + ? (data: string) => decodeURIComponent(atob(data)) + : (data: string) => AES.decrypt(data, saveKey).toString(enc.Utf8) + )(data); } export interface SystemSaveData { @@ -1108,7 +1110,7 @@ export class GameData { for (const p of sessionData.party) { const pokemon = p.toPokemon() as PlayerPokemon; pokemon.setVisible(false); - loadPokemonAssets.push(pokemon.loadAssets()); + loadPokemonAssets.push(pokemon.loadAssets(false)); party.push(pokemon); } @@ -1145,7 +1147,7 @@ export class GameData { ? trainerConfig?.doubleOnly || sessionData.trainer?.variant === TrainerVariant.DOUBLE : sessionData.enemyParty.length > 1, mysteryEncounterType, - )!; // TODO: is this bang correct? + ); battle.enemyLevels = sessionData.enemyParty.map(p => p.level); globalScene.arena.init(); @@ -1198,13 +1200,16 @@ export class GameData { } } + if (globalScene.modifiers.length) { + console.warn("Existing modifiers not cleared on session load, deleting..."); + globalScene.modifiers = []; + } for (const modifierData of sessionData.modifiers) { const modifier = modifierData.toModifier(Modifier[modifierData.className]); if (modifier) { globalScene.addModifier(modifier, true); } } - globalScene.updateModifiers(true); for (const enemyModifierData of sessionData.enemyModifiers) { @@ -1342,68 +1347,67 @@ export class GameData { } parseSessionData(dataStr: string): SessionSaveData { + // TODO: Add `null`/`undefined` to the corresponding type signatures for this + // (or prevent them from being null) + // If the value is able to *not exist*, it should say so in the code const sessionData = JSON.parse(dataStr, (k: string, v: any) => { - if (k === "party" || k === "enemyParty") { - const ret: PokemonData[] = []; - if (v === null) { - v = []; - } - for (const pd of v) { - ret.push(new PokemonData(pd)); - } - return ret; - } - - if (k === "trainer") { - return v ? new TrainerData(v) : null; - } - - if (k === "modifiers" || k === "enemyModifiers") { - const player = k === "modifiers"; - const ret: PersistentModifierData[] = []; - if (v === null) { - v = []; - } - for (const md of v) { - if (md?.className === "ExpBalanceModifier") { - // Temporarily limit EXP Balance until it gets reworked - md.stackCount = Math.min(md.stackCount, 4); + // TODO: Add pre-parse migrate scripts + switch (k) { + case "party": + case "enemyParty": { + const ret: PokemonData[] = []; + for (const pd of v ?? []) { + ret.push(new PokemonData(pd)); } - if ( - (md instanceof Modifier.EnemyAttackStatusEffectChanceModifier && md.effect === StatusEffect.FREEZE) || - md.effect === StatusEffect.SLEEP - ) { - continue; + return ret; + } + + case "trainer": + return v ? new TrainerData(v) : null; + + case "modifiers": + case "enemyModifiers": { + const ret: PersistentModifierData[] = []; + for (const md of v ?? []) { + if (md?.className === "ExpBalanceModifier") { + // Temporarily limit EXP Balance until it gets reworked + md.stackCount = Math.min(md.stackCount, 4); + } + + if ( + md instanceof Modifier.EnemyAttackStatusEffectChanceModifier && + (md.effect === StatusEffect.FREEZE || md.effect === StatusEffect.SLEEP) + ) { + // Discard any old "sleep/freeze chance tokens". + // TODO: make this migrate script + continue; + } + + ret.push(new PersistentModifierData(md, k === "modifiers")); } - ret.push(new PersistentModifierData(md, player)); + return ret; } - return ret; - } - if (k === "arena") { - return new ArenaData(v); - } + case "arena": + return new ArenaData(v); - if (k === "challenges") { - const ret: ChallengeData[] = []; - if (v === null) { - v = []; + case "challenges": { + const ret: ChallengeData[] = []; + for (const c of v ?? []) { + ret.push(new ChallengeData(c)); + } + return ret; } - for (const c of v) { - ret.push(new ChallengeData(c)); - } - return ret; - } - if (k === "mysteryEncounterType") { - return v as MysteryEncounterType; - } + case "mysteryEncounterType": + return v as MysteryEncounterType; - if (k === "mysteryEncounterSaveData") { - return new MysteryEncounterSaveData(v); - } + case "mysteryEncounterSaveData": + return new MysteryEncounterSaveData(v); - return v; + default: + return v; + } }) as SessionSaveData; applySessionVersionMigration(sessionData); @@ -1456,7 +1460,7 @@ export class GameData { encrypt(JSON.stringify(sessionData), bypassLogin), ); - console.debug("Session data saved"); + console.debug("Session data saved!"); if (!bypassLogin && sync) { pokerogueApi.savedata.updateAll(request).then(error => { diff --git a/src/system/pokemon-data.ts b/src/system/pokemon-data.ts index e432f64c7fd..323ae207fe8 100644 --- a/src/system/pokemon-data.ts +++ b/src/system/pokemon-data.ts @@ -1,16 +1,15 @@ import { BattleType } from "#enums/battle-type"; import { globalScene } from "#app/global-scene"; import type { Gender } from "../data/gender"; -import type { Nature } from "#enums/nature"; -import type { PokeballType } from "#enums/pokeball"; +import { Nature } from "#enums/nature"; +import { PokeballType } from "#enums/pokeball"; import { getPokemonSpecies, getPokemonSpeciesForm } from "../data/pokemon-species"; import { Status } from "../data/status-effect"; -import Pokemon, { EnemyPokemon, PokemonMove, PokemonSummonData } from "../field/pokemon"; +import Pokemon, { EnemyPokemon, PokemonBattleData, PokemonMove, PokemonSummonData } from "../field/pokemon"; import { TrainerSlot } from "#enums/trainer-slot"; import type { Variant } from "#app/sprites/variant"; -import { loadBattlerTag } from "../data/battler-tags"; import type { Biome } from "#enums/biome"; -import { Moves } from "#enums/moves"; +import type { Moves } from "#enums/moves"; import type { Species } from "#enums/species"; import { CustomPokemonData } from "#app/data/custom-pokemon-data"; import type { PokemonType } from "#enums/pokemon-type"; @@ -59,78 +58,68 @@ export default class PokemonData { public fusionTeraType: PokemonType; public boss: boolean; - public bossSegments?: number; + public bossSegments: number; + // Effects that need to be preserved between waves public summonData: PokemonSummonData; + public battleData: PokemonBattleData; public summonDataSpeciesFormIndex: number; - /** Data that can customize a Pokemon in non-standard ways from its Species */ public customPokemonData: CustomPokemonData; public fusionCustomPokemonData: CustomPokemonData; // Deprecated attributes, needed for now to allow SessionData migration (see PR#4619 comments) + // TODO: Remove these once pre-session migration is implemented public natureOverride: Nature | -1; public mysteryEncounterPokemonData: CustomPokemonData | null; public fusionMysteryEncounterPokemonData: CustomPokemonData | null; - constructor(source: Pokemon | any, forHistory = false) { - const sourcePokemon = source instanceof Pokemon ? source : null; + /** + * Construct a new {@linkcode PokemonData} instance out of a {@linkcode Pokemon} + * or JSON representation thereof. + * @param source The {@linkcode Pokemon} to convert into data (or a JSON object representing one) + */ + // TODO: Remove any from type signature in favor of 2 separate method funcs + constructor(source: Pokemon | any) { + const sourcePokemon = source instanceof Pokemon ? source : undefined; + this.id = source.id; - this.player = sourcePokemon ? sourcePokemon.isPlayer() : source.player; - this.species = sourcePokemon ? sourcePokemon.species.speciesId : source.species; - this.nickname = sourcePokemon - ? (!!sourcePokemon.summonData?.illusion ? sourcePokemon.summonData.illusion.basePokemon.nickname : sourcePokemon.nickname) - : source.nickname; + this.player = sourcePokemon?.isPlayer() ?? source.player; + this.species = sourcePokemon?.species.speciesId ?? source.species; + this.nickname = sourcePokemon?.summonData.illusion?.basePokemon.nickname ?? source.nickname; this.formIndex = Math.max(Math.min(source.formIndex, getPokemonSpecies(this.species).forms.length - 1), 0); this.abilityIndex = source.abilityIndex; this.passive = source.passive; - this.shiny = sourcePokemon ? sourcePokemon.isShiny() : source.shiny; - this.variant = sourcePokemon ? sourcePokemon.getVariant() : source.variant; - this.pokeball = source.pokeball; + this.shiny = sourcePokemon?.summonData.illusion?.basePokemon.shiny ?? source.shiny; + this.variant = sourcePokemon?.summonData.illusion?.basePokemon.variant ?? source.variant; + this.pokeball = source.pokeball ?? PokeballType.POKEBALL; this.level = source.level; this.exp = source.exp; - if (!forHistory) { - this.levelExp = source.levelExp; - } + this.levelExp = source.levelExp; this.gender = source.gender; - if (!forHistory) { - this.hp = source.hp; - } + this.hp = source.hp; this.stats = source.stats; this.ivs = source.ivs; - this.nature = source.nature !== undefined ? source.nature : (0 as Nature); - this.friendship = - source.friendship !== undefined ? source.friendship : getPokemonSpecies(this.species).baseFriendship; + + // TODO: Can't we move some of this verification stuff to an upgrade script? + this.nature = source.nature ?? Nature.HARDY; + this.moveset = source.moveset.map((m: any) => PokemonMove.loadMove(m)); + this.status = source.status + ? new Status(source.status.effect, source.status.toxicTurnCount, source.status.sleepTurnsRemaining) + : null; + this.friendship = source.friendship ?? getPokemonSpecies(this.species).baseFriendship; this.metLevel = source.metLevel || 5; - this.metBiome = source.metBiome !== undefined ? source.metBiome : -1; + this.metBiome = source.metBiome ?? -1; this.metSpecies = source.metSpecies; this.metWave = source.metWave ?? (this.metBiome === -1 ? -1 : 0); - this.luck = source.luck !== undefined ? source.luck : source.shiny ? source.variant + 1 : 0; - if (!forHistory) { - this.pauseEvolutions = !!source.pauseEvolutions; - } + this.luck = source.luck ?? (source.shiny ? source.variant + 1 : 0); + this.pauseEvolutions = !!source.pauseEvolutions; this.pokerus = !!source.pokerus; - this.teraType = source.teraType as PokemonType; - this.isTerastallized = source.isTerastallized || false; - this.stellarTypesBoosted = source.stellarTypesBoosted || []; - - this.fusionSpecies = sourcePokemon ? sourcePokemon.fusionSpecies?.speciesId : source.fusionSpecies; - this.fusionFormIndex = source.fusionFormIndex; - this.fusionAbilityIndex = source.fusionAbilityIndex; - this.fusionShiny = sourcePokemon - ? (!!sourcePokemon.summonData?.illusion ? sourcePokemon.summonData.illusion.basePokemon.fusionShiny : sourcePokemon.fusionShiny) - : source.fusionShiny; - this.fusionVariant = sourcePokemon - ? (!!sourcePokemon.summonData?.illusion ? sourcePokemon.summonData.illusion.basePokemon.fusionVariant : sourcePokemon.fusionVariant) - : source.fusionVariant; - this.fusionGender = source.fusionGender; - this.fusionLuck = - source.fusionLuck !== undefined ? source.fusionLuck : source.fusionShiny ? source.fusionVariant + 1 : 0; - this.fusionCustomPokemonData = new CustomPokemonData(source.fusionCustomPokemonData); - this.fusionTeraType = (source.fusionTeraType ?? 0) as PokemonType; this.usedTMs = source.usedTMs ?? []; - - this.customPokemonData = new CustomPokemonData(source.customPokemonData); + this.evoCounter = source.evoCounter ?? 0; + this.teraType = source.teraType as PokemonType; + this.isTerastallized = !!source.isTerastallized; + this.stellarTypesBoosted = source.stellarTypesBoosted ?? []; // Deprecated, but needed for session data migration this.natureOverride = source.natureOverride; @@ -141,52 +130,25 @@ export default class PokemonData { ? new CustomPokemonData(source.fusionMysteryEncounterPokemonData) : null; - if (!forHistory) { - this.boss = (source instanceof EnemyPokemon && !!source.bossSegments) || (!this.player && !!source.boss); - this.bossSegments = source.bossSegments; - } + this.fusionSpecies = sourcePokemon?.fusionSpecies?.speciesId ?? source.fusionSpecies; + this.fusionFormIndex = source.fusionFormIndex; + this.fusionAbilityIndex = source.fusionAbilityIndex; + this.fusionShiny = sourcePokemon?.summonData.illusion?.basePokemon.fusionShiny ?? source.fusionShiny; + this.fusionVariant = sourcePokemon?.summonData.illusion?.basePokemon.fusionVariant ?? source.fusionVariant; + this.fusionGender = source.fusionGender; + this.fusionLuck = source.fusionLuck ?? (source.fusionShiny ? source.fusionVariant + 1 : 0); + this.fusionTeraType = (source.fusionTeraType ?? 0) as PokemonType; - if (sourcePokemon) { - this.moveset = sourcePokemon.moveset; - if (!forHistory) { - this.status = sourcePokemon.status; - if (this.player && sourcePokemon.summonData) { - this.summonData = sourcePokemon.summonData; - this.summonDataSpeciesFormIndex = this.getSummonDataSpeciesFormIndex(); - } - } - } else { - this.moveset = (source.moveset || [new PokemonMove(Moves.TACKLE), new PokemonMove(Moves.GROWL)]) - .filter(m => m) - .map((m: any) => new PokemonMove(m.moveId, m.ppUsed, m.ppUp, m.virtual, m.maxPpOverride)); - if (!forHistory) { - this.status = source.status - ? new Status(source.status.effect, source.status.toxicTurnCount, source.status.sleepTurnsRemaining) - : null; - } + this.boss = (source instanceof EnemyPokemon && !!source.bossSegments) || (!this.player && !!source.boss); + this.bossSegments = source.bossSegments ?? 0; - this.summonData = new PokemonSummonData(); - if (!forHistory && source.summonData) { - this.summonData.stats = source.summonData.stats; - this.summonData.statStages = source.summonData.statStages; - this.summonData.moveQueue = source.summonData.moveQueue; - this.summonData.abilitySuppressed = source.summonData.abilitySuppressed; - this.summonData.abilitiesApplied = source.summonData.abilitiesApplied; + this.summonData = new PokemonSummonData(source.summonData); + this.battleData = new PokemonBattleData(source.battleData); + this.summonDataSpeciesFormIndex = + sourcePokemon?.summonData.speciesForm?.formIndex ?? source.summonDataSpeciesFormIndex; - this.summonData.ability = source.summonData.ability; - this.summonData.moveset = source.summonData.moveset?.map(m => PokemonMove.loadMove(m)); - this.summonData.types = source.summonData.types; - this.summonData.speciesForm = source.summonData.speciesForm; - this.summonDataSpeciesFormIndex = source.summonDataSpeciesFormIndex; - this.summonData.illusionBroken = source.summonData.illusionBroken; - - if (source.summonData.tags) { - this.summonData.tags = source.summonData.tags?.map(t => loadBattlerTag(t)); - } else { - this.summonData.tags = []; - } - } - } + this.customPokemonData = new CustomPokemonData(source.customPokemonData); + this.fusionCustomPokemonData = new CustomPokemonData(source.fusionCustomPokemonData); } toPokemon(battleType?: BattleType, partyMemberIndex = 0, double = false): Pokemon { @@ -221,30 +183,15 @@ export default class PokemonData { false, this, ); - if (this.summonData) { - // when loading from saved session, recover summonData.speciesFrom and form index species object - // used to stay transformed on reload session - if (this.summonData.speciesForm) { - this.summonData.speciesForm = getPokemonSpeciesForm( - this.summonData.speciesForm.speciesId, - this.summonDataSpeciesFormIndex, - ); - } - ret.primeSummonData(this.summonData); + // when loading from saved session, recover summonData.speciesFrom and form index species object + // used to stay transformed on reload session + if (this.summonData.speciesForm) { + ret.summonData.speciesForm = getPokemonSpeciesForm( + this.summonData.speciesForm.speciesId, + this.summonDataSpeciesFormIndex, + ); } return ret; } - - /** - * Method to save summon data species form index - * Necessary in case the pokemon is transformed - * to reload the correct form - */ - getSummonDataSpeciesFormIndex(): number { - if (this.summonData.speciesForm) { - return this.summonData.speciesForm.formIndex; - } - return 0; - } } diff --git a/src/system/settings/settings.ts b/src/system/settings/settings.ts index 31faf2b6283..8bbba267bd6 100644 --- a/src/system/settings/settings.ts +++ b/src/system/settings/settings.ts @@ -804,6 +804,7 @@ export function setSetting(setting: string, value: number): boolean { break; case SettingKeys.Candy_Upgrade_Display: globalScene.candyUpgradeDisplay = value; + break; case SettingKeys.Money_Format: switch (Setting[index].options[value].value) { case "Normal": diff --git a/src/system/version_migration/version_converter.ts b/src/system/version_migration/version_converter.ts index 1fdb9e93f88..798115e0395 100644 --- a/src/system/version_migration/version_converter.ts +++ b/src/system/version_migration/version_converter.ts @@ -59,6 +59,10 @@ import * as v1_7_0 from "./versions/v1_7_0"; // biome-ignore lint/style/noNamespaceImport: Convenience import * as v1_8_3 from "./versions/v1_8_3"; +// --- v1.9.0 PATCHES --- // +// biome-ignore lint/style/noNamespaceImport: Convenience +import * as v1_9_0 from "./versions/v1_9_0"; + /** Current game version */ const LATEST_VERSION = version; @@ -80,6 +84,7 @@ systemMigrators.push(...v1_8_3.systemMigrators); const sessionMigrators: SessionSaveMigrator[] = []; sessionMigrators.push(...v1_0_4.sessionMigrators); sessionMigrators.push(...v1_7_0.sessionMigrators); +sessionMigrators.push(...v1_9_0.sessionMigrators); /** All settings migrators */ const settingsMigrators: SettingsSaveMigrator[] = []; diff --git a/src/system/version_migration/versions/v1_9_0.ts b/src/system/version_migration/versions/v1_9_0.ts new file mode 100644 index 00000000000..c517896cf45 --- /dev/null +++ b/src/system/version_migration/versions/v1_9_0.ts @@ -0,0 +1,41 @@ +import type { SessionSaveMigrator } from "#app/@types/SessionSaveMigrator"; +import { PokemonMove } from "#app/field/pokemon"; +import type { SessionSaveData } from "#app/system/game-data"; +import type PokemonData from "#app/system/pokemon-data"; +import { Moves } from "#enums/moves"; + +/** + * Migrate all lingering rage fist data inside `CustomPokemonData`, + * as well as enforcing default values across the board. + * @param data - {@linkcode SystemSaveData} + */ +const migratePartyData: SessionSaveMigrator = { + version: "1.9.0", + migrate: (data: SessionSaveData): void => { + // this stuff is copied straight from the constructor fwiw + const mapParty = (pkmnData: PokemonData) => { + // remove empty moves from moveset + pkmnData.moveset = (pkmnData.moveset ?? [new PokemonMove(Moves.TACKLE), new PokemonMove(Moves.GROWL)]) + .filter(m => !!m) + .map(m => PokemonMove.loadMove(m)); + // only edit summondata moveset if exists + pkmnData.summonData.moveset &&= pkmnData.summonData.moveset.filter(m => !!m).map(m => PokemonMove.loadMove(m)); + + if ( + pkmnData.customPokemonData && + "hitsRecCount" in pkmnData.customPokemonData && + typeof pkmnData.customPokemonData["hitsRecCount"] === "number" + ) { + // transfer old hit count stat to battleData. + pkmnData.battleData.hitCount = pkmnData.customPokemonData["hitsRecCount"]; + pkmnData.customPokemonData["hitsRecCount"] = null; + } + return pkmnData; + }; + + data.party = data.party.map(mapParty); + data.enemyParty = data.enemyParty.map(mapParty); + }, +}; + +export const sessionMigrators: Readonly = [migratePartyData] as const; diff --git a/src/timed-event-manager.ts b/src/timed-event-manager.ts index 8f5a9c75428..163afdc098b 100644 --- a/src/timed-event-manager.ts +++ b/src/timed-event-manager.ts @@ -310,6 +310,47 @@ const timedEvents: TimedEvent[] = [ }, ], }, + { + name: "Shining Spring", + eventType: EventType.SHINY, + startDate: new Date(Date.UTC(2025, 4, 3)), + endDate: new Date(Date.UTC(2025, 4, 13)), + bannerKey: "spr25event", + scale: 0.21, + availableLangs: ["en", "de", "it", "fr", "ja", "ko", "es-ES", "es-MX", "pt-BR", "zh-CN"], + shinyMultiplier: 2, + upgradeUnlockedVouchers: true, + eventEncounters: [ + { species: Species.HOPPIP }, + { species: Species.CELEBI }, + { species: Species.VOLBEAT }, + { species: Species.ILLUMISE }, + { species: Species.SPOINK }, + { species: Species.LILEEP }, + { species: Species.SHINX }, + { species: Species.PACHIRISU }, + { species: Species.CHERUBI }, + { species: Species.MUNCHLAX }, + { species: Species.TEPIG }, + { species: Species.PANSAGE }, + { species: Species.PANSEAR }, + { species: Species.PANPOUR }, + { species: Species.DARUMAKA }, + { species: Species.ARCHEN }, + { species: Species.DEERLING, formIndex: 0 }, // Spring Deerling + { species: Species.CLAUNCHER }, + { species: Species.WISHIWASHI }, + { species: Species.DRAMPA }, + { species: Species.JANGMO_O }, + { species: Species.APPLIN }, + ], + classicWaveRewards: [ + { wave: 8, type: "SHINY_CHARM" }, + { wave: 8, type: "ABILITY_CHARM" }, + { wave: 8, type: "CATCHING_CHARM" }, + { wave: 25, type: "SHINY_CHARM" }, + ], + }, ]; export class TimedEventManager { diff --git a/src/ui-inputs.ts b/src/ui-inputs.ts index bf4f51e5af7..0c13cdb9512 100644 --- a/src/ui-inputs.ts +++ b/src/ui-inputs.ts @@ -176,11 +176,13 @@ export class UiInputs { return; } switch (globalScene.ui?.getMode()) { - case UiMode.MESSAGE: + case UiMode.MESSAGE: { const messageHandler = globalScene.ui.getHandler(); if (!messageHandler.pendingPrompt || messageHandler.isTextAnimationInProgress()) { return; } + // biome-ignore lint/suspicious/noFallthroughSwitchClause: falls through to show menu overlay + } case UiMode.TITLE: case UiMode.COMMAND: case UiMode.MODIFIER_SELECT: diff --git a/src/ui/battle-info.ts b/src/ui/battle-info.ts index 99a91a9330e..2822e8364ec 100644 --- a/src/ui/battle-info.ts +++ b/src/ui/battle-info.ts @@ -465,7 +465,7 @@ export default class BattleInfo extends Phaser.GameObjects.Container { this.shinyIcon.setVisible(pokemon.isShiny()); - const types = pokemon.getTypes(true); + const types = pokemon.getTypes(true, false, undefined, true); this.type1Icon.setTexture(`pbinfo_${this.player ? "player" : "enemy"}_type${types.length > 1 ? "1" : ""}`); this.type1Icon.setFrame(PokemonType[types[0]].toLowerCase()); this.type2Icon.setVisible(types.length > 1); @@ -617,7 +617,7 @@ export default class BattleInfo extends Phaser.GameObjects.Container { return resolve(); } - const gender: Gender = pokemon.summonData?.illusion ? pokemon.summonData?.illusion.gender : pokemon.gender; + const gender = pokemon.summonData.illusion?.gender ?? pokemon.gender; this.genderText.setText(getGenderSymbol(gender)); this.genderText.setColor(getGenderColor(gender)); @@ -685,7 +685,7 @@ export default class BattleInfo extends Phaser.GameObjects.Container { this.statusIndicator.setVisible(!!this.lastStatus); } - const types = pokemon.getTypes(true); + const types = pokemon.getTypes(true, false, undefined, true); this.type1Icon.setTexture(`pbinfo_${this.player ? "player" : "enemy"}_type${types.length > 1 ? "1" : ""}`); this.type1Icon.setFrame(PokemonType[types[0]].toLowerCase()); this.type2Icon.setVisible(types.length > 1); @@ -727,6 +727,12 @@ export default class BattleInfo extends Phaser.GameObjects.Container { }, onComplete: () => { updateHpFrame(); + // If, after tweening, the hp is different from the original (due to rounding), force the hp number display + // to update to the correct value. + if (this.player && this.lastHp !== pokemon.hp) { + this.setHpNumbers(pokemon.hp, pokemon.getMaxHp()); + this.lastHp = pokemon.hp; + } resolve(); }, }); @@ -794,7 +800,7 @@ export default class BattleInfo extends Phaser.GameObjects.Container { const nameSizeTest = addTextObject(0, 0, displayName, TextStyle.BATTLE_INFO); nameTextWidth = nameSizeTest.displayWidth; - const gender: Gender = pokemon.summonData?.illusion ? pokemon.summonData?.illusion.gender : pokemon.gender; + const gender = pokemon.summonData.illusion?.gender ?? pokemon.gender; while ( nameTextWidth > (this.player || !this.boss ? 60 : 98) - diff --git a/src/ui/command-ui-handler.ts b/src/ui/command-ui-handler.ts index 57c5b5a82a2..ff27e9c41c0 100644 --- a/src/ui/command-ui-handler.ts +++ b/src/ui/command-ui-handler.ts @@ -86,7 +86,7 @@ export default class CommandUiHandler extends UiHandler { this.teraButton.setFrame(PokemonType[globalScene.getField()[this.fieldIndex].getTeraType()].toLowerCase()); } else { this.teraButton.setVisible(false); - if (this.cursor === Command.TERA) { + if (this.getCursor() === Command.TERA) { this.setCursor(Command.FIGHT); } } diff --git a/src/ui/fight-ui-handler.ts b/src/ui/fight-ui-handler.ts index e0a73d62934..5a0978a934d 100644 --- a/src/ui/fight-ui-handler.ts +++ b/src/ui/fight-ui-handler.ts @@ -127,7 +127,7 @@ export default class FightUiHandler extends UiHandler implements InfoToggle { messageHandler.commandWindow.setVisible(false); messageHandler.movesWindowContainer.setVisible(true); const pokemon = (globalScene.getCurrentPhase() as CommandPhase).getPokemon(); - if (pokemon.battleSummonData.turnCount <= 1) { + if (pokemon.tempSummonData.turnCount <= 1) { this.setCursor(0); } else { this.setCursor(this.getCursor()); @@ -305,7 +305,7 @@ export default class FightUiHandler extends UiHandler implements InfoToggle { const effectiveness = opponent.getMoveEffectiveness( pokemon, pokemonMove.getMove(), - !opponent.battleData?.abilityRevealed, + !opponent.waveData.abilityRevealed, undefined, undefined, true, @@ -356,7 +356,7 @@ export default class FightUiHandler extends UiHandler implements InfoToggle { opponent.getMoveEffectiveness( pokemon, pokemonMove.getMove(), - !opponent.battleData.abilityRevealed, + !opponent.waveData.abilityRevealed, undefined, undefined, true, diff --git a/src/ui/party-ui-handler.ts b/src/ui/party-ui-handler.ts index 7c3689e757c..6e947796d63 100644 --- a/src/ui/party-ui-handler.ts +++ b/src/ui/party-ui-handler.ts @@ -1581,7 +1581,7 @@ class PartySlot extends Phaser.GameObjects.Container { fusionShinyStar.setOrigin(0, 0); fusionShinyStar.setPosition(shinyStar.x, shinyStar.y); fusionShinyStar.setTint( - getVariantTint(this.pokemon.summonData?.illusion?.basePokemon.fusionVariant ?? this.pokemon.fusionVariant), + getVariantTint(this.pokemon.summonData.illusion?.basePokemon.fusionVariant ?? this.pokemon.fusionVariant), ); slotInfoContainer.add(fusionShinyStar); diff --git a/src/ui/pokedex-page-ui-handler.ts b/src/ui/pokedex-page-ui-handler.ts index 4888e14b24f..ddc16ab5a88 100644 --- a/src/ui/pokedex-page-ui-handler.ts +++ b/src/ui/pokedex-page-ui-handler.ts @@ -921,16 +921,22 @@ export default class PokedexPageUiHandler extends MessageUiHandler { return biomes; } + /** + * Return the caughtAttr of a given species, sanitized. + * + * @param otherSpecies The species to check; defaults to current species + * @returns caught DexAttr for the species + */ isCaught(otherSpecies?: PokemonSpecies): bigint { + const species = otherSpecies ? otherSpecies : this.species; + if (globalScene.dexForDevs) { - return 255n; + species.getFullUnlocksData(); } - const species = otherSpecies ? otherSpecies : this.species; const dexEntry = globalScene.gameData.dexData[species.speciesId]; - const starterDexEntry = globalScene.gameData.dexData[this.getStarterSpeciesId(species.speciesId)]; - return (dexEntry?.caughtAttr ?? 0n) & (starterDexEntry?.caughtAttr ?? 0n) & species.getFullUnlocksData(); + return (dexEntry?.caughtAttr ?? 0n) & species.getFullUnlocksData(); } /** @@ -939,7 +945,7 @@ export default class PokedexPageUiHandler extends MessageUiHandler { * * @param otherSpecies The species to check; defaults to current species * @param otherFormIndex The form index of the form to check; defaults to current form - * @returns StarterAttributes for the species + * @returns `true` if the form is caught */ isFormCaught(otherSpecies?: PokemonSpecies, otherFormIndex?: number | undefined): boolean { if (globalScene.dexForDevs) { @@ -954,6 +960,7 @@ export default class PokedexPageUiHandler extends MessageUiHandler { } const isFormCaught = (caughtAttr & globalScene.gameData.getFormAttr(formIndex ?? 0)) > 0n; + return isFormCaught; } @@ -1151,7 +1158,6 @@ export default class PokedexPageUiHandler extends MessageUiHandler { this.blockInput = false; } else { ui.revertMode().then(() => { - console.log("exitCallback", this.exitCallback); if (this.exitCallback instanceof Function) { const exitCallback = this.exitCallback; this.exitCallback = null; diff --git a/src/ui/pokedex-ui-handler.ts b/src/ui/pokedex-ui-handler.ts index b1d0945de07..935c9adfeb8 100644 --- a/src/ui/pokedex-ui-handler.ts +++ b/src/ui/pokedex-ui-handler.ts @@ -873,6 +873,7 @@ export default class PokedexUiHandler extends MessageUiHandler { const tweenChain: Phaser.Types.Tweens.TweenChainBuilderConfig = { targets: icon, loop: -1, + paused: startPaused, // Make the initial bounce a little randomly delayed delay: randIntRange(0, 50) * 5, loopDelay: 1000, @@ -894,19 +895,14 @@ export default class PokedexUiHandler extends MessageUiHandler { ], }; - const isPassiveAvailable = this.isPassiveAvailable(species.speciesId); - const isValueReductionAvailable = this.isValueReductionAvailable(species.speciesId); - const isSameSpeciesEggAvailable = this.isSameSpeciesEggAvailable(species.speciesId); - - // 'Passives Only' mode - if (globalScene.candyUpgradeNotification === 1) { - if (isPassiveAvailable) { - globalScene.tweens.chain(tweenChain).paused = startPaused; - } - // 'On' mode - } else if (globalScene.candyUpgradeNotification === 2) { - if (isPassiveAvailable || isValueReductionAvailable || isSameSpeciesEggAvailable) { - globalScene.tweens.chain(tweenChain).paused = startPaused; + if ( + this.isPassiveAvailable(species.speciesId) || + (globalScene.candyUpgradeNotification === 2 && + (this.isValueReductionAvailable(species.speciesId) || this.isSameSpeciesEggAvailable(species.speciesId))) + ) { + const chain = globalScene.tweens.chain(tweenChain); + if (!startPaused) { + chain.play(); } } } @@ -2040,7 +2036,7 @@ export default class PokedexUiHandler extends MessageUiHandler { this.checkIconId(lastSpeciesIcon, container.species, props.female, props.formIndex, props.shiny, props.variant); this.iconAnimHandler.addOrUpdate(lastSpeciesIcon, PokemonIconAnimMode.NONE); // Resume the animation for the previously selected species - globalScene.tweens.getTweensOf(lastSpeciesIcon).forEach(tween => tween.resume()); + globalScene.tweens.getTweensOf(lastSpeciesIcon).forEach(tween => tween.play()); } } diff --git a/src/ui/registration-form-ui-handler.ts b/src/ui/registration-form-ui-handler.ts index 3d4613c21d6..a60a53a8e7a 100644 --- a/src/ui/registration-form-ui-handler.ts +++ b/src/ui/registration-form-ui-handler.ts @@ -102,9 +102,9 @@ export default class RegistrationFormUiHandler extends FormModalUiHandler { // Prevent overlapping overrides on action modification this.submitAction = originalRegistrationAction; this.sanitizeInputs(); - globalScene.ui.setMode(UiMode.LOADING, { buttonActions: [] }); + globalScene.ui.setMode(UiMode.LOADING, { buttonActions: [] }); const onFail = error => { - globalScene.ui.setMode(UiMode.REGISTRATION_FORM, Object.assign(config, { errorMessage: error?.trim() })); + globalScene.ui.setMode(UiMode.REGISTRATION_FORM, Object.assign(config, { errorMessage: error?.trim() })); globalScene.ui.playError(); const errorMessageFontSize = languageSettings[i18next.resolvedLanguage!]?.errorMessageFontSize; if (errorMessageFontSize) { diff --git a/src/ui/starter-select-ui-handler.ts b/src/ui/starter-select-ui-handler.ts index 7c345f1735e..09d7322cb75 100644 --- a/src/ui/starter-select-ui-handler.ts +++ b/src/ui/starter-select-ui-handler.ts @@ -1444,6 +1444,7 @@ export default class StarterSelectUiHandler extends MessageUiHandler { const tweenChain: Phaser.Types.Tweens.TweenChainBuilderConfig = { targets: icon, + paused: startPaused, loop: -1, // Make the initial bounce a little randomly delayed delay: randIntRange(0, 50) * 5, @@ -1451,14 +1452,14 @@ export default class StarterSelectUiHandler extends MessageUiHandler { tweens: [ { targets: icon, - y: 2 - 5, + y: "-=5", duration: fixedInt(125), ease: "Cubic.easeOut", yoyo: true, }, { targets: icon, - y: 2 - 3, + y: "-=3", duration: fixedInt(150), ease: "Cubic.easeOut", yoyo: true, @@ -1466,19 +1467,14 @@ export default class StarterSelectUiHandler extends MessageUiHandler { ], }; - const isPassiveAvailable = this.isPassiveAvailable(species.speciesId); - const isValueReductionAvailable = this.isValueReductionAvailable(species.speciesId); - const isSameSpeciesEggAvailable = this.isSameSpeciesEggAvailable(species.speciesId); - - // 'Passives Only' mode - if (globalScene.candyUpgradeNotification === 1) { - if (isPassiveAvailable) { - globalScene.tweens.chain(tweenChain).paused = startPaused; - } - // 'On' mode - } else if (globalScene.candyUpgradeNotification === 2) { - if (isPassiveAvailable || isValueReductionAvailable || isSameSpeciesEggAvailable) { - globalScene.tweens.chain(tweenChain).paused = startPaused; + if ( + this.isPassiveAvailable(species.speciesId) || + (globalScene.candyUpgradeNotification === 2 && + (this.isValueReductionAvailable(species.speciesId) || this.isSameSpeciesEggAvailable(species.speciesId))) + ) { + const chain = globalScene.tweens.chain(tweenChain); + if (!startPaused) { + chain.play(); } } } @@ -3478,7 +3474,7 @@ export default class StarterSelectUiHandler extends MessageUiHandler { // Resume the animation for the previously selected species const icon = this.starterContainers[speciesIndex].icon; - globalScene.tweens.getTweensOf(icon).forEach(tween => tween.resume()); + globalScene.tweens.getTweensOf(icon).forEach(tween => tween.play()); } this.lastSpecies = species!; // TODO: is this bang correct? diff --git a/src/ui/summary-ui-handler.ts b/src/ui/summary-ui-handler.ts index 877c342651f..f93a1826b3e 100644 --- a/src/ui/summary-ui-handler.ts +++ b/src/ui/summary-ui-handler.ts @@ -359,15 +359,15 @@ export default class SummaryUiHandler extends UiHandler { this.pokemonSprite.setPipelineData("spriteKey", this.pokemon.getSpriteKey()); this.pokemonSprite.setPipelineData( "shiny", - this.pokemon.summonData?.illusion?.basePokemon.shiny ?? this.pokemon.shiny, + this.pokemon.summonData.illusion?.basePokemon.shiny ?? this.pokemon.shiny, ); this.pokemonSprite.setPipelineData( "variant", - this.pokemon.summonData?.illusion?.basePokemon.variant ?? this.pokemon.variant, + this.pokemon.summonData.illusion?.basePokemon.variant ?? this.pokemon.variant, ); ["spriteColors", "fusionSpriteColors"].map(k => { delete this.pokemonSprite.pipelineData[`${k}Base`]; - if (this.pokemon?.summonData?.speciesForm) { + if (this.pokemon?.summonData.speciesForm) { k += "Base"; } this.pokemonSprite.pipelineData[k] = this.pokemon?.getSprite().pipelineData[k]; @@ -462,7 +462,7 @@ export default class SummaryUiHandler extends UiHandler { this.fusionShinyIcon.setVisible(doubleShiny); if (isFusion) { this.fusionShinyIcon.setTint( - getVariantTint(this.pokemon.summonData?.illusion?.basePokemon.fusionVariant ?? this.pokemon.fusionVariant), + getVariantTint(this.pokemon.summonData.illusion?.basePokemon.fusionVariant ?? this.pokemon.fusionVariant), ); } diff --git a/src/ui/target-select-ui-handler.ts b/src/ui/target-select-ui-handler.ts index 0db2020c25a..5e14e5f7771 100644 --- a/src/ui/target-select-ui-handler.ts +++ b/src/ui/target-select-ui-handler.ts @@ -71,7 +71,7 @@ export default class TargetSelectUiHandler extends UiHandler { */ resetCursor(cursorN: number, user: Pokemon): void { if (!isNullOrUndefined(cursorN)) { - if ([BattlerIndex.PLAYER, BattlerIndex.PLAYER_2].includes(cursorN) || user.battleSummonData.waveTurnCount === 1) { + if ([BattlerIndex.PLAYER, BattlerIndex.PLAYER_2].includes(cursorN) || user.tempSummonData.waveTurnCount === 1) { // Reset cursor on the first turn of a fight or if an ally was targeted last turn cursorN = -1; } diff --git a/src/utils/common.ts b/src/utils/common.ts index 4acfabce080..4cf7ceccff2 100644 --- a/src/utils/common.ts +++ b/src/utils/common.ts @@ -467,35 +467,22 @@ export function truncateString(str: string, maxLength = 10) { return str; } -/** - * Perform a deep copy of an object. - * - * @param values - The object to be deep copied. - * @returns A new object that is a deep copy of the input. - */ -export function deepCopy(values: object): object { - // Convert the object to a JSON string and parse it back to an object to perform a deep copy - return JSON.parse(JSON.stringify(values)); -} - /** * Convert a space-separated string into a capitalized and underscored string. - * * @param input - The string to be converted. * @returns The converted string with words capitalized and separated by underscores. */ -export function reverseValueToKeySetting(input) { +export function reverseValueToKeySetting(input: string) { // Split the input string into an array of words const words = input.split(" "); // Capitalize the first letter of each word and convert the rest to lowercase - const capitalizedWords = words.map(word => word.charAt(0).toUpperCase() + word.slice(1).toLowerCase()); + const capitalizedWords = words.map((word: string) => word.charAt(0).toUpperCase() + word.slice(1).toLowerCase()); // Join the capitalized words with underscores and return the result return capitalizedWords.join("_"); } /** * Capitalize a string. - * * @param str - The string to be capitalized. * @param sep - The separator between the words of the string. * @param lowerFirstChar - Whether the first character of the string should be lowercase or not. @@ -515,8 +502,8 @@ export function capitalizeString(str: string, sep: string, lowerFirstChar = true return null; } -export function isNullOrUndefined(object: any): object is undefined | null { - return null === object || undefined === object; +export function isNullOrUndefined(object: any): object is null | undefined { + return object === null || object === undefined; } /** @@ -550,14 +537,14 @@ export function getLocalizedSpriteKey(baseKey: string) { } /** - * Check if a number is **inclusive** between two numbers - * @param num the number to check - * @param min the minimum value (included) - * @param max the maximum value (included) - * @returns `true` if number is **inclusive** between min and max + * Check if a number is **inclusively** between two numbers + * @param num - the number to check + * @param min - the minimum value (inclusive) + * @param max - the maximum value (inclusive) + * @returns Whether num is no less than min and no greater than max */ export function isBetween(num: number, min: number, max: number): boolean { - return num >= min && num <= max; + return min <= num && num <= max; } /** @@ -579,25 +566,3 @@ export function animationFileName(move: Moves): string { export function camelCaseToKebabCase(str: string): string { return str.replace(/[A-Z]+(?![a-z])|[A-Z]/g, (s, o) => (o ? "-" : "") + s.toLowerCase()); } - -/** - * Merges the two objects, such that for each property in `b` that matches a property in `a`, - * the value in `a` is replaced by the value in `b`. This is done recursively if the property is a non-array object - * - * If the property does not exist in `a` or its `typeof` evaluates differently, the property is skipped. - * If the value of the property is an array, the array is replaced. If it is any other object, the object is merged recursively. - */ -// biome-ignore lint/complexity/noBannedTypes: This function is designed to merge json objects -export function deepMergeObjects(a: Object, b: Object) { - for (const key in b) { - // !(key in a) is redundant here, yet makes it clear that we're explicitly interested in properties that exist in `a` - if (!(key in a) || typeof a[key] !== typeof b[key]) { - continue; - } - if (typeof b[key] === "object" && !Array.isArray(b[key])) { - deepMergeObjects(a[key], b[key]); - } else { - a[key] = b[key]; - } - } -} diff --git a/src/utils/data.ts b/src/utils/data.ts new file mode 100644 index 00000000000..33623dc5e40 --- /dev/null +++ b/src/utils/data.ts @@ -0,0 +1,40 @@ +/** + * Perform a deep copy of an object. + * @param values - The object to be deep copied. + * @returns A new object that is a deep copy of the input. + */ +export function deepCopy(values: object): object { + // Convert the object to a JSON string and parse it back to an object to perform a deep copy + return JSON.parse(JSON.stringify(values)); +} + +/** + * Deeply merge two JSON objects' common properties together. + * This copies all values from `source` that match properties inside `dest`, + * checking recursively for non-null nested objects. + + * If a property in `source` does not exist in `dest` or its `typeof` evaluates differently, it is skipped. + * If it is a non-array object, its properties are recursed into and checked in turn. + * All other values are copied verbatim. + * @param dest - The object to merge values into + * @param source - The object to source merged values from + * @remarks Do not use for regular objects; this is specifically made for JSON copying. + */ +export function deepMergeSpriteData(dest: object, source: object) { + for (const key of Object.keys(source)) { + if ( + !(key in dest) || + typeof source[key] !== typeof dest[key] || + Array.isArray(source[key]) !== Array.isArray(dest[key]) + ) { + continue; + } + + // Pure objects get recursed into; everything else gets overwritten + if (typeof source[key] !== "object" || source[key] === null || Array.isArray(source[key])) { + dest[key] = source[key]; + } else { + deepMergeSpriteData(dest[key], source[key]); + } + } +} diff --git a/test/abilities/cud_chew.test.ts b/test/abilities/cud_chew.test.ts new file mode 100644 index 00000000000..f99060cb744 --- /dev/null +++ b/test/abilities/cud_chew.test.ts @@ -0,0 +1,322 @@ +import { RepeatBerryNextTurnAbAttr } from "#app/data/abilities/ability"; +import Pokemon from "#app/field/pokemon"; +import { globalScene } from "#app/global-scene"; +import { getPokemonNameWithAffix } from "#app/messages"; +import { Abilities } from "#enums/abilities"; +import { BerryType } from "#enums/berry-type"; +import { Moves } from "#enums/moves"; +import { Species } from "#enums/species"; +import { Stat } from "#enums/stat"; +import GameManager from "#test/testUtils/gameManager"; +import i18next from "i18next"; +import Phaser from "phaser"; +import { afterEach, beforeAll, beforeEach, describe, expect, it, vi } from "vitest"; + +describe("Abilities - Cud Chew", () => { + let phaserGame: Phaser.Game; + let game: GameManager; + + beforeAll(() => { + phaserGame = new Phaser.Game({ + type: Phaser.HEADLESS, + }); + }); + + afterEach(() => { + game.phaseInterceptor.restoreOg(); + }); + + beforeEach(() => { + game = new GameManager(phaserGame); + game.override + .moveset([Moves.BUG_BITE, Moves.SPLASH, Moves.HYPER_VOICE, Moves.STUFF_CHEEKS]) + .startingHeldItems([{ name: "BERRY", type: BerryType.SITRUS, count: 1 }]) + .ability(Abilities.CUD_CHEW) + .battleStyle("single") + .disableCrits() + .enemySpecies(Species.MAGIKARP) + .enemyAbility(Abilities.BALL_FETCH) + .enemyMoveset(Moves.SPLASH); + }); + + describe("tracks berries eaten", () => { + it("stores inside summonData at end of turn", async () => { + await game.classicMode.startBattle([Species.FARIGIRAF]); + + const farigiraf = game.scene.getPlayerPokemon()!; + farigiraf.hp = 1; // needed to allow sitrus procs + + game.move.select(Moves.SPLASH); + await game.phaseInterceptor.to("BerryPhase"); + + // berries tracked in turnData; not moved to battleData yet + expect(farigiraf.summonData.berriesEatenLast).toEqual([]); + expect(farigiraf.turnData.berriesEaten).toEqual([BerryType.SITRUS]); + + await game.phaseInterceptor.to("TurnEndPhase"); + + // berries stored in battleData; not yet cleared from turnData + expect(farigiraf.summonData.berriesEatenLast).toEqual([BerryType.SITRUS]); + expect(farigiraf.turnData.berriesEaten).toEqual([BerryType.SITRUS]); + + await game.toNextTurn(); + + // turnData cleared on turn start + expect(farigiraf.summonData.berriesEatenLast).toEqual([BerryType.SITRUS]); + expect(farigiraf.turnData.berriesEaten).toEqual([]); + }); + + it("shows ability popup for eating berry, even if berry is useless", async () => { + const abDisplaySpy = vi.spyOn(globalScene, "queueAbilityDisplay"); + game.override.enemyMoveset([Moves.SPLASH, Moves.HEAL_PULSE]); + await game.classicMode.startBattle([Species.FARIGIRAF]); + + const farigiraf = game.scene.getPlayerPokemon()!; + // Dip below half to eat berry + farigiraf.hp = farigiraf.getMaxHp() / 2 - 1; + + game.move.select(Moves.SPLASH); + await game.forceEnemyMove(Moves.SPLASH); + await game.phaseInterceptor.to("TurnEndPhase"); + + // doesn't trigger since cud chew hasn't eaten berry yet + expect(farigiraf.summonData.berriesEatenLast).toContain(BerryType.SITRUS); + expect(abDisplaySpy).not.toHaveBeenCalledWith(farigiraf); + await game.toNextTurn(); + + // get heal pulsed back to full before the cud chew proc + game.move.select(Moves.SPLASH); + await game.forceEnemyMove(Moves.HEAL_PULSE); + await game.phaseInterceptor.to("TurnEndPhase"); + + // globalScene.queueAbilityDisplay should be called twice: + // once to show cud chew text before regurgitating berries, + // once to hide ability text after finishing. + expect(abDisplaySpy).toBeCalledTimes(2); + expect(abDisplaySpy.mock.calls[0][0]).toBe(farigiraf); + expect(abDisplaySpy.mock.calls[0][2]).toBe(true); + expect(abDisplaySpy.mock.calls[1][0]).toBe(farigiraf); + expect(abDisplaySpy.mock.calls[1][2]).toBe(false); + + // should display messgae + expect(game.textInterceptor.getLatestMessage()).toBe( + i18next.t("battle:hpIsFull", { + pokemonName: getPokemonNameWithAffix(farigiraf), + }), + ); + + // not called again at turn end + expect(abDisplaySpy).toBeCalledTimes(2); + }); + + it("can store multiple berries across 2 turns with teatime", async () => { + // always eat first berry for stuff cheeks & company + vi.spyOn(Pokemon.prototype, "randSeedInt").mockReturnValue(0); + game.override + .startingHeldItems([ + { name: "BERRY", type: BerryType.PETAYA, count: 3 }, + { name: "BERRY", type: BerryType.LIECHI, count: 3 }, + ]) + .enemyMoveset(Moves.TEATIME); + await game.classicMode.startBattle([Species.FARIGIRAF]); + + const farigiraf = game.scene.getPlayerPokemon()!; + farigiraf.hp = 1; // needed to allow berry procs + + game.move.select(Moves.STUFF_CHEEKS); + await game.toNextTurn(); + + // Ate 2 petayas from moves + 1 of each at turn end; all 4 get tallied on turn end + expect(farigiraf.summonData.berriesEatenLast).toEqual([ + BerryType.PETAYA, + BerryType.PETAYA, + BerryType.PETAYA, + BerryType.LIECHI, + ]); + expect(farigiraf.turnData.berriesEaten).toEqual([]); + + game.move.select(Moves.SPLASH); + await game.toNextTurn(); + + // previous berries eaten and deleted from summon data as remaining eaten berries move to replace them + expect(farigiraf.summonData.berriesEatenLast).toEqual([BerryType.LIECHI, BerryType.LIECHI]); + expect(farigiraf.turnData.berriesEaten).toEqual([]); + expect(farigiraf.getStatStage(Stat.SPATK)).toBe(6); // 3+0+3 + expect(farigiraf.getStatStage(Stat.ATK)).toBe(4); // 1+2+1 + }); + + it("should reset both arrays on switch", async () => { + await game.classicMode.startBattle([Species.FARIGIRAF, Species.GIRAFARIG]); + + const farigiraf = game.scene.getPlayerPokemon()!; + farigiraf.hp = 1; + + // eat berry turn 1, switch out turn 2 + game.move.select(Moves.SPLASH); + await game.toNextTurn(); + + const turn1Hp = farigiraf.hp; + game.doSwitchPokemon(1); + await game.toNextTurn(); + + // summonData got cleared due to switch, turnData got cleared due to turn end + expect(farigiraf.summonData.berriesEatenLast).toEqual([]); + expect(farigiraf.turnData.berriesEaten).toEqual([]); + expect(farigiraf.hp).toEqual(turn1Hp); + + game.doSwitchPokemon(1); + await game.toNextTurn(); + + // TurnData gets cleared while switching in + expect(farigiraf.summonData.berriesEatenLast).toEqual([]); + expect(farigiraf.turnData.berriesEaten).toEqual([]); + expect(farigiraf.hp).toEqual(turn1Hp); + }); + + it("clears array if disabled", async () => { + game.override.enemyAbility(Abilities.NEUTRALIZING_GAS); + await game.classicMode.startBattle([Species.FARIGIRAF]); + + const farigiraf = game.scene.getPlayerPokemon()!; + farigiraf.hp = 1; + + game.move.select(Moves.SPLASH); + await game.phaseInterceptor.to("BerryPhase"); + + expect(farigiraf.summonData.berriesEatenLast).toEqual([]); + expect(farigiraf.turnData.berriesEaten).toEqual([BerryType.SITRUS]); + + await game.toNextTurn(); + + // both arrays empty since neut gas disabled both the mid-turn and post-turn effects + expect(farigiraf.summonData.berriesEatenLast).toEqual([]); + expect(farigiraf.turnData.berriesEaten).toEqual([]); + }); + }); + + describe("regurgiates berries", () => { + it("re-triggers effects on eater without pushing to array", async () => { + const apply = vi.spyOn(RepeatBerryNextTurnAbAttr.prototype, "apply"); + await game.classicMode.startBattle([Species.FARIGIRAF]); + + const farigiraf = game.scene.getPlayerPokemon()!; + farigiraf.hp = 1; + + game.move.select(Moves.SPLASH); + await game.toNextTurn(); + + // ate 1 sitrus the turn prior, spitball pending + expect(farigiraf.summonData.berriesEatenLast).toEqual([BerryType.SITRUS]); + expect(farigiraf.turnData.berriesEaten).toEqual([]); + expect(apply.mock.lastCall).toBeUndefined(); + + const turn1Hp = farigiraf.hp; + + game.move.select(Moves.SPLASH); + await game.phaseInterceptor.to("TurnEndPhase"); + + // healed back up to half without adding any more to array + expect(farigiraf.hp).toBeGreaterThan(turn1Hp); + expect(farigiraf.summonData.berriesEatenLast).toEqual([]); + expect(farigiraf.turnData.berriesEaten).toEqual([]); + }); + + it("bypasses unnerve", async () => { + game.override.enemyAbility(Abilities.UNNERVE); + await game.classicMode.startBattle([Species.FARIGIRAF]); + + const farigiraf = game.scene.getPlayerPokemon()!; + farigiraf.hp = 1; + + game.move.select(Moves.SPLASH); + await game.toNextTurn(); + game.move.select(Moves.SPLASH); + await game.phaseInterceptor.to("TurnEndPhase"); + + // Turn end proc set the berriesEatenLast array back to being empty + expect(farigiraf.summonData.berriesEatenLast).toEqual([]); + expect(farigiraf.turnData.berriesEaten).toEqual([]); + expect(farigiraf.hp).toBeGreaterThanOrEqual(farigiraf.hp / 2); + }); + + it("doesn't trigger on non-eating removal", async () => { + game.override.enemyMoveset(Moves.INCINERATE); + await game.classicMode.startBattle([Species.FARIGIRAF]); + + const farigiraf = game.scene.getPlayerPokemon()!; + farigiraf.hp = farigiraf.getMaxHp() / 4; + + game.move.select(Moves.SPLASH); + await game.toNextTurn(); + + // no berries eaten due to getting cooked + expect(farigiraf.summonData.berriesEatenLast).toEqual([]); + expect(farigiraf.turnData.berriesEaten).toEqual([]); + expect(farigiraf.hp).toBeLessThan(farigiraf.getMaxHp() / 4); + }); + + it("works with pluck", async () => { + game.override + .enemySpecies(Species.BLAZIKEN) + .enemyHeldItems([{ name: "BERRY", type: BerryType.PETAYA, count: 1 }]) + .startingHeldItems([]); + await game.classicMode.startBattle([Species.FARIGIRAF]); + + const farigiraf = game.scene.getPlayerPokemon()!; + + game.move.select(Moves.BUG_BITE); + await game.toNextTurn(); + + game.move.select(Moves.SPLASH); + await game.toNextTurn(); + + // berry effect triggered twice - once for bug bite, once for cud chew + expect(farigiraf.getStatStage(Stat.SPATK)).toBe(2); + }); + + it("works with Ripen", async () => { + game.override.passiveAbility(Abilities.RIPEN); + await game.classicMode.startBattle([Species.FARIGIRAF]); + + const farigiraf = game.scene.getPlayerPokemon()!; + farigiraf.hp = 1; + + game.move.select(Moves.SPLASH); + await game.toNextTurn(); + game.move.select(Moves.SPLASH); + await game.toNextTurn(); + + // Rounding errors only ever cost a maximum of 4 hp + expect(farigiraf.getInverseHp()).toBeLessThanOrEqual(3); + }); + + it("is preserved on reload/wave clear", async () => { + game.override.enemyLevel(1); + await game.classicMode.startBattle([Species.FARIGIRAF]); + + const farigiraf = game.scene.getPlayerPokemon()!; + farigiraf.hp = 1; + + game.move.select(Moves.HYPER_VOICE); + await game.toNextWave(); + + // berry went yummy yummy in big fat giraffe tummy + expect(farigiraf.summonData.berriesEatenLast).toEqual([BerryType.SITRUS]); + expect(farigiraf.hp).toBeGreaterThan(1); + + // reload and the berry should still be there + await game.reload.reloadSession(); + + const farigirafReloaded = game.scene.getPlayerPokemon()!; + expect(farigirafReloaded.summonData.berriesEatenLast).toEqual([BerryType.SITRUS]); + + const wave1Hp = farigirafReloaded.hp; + + // blow up next wave and we should proc the repeat eating + game.move.select(Moves.HYPER_VOICE); + await game.toNextWave(); + + expect(farigirafReloaded.hp).toBeGreaterThan(wave1Hp); + }); + }); +}); diff --git a/test/abilities/galvanize.test.ts b/test/abilities/galvanize.test.ts deleted file mode 100644 index 5db8b642197..00000000000 --- a/test/abilities/galvanize.test.ts +++ /dev/null @@ -1,131 +0,0 @@ -import { BattlerIndex } from "#app/battle"; -import { allMoves } from "#app/data/moves/move"; -import { PokemonType } from "#enums/pokemon-type"; -import { Abilities } from "#app/enums/abilities"; -import { Moves } from "#app/enums/moves"; -import { Species } from "#app/enums/species"; -import GameManager from "#test/testUtils/gameManager"; -import Phaser from "phaser"; -import { afterEach, beforeAll, beforeEach, describe, expect, it, vi } from "vitest"; - -describe("Abilities - Galvanize", () => { - let phaserGame: Phaser.Game; - let game: GameManager; - - beforeAll(() => { - phaserGame = new Phaser.Game({ - type: Phaser.HEADLESS, - }); - }); - - afterEach(() => { - game.phaseInterceptor.restoreOg(); - }); - - beforeEach(() => { - game = new GameManager(phaserGame); - - game.override - .battleStyle("single") - .startingLevel(100) - .ability(Abilities.GALVANIZE) - .moveset([Moves.TACKLE, Moves.REVELATION_DANCE, Moves.FURY_SWIPES]) - .enemySpecies(Species.DUSCLOPS) - .enemyAbility(Abilities.BALL_FETCH) - .enemyMoveset(Moves.SPLASH) - .enemyLevel(100); - }); - - it("should change Normal-type attacks to Electric type and boost their power", async () => { - await game.classicMode.startBattle(); - - const playerPokemon = game.scene.getPlayerPokemon()!; - vi.spyOn(playerPokemon, "getMoveType"); - - const enemyPokemon = game.scene.getEnemyPokemon()!; - const spy = vi.spyOn(enemyPokemon, "getMoveEffectiveness"); - - const move = allMoves[Moves.TACKLE]; - vi.spyOn(move, "calculateBattlePower"); - - game.move.select(Moves.TACKLE); - - await game.phaseInterceptor.to("BerryPhase", false); - - expect(playerPokemon.getMoveType).toHaveLastReturnedWith(PokemonType.ELECTRIC); - expect(spy).toHaveReturnedWith(1); - expect(move.calculateBattlePower).toHaveReturnedWith(48); - expect(enemyPokemon.hp).toBeLessThan(enemyPokemon.getMaxHp()); - - spy.mockRestore(); - }); - - it("should cause Normal-type attacks to activate Volt Absorb", async () => { - game.override.enemyAbility(Abilities.VOLT_ABSORB); - - await game.classicMode.startBattle(); - - const playerPokemon = game.scene.getPlayerPokemon()!; - vi.spyOn(playerPokemon, "getMoveType"); - - const enemyPokemon = game.scene.getEnemyPokemon()!; - const spy = vi.spyOn(enemyPokemon, "getMoveEffectiveness"); - - enemyPokemon.hp = Math.floor(enemyPokemon.getMaxHp() * 0.8); - - game.move.select(Moves.TACKLE); - - await game.phaseInterceptor.to("BerryPhase", false); - - expect(playerPokemon.getMoveType).toHaveLastReturnedWith(PokemonType.ELECTRIC); - expect(spy).toHaveReturnedWith(0); - expect(enemyPokemon.hp).toBe(enemyPokemon.getMaxHp()); - }); - - it("should not change the type of variable-type moves", async () => { - game.override.enemySpecies(Species.MIGHTYENA); - - await game.classicMode.startBattle([Species.ESPEON]); - - const playerPokemon = game.scene.getPlayerPokemon()!; - vi.spyOn(playerPokemon, "getMoveType"); - - const enemyPokemon = game.scene.getEnemyPokemon()!; - const spy = vi.spyOn(enemyPokemon, "getMoveEffectiveness"); - - game.move.select(Moves.REVELATION_DANCE); - await game.phaseInterceptor.to("BerryPhase", false); - - expect(playerPokemon.getMoveType).not.toHaveLastReturnedWith(PokemonType.ELECTRIC); - expect(spy).toHaveReturnedWith(0); - expect(enemyPokemon.hp).toBe(enemyPokemon.getMaxHp()); - }); - - it("should affect all hits of a Normal-type multi-hit move", async () => { - await game.classicMode.startBattle(); - - const playerPokemon = game.scene.getPlayerPokemon()!; - vi.spyOn(playerPokemon, "getMoveType"); - - const enemyPokemon = game.scene.getEnemyPokemon()!; - const spy = vi.spyOn(enemyPokemon, "getMoveEffectiveness"); - - game.move.select(Moves.FURY_SWIPES); - await game.setTurnOrder([BattlerIndex.PLAYER, BattlerIndex.ENEMY]); - await game.move.forceHit(); - - await game.phaseInterceptor.to("MoveEffectPhase"); - expect(playerPokemon.turnData.hitCount).toBeGreaterThan(1); - expect(enemyPokemon.hp).toBeLessThan(enemyPokemon.getMaxHp()); - - while (playerPokemon.turnData.hitsLeft > 0) { - const enemyStartingHp = enemyPokemon.hp; - await game.phaseInterceptor.to("MoveEffectPhase"); - - expect(playerPokemon.getMoveType).toHaveLastReturnedWith(PokemonType.ELECTRIC); - expect(enemyPokemon.hp).toBeLessThan(enemyStartingHp); - } - - expect(spy).not.toHaveReturnedWith(0); - }); -}); diff --git a/test/abilities/good_as_gold.test.ts b/test/abilities/good_as_gold.test.ts index 944c1d1bca1..09bdaafb11f 100644 --- a/test/abilities/good_as_gold.test.ts +++ b/test/abilities/good_as_gold.test.ts @@ -49,7 +49,7 @@ describe("Abilities - Good As Gold", () => { await game.phaseInterceptor.to("BerryPhase"); - expect(player.battleData.abilitiesApplied[0]).toBe(Abilities.GOOD_AS_GOLD); + expect(player.waveData.abilitiesApplied).toContain(Abilities.GOOD_AS_GOLD); expect(player.getStatStage(Stat.ATK)).toBe(0); }); diff --git a/test/abilities/harvest.test.ts b/test/abilities/harvest.test.ts new file mode 100644 index 00000000000..23c0ed9088c --- /dev/null +++ b/test/abilities/harvest.test.ts @@ -0,0 +1,346 @@ +import { BattlerIndex } from "#app/battle"; +import { PostTurnRestoreBerryAbAttr } from "#app/data/abilities/ability"; +import type Pokemon from "#app/field/pokemon"; +import { BerryModifier, PreserveBerryModifier } from "#app/modifier/modifier"; +import type { ModifierOverride } from "#app/modifier/modifier-type"; +import type { BooleanHolder } from "#app/utils/common"; +import { Abilities } from "#enums/abilities"; +import { BerryType } from "#enums/berry-type"; +import { Moves } from "#enums/moves"; +import { Species } from "#enums/species"; +import { Stat } from "#enums/stat"; +import { WeatherType } from "#enums/weather-type"; +import GameManager from "#test/testUtils/gameManager"; +import Phaser from "phaser"; +import { afterEach, beforeAll, beforeEach, describe, expect, it, vi } from "vitest"; + +describe("Abilities - Harvest", () => { + let phaserGame: Phaser.Game; + let game: GameManager; + + const getPlayerBerries = () => + game.scene.getModifiers(BerryModifier, true).filter(b => b.pokemonId === game.scene.getPlayerPokemon()?.id); + + /** Check whether the player's Modifiers contains the specified berries and nothing else. */ + function expectBerriesContaining(...berries: ModifierOverride[]): void { + const actualBerries: ModifierOverride[] = getPlayerBerries().map( + // only grab berry type and quantity since that's literally all we care about + b => ({ name: "BERRY", type: b.berryType, count: b.getStackCount() }), + ); + expect(actualBerries).toEqual(berries); + } + + beforeAll(() => { + phaserGame = new Phaser.Game({ + type: Phaser.HEADLESS, + }); + }); + + afterEach(() => { + game.phaseInterceptor.restoreOg(); + }); + + beforeEach(() => { + game = new GameManager(phaserGame); + game.override + .moveset([Moves.SPLASH, Moves.NATURAL_GIFT, Moves.FALSE_SWIPE, Moves.GASTRO_ACID]) + .ability(Abilities.HARVEST) + .startingLevel(100) + .battleStyle("single") + .disableCrits() + .statusActivation(false) // Since we're using nuzzle to proc both enigma and sitrus berries + .weather(WeatherType.SUNNY) // guaranteed recovery + .enemyLevel(1) + .enemySpecies(Species.MAGIKARP) + .enemyAbility(Abilities.BALL_FETCH) + .enemyMoveset([Moves.SPLASH, Moves.NUZZLE, Moves.KNOCK_OFF, Moves.INCINERATE]); + }); + + it("replenishes eaten berries", async () => { + game.override.startingHeldItems([{ name: "BERRY", type: BerryType.LUM, count: 1 }]); + await game.classicMode.startBattle([Species.FEEBAS]); + + game.move.select(Moves.SPLASH); + await game.forceEnemyMove(Moves.NUZZLE); + await game.phaseInterceptor.to("BerryPhase"); + expect(getPlayerBerries()).toHaveLength(0); + expect(game.scene.getPlayerPokemon()?.battleData.berriesEaten).toHaveLength(1); + await game.phaseInterceptor.to("TurnEndPhase"); + + expectBerriesContaining({ name: "BERRY", type: BerryType.LUM, count: 1 }); + expect(game.scene.getPlayerPokemon()?.battleData.berriesEaten).toEqual([]); + }); + + it("tracks berries eaten while disabled/not present", async () => { + // Note: this also checks for harvest not being present as neutralizing gas works by making + // the game consider all other pokemon to *not* have their respective abilities. + game.override + .startingHeldItems([ + { name: "BERRY", type: BerryType.ENIGMA, count: 2 }, + { name: "BERRY", type: BerryType.LUM, count: 2 }, + ]) + .enemyAbility(Abilities.NEUTRALIZING_GAS); + await game.classicMode.startBattle([Species.MILOTIC]); + + const milotic = game.scene.getPlayerPokemon()!; + expect(milotic).toBeDefined(); + + // Chug a few berries without harvest (should get tracked) + game.move.select(Moves.SPLASH); + await game.forceEnemyMove(Moves.NUZZLE); + await game.toNextTurn(); + + expect(milotic.battleData.berriesEaten).toEqual(expect.arrayContaining([BerryType.ENIGMA, BerryType.LUM])); + expect(getPlayerBerries()).toHaveLength(2); + + // Give ourselves harvest and disable enemy neut gas, + // but force our roll to fail so we don't accidentally recover anything + vi.spyOn(PostTurnRestoreBerryAbAttr.prototype, "canApplyPostTurn").mockReturnValueOnce(false); + game.override.ability(Abilities.HARVEST); + game.move.select(Moves.GASTRO_ACID); + await game.forceEnemyMove(Moves.NUZZLE); + + await game.toNextTurn(); + + expect(milotic.battleData.berriesEaten).toEqual( + expect.arrayContaining([BerryType.ENIGMA, BerryType.LUM, BerryType.ENIGMA, BerryType.LUM]), + ); + expect(getPlayerBerries()).toHaveLength(0); + + // proc a high roll and we _should_ get a berry back! + game.move.select(Moves.SPLASH); + await game.forceEnemyMove(Moves.SPLASH); + await game.toNextTurn(); + + expect(milotic.battleData.berriesEaten).toHaveLength(3); + expect(getPlayerBerries()).toHaveLength(1); + }); + + it("remembers berries eaten array across waves", async () => { + game.override + .startingHeldItems([{ name: "BERRY", type: BerryType.PETAYA, count: 2 }]) + .ability(Abilities.BALL_FETCH); // don't actually need harvest for this test + await game.classicMode.startBattle([Species.REGIELEKI]); + + const regieleki = game.scene.getPlayerPokemon()!; + regieleki.hp = 1; + + game.move.select(Moves.SPLASH); + await game.forceEnemyMove(Moves.SPLASH); + await game.doKillOpponents(); + await game.phaseInterceptor.to("TurnEndPhase"); + + // ate 1 berry without recovering (no harvest) + expect(regieleki.battleData.berriesEaten).toEqual([BerryType.PETAYA]); + expectBerriesContaining({ name: "BERRY", count: 1, type: BerryType.PETAYA }); + expect(regieleki.getStatStage(Stat.SPATK)).toBe(1); + + await game.toNextWave(); + + expect(regieleki.battleData.berriesEaten).toEqual([BerryType.PETAYA]); + expectBerriesContaining({ name: "BERRY", count: 1, type: BerryType.PETAYA }); + expect(regieleki.getStatStage(Stat.SPATK)).toBe(1); + }); + + it("keeps harvested berries across reloads", async () => { + game.override + .startingHeldItems([{ name: "BERRY", type: BerryType.PETAYA, count: 1 }]) + .moveset([Moves.SPLASH, Moves.EARTHQUAKE]) + .enemyMoveset([Moves.SUPER_FANG, Moves.HEAL_PULSE]) + .enemyAbility(Abilities.COMPOUND_EYES); + await game.classicMode.startBattle([Species.REGIELEKI]); + + const regieleki = game.scene.getPlayerPokemon()!; + regieleki.hp = regieleki.getMaxHp() / 4 + 1; + + game.move.select(Moves.SPLASH); + await game.forceEnemyMove(Moves.SUPER_FANG); + await game.setTurnOrder([BattlerIndex.ENEMY, BattlerIndex.PLAYER]); + await game.toNextTurn(); + + // ate 1 berry and recovered it + expect(regieleki.battleData.berriesEaten).toEqual([]); + expect(getPlayerBerries()).toEqual([expect.objectContaining({ berryType: BerryType.PETAYA, stackCount: 1 })]); + expect(game.scene.getPlayerPokemon()?.getStatStage(Stat.SPATK)).toBe(1); + + // heal up so harvest doesn't proc and kill enemy + game.move.select(Moves.EARTHQUAKE); + await game.forceEnemyMove(Moves.HEAL_PULSE); + await game.setTurnOrder([BattlerIndex.ENEMY, BattlerIndex.PLAYER]); + await game.toNextWave(); + + expectBerriesContaining({ name: "BERRY", count: 1, type: BerryType.PETAYA }); + expect(game.scene.getPlayerPokemon()?.getStatStage(Stat.SPATK)).toBe(1); + + await game.reload.reloadSession(); + + expect(regieleki.battleData.berriesEaten).toEqual([]); + expectBerriesContaining({ name: "BERRY", count: 1, type: BerryType.PETAYA }); + expect(game.scene.getPlayerPokemon()?.getStatStage(Stat.SPATK)).toBe(1); + }); + + it("cannot restore capped berries", async () => { + const initBerries: ModifierOverride[] = [ + { name: "BERRY", type: BerryType.LUM, count: 2 }, + { name: "BERRY", type: BerryType.STARF, count: 2 }, + ]; + game.override.startingHeldItems(initBerries); + await game.classicMode.startBattle([Species.FEEBAS]); + + const feebas = game.scene.getPlayerPokemon()!; + feebas.battleData.berriesEaten = [BerryType.LUM, BerryType.STARF]; + + game.move.select(Moves.SPLASH); + await game.forceEnemyMove(Moves.SPLASH); + await game.phaseInterceptor.to("BerryPhase"); + + // Force RNG roll to hit the first berry we find that matches. + // This does nothing on a success (since there'd only be a starf left to grab), + // but ensures we don't accidentally let any false positives through. + vi.spyOn(Phaser.Math.RND, "integerInRange").mockReturnValue(0); + await game.phaseInterceptor.to("TurnEndPhase"); + + // recovered a starf + expectBerriesContaining( + { name: "BERRY", type: BerryType.LUM, count: 2 }, + { name: "BERRY", type: BerryType.STARF, count: 3 }, + ); + }); + + it("does nothing if all berries are capped", async () => { + const initBerries: ModifierOverride[] = [ + { name: "BERRY", type: BerryType.LUM, count: 2 }, + { name: "BERRY", type: BerryType.STARF, count: 3 }, + ]; + game.override.startingHeldItems(initBerries); + await game.classicMode.startBattle([Species.FEEBAS]); + + const player = game.scene.getPlayerPokemon()!; + player.battleData.berriesEaten = [BerryType.LUM, BerryType.STARF]; + + game.move.select(Moves.SPLASH); + await game.forceEnemyMove(Moves.SPLASH); + await game.phaseInterceptor.to("TurnEndPhase"); + + expectBerriesContaining(...initBerries); + }); + + describe("move/ability interactions", () => { + it("cannot restore incinerated berries", async () => { + game.override.startingHeldItems([{ name: "BERRY", type: BerryType.STARF, count: 3 }]); + await game.classicMode.startBattle([Species.FEEBAS]); + + game.move.select(Moves.SPLASH); + await game.forceEnemyMove(Moves.INCINERATE); + await game.phaseInterceptor.to("TurnEndPhase"); + + expect(game.scene.getPlayerPokemon()?.battleData.berriesEaten).toEqual([]); + }); + + it("cannot restore knocked off berries", async () => { + game.override.startingHeldItems([{ name: "BERRY", type: BerryType.STARF, count: 3 }]); + await game.classicMode.startBattle([Species.FEEBAS]); + + game.move.select(Moves.SPLASH); + await game.forceEnemyMove(Moves.KNOCK_OFF); + await game.phaseInterceptor.to("TurnEndPhase"); + + expect(game.scene.getPlayerPokemon()?.battleData.berriesEaten).toEqual([]); + }); + + it("can restore berries eaten by Teatime", async () => { + const initBerries: ModifierOverride[] = [{ name: "BERRY", type: BerryType.STARF, count: 1 }]; + game.override.startingHeldItems(initBerries).enemyMoveset(Moves.TEATIME); + await game.classicMode.startBattle([Species.FEEBAS]); + + // nom nom the berr berr yay yay + game.move.select(Moves.SPLASH); + await game.phaseInterceptor.to("TurnEndPhase"); + + expect(game.scene.getPlayerPokemon()?.battleData.berriesEaten).toEqual([]); + expectBerriesContaining(...initBerries); + }); + + it("cannot restore Plucked berries for either side", async () => { + const initBerries: ModifierOverride[] = [{ name: "BERRY", type: BerryType.PETAYA, count: 1 }]; + game.override.startingHeldItems(initBerries).enemyAbility(Abilities.HARVEST).enemyMoveset(Moves.PLUCK); + await game.classicMode.startBattle([Species.FEEBAS]); + + // gobble gobble gobble + game.move.select(Moves.SPLASH); + await game.phaseInterceptor.to("BerryPhase"); + + // pluck triggers harvest for neither side + expect(game.scene.getPlayerPokemon()?.battleData.berriesEaten).toEqual([]); + expect(game.scene.getEnemyPokemon()?.battleData.berriesEaten).toEqual([]); + expect(getPlayerBerries()).toEqual([]); + }); + + it("cannot restore berries preserved via Berry Pouch", async () => { + // mock berry pouch to have a 100% success rate + vi.spyOn(PreserveBerryModifier.prototype, "apply").mockImplementation( + (_pokemon: Pokemon, doPreserve: BooleanHolder): boolean => { + doPreserve.value = false; + return true; + }, + ); + + const initBerries: ModifierOverride[] = [{ name: "BERRY", type: BerryType.PETAYA, count: 1 }]; + game.override.startingHeldItems(initBerries).startingModifier([{ name: "BERRY_POUCH", count: 1 }]); + await game.classicMode.startBattle([Species.FEEBAS]); + + game.move.select(Moves.SPLASH); + await game.phaseInterceptor.to("TurnEndPhase", false); + + // won't trigger harvest since we didn't lose the berry (it just doesn't ever add it to the array) + expect(game.scene.getPlayerPokemon()?.battleData.berriesEaten).toEqual([]); + expectBerriesContaining(...initBerries); + }); + + it("can restore stolen berries", async () => { + const initBerries: ModifierOverride[] = [{ name: "BERRY", type: BerryType.SITRUS, count: 1 }]; + game.override.enemyHeldItems(initBerries).passiveAbility(Abilities.MAGICIAN).hasPassiveAbility(true); + await game.classicMode.startBattle([Species.MEOWSCARADA]); + + // pre damage + const player = game.scene.getPlayerPokemon()!; + player.hp = 1; + + // steal a sitrus and immediately consume it + game.move.select(Moves.FALSE_SWIPE); + await game.forceEnemyMove(Moves.SPLASH); + await game.phaseInterceptor.to("BerryPhase"); + expect(player.battleData.berriesEaten).toEqual([BerryType.SITRUS]); + + await game.phaseInterceptor.to("TurnEndPhase"); + + expect(player.battleData.berriesEaten).toEqual([]); + expectBerriesContaining(...initBerries); + }); + + // TODO: Enable once fling actually works...??? + it.todo("can restore berries flung at user", async () => { + game.override.enemyHeldItems([{ name: "BERRY", type: BerryType.STARF, count: 1 }]).enemyMoveset(Moves.FLING); + await game.classicMode.startBattle([Species.FEEBAS]); + + game.move.select(Moves.SPLASH); + await game.phaseInterceptor.to("TurnEndPhase"); + + expect(game.scene.getPlayerPokemon()?.battleData.berriesEaten).toBe([]); + expect(getPlayerBerries()).toEqual([]); + }); + + // TODO: Enable once Nat Gift gets implemented...??? + it.todo("can restore berries consumed via Natural Gift", async () => { + const initBerries: ModifierOverride[] = [{ name: "BERRY", type: BerryType.STARF, count: 1 }]; + game.override.startingHeldItems(initBerries); + await game.classicMode.startBattle([Species.FEEBAS]); + + game.move.select(Moves.NATURAL_GIFT); + await game.phaseInterceptor.to("TurnEndPhase"); + + expect(game.scene.getPlayerPokemon()?.battleData.berriesEaten).toHaveLength(0); + expectBerriesContaining(...initBerries); + }); + }); +}); diff --git a/test/abilities/illusion.test.ts b/test/abilities/illusion.test.ts index c743a59ef00..8aae433b6c0 100644 --- a/test/abilities/illusion.test.ts +++ b/test/abilities/illusion.test.ts @@ -23,60 +23,74 @@ describe("Abilities - Illusion", () => { beforeEach(() => { game = new GameManager(phaserGame); - game.override.battleStyle("single"); - game.override.enemySpecies(Species.ZORUA); - game.override.enemyAbility(Abilities.ILLUSION); - game.override.enemyMoveset(Moves.TACKLE); - game.override.enemyHeldItems([{ name: "WIDE_LENS", count: 3 }]); - - game.override.moveset([Moves.WORRY_SEED, Moves.SOAK, Moves.TACKLE]); - game.override.startingHeldItems([{ name: "WIDE_LENS", count: 3 }]); + game.override + .battleStyle("single") + .enemySpecies(Species.ZORUA) + .enemyAbility(Abilities.ILLUSION) + .enemyMoveset(Moves.TACKLE) + .enemyHeldItems([{ name: "WIDE_LENS", count: 3 }]) + .moveset([Moves.WORRY_SEED, Moves.SOAK, Moves.TACKLE]) + .startingHeldItems([{ name: "WIDE_LENS", count: 3 }]); }); it("creates illusion at the start", async () => { - await game.classicMode.startBattle([Species.ZOROARK, Species.AXEW]); + await game.classicMode.startBattle([Species.ZOROARK, Species.FEEBAS]); const zoroark = game.scene.getPlayerPokemon()!; const zorua = game.scene.getEnemyPokemon()!; - expect(!!zoroark.summonData?.illusion).equals(true); - expect(!!zorua.summonData?.illusion).equals(true); + expect(!!zoroark.summonData.illusion).equals(true); + expect(!!zorua.summonData.illusion).equals(true); }); it("break after receiving damaging move", async () => { - await game.classicMode.startBattle([Species.AXEW]); + await game.classicMode.startBattle([Species.FEEBAS]); game.move.select(Moves.TACKLE); await game.phaseInterceptor.to("TurnEndPhase"); const zorua = game.scene.getEnemyPokemon()!; - expect(!!zorua.summonData?.illusion).equals(false); + expect(!!zorua.summonData.illusion).equals(false); expect(zorua.name).equals("Zorua"); }); it("break after getting ability changed", async () => { - await game.classicMode.startBattle([Species.AXEW]); + await game.classicMode.startBattle([Species.FEEBAS]); game.move.select(Moves.WORRY_SEED); await game.phaseInterceptor.to("TurnEndPhase"); const zorua = game.scene.getEnemyPokemon()!; - expect(!!zorua.summonData?.illusion).equals(false); + expect(!!zorua.summonData.illusion).equals(false); }); - it("break with neutralizing gas", async () => { + it("breaks with neutralizing gas", async () => { game.override.enemyAbility(Abilities.NEUTRALIZING_GAS); await game.classicMode.startBattle([Species.KOFFING]); const zorua = game.scene.getEnemyPokemon()!; - expect(!!zorua.summonData?.illusion).equals(false); + expect(!!zorua.summonData.illusion).equals(false); + }); + + it("does not activate if neutralizing gas is active", async () => { + game.override + .enemyAbility(Abilities.NEUTRALIZING_GAS) + .ability(Abilities.ILLUSION) + .moveset(Moves.SPLASH) + .enemyMoveset(Moves.SPLASH); + await game.classicMode.startBattle([Species.MAGIKARP, Species.FEEBAS, Species.MAGIKARP]); + + game.doSwitchPokemon(1); + await game.toNextTurn(); + + expect(game.scene.getPlayerPokemon()!.summonData.illusion).toBeFalsy(); }); it("causes enemy AI to consider the illusion's type instead of the actual type when considering move effectiveness", async () => { game.override.enemyMoveset([Moves.FLAMETHROWER, Moves.PSYCHIC, Moves.TACKLE]); - await game.classicMode.startBattle([Species.ZOROARK, Species.AXEW]); + await game.classicMode.startBattle([Species.ZOROARK, Species.FEEBAS]); const enemy = game.scene.getEnemyPokemon()!; const zoroark = game.scene.getPlayerPokemon()!; @@ -116,7 +130,7 @@ describe("Abilities - Illusion", () => { const zoroark = game.scene.getPlayerPokemon()!; - expect(!!zoroark.summonData?.illusion).equals(true); + expect(!!zoroark.summonData.illusion).equals(true); }); it("copies the the name, nickname, gender, shininess, and pokeball from the illusion source", async () => { diff --git a/test/abilities/infiltrator.test.ts b/test/abilities/infiltrator.test.ts index 48671e54020..1a9f802dd9c 100644 --- a/test/abilities/infiltrator.test.ts +++ b/test/abilities/infiltrator.test.ts @@ -68,7 +68,7 @@ describe("Abilities - Infiltrator", () => { const postScreenDmg = enemy.getAttackDamage({ source: player, move: allMoves[move] }).damage; expect(postScreenDmg).toBe(preScreenDmg); - expect(player.battleData.abilitiesApplied[0]).toBe(Abilities.INFILTRATOR); + expect(player.waveData.abilitiesApplied).toContain(Abilities.INFILTRATOR); }); it("should bypass the target's Safeguard", async () => { @@ -83,7 +83,7 @@ describe("Abilities - Infiltrator", () => { await game.phaseInterceptor.to("BerryPhase", false); expect(enemy.status?.effect).toBe(StatusEffect.SLEEP); - expect(player.battleData.abilitiesApplied[0]).toBe(Abilities.INFILTRATOR); + expect(player.waveData.abilitiesApplied).toContain(Abilities.INFILTRATOR); }); // TODO: fix this interaction to pass this test @@ -99,7 +99,7 @@ describe("Abilities - Infiltrator", () => { await game.phaseInterceptor.to("MoveEndPhase"); expect(enemy.getStatStage(Stat.ATK)).toBe(-1); - expect(player.battleData.abilitiesApplied[0]).toBe(Abilities.INFILTRATOR); + expect(player.waveData.abilitiesApplied).toContain(Abilities.INFILTRATOR); }); it("should bypass the target's Substitute", async () => { @@ -114,6 +114,6 @@ describe("Abilities - Infiltrator", () => { await game.phaseInterceptor.to("MoveEndPhase"); expect(enemy.getStatStage(Stat.ATK)).toBe(-1); - expect(player.battleData.abilitiesApplied[0]).toBe(Abilities.INFILTRATOR); + expect(player.waveData.abilitiesApplied).toContain(Abilities.INFILTRATOR); }); }); diff --git a/test/abilities/libero.test.ts b/test/abilities/libero.test.ts index 2e3668813c5..4adb828180e 100644 --- a/test/abilities/libero.test.ts +++ b/test/abilities/libero.test.ts @@ -67,7 +67,7 @@ describe("Abilities - Libero", () => { game.move.select(Moves.AGILITY); await game.phaseInterceptor.to(TurnEndPhase); - expect(leadPokemon.summonData.abilitiesApplied.filter(a => a === Abilities.LIBERO)).toHaveLength(1); + expect(leadPokemon.waveData.abilitiesApplied).toContain(Abilities.LIBERO); const leadPokemonType = PokemonType[leadPokemon.getTypes()[0]]; const moveType = PokemonType[allMoves[Moves.AGILITY].type]; expect(leadPokemonType).not.toBe(moveType); @@ -99,7 +99,7 @@ describe("Abilities - Libero", () => { game.move.select(Moves.WEATHER_BALL); await game.phaseInterceptor.to(TurnEndPhase); - expect(leadPokemon.summonData.abilitiesApplied).toContain(Abilities.LIBERO); + expect(leadPokemon.waveData.abilitiesApplied).toContain(Abilities.LIBERO); expect(leadPokemon.getTypes()).toHaveLength(1); const leadPokemonType = PokemonType[leadPokemon.getTypes()[0]], moveType = PokemonType[PokemonType.FIRE]; @@ -118,7 +118,7 @@ describe("Abilities - Libero", () => { game.move.select(Moves.TACKLE); await game.phaseInterceptor.to(TurnEndPhase); - expect(leadPokemon.summonData.abilitiesApplied).toContain(Abilities.LIBERO); + expect(leadPokemon.waveData.abilitiesApplied).toContain(Abilities.LIBERO); expect(leadPokemon.getTypes()).toHaveLength(1); const leadPokemonType = PokemonType[leadPokemon.getTypes()[0]], moveType = PokemonType[PokemonType.ICE]; @@ -214,7 +214,7 @@ describe("Abilities - Libero", () => { game.move.select(Moves.SPLASH); await game.phaseInterceptor.to(TurnEndPhase); - expect(leadPokemon.summonData.abilitiesApplied).not.toContain(Abilities.LIBERO); + expect(leadPokemon.waveData.abilitiesApplied).not.toContain(Abilities.LIBERO); }); test("ability is not applied if pokemon is terastallized", async () => { @@ -230,7 +230,7 @@ describe("Abilities - Libero", () => { game.move.select(Moves.SPLASH); await game.phaseInterceptor.to(TurnEndPhase); - expect(leadPokemon.summonData.abilitiesApplied).not.toContain(Abilities.LIBERO); + expect(leadPokemon.waveData.abilitiesApplied).not.toContain(Abilities.LIBERO); }); test("ability is not applied if pokemon uses struggle", async () => { @@ -244,7 +244,7 @@ describe("Abilities - Libero", () => { game.move.select(Moves.STRUGGLE); await game.phaseInterceptor.to(TurnEndPhase); - expect(leadPokemon.summonData.abilitiesApplied).not.toContain(Abilities.LIBERO); + expect(leadPokemon.waveData.abilitiesApplied).not.toContain(Abilities.LIBERO); }); test("ability is not applied if the pokemon's move fails", async () => { @@ -258,7 +258,7 @@ describe("Abilities - Libero", () => { game.move.select(Moves.BURN_UP); await game.phaseInterceptor.to(TurnEndPhase); - expect(leadPokemon.summonData.abilitiesApplied).not.toContain(Abilities.LIBERO); + expect(leadPokemon.waveData.abilitiesApplied).not.toContain(Abilities.LIBERO); }); test("ability applies correctly even if the pokemon's Trick-or-Treat fails", async () => { @@ -293,7 +293,7 @@ describe("Abilities - Libero", () => { }); function testPokemonTypeMatchesDefaultMoveType(pokemon: PlayerPokemon, move: Moves) { - expect(pokemon.summonData.abilitiesApplied).toContain(Abilities.LIBERO); + expect(pokemon.waveData.abilitiesApplied).toContain(Abilities.LIBERO); expect(pokemon.getTypes()).toHaveLength(1); const pokemonType = PokemonType[pokemon.getTypes()[0]], moveType = PokemonType[allMoves[move].type]; diff --git a/test/abilities/normal-move-type-change.test.ts b/test/abilities/normal-move-type-change.test.ts new file mode 100644 index 00000000000..50c8e04af1f --- /dev/null +++ b/test/abilities/normal-move-type-change.test.ts @@ -0,0 +1,190 @@ +import { BattlerIndex } from "#app/battle"; +import { allMoves } from "#app/data/moves/move"; +import { PokemonType } from "#enums/pokemon-type"; +import { Abilities } from "#app/enums/abilities"; +import { Moves } from "#app/enums/moves"; +import { Species } from "#app/enums/species"; +import GameManager from "#test/testUtils/gameManager"; +import Phaser from "phaser"; +import { afterEach, beforeAll, beforeEach, describe, expect, it, vi } from "vitest"; +import { TYPE_BOOST_ITEM_BOOST_PERCENT } from "#app/constants"; +import { allAbilities } from "#app/data/data-lists"; +import { MoveTypeChangeAbAttr } from "#app/data/abilities/ability"; +import { toDmgValue } from "#app/utils/common"; + +/** + * Tests for abilities that change the type of normal moves to + * a different type and boost their power + * + * Includes + * - Aerialate + * - Galvanize + * - Pixilate + * - Refrigerate + */ + +describe.each([ + { ab: Abilities.GALVANIZE, ab_name: "Galvanize", ty: PokemonType.ELECTRIC, tyName: "electric" }, + { ab: Abilities.PIXILATE, ab_name: "Pixilate", ty: PokemonType.FAIRY, tyName: "fairy" }, + { ab: Abilities.REFRIGERATE, ab_name: "Refrigerate", ty: PokemonType.ICE, tyName: "ice" }, + { ab: Abilities.AERILATE, ab_name: "Aerilate", ty: PokemonType.FLYING, tyName: "flying" }, +])("Abilities - $ab_name", ({ ab, ty, tyName }) => { + let phaserGame: Phaser.Game; + let game: GameManager; + + beforeAll(() => { + phaserGame = new Phaser.Game({ + type: Phaser.HEADLESS, + }); + }); + + afterEach(() => { + game.phaseInterceptor.restoreOg(); + }); + + beforeEach(() => { + game = new GameManager(phaserGame); + + game.override + .battleStyle("single") + .startingLevel(100) + .starterSpecies(Species.MAGIKARP) + .ability(ab) + .moveset([Moves.TACKLE, Moves.REVELATION_DANCE, Moves.FURY_SWIPES]) + .enemySpecies(Species.DUSCLOPS) + .enemyAbility(Abilities.BALL_FETCH) + .enemyMoveset(Moves.SPLASH) + .enemyLevel(100); + }); + + it(`should change Normal-type attacks to ${tyName} type and boost their power`, async () => { + await game.classicMode.startBattle(); + + const playerPokemon = game.scene.getPlayerPokemon()!; + const typeSpy = vi.spyOn(playerPokemon, "getMoveType"); + + const enemyPokemon = game.scene.getEnemyPokemon()!; + const enemySpy = vi.spyOn(enemyPokemon, "getMoveEffectiveness"); + const powerSpy = vi.spyOn(allMoves[Moves.TACKLE], "calculateBattlePower"); + + game.move.select(Moves.TACKLE); + + await game.phaseInterceptor.to("BerryPhase", false); + + expect(typeSpy).toHaveLastReturnedWith(ty); + expect(enemySpy).toHaveReturnedWith(1); + expect(powerSpy).toHaveReturnedWith(48); + expect(enemyPokemon.hp).toBeLessThan(enemyPokemon.getMaxHp()); + }); + + // Galvanize specifically would like to check for volt absorb's activation + if (ab === Abilities.GALVANIZE) { + it("should cause Normal-type attacks to activate Volt Absorb", async () => { + game.override.enemyAbility(Abilities.VOLT_ABSORB); + + await game.classicMode.startBattle(); + + const playerPokemon = game.scene.getPlayerPokemon()!; + const tySpy = vi.spyOn(playerPokemon, "getMoveType"); + + const enemyPokemon = game.scene.getEnemyPokemon()!; + const enemyEffectivenessSpy = vi.spyOn(enemyPokemon, "getMoveEffectiveness"); + + enemyPokemon.hp = Math.floor(enemyPokemon.getMaxHp() * 0.8); + + game.move.select(Moves.TACKLE); + + await game.phaseInterceptor.to("BerryPhase", false); + + expect(tySpy).toHaveLastReturnedWith(PokemonType.ELECTRIC); + expect(enemyEffectivenessSpy).toHaveReturnedWith(0); + expect(enemyPokemon.hp).toBe(enemyPokemon.getMaxHp()); + }); + } + + it.each([ + { moveName: "Revelation Dance", move: Moves.REVELATION_DANCE, expected_ty: PokemonType.WATER }, + { moveName: "Judgement", move: Moves.JUDGMENT, expected_ty: PokemonType.NORMAL }, + { moveName: "Terrain Pulse", move: Moves.TERRAIN_PULSE, expected_ty: PokemonType.NORMAL }, + { moveName: "Weather Ball", move: Moves.WEATHER_BALL, expected_ty: PokemonType.NORMAL }, + { moveName: "Multi Attack", move: Moves.MULTI_ATTACK, expected_ty: PokemonType.NORMAL }, + { moveName: "Techno Blast", move: Moves.TECHNO_BLAST, expected_ty: PokemonType.NORMAL }, + ])("should not change the type of $moveName", async ({ move, expected_ty: expectedTy }) => { + game.override + .enemySpecies(Species.MAGIKARP) + .enemyAbility(Abilities.BALL_FETCH) + .moveset([move]) + .starterSpecies(Species.MAGIKARP); + + await game.classicMode.startBattle([Species.MAGIKARP]); + + const playerPokemon = game.scene.getPlayerPokemon()!; + const tySpy = vi.spyOn(playerPokemon, "getMoveType"); + + game.move.select(move); + await game.phaseInterceptor.to("BerryPhase", false); + + expect(tySpy).toHaveLastReturnedWith(expectedTy); + }); + + it("should affect all hits of a Normal-type multi-hit move", async () => { + await game.classicMode.startBattle(); + + const playerPokemon = game.scene.getPlayerPokemon()!; + const tySpy = vi.spyOn(playerPokemon, "getMoveType"); + + const enemyPokemon = game.scene.getEnemyPokemon()!; + + game.move.select(Moves.FURY_SWIPES); + await game.setTurnOrder([BattlerIndex.PLAYER, BattlerIndex.ENEMY]); + await game.move.forceHit(); + + await game.phaseInterceptor.to("MoveEffectPhase"); + expect(playerPokemon.turnData.hitCount).toBeGreaterThan(1); + expect(enemyPokemon.hp).toBeLessThan(enemyPokemon.getMaxHp()); + + while (playerPokemon.turnData.hitsLeft > 0) { + const enemyStartingHp = enemyPokemon.hp; + await game.phaseInterceptor.to("MoveEffectPhase"); + + expect(tySpy).toHaveLastReturnedWith(ty); + expect(enemyPokemon.hp).toBeLessThan(enemyStartingHp); + } + }); + + it("should not be affected by silk scarf after changing the move's type", async () => { + game.override.startingHeldItems([{ name: "ATTACK_TYPE_BOOSTER", count: 1, type: PokemonType.NORMAL }]); + await game.classicMode.startBattle(); + + const testMoveInstance = allMoves[Moves.TACKLE]; + + // get the power boost from the ability so we can compare it to the item + // @ts-expect-error power multiplier is private + const boost = allAbilities[ab]?.getAttrs(MoveTypeChangeAbAttr)[0]?.powerMultiplier; + expect(boost, "power boost should be defined").toBeDefined(); + + const powerSpy = vi.spyOn(testMoveInstance, "calculateBattlePower"); + const typeSpy = vi.spyOn(game.scene.getPlayerPokemon()!, "getMoveType"); + game.move.select(Moves.TACKLE); + await game.phaseInterceptor.to("BerryPhase", false); + expect(typeSpy, "type was not changed").toHaveLastReturnedWith(ty); + expect(powerSpy).toHaveLastReturnedWith(toDmgValue(testMoveInstance.power * boost)); + }); + + it("should be affected by the type boosting item after changing the move's type", async () => { + game.override.startingHeldItems([{ name: "ATTACK_TYPE_BOOSTER", count: 1, type: ty }]); + await game.classicMode.startBattle(); + + // get the power boost from the ability so we can compare it to the item + // @ts-expect-error power multiplier is private + const boost = allAbilities[ab]?.getAttrs(MoveTypeChangeAbAttr)[0]?.powerMultiplier; + expect(boost, "power boost should be defined").toBeDefined(); + + const tackle = allMoves[Moves.TACKLE]; + + const spy = vi.spyOn(tackle, "calculateBattlePower"); + game.move.select(Moves.TACKLE); + await game.phaseInterceptor.to("BerryPhase", false); + expect(spy).toHaveLastReturnedWith(toDmgValue(tackle.power * boost * (1 + TYPE_BOOST_ITEM_BOOST_PERCENT / 100))); + }); +}); diff --git a/test/abilities/normalize.test.ts b/test/abilities/normalize.test.ts new file mode 100644 index 00000000000..3256f0188d1 --- /dev/null +++ b/test/abilities/normalize.test.ts @@ -0,0 +1,92 @@ +import { TYPE_BOOST_ITEM_BOOST_PERCENT } from "#app/constants"; +import { allMoves } from "#app/data/moves/move"; +import { toDmgValue } from "#app/utils/common"; +import { Abilities } from "#enums/abilities"; +import { Moves } from "#enums/moves"; +import { PokemonType } from "#enums/pokemon-type"; +import { Species } from "#enums/species"; +import GameManager from "#test/testUtils/gameManager"; +import Phaser from "phaser"; +import { afterEach, beforeAll, beforeEach, describe, expect, it, vi } from "vitest"; + +describe("Abilities - Normalize", () => { + let phaserGame: Phaser.Game; + let game: GameManager; + + beforeAll(() => { + phaserGame = new Phaser.Game({ + type: Phaser.HEADLESS, + }); + }); + + afterEach(() => { + game.phaseInterceptor.restoreOg(); + }); + + beforeEach(() => { + game = new GameManager(phaserGame); + game.override + .moveset([Moves.TACKLE]) + .ability(Abilities.NORMALIZE) + .battleStyle("single") + .disableCrits() + .enemySpecies(Species.MAGIKARP) + .enemyAbility(Abilities.BALL_FETCH) + .enemyMoveset(Moves.SPLASH); + }); + + it("should boost the power of normal type moves by 20%", async () => { + await game.classicMode.startBattle([Species.MAGIKARP]); + const powerSpy = vi.spyOn(allMoves[Moves.TACKLE], "calculateBattlePower"); + + game.move.select(Moves.TACKLE); + await game.phaseInterceptor.to("BerryPhase"); + expect(powerSpy).toHaveLastReturnedWith(toDmgValue(allMoves[Moves.TACKLE].power * 1.2)); + }); + + it("should not apply the old type boost item after changing a move's type", async () => { + game.override.startingHeldItems([{ name: "ATTACK_TYPE_BOOSTER", count: 1, type: PokemonType.GRASS }]); + game.override.moveset([Moves.LEAFAGE]); + + const powerSpy = vi.spyOn(allMoves[Moves.LEAFAGE], "calculateBattlePower"); + await game.classicMode.startBattle([Species.MAGIKARP]); + game.move.select(Moves.LEAFAGE); + await game.phaseInterceptor.to("BerryPhase"); + + // It should return with 1.2 (that is, only the power boost from the ability) + expect(powerSpy).toHaveLastReturnedWith(toDmgValue(allMoves[Moves.LEAFAGE].power * 1.2)); + }); + + it("should apply silk scarf's power boost after changing a move's type", async () => { + game.override.startingHeldItems([{ name: "ATTACK_TYPE_BOOSTER", count: 1, type: PokemonType.NORMAL }]); + game.override.moveset([Moves.LEAFAGE]); + + const powerSpy = vi.spyOn(allMoves[Moves.LEAFAGE], "calculateBattlePower"); + await game.classicMode.startBattle([Species.MAGIKARP]); + game.move.select(Moves.LEAFAGE); + await game.phaseInterceptor.to("BerryPhase"); + + // 1.2 from normalize boost, second 1.2 from + expect(powerSpy).toHaveLastReturnedWith( + toDmgValue(allMoves[Moves.LEAFAGE].power * 1.2 * (1 + TYPE_BOOST_ITEM_BOOST_PERCENT / 100)), + ); + }); + + it.each([ + { moveName: "Revelation Dance", move: Moves.REVELATION_DANCE }, + { moveName: "Judgement", move: Moves.JUDGMENT, expected_ty: PokemonType.NORMAL }, + { moveName: "Terrain Pulse", move: Moves.TERRAIN_PULSE }, + { moveName: "Weather Ball", move: Moves.WEATHER_BALL }, + { moveName: "Multi Attack", move: Moves.MULTI_ATTACK }, + { moveName: "Techno Blast", move: Moves.TECHNO_BLAST }, + { moveName: "Hidden Power", move: Moves.HIDDEN_POWER }, + ])("should not boost the power of $moveName", async ({ move }) => { + game.override.moveset([move]); + await game.classicMode.startBattle([Species.MAGIKARP]); + const powerSpy = vi.spyOn(allMoves[move], "calculateBattlePower"); + + game.move.select(move); + await game.phaseInterceptor.to("BerryPhase"); + expect(powerSpy).toHaveLastReturnedWith(allMoves[move].power); + }); +}); diff --git a/test/abilities/protean.test.ts b/test/abilities/protean.test.ts index efa6f33fe00..8f7633e1327 100644 --- a/test/abilities/protean.test.ts +++ b/test/abilities/protean.test.ts @@ -67,7 +67,7 @@ describe("Abilities - Protean", () => { game.move.select(Moves.AGILITY); await game.phaseInterceptor.to(TurnEndPhase); - expect(leadPokemon.summonData.abilitiesApplied.filter(a => a === Abilities.PROTEAN)).toHaveLength(1); + expect(leadPokemon.waveData.abilitiesApplied).toContain(Abilities.PROTEAN); const leadPokemonType = PokemonType[leadPokemon.getTypes()[0]]; const moveType = PokemonType[allMoves[Moves.AGILITY].type]; expect(leadPokemonType).not.toBe(moveType); @@ -99,7 +99,7 @@ describe("Abilities - Protean", () => { game.move.select(Moves.WEATHER_BALL); await game.phaseInterceptor.to(TurnEndPhase); - expect(leadPokemon.summonData.abilitiesApplied).toContain(Abilities.PROTEAN); + expect(leadPokemon.waveData.abilitiesApplied).toContain(Abilities.PROTEAN); expect(leadPokemon.getTypes()).toHaveLength(1); const leadPokemonType = PokemonType[leadPokemon.getTypes()[0]], moveType = PokemonType[PokemonType.FIRE]; @@ -118,7 +118,7 @@ describe("Abilities - Protean", () => { game.move.select(Moves.TACKLE); await game.phaseInterceptor.to(TurnEndPhase); - expect(leadPokemon.summonData.abilitiesApplied).toContain(Abilities.PROTEAN); + expect(leadPokemon.waveData.abilitiesApplied).toContain(Abilities.PROTEAN); expect(leadPokemon.getTypes()).toHaveLength(1); const leadPokemonType = PokemonType[leadPokemon.getTypes()[0]], moveType = PokemonType[PokemonType.ICE]; @@ -214,7 +214,7 @@ describe("Abilities - Protean", () => { game.move.select(Moves.SPLASH); await game.phaseInterceptor.to(TurnEndPhase); - expect(leadPokemon.summonData.abilitiesApplied).not.toContain(Abilities.PROTEAN); + expect(leadPokemon.waveData.abilitiesApplied).not.toContain(Abilities.PROTEAN); }); test("ability is not applied if pokemon is terastallized", async () => { @@ -230,7 +230,7 @@ describe("Abilities - Protean", () => { game.move.select(Moves.SPLASH); await game.phaseInterceptor.to(TurnEndPhase); - expect(leadPokemon.summonData.abilitiesApplied).not.toContain(Abilities.PROTEAN); + expect(leadPokemon.waveData.abilitiesApplied).not.toContain(Abilities.PROTEAN); }); test("ability is not applied if pokemon uses struggle", async () => { @@ -244,7 +244,7 @@ describe("Abilities - Protean", () => { game.move.select(Moves.STRUGGLE); await game.phaseInterceptor.to(TurnEndPhase); - expect(leadPokemon.summonData.abilitiesApplied).not.toContain(Abilities.PROTEAN); + expect(leadPokemon.waveData.abilitiesApplied).not.toContain(Abilities.PROTEAN); }); test("ability is not applied if the pokemon's move fails", async () => { @@ -258,7 +258,7 @@ describe("Abilities - Protean", () => { game.move.select(Moves.BURN_UP); await game.phaseInterceptor.to(TurnEndPhase); - expect(leadPokemon.summonData.abilitiesApplied).not.toContain(Abilities.PROTEAN); + expect(leadPokemon.waveData.abilitiesApplied).not.toContain(Abilities.PROTEAN); }); test("ability applies correctly even if the pokemon's Trick-or-Treat fails", async () => { @@ -293,7 +293,7 @@ describe("Abilities - Protean", () => { }); function testPokemonTypeMatchesDefaultMoveType(pokemon: PlayerPokemon, move: Moves) { - expect(pokemon.summonData.abilitiesApplied).toContain(Abilities.PROTEAN); + expect(pokemon.waveData.abilitiesApplied).toContain(Abilities.PROTEAN); expect(pokemon.getTypes()).toHaveLength(1); const pokemonType = PokemonType[pokemon.getTypes()[0]], moveType = PokemonType[allMoves[move].type]; diff --git a/test/abilities/quick_draw.test.ts b/test/abilities/quick_draw.test.ts index 0d3171e947e..79a29b0ce77 100644 --- a/test/abilities/quick_draw.test.ts +++ b/test/abilities/quick_draw.test.ts @@ -54,7 +54,7 @@ describe("Abilities - Quick Draw", () => { expect(pokemon.isFainted()).toBe(false); expect(enemy.isFainted()).toBe(true); - expect(pokemon.battleData.abilitiesApplied).contain(Abilities.QUICK_DRAW); + expect(pokemon.waveData.abilitiesApplied).contain(Abilities.QUICK_DRAW); }, 20000); test( @@ -76,7 +76,7 @@ describe("Abilities - Quick Draw", () => { expect(pokemon.isFainted()).toBe(true); expect(enemy.isFainted()).toBe(false); - expect(pokemon.battleData.abilitiesApplied).not.contain(Abilities.QUICK_DRAW); + expect(pokemon.waveData.abilitiesApplied).not.contain(Abilities.QUICK_DRAW); }, ); @@ -96,6 +96,6 @@ describe("Abilities - Quick Draw", () => { expect(pokemon.isFainted()).toBe(true); expect(enemy.isFainted()).toBe(false); - expect(pokemon.battleData.abilitiesApplied).contain(Abilities.QUICK_DRAW); + expect(pokemon.waveData.abilitiesApplied).contain(Abilities.QUICK_DRAW); }, 20000); }); diff --git a/test/abilities/wimp_out.test.ts b/test/abilities/wimp_out.test.ts index 463ec7587dc..f558efdb103 100644 --- a/test/abilities/wimp_out.test.ts +++ b/test/abilities/wimp_out.test.ts @@ -155,7 +155,7 @@ describe("Abilities - Wimp Out", () => { game.doSelectPartyPokemon(1); await game.phaseInterceptor.to("SwitchSummonPhase", false); - expect(wimpod.summonData.abilitiesApplied).not.toContain(Abilities.WIMP_OUT); + expect(wimpod.waveData.abilitiesApplied).not.toContain(Abilities.WIMP_OUT); await game.phaseInterceptor.to("TurnEndPhase"); diff --git a/test/battle/inverse_battle.test.ts b/test/battle/inverse_battle.test.ts index f8afa3518a9..799442bb603 100644 --- a/test/battle/inverse_battle.test.ts +++ b/test/battle/inverse_battle.test.ts @@ -179,12 +179,12 @@ describe("Inverse Battle", () => { expect(enemy.status?.effect).toBe(StatusEffect.PARALYSIS); }); - it("Anticipation should trigger on 2x effective moves - Anticipation against Thunderbolt", async () => { + it("Anticipation should trigger on 2x effective moves", async () => { game.override.moveset([Moves.THUNDERBOLT]).enemySpecies(Species.SANDSHREW).enemyAbility(Abilities.ANTICIPATION); await game.challengeMode.startBattle(); - expect(game.scene.getEnemyPokemon()?.summonData.abilitiesApplied[0]).toBe(Abilities.ANTICIPATION); + expect(game.scene.getEnemyPokemon()?.waveData.abilitiesApplied).toContain(Abilities.ANTICIPATION); }); it("Conversion 2 should change the type to the resistive type - Conversion 2 against Dragonite", async () => { diff --git a/test/battlerTags/substitute.test.ts b/test/battlerTags/substitute.test.ts index d2df5511c0a..c2a99299716 100644 --- a/test/battlerTags/substitute.test.ts +++ b/test/battlerTags/substitute.test.ts @@ -42,7 +42,6 @@ describe("BattlerTag - SubstituteTag", () => { // simulate a Trapped tag set by another Pokemon, then expect the filter to catch it. const trapTag = new BindTag(5, 0); expect(tagFilter(trapTag)).toBeTruthy(); - return true; }) as Pokemon["findAndRemoveTags"], } as unknown as Pokemon; diff --git a/test/moves/dive.test.ts b/test/moves/dive.test.ts index f33dc69b55f..95c3349c8a6 100644 --- a/test/moves/dive.test.ts +++ b/test/moves/dive.test.ts @@ -105,7 +105,7 @@ describe("Moves - Dive", () => { await game.phaseInterceptor.to("MoveEndPhase"); expect(playerPokemon.hp).toBeLessThan(playerPokemon.getMaxHp()); - expect(enemyPokemon.battleData.abilitiesApplied[0]).toBe(Abilities.ROUGH_SKIN); + expect(enemyPokemon.waveData.abilitiesApplied).toContain(Abilities.ROUGH_SKIN); }); it("should cancel attack after Harsh Sunlight is set", async () => { diff --git a/test/moves/fake_out.test.ts b/test/moves/fake_out.test.ts index cbce16270e0..404473c8fa0 100644 --- a/test/moves/fake_out.test.ts +++ b/test/moves/fake_out.test.ts @@ -26,64 +26,71 @@ describe("Moves - Fake Out", () => { .moveset([Moves.FAKE_OUT, Moves.SPLASH]) .enemyMoveset(Moves.SPLASH) .enemyLevel(10) - .startingLevel(10) // prevent LevelUpPhase from happening + .startingLevel(1) // prevent LevelUpPhase from happening .disableCrits(); }); - it("can only be used on the first turn a pokemon is sent out in a battle", async () => { + it("should only work the first turn a pokemon is sent out in a battle", async () => { await game.classicMode.startBattle([Species.FEEBAS]); - const enemy = game.scene.getEnemyPokemon()!; + const corv = game.scene.getEnemyPokemon()!; game.move.select(Moves.FAKE_OUT); await game.toNextTurn(); - expect(enemy.hp).toBeLessThan(enemy.getMaxHp()); - const postTurnOneHp = enemy.hp; + expect(corv.hp).toBeLessThan(corv.getMaxHp()); + const postTurnOneHp = corv.hp; game.move.select(Moves.FAKE_OUT); await game.toNextTurn(); - expect(enemy.hp).toBe(postTurnOneHp); - }, 20000); + expect(corv.hp).toBe(postTurnOneHp); + }); // This is a PokeRogue buff to Fake Out - it("can be used at the start of every wave even if the pokemon wasn't recalled", async () => { + it("should succeed at the start of each new wave, even if user wasn't recalled", async () => { await game.classicMode.startBattle([Species.FEEBAS]); - const enemy = game.scene.getEnemyPokemon()!; - enemy.damageAndUpdate(enemy.getMaxHp() - 1); - + // set hp to 1 for easy knockout + game.scene.getEnemyPokemon()!.hp = 1; game.move.select(Moves.FAKE_OUT); await game.toNextWave(); game.move.select(Moves.FAKE_OUT); await game.toNextTurn(); - expect(game.scene.getEnemyPokemon()!.isFullHp()).toBe(false); - }, 20000); + const corv = game.scene.getEnemyPokemon()!; + expect(corv).toBeDefined(); + expect(corv?.hp).toBeLessThan(corv?.getMaxHp()); + }); - it("can be used again if recalled and sent back out", async () => { - game.override.startingWave(4); + // This is a PokeRogue buff to Fake Out + it("should succeed at the start of each new wave, even if user wasn't recalled", async () => { + await game.classicMode.startBattle([Species.FEEBAS]); + + // set hp to 1 for easy knockout + game.scene.getEnemyPokemon()!.hp = 1; + game.move.select(Moves.FAKE_OUT); + await game.toNextWave(); + + game.move.select(Moves.FAKE_OUT); + await game.toNextTurn(); + + const corv = game.scene.getEnemyPokemon()!; + expect(corv).toBeDefined(); + expect(corv.hp).toBeLessThan(corv.getMaxHp()); + }); + + it("should succeed if recalled and sent back out", async () => { await game.classicMode.startBattle([Species.FEEBAS, Species.MAGIKARP]); - const enemy1 = game.scene.getEnemyPokemon()!; - - game.move.select(Moves.FAKE_OUT); - await game.phaseInterceptor.to("MoveEndPhase"); - - expect(enemy1.hp).toBeLessThan(enemy1.getMaxHp()); - - await game.doKillOpponents(); - await game.toNextWave(); - game.move.select(Moves.FAKE_OUT); await game.toNextTurn(); - const enemy2 = game.scene.getEnemyPokemon()!; + const corv = game.scene.getEnemyPokemon()!; - expect(enemy2.hp).toBeLessThan(enemy2.getMaxHp()); - enemy2.hp = enemy2.getMaxHp(); + expect(corv.hp).toBeLessThan(corv.getMaxHp()); + corv.hp = corv.getMaxHp(); game.doSwitchPokemon(1); await game.toNextTurn(); @@ -94,6 +101,6 @@ describe("Moves - Fake Out", () => { game.move.select(Moves.FAKE_OUT); await game.toNextTurn(); - expect(enemy2.hp).toBeLessThan(enemy2.getMaxHp()); - }, 20000); + expect(corv.hp).toBeLessThan(corv.getMaxHp()); + }); }); diff --git a/test/moves/instruct.test.ts b/test/moves/instruct.test.ts index c5650d7bbd5..dd25db4ec90 100644 --- a/test/moves/instruct.test.ts +++ b/test/moves/instruct.test.ts @@ -228,7 +228,7 @@ describe("Moves - Instruct", () => { const amoonguss = game.scene.getPlayerPokemon()!; game.move.changeMoveset(amoonguss, Moves.SEED_BOMB); - amoonguss.battleSummonData.moveHistory = [ + amoonguss.summonData.moveHistory = [ { move: Moves.SEED_BOMB, targets: [BattlerIndex.ENEMY], @@ -301,7 +301,7 @@ describe("Moves - Instruct", () => { const player = game.scene.getPlayerPokemon()!; const enemy = game.scene.getEnemyPokemon()!; - enemy.battleSummonData.moveHistory = [ + enemy.summonData.moveHistory = [ { move: Moves.SONIC_BOOM, targets: [BattlerIndex.PLAYER], @@ -350,7 +350,7 @@ describe("Moves - Instruct", () => { await game.classicMode.startBattle([Species.LUCARIO, Species.BANETTE]); const enemyPokemon = game.scene.getEnemyPokemon()!; - enemyPokemon.battleSummonData.moveHistory = [ + enemyPokemon.summonData.moveHistory = [ { move: Moves.WHIRLWIND, targets: [BattlerIndex.PLAYER], diff --git a/test/moves/last-resort.test.ts b/test/moves/last-resort.test.ts new file mode 100644 index 00000000000..a7b462f3ca4 --- /dev/null +++ b/test/moves/last-resort.test.ts @@ -0,0 +1,166 @@ +import { BattlerIndex } from "#app/battle"; +import { MoveResult } from "#app/field/pokemon"; +import { Abilities } from "#enums/abilities"; +import { Moves } from "#enums/moves"; +import { Species } from "#enums/species"; +import GameManager from "#test/testUtils/gameManager"; +import Phaser from "phaser"; +import { afterEach, beforeAll, beforeEach, describe, expect, it } from "vitest"; + +describe("Moves - Last Resort", () => { + let phaserGame: Phaser.Game; + let game: GameManager; + + function expectLastResortFail() { + expect(game.scene.getPlayerPokemon()?.getLastXMoves()[0]).toEqual( + expect.objectContaining({ + move: Moves.LAST_RESORT, + result: MoveResult.FAIL, + }), + ); + } + beforeAll(() => { + phaserGame = new Phaser.Game({ + type: Phaser.HEADLESS, + }); + }); + + afterEach(() => { + game.phaseInterceptor.restoreOg(); + }); + + beforeEach(() => { + game = new GameManager(phaserGame); + game.override + .ability(Abilities.BALL_FETCH) + .battleStyle("single") + .disableCrits() + .enemySpecies(Species.MAGIKARP) + .enemyAbility(Abilities.BALL_FETCH) + .enemyMoveset(Moves.SPLASH); + }); + + it("should fail unless all other moves (excluding itself) has been used at least once", async () => { + game.override.moveset([Moves.LAST_RESORT, Moves.SPLASH, Moves.GROWL, Moves.GROWTH]); + await game.classicMode.startBattle([Species.BLISSEY]); + + const blissey = game.scene.getPlayerPokemon()!; + expect(blissey).toBeDefined(); + + // Last resort by itself + game.move.select(Moves.LAST_RESORT); + await game.phaseInterceptor.to("TurnEndPhase"); + expectLastResortFail(); + + // Splash (1/3) + blissey.pushMoveHistory({ move: Moves.SPLASH, targets: [BattlerIndex.PLAYER] }); + game.move.select(Moves.LAST_RESORT); + await game.phaseInterceptor.to("TurnEndPhase"); + expectLastResortFail(); + + // Growl (2/3) + blissey.pushMoveHistory({ move: Moves.GROWL, targets: [BattlerIndex.ENEMY] }); + game.move.select(Moves.LAST_RESORT); + await game.phaseInterceptor.to("TurnEndPhase"); + expectLastResortFail(); // Were last resort itself counted, it would error here + + // Growth (3/3) + blissey.pushMoveHistory({ move: Moves.GROWTH, targets: [BattlerIndex.PLAYER] }); + game.move.select(Moves.LAST_RESORT); + await game.phaseInterceptor.to("TurnEndPhase"); + expect(game.scene.getPlayerPokemon()?.getLastXMoves()[0]).toEqual( + expect.objectContaining({ + move: Moves.LAST_RESORT, + result: MoveResult.SUCCESS, + }), + ); + }); + + it("should disregard virtually invoked moves", async () => { + game.override + .moveset([Moves.LAST_RESORT, Moves.SWORDS_DANCE, Moves.ABSORB, Moves.MIRROR_MOVE]) + .enemyMoveset([Moves.SWORDS_DANCE, Moves.ABSORB]) + .ability(Abilities.DANCER) + .enemySpecies(Species.ABOMASNOW); // magikarp has 50% chance to be okho'd on absorb crit + await game.classicMode.startBattle([Species.BLISSEY]); + + // use mirror move normally to trigger absorb virtually + game.move.select(Moves.MIRROR_MOVE); + await game.forceEnemyMove(Moves.ABSORB); + await game.toNextTurn(); + + game.move.select(Moves.LAST_RESORT); + await game.forceEnemyMove(Moves.SWORDS_DANCE); // goes first to proc dancer ahead of time + await game.setTurnOrder([BattlerIndex.ENEMY, BattlerIndex.PLAYER]); + await game.phaseInterceptor.to("TurnEndPhase"); + expectLastResortFail(); + }); + + it("should fail if no other moves in moveset", async () => { + game.override.moveset(Moves.LAST_RESORT); + await game.classicMode.startBattle([Species.BLISSEY]); + + game.move.select(Moves.LAST_RESORT); + await game.phaseInterceptor.to("TurnEndPhase"); + + expectLastResortFail(); + }); + + it("should work if invoked virtually when all other moves have been used", async () => { + game.override.moveset([Moves.LAST_RESORT, Moves.SLEEP_TALK]).ability(Abilities.COMATOSE); + await game.classicMode.startBattle([Species.KOMALA]); + + game.move.select(Moves.SLEEP_TALK); + await game.phaseInterceptor.to("TurnEndPhase"); + + expect(game.scene.getPlayerPokemon()?.getLastXMoves(-1)).toEqual([ + expect.objectContaining({ + move: Moves.LAST_RESORT, + result: MoveResult.SUCCESS, + virtual: true, + }), + expect.objectContaining({ + move: Moves.SLEEP_TALK, + result: MoveResult.SUCCESS, + }), + ]); + }); + + it("should preserve usability status on reload", async () => { + game.override.moveset([Moves.LAST_RESORT, Moves.SPLASH]).ability(Abilities.COMATOSE); + await game.classicMode.startBattle([Species.BLISSEY]); + + game.move.select(Moves.SPLASH); + await game.doKillOpponents(); + await game.toNextWave(); + + const oldMoveHistory = game.scene.getPlayerPokemon()?.summonData.moveHistory; + await game.reload.reloadSession(); + + const newMoveHistory = game.scene.getPlayerPokemon()?.summonData.moveHistory; + expect(oldMoveHistory).toEqual(newMoveHistory); + + // use last resort and it should kill the karp just fine + game.move.select(Moves.LAST_RESORT); + game.scene.getEnemyPokemon()!.hp = 1; + await game.phaseInterceptor.to("TurnEndPhase"); + + expect(game.isVictory()).toBe(true); + }); + + it("should fail if used while not in moveset", async () => { + game.override.moveset(Moves.MIRROR_MOVE).enemyMoveset([Moves.ABSORB, Moves.LAST_RESORT]); + await game.classicMode.startBattle([Species.BLISSEY]); + + // ensure enemy last resort succeeds + game.move.select(Moves.MIRROR_MOVE); + await game.forceEnemyMove(Moves.ABSORB); + await game.phaseInterceptor.to("TurnEndPhase"); + game.move.select(Moves.MIRROR_MOVE); + await game.forceEnemyMove(Moves.LAST_RESORT); + await game.setTurnOrder([BattlerIndex.ENEMY, BattlerIndex.PLAYER]); + await game.phaseInterceptor.to("TurnEndPhase"); + + expectLastResortFail(); + }); +}); diff --git a/test/moves/order_up.test.ts b/test/moves/order_up.test.ts index 701d0489c25..b5df5bfba41 100644 --- a/test/moves/order_up.test.ts +++ b/test/moves/order_up.test.ts @@ -65,4 +65,23 @@ describe("Moves - Order Up", () => { affectedStats.forEach(st => expect(dondozo.getStatStage(st)).toBe(st === stat ? 3 : 2)); }, ); + + it("should be boosted by Sheer Force while still applying a stat boost", async () => { + game.override.passiveAbility(Abilities.SHEER_FORCE).starterForms({ [Species.TATSUGIRI]: 0 }); + + await game.classicMode.startBattle([Species.TATSUGIRI, Species.DONDOZO]); + + const [tatsugiri, dondozo] = game.scene.getPlayerField(); + + expect(game.scene.triggerPokemonBattleAnim).toHaveBeenLastCalledWith(tatsugiri, PokemonAnimType.COMMANDER_APPLY); + expect(dondozo.getTag(BattlerTagType.COMMANDED)).toBeDefined(); + + game.move.select(Moves.ORDER_UP, 1, BattlerIndex.ENEMY); + expect(game.scene.currentBattle.turnCommands[0]?.skip).toBeTruthy(); + + await game.phaseInterceptor.to("BerryPhase", false); + + expect(dondozo.waveData.abilitiesApplied.has(Abilities.SHEER_FORCE)).toBeTruthy(); + expect(dondozo.getStatStage(Stat.ATK)).toBe(3); + }); }); diff --git a/test/moves/powder.test.ts b/test/moves/powder.test.ts index 6f7a6add054..457beb60f91 100644 --- a/test/moves/powder.test.ts +++ b/test/moves/powder.test.ts @@ -146,7 +146,7 @@ describe("Moves - Powder", () => { await game.phaseInterceptor.to(BerryPhase, false); expect(enemyPokemon.getLastXMoves()[0].result).toBe(MoveResult.FAIL); expect(enemyPokemon.hp).toBeLessThan(enemyPokemon.getMaxHp()); - expect(enemyPokemon.summonData?.types).not.toBe(PokemonType.FIRE); + expect(enemyPokemon.summonData.types).not.toBe(PokemonType.FIRE); }); it("should cancel Fire-type moves generated by the target's Dancer ability", async () => { diff --git a/test/moves/rage_fist.test.ts b/test/moves/rage_fist.test.ts index 687d805da78..f215c5955c6 100644 --- a/test/moves/rage_fist.test.ts +++ b/test/moves/rage_fist.test.ts @@ -7,6 +7,7 @@ import type Move from "#app/data/moves/move"; import GameManager from "#test/testUtils/gameManager"; import Phaser from "phaser"; import { afterEach, beforeAll, beforeEach, describe, expect, it, vi } from "vitest"; +import { BattleType } from "#enums/battle-type"; describe("Moves - Rage Fist", () => { let phaserGame: Phaser.Game; @@ -28,19 +29,18 @@ describe("Moves - Rage Fist", () => { game = new GameManager(phaserGame); game.override .battleStyle("single") - .moveset([Moves.RAGE_FIST, Moves.SPLASH, Moves.SUBSTITUTE]) + .moveset([Moves.RAGE_FIST, Moves.SPLASH, Moves.SUBSTITUTE, Moves.TIDY_UP]) .startingLevel(100) .enemyLevel(1) + .enemySpecies(Species.MAGIKARP) .enemyAbility(Abilities.BALL_FETCH) .enemyMoveset(Moves.DOUBLE_KICK); vi.spyOn(move, "calculateBattlePower"); }); - it("should have 100 more power if hit twice before calling Rage Fist", async () => { - game.override.enemySpecies(Species.MAGIKARP); - - await game.classicMode.startBattle([Species.MAGIKARP]); + it("should gain power per hit taken", async () => { + await game.classicMode.startBattle([Species.FEEBAS]); game.move.select(Moves.RAGE_FIST); await game.setTurnOrder([BattlerIndex.ENEMY, BattlerIndex.PLAYER]); @@ -49,51 +49,95 @@ describe("Moves - Rage Fist", () => { expect(move.calculateBattlePower).toHaveLastReturnedWith(150); }); - it("should maintain its power during next battle if it is within the same arena encounter", async () => { - game.override.enemySpecies(Species.MAGIKARP).startingWave(1); + it("caps at 6 hits taken", async () => { + await game.classicMode.startBattle([Species.FEEBAS]); - await game.classicMode.startBattle([Species.MAGIKARP]); + // spam splash against magikarp hitting us 2 times per turn + game.move.select(Moves.SPLASH); + await game.toNextTurn(); + game.move.select(Moves.SPLASH); + await game.toNextTurn(); + game.move.select(Moves.SPLASH); + await game.toNextTurn(); + + game.move.select(Moves.RAGE_FIST); + await game.setTurnOrder([BattlerIndex.ENEMY, BattlerIndex.PLAYER]); + await game.phaseInterceptor.to("TurnEndPhase"); + + // hit 8 times, but nothing else + expect(game.scene.getPlayerPokemon()?.battleData.hitCount).toBe(8); + expect(move.calculateBattlePower).toHaveLastReturnedWith(350); + }); + + it("should not count substitute hits or confusion damage", async () => { + game.override.enemySpecies(Species.SHUCKLE).enemyMoveset([Moves.CONFUSE_RAY, Moves.DOUBLE_KICK]); + + await game.classicMode.startBattle([Species.REGIROCK]); + + game.move.select(Moves.SUBSTITUTE); + await game.forceEnemyMove(Moves.DOUBLE_KICK); + await game.setTurnOrder([BattlerIndex.PLAYER, BattlerIndex.ENEMY]); + await game.toNextTurn(); + + // no increase due to substitute + expect(game.scene.getPlayerPokemon()?.battleData.hitCount).toBe(0); + + // remove substitute and get confused + game.move.select(Moves.TIDY_UP); + await game.forceEnemyMove(Moves.CONFUSE_RAY); + await game.setTurnOrder([BattlerIndex.PLAYER, BattlerIndex.ENEMY]); + await game.toNextTurn(); + + game.move.select(Moves.RAGE_FIST); + await game.forceEnemyMove(Moves.CONFUSE_RAY); + await game.setTurnOrder([BattlerIndex.PLAYER, BattlerIndex.ENEMY]); + await game.move.forceConfusionActivation(true); + await game.toNextTurn(); + + // didn't go up from hitting ourself + expect(game.scene.getPlayerPokemon()?.battleData.hitCount).toBe(0); + }); + + it("should maintain hits recieved between wild waves", async () => { + await game.classicMode.startBattle([Species.FEEBAS]); game.move.select(Moves.RAGE_FIST); await game.setTurnOrder([BattlerIndex.ENEMY, BattlerIndex.PLAYER]); await game.toNextWave(); + expect(game.scene.getPlayerPokemon()?.battleData.hitCount).toBe(2); + game.move.select(Moves.RAGE_FIST); await game.setTurnOrder([BattlerIndex.ENEMY, BattlerIndex.PLAYER]); - await game.phaseInterceptor.to("BerryPhase", false); + await game.phaseInterceptor.to("TurnEndPhase"); + expect(game.scene.getPlayerPokemon()?.battleData.hitCount).toBe(4); expect(move.calculateBattlePower).toHaveLastReturnedWith(250); }); - it("should reset the hitRecCounter if we enter new trainer battle", async () => { - game.override.enemySpecies(Species.MAGIKARP).startingWave(4); + it("should reset hits recieved before trainer battles", async () => { + await game.classicMode.startBattle([Species.IRON_HANDS]); - await game.classicMode.startBattle([Species.MAGIKARP]); + const ironHands = game.scene.getPlayerPokemon()!; + expect(ironHands).toBeDefined(); + // beat up a magikarp game.move.select(Moves.RAGE_FIST); + await game.forceEnemyMove(Moves.DOUBLE_KICK); await game.setTurnOrder([BattlerIndex.ENEMY, BattlerIndex.PLAYER]); + await game.phaseInterceptor.to("TurnEndPhase"); + + expect(game.isVictory()).toBe(true); + expect(ironHands.battleData.hitCount).toBe(2); + expect(move.calculateBattlePower).toHaveLastReturnedWith(150); + + game.override.battleType(BattleType.TRAINER); await game.toNextWave(); - game.move.select(Moves.RAGE_FIST); - await game.setTurnOrder([BattlerIndex.ENEMY, BattlerIndex.PLAYER]); - await game.phaseInterceptor.to("BerryPhase", false); - - expect(move.calculateBattlePower).toHaveLastReturnedWith(150); + expect(ironHands.battleData.hitCount).toBe(0); }); - it("should not increase the hitCounter if Substitute is hit", async () => { - game.override.enemySpecies(Species.MAGIKARP).startingWave(4); - - await game.classicMode.startBattle([Species.MAGIKARP]); - - game.move.select(Moves.SUBSTITUTE); - await game.setTurnOrder([BattlerIndex.PLAYER, BattlerIndex.ENEMY]); - await game.phaseInterceptor.to("MoveEffectPhase"); - - expect(game.scene.getPlayerPokemon()?.customPokemonData.hitsRecCount).toBe(0); - }); - - it("should reset the hitRecCounter if we enter new biome", async () => { + it("should reset hits recieved before new biome", async () => { game.override.enemySpecies(Species.MAGIKARP).startingWave(10); await game.classicMode.startBattle([Species.MAGIKARP]); @@ -109,25 +153,50 @@ describe("Moves - Rage Fist", () => { expect(move.calculateBattlePower).toHaveLastReturnedWith(150); }); - it("should not reset the hitRecCounter if switched out", async () => { - game.override.enemySpecies(Species.MAGIKARP).startingWave(1).enemyMoveset(Moves.TACKLE); + it("should not reset if switched out or on reload", async () => { + game.override.enemyMoveset(Moves.TACKLE); + + const getPartyHitCount = () => + game.scene + .getPlayerParty() + .filter(p => !!p) + .map(m => m.battleData.hitCount); await game.classicMode.startBattle([Species.CHARIZARD, Species.BLASTOISE]); + // Charizard hit game.move.select(Moves.SPLASH); await game.setTurnOrder([BattlerIndex.ENEMY, BattlerIndex.PLAYER]); await game.toNextTurn(); + expect(getPartyHitCount()).toEqual([1, 0]); + // blastoise switched in & hit game.doSwitchPokemon(1); await game.toNextTurn(); + expect(getPartyHitCount()).toEqual([1, 1]); + // charizard switched in & hit game.doSwitchPokemon(1); await game.toNextTurn(); + expect(getPartyHitCount()).toEqual([2, 1]); + // Charizard rage fist game.move.select(Moves.RAGE_FIST); await game.phaseInterceptor.to("MoveEndPhase"); - expect(game.scene.getPlayerParty()[0].species.speciesId).toBe(Species.CHARIZARD); + const charizard = game.scene.getPlayerPokemon()!; + expect(charizard).toBeDefined(); + expect(charizard.species.speciesId).toBe(Species.CHARIZARD); + expect(move.calculateBattlePower).toHaveLastReturnedWith(150); + + // go to new wave, reload game and beat up another poor sap + await game.toNextWave(); + + await game.reload.reloadSession(); + + // outsped and oneshot means power rmains same as prior + game.move.select(Moves.RAGE_FIST); + await game.phaseInterceptor.to("MoveEndPhase"); expect(move.calculateBattlePower).toHaveLastReturnedWith(150); }); }); diff --git a/test/moves/tera_blast.test.ts b/test/moves/tera_blast.test.ts index 8817f12b8cf..efdb75e8156 100644 --- a/test/moves/tera_blast.test.ts +++ b/test/moves/tera_blast.test.ts @@ -75,7 +75,7 @@ describe("Moves - Tera Blast", () => { await game.phaseInterceptor.to("MoveEffectPhase"); expect(moveToCheck.calculateBattlePower).toHaveReturnedWith(100); - }, 20000); + }); it("is super effective against terastallized targets if user is Stellar tera type", async () => { await game.classicMode.startBattle(); @@ -189,5 +189,33 @@ describe("Moves - Tera Blast", () => { expect(playerPokemon.getStatStage(Stat.SPATK)).toBe(-1); expect(playerPokemon.getStatStage(Stat.ATK)).toBe(-1); - }, 20000); + }); + + it.each([ + { ab: "galvanize", ty: "electric", ab_id: Abilities.GALVANIZE, ty_id: PokemonType.ELECTRIC }, + { ab: "refrigerate", ty: "ice", ab_id: Abilities.REFRIGERATE, ty_id: PokemonType.ICE }, + { ab: "pixilate", ty: "fairy", ab_id: Abilities.PIXILATE, ty_id: PokemonType.FAIRY }, + { ab: "aerilate", ty: "flying", ab_id: Abilities.AERILATE, ty_id: PokemonType.FLYING }, + ])("should be $ty type if the user has $ab", async ({ ab_id, ty_id }) => { + game.override.ability(ab_id).moveset([Moves.TERA_BLAST]).enemyAbility(Abilities.BALL_FETCH); + await game.classicMode.startBattle([Species.MAGIKARP]); + const playerPokemon = game.scene.getPlayerPokemon()!; + expect(playerPokemon.getMoveType(allMoves[Moves.TERA_BLAST])).toBe(ty_id); + }); + + it("should not be affected by normalize when the user is terastallized with tera normal", async () => { + game.override.moveset([Moves.TERA_BLAST]).ability(Abilities.NORMALIZE); + await game.classicMode.startBattle([Species.MAGIKARP]); + const playerPokemon = game.scene.getPlayerPokemon()!; + // override the tera state for the pokemon + playerPokemon.isTerastallized = true; + playerPokemon.teraType = PokemonType.NORMAL; + + const move = allMoves[Moves.TERA_BLAST]; + const powerSpy = vi.spyOn(move, "calculateBattlePower"); + + game.move.select(Moves.TERA_BLAST); + await game.phaseInterceptor.to("BerryPhase"); + expect(powerSpy).toHaveLastReturnedWith(move.power); + }); }); diff --git a/test/moves/toxic_spikes.test.ts b/test/moves/toxic_spikes.test.ts index 624db27bb92..b1fdc7f39c2 100644 --- a/test/moves/toxic_spikes.test.ts +++ b/test/moves/toxic_spikes.test.ts @@ -129,7 +129,7 @@ describe("Moves - Toxic Spikes", () => { await game.phaseInterceptor.to("BattleEndPhase"); await game.toNextWave(); - const sessionData: SessionSaveData = gameData["getSessionSaveData"](); + const sessionData: SessionSaveData = gameData.getSessionSaveData(); localStorage.setItem("sessionTestData", encrypt(JSON.stringify(sessionData), true)); const recoveredData: SessionSaveData = gameData.parseSessionData( decrypt(localStorage.getItem("sessionTestData")!, true), diff --git a/test/moves/transform.test.ts b/test/moves/transform.test.ts index 5bcb7c7ed4c..8bfe7df688b 100644 --- a/test/moves/transform.test.ts +++ b/test/moves/transform.test.ts @@ -4,7 +4,7 @@ import GameManager from "#test/testUtils/gameManager"; import { Species } from "#enums/species"; import { TurnEndPhase } from "#app/phases/turn-end-phase"; import { Moves } from "#enums/moves"; -import { Stat, BATTLE_STATS, EFFECTIVE_STATS } from "#enums/stat"; +import { Stat, EFFECTIVE_STATS } from "#enums/stat"; import { Abilities } from "#enums/abilities"; import { BattlerIndex } from "#app/battle"; @@ -49,30 +49,18 @@ describe("Moves - Transform", () => { expect(player.getAbility()).toBe(enemy.getAbility()); expect(player.getGender()).toBe(enemy.getGender()); + // copies all stats except hp expect(player.getStat(Stat.HP, false)).not.toBe(enemy.getStat(Stat.HP)); for (const s of EFFECTIVE_STATS) { expect(player.getStat(s, false)).toBe(enemy.getStat(s, false)); } - for (const s of BATTLE_STATS) { - expect(player.getStatStage(s)).toBe(enemy.getStatStage(s)); - } + expect(player.getStatStages()).toEqual(enemy.getStatStages()); - const playerMoveset = player.getMoveset(); - const enemyMoveset = enemy.getMoveset(); + // move IDs are equal + expect(player.getMoveset().map(m => m.moveId)).toEqual(enemy.getMoveset().map(m => m.moveId)); - expect(playerMoveset.length).toBe(enemyMoveset.length); - for (let i = 0; i < playerMoveset.length && i < enemyMoveset.length; i++) { - expect(playerMoveset[i]?.moveId).toBe(enemyMoveset[i]?.moveId); - } - - const playerTypes = player.getTypes(); - const enemyTypes = enemy.getTypes(); - - expect(playerTypes.length).toBe(enemyTypes.length); - for (let i = 0; i < playerTypes.length && i < enemyTypes.length; i++) { - expect(playerTypes[i]).toBe(enemyTypes[i]); - } + expect(player.getTypes()).toEqual(enemy.getTypes()); }); it("should copy in-battle overridden stats", async () => { diff --git a/test/moves/u_turn.test.ts b/test/moves/u_turn.test.ts index 68bb7fe05c1..4ceb6865be0 100644 --- a/test/moves/u_turn.test.ts +++ b/test/moves/u_turn.test.ts @@ -65,7 +65,7 @@ describe("Moves - U-turn", () => { // assert const playerPkm = game.scene.getPlayerPokemon()!; expect(playerPkm.hp).not.toEqual(playerPkm.getMaxHp()); - expect(game.scene.getEnemyPokemon()!.battleData.abilityRevealed).toBe(true); // proxy for asserting ability activated + expect(game.scene.getEnemyPokemon()!.waveData.abilityRevealed).toBe(true); // proxy for asserting ability activated expect(playerPkm.species.speciesId).toEqual(Species.RAICHU); expect(game.phaseInterceptor.log).not.toContain("SwitchSummonPhase"); }, 20000); @@ -84,7 +84,7 @@ describe("Moves - U-turn", () => { const playerPkm = game.scene.getPlayerPokemon()!; expect(playerPkm.status?.effect).toEqual(StatusEffect.POISON); expect(playerPkm.species.speciesId).toEqual(Species.RAICHU); - expect(game.scene.getEnemyPokemon()!.battleData.abilityRevealed).toBe(true); // proxy for asserting ability activated + expect(game.scene.getEnemyPokemon()!.waveData.abilityRevealed).toBe(true); // proxy for asserting ability activated expect(game.phaseInterceptor.log).not.toContain("SwitchSummonPhase"); }, 20000); diff --git a/test/mystery-encounter/encounters/absolute-avarice-encounter.test.ts b/test/mystery-encounter/encounters/absolute-avarice-encounter.test.ts index e00ce03333c..36a284880c1 100644 --- a/test/mystery-encounter/encounters/absolute-avarice-encounter.test.ts +++ b/test/mystery-encounter/encounters/absolute-avarice-encounter.test.ts @@ -23,7 +23,7 @@ import i18next from "i18next"; const namespace = "mysteryEncounters/absoluteAvarice"; const defaultParty = [Species.LAPRAS, Species.GENGAR, Species.ABRA]; -const defaultBiome = Biome.PLAINS; +const defaultBiome = Biome.TALL_GRASS; const defaultWave = 45; describe("Absolute Avarice - Mystery Encounter", () => { @@ -45,7 +45,7 @@ describe("Absolute Avarice - Mystery Encounter", () => { vi.spyOn(MysteryEncounters, "mysteryEncountersByBiome", "get").mockReturnValue( new Map([ - [Biome.PLAINS, [MysteryEncounterType.ABSOLUTE_AVARICE]], + [Biome.TALL_GRASS, [MysteryEncounterType.ABSOLUTE_AVARICE]], [Biome.VOLCANO, [MysteryEncounterType.MYSTERIOUS_CHALLENGERS]], ]), ); @@ -91,6 +91,7 @@ describe("Absolute Avarice - Mystery Encounter", () => { game.override.startingHeldItems([ { name: "BERRY", count: 2, type: BerryType.SITRUS }, { name: "BERRY", count: 3, type: BerryType.GANLON }, + { name: "BERRY", count: 2, type: BerryType.APICOT }, ]); await game.runToMysteryEncounter(); @@ -102,6 +103,7 @@ describe("Absolute Avarice - Mystery Encounter", () => { game.override.startingHeldItems([ { name: "BERRY", count: 2, type: BerryType.SITRUS }, { name: "BERRY", count: 3, type: BerryType.GANLON }, + { name: "BERRY", count: 2, type: BerryType.APICOT }, ]); await game.runToMysteryEncounter(MysteryEncounterType.ABSOLUTE_AVARICE, defaultParty); @@ -138,7 +140,7 @@ describe("Absolute Avarice - Mystery Encounter", () => { expect(enemyField[0].species.speciesId).toBe(Species.GREEDENT); const moveset = enemyField[0].moveset.map(m => m.moveId); expect(moveset?.length).toBe(4); - expect(moveset).toEqual([Moves.THRASH, Moves.BODY_PRESS, Moves.STUFF_CHEEKS, Moves.CRUNCH]); + expect(moveset).toEqual([Moves.THRASH, Moves.CRUNCH, Moves.BODY_PRESS, Moves.SLACK_OFF]); const movePhases = phaseSpy.mock.calls.filter(p => p[0] instanceof MovePhase).map(p => p[0]); expect(movePhases.length).toBe(1); diff --git a/test/mystery-encounter/encounters/bug-type-superfan-encounter.test.ts b/test/mystery-encounter/encounters/bug-type-superfan-encounter.test.ts index fc208ed7180..455a5d28194 100644 --- a/test/mystery-encounter/encounters/bug-type-superfan-encounter.test.ts +++ b/test/mystery-encounter/encounters/bug-type-superfan-encounter.test.ts @@ -118,24 +118,34 @@ const POOL_4_POKEMON = [Species.GENESECT, Species.SLITHER_WING, Species.BUZZWOLE const PHYSICAL_TUTOR_MOVES = [ Moves.MEGAHORN, - Moves.X_SCISSOR, Moves.ATTACK_ORDER, - Moves.PIN_MISSILE, + Moves.BUG_BITE, Moves.FIRST_IMPRESSION, + Moves.LUNGE ]; -const SPECIAL_TUTOR_MOVES = [Moves.SILVER_WIND, Moves.BUG_BUZZ, Moves.SIGNAL_BEAM, Moves.POLLEN_PUFF]; +const SPECIAL_TUTOR_MOVES = [ + Moves.SILVER_WIND, + Moves.SIGNAL_BEAM, + Moves.BUG_BUZZ, + Moves.POLLEN_PUFF, + Moves.STRUGGLE_BUG +]; -const STATUS_TUTOR_MOVES = [Moves.STRING_SHOT, Moves.STICKY_WEB, Moves.SILK_TRAP, Moves.RAGE_POWDER, Moves.HEAL_ORDER]; +const STATUS_TUTOR_MOVES = [ + Moves.STRING_SHOT, + Moves.DEFEND_ORDER, + Moves.RAGE_POWDER, + Moves.STICKY_WEB, + Moves.SILK_TRAP +]; const MISC_TUTOR_MOVES = [ - Moves.BUG_BITE, Moves.LEECH_LIFE, - Moves.DEFEND_ORDER, - Moves.QUIVER_DANCE, - Moves.TAIL_GLOW, - Moves.INFESTATION, Moves.U_TURN, + Moves.HEAL_ORDER, + Moves.QUIVER_DANCE, + Moves.INFESTATION, ]; describe("Bug-Type Superfan - Mystery Encounter", () => { diff --git a/test/plugins/api/pokerogue-session-savedata-api.test.ts b/test/plugins/api/pokerogue-session-savedata-api.test.ts index d4c235ac51a..4d4774f2283 100644 --- a/test/plugins/api/pokerogue-session-savedata-api.test.ts +++ b/test/plugins/api/pokerogue-session-savedata-api.test.ts @@ -57,9 +57,7 @@ describe("Pokerogue Session Savedata API", () => { it("should return false and report a warning on ERROR", async () => { server.use(http.get(`${apiBase}/savedata/session/newclear`, () => HttpResponse.error())); - const success = await sessionSavedataApi.newclear(params); - - expect(success).toBe(false); + await expect(sessionSavedataApi.newclear(params)).rejects.toThrow("Could not newclear session!"); expect(console.warn).toHaveBeenCalledWith("Could not newclear session!", expect.any(Error)); }); }); diff --git a/test/settingMenu/rebinding_setting.test.ts b/test/settingMenu/rebinding_setting.test.ts index 45c647248c4..20a1fe51484 100644 --- a/test/settingMenu/rebinding_setting.test.ts +++ b/test/settingMenu/rebinding_setting.test.ts @@ -2,7 +2,7 @@ import cfg_keyboard_qwerty from "#app/configs/inputs/cfg_keyboard_qwerty"; import { getKeyWithKeycode, getKeyWithSettingName } from "#app/configs/inputs/configHandler"; import type { InterfaceConfig } from "#app/inputs-controller"; import { SettingKeyboard } from "#app/system/settings/settings-keyboard"; -import { deepCopy } from "#app/utils/common"; +import { deepCopy } from "#app/utils/data"; import { Button } from "#enums/buttons"; import { Device } from "#enums/devices"; import { InGameManip } from "#test/settingMenu/helpers/inGameManip"; diff --git a/test/testUtils/gameManager.ts b/test/testUtils/gameManager.ts index 874d8f786b8..8dd90decf1a 100644 --- a/test/testUtils/gameManager.ts +++ b/test/testUtils/gameManager.ts @@ -310,8 +310,8 @@ export default class GameManager { /** * Emulate a player's target selection after a move is chosen, usually called automatically by {@linkcode MoveHelper.select}. * Will trigger during the next {@linkcode SelectTargetPhase} - * @param {BattlerIndex} targetIndex The index of the attack target, or `undefined` for multi-target attacks - * @param movePosition The index of the move in the pokemon's moveset array + * @param targetIndex - The {@linkcode BattlerIndex} of the attack target, or `undefined` for multi-target attacks + * @param movePosition - The 0-indexed position of the move in the pokemon's moveset array */ selectTarget(movePosition: number, targetIndex?: BattlerIndex) { this.onNextPrompt( @@ -347,7 +347,7 @@ export default class GameManager { } } - /** Emulate selecting a modifier (item) */ + /** Queue up button presses to skip taking an item on the next {@linkcode SelectModifierPhase} */ doSelectModifier() { this.onNextPrompt( "SelectModifierPhase", @@ -380,8 +380,9 @@ export default class GameManager { /** * Forces the next enemy selecting a move to use the given move in its moveset against the * given target (if applicable). - * @param moveId {@linkcode Moves} the move the enemy will use - * @param target {@linkcode BattlerIndex} the target on which the enemy will use the given move + * @param moveId - The {@linkcode Moves | move} the enemy will use + * @param target - The {@linkcode BattlerIndex} of the target against which the enemy will use the given move; + * will use normal target selection priorities if omitted. */ async forceEnemyMove(moveId: Moves, target?: BattlerIndex) { // Wait for the next EnemyCommandPhase to start @@ -421,7 +422,10 @@ export default class GameManager { await this.phaseInterceptor.to(CommandPhase); } - /** Emulate selecting a modifier (item) and transition to the next upcoming {@linkcode CommandPhase} */ + /** + * Queue up button presses to skip taking an item on the next {@linkcode SelectModifierPhase}, + * and then transition to the next {@linkcode CommandPhase}. + */ async toNextWave() { this.doSelectModifier(); @@ -439,8 +443,8 @@ export default class GameManager { } /** - * Checks if the player has won the battle. - * @returns True if the player has won, otherwise false. + * Check if the player has won the battle. + * @returns whether the player has won the battle (all opposing Pokemon have been fainted) */ isVictory() { return this.scene.currentBattle.enemyParty.every(pokemon => pokemon.isFainted()); @@ -449,7 +453,7 @@ export default class GameManager { /** * Checks if the current phase matches the target phase. * @param phaseTarget - The target phase. - * @returns True if the current phase matches the target phase, otherwise false. + * @returns Whether the current phase matches the target phase */ isCurrentPhase(phaseTarget) { const targetName = typeof phaseTarget === "string" ? phaseTarget : phaseTarget.name; @@ -458,8 +462,8 @@ export default class GameManager { /** * Checks if the current mode matches the target mode. - * @param mode - The target mode. - * @returns True if the current mode matches the target mode, otherwise false. + * @param mode - The target {@linkcode UiMode} to check. + * @returns Whether the current mode matches the target mode. */ isCurrentMode(mode: UiMode) { return this.scene.ui?.getMode() === mode; @@ -499,7 +503,7 @@ export default class GameManager { /** * Faints a player or enemy pokemon instantly by setting their HP to 0. - * @param pokemon The player/enemy pokemon being fainted + * @param pokemon - The player/enemy pokemon being fainted * @returns A promise that resolves once the fainted pokemon's FaintPhase finishes running. */ async killPokemon(pokemon: PlayerPokemon | EnemyPokemon) { @@ -512,8 +516,9 @@ export default class GameManager { } /** - * Command an in-battle switch to another Pokemon via the main battle menu. - * @param pokemonIndex the index of the pokemon in your party to switch to + * Command an in-battle switch to another {@linkcode Pokemon} via the main battle menu. + * @param pokemonIndex - The 0-indexed position of the party pokemon to switch to. + * Should never be called with 0 as that will select the currently active pokemon and freeze. */ doSwitchPokemon(pokemonIndex: number) { this.onNextPrompt("CommandPhase", UiMode.COMMAND, () => { @@ -526,7 +531,7 @@ export default class GameManager { /** * Revive pokemon, currently players only. - * @param pokemonIndex the index of the pokemon in your party to revive + * @param pokemonIndex - The 0-indexed position of the pokemon in your party to revive */ doRevivePokemon(pokemonIndex: number) { const party = this.scene.getPlayerParty(); @@ -536,13 +541,12 @@ export default class GameManager { } /** - * Select a pokemon from the party menu. Only really handles the basic cases - * of the party UI, where you just need to navigate to a party slot and press - * Action twice - navigating any menus that come up after you select a party member - * is not supported. - * @param slot the index of the pokemon in your party to switch to - * @param inPhase Which phase to expect the selection to occur in. Typically - * non-command switch actions happen in SwitchPhase. + * Select a pokemon from the party menu during the given phase. + * Only really handles the basic case of "navigate to party slot and press Action twice" - + * any menus that come up afterwards are ignored and must be handled separately by the caller. + * @param slot - The 0-indexed position of the pokemon in your party to switch to + * @param inPhase - Which phase to expect the selection to occur in. Defaults to `SwitchPhase` + * (which is where the majority of non-command switch operations occur). */ doSelectPartyPokemon(slot: number, inPhase = "SwitchPhase") { this.onNextPrompt(inPhase, UiMode.PARTY, () => { @@ -557,7 +561,7 @@ export default class GameManager { /** * Select the BALL option from the command menu, then press Action; in the BALL * menu, select a pokéball type and press Action again to throw it. - * @param ballIndex the index of the pokeball to throw + * @param ballIndex - The index of the pokeball to throw */ public doThrowPokeball(ballIndex: number) { this.onNextPrompt("CommandPhase", UiMode.COMMAND, () => { @@ -575,8 +579,8 @@ export default class GameManager { /** * Intercepts `TurnStartPhase` and mocks {@linkcode TurnStartPhase.getSpeedOrder}'s return value. * Used to manually modify Pokemon turn order. - * Note: This *DOES NOT* account for priority, only speed. - * @param {BattlerIndex[]} order The turn order to set + * Note: This *DOES NOT* account for priority. + * @param order - The turn order to set as an array of {@linkcode BattlerIndex}es. * @example * ```ts * await game.setTurnOrder([BattlerIndex.PLAYER, BattlerIndex.ENEMY, BattlerIndex.ENEMY_2, BattlerIndex.PLAYER_2]); diff --git a/test/testUtils/helpers/moveHelper.ts b/test/testUtils/helpers/moveHelper.ts index 0f3d75c6268..269cf65ea56 100644 --- a/test/testUtils/helpers/moveHelper.ts +++ b/test/testUtils/helpers/moveHelper.ts @@ -103,6 +103,17 @@ export class MoveHelper extends GameManagerHelper { vi.spyOn(Overrides, "STATUS_ACTIVATION_OVERRIDE", "get").mockReturnValue(null); } + /** + * Forces the Confusion status to activate on the next move by temporarily mocking {@linkcode Overrides.CONFUSION_ACTIVATION_OVERRIDE}, + * advancing to the next `MovePhase`, and then resetting the override to `null` + * @param activated - `true` to force the Pokemon to hit themself, `false` to forcibly disable it + */ + public async forceConfusionActivation(activated: boolean): Promise { + vi.spyOn(Overrides, "CONFUSION_ACTIVATION_OVERRIDE", "get").mockReturnValue(activated); + await this.game.phaseInterceptor.to("MovePhase"); + vi.spyOn(Overrides, "CONFUSION_ACTIVATION_OVERRIDE", "get").mockReturnValue(null); + } + /** * Changes a pokemon's moveset to the given move(s). * Used when the normal moveset override can't be used (such as when it's necessary to check or update properties of the moveset). diff --git a/test/testUtils/helpers/overridesHelper.ts b/test/testUtils/helpers/overridesHelper.ts index 6aa382ef59a..acc2e4d5cd0 100644 --- a/test/testUtils/helpers/overridesHelper.ts +++ b/test/testUtils/helpers/overridesHelper.ts @@ -522,6 +522,21 @@ export class OverridesHelper extends GameManagerHelper { return this; } + /** + * Override confusion to always or never activate + * @param activate - `true` to force activation, `false` to force no activation, `null` to disable the override + * @returns `this` + */ + public confusionActivation(activate: boolean | null): this { + vi.spyOn(Overrides, "CONFUSION_ACTIVATION_OVERRIDE", "get").mockReturnValue(activate); + if (activate !== null) { + this.log(`Confusion forced to ${activate ? "always" : "never"} activate!`); + } else { + this.log("Confusion activation override disabled!"); + } + return this; + } + /** * Override the encounter chance for a mystery encounter. * @param percentage - The encounter chance in % diff --git a/test/testUtils/helpers/reloadHelper.ts b/test/testUtils/helpers/reloadHelper.ts index 4867a146aaf..4a9e5356968 100644 --- a/test/testUtils/helpers/reloadHelper.ts +++ b/test/testUtils/helpers/reloadHelper.ts @@ -46,6 +46,16 @@ export class ReloadHelper extends GameManagerHelper { scene.unshiftPhase(titlePhase); this.game.endPhase(); // End the currently ongoing battle + // remove all persistent mods before loading + // TODO: Look into why these aren't removed before load + if (this.game.scene.modifiers.length) { + console.log( + "Removing %d modifiers from scene on load...", + this.game.scene.modifiers.length, + this.game.scene.modifiers, + ); + this.game.scene.modifiers = []; + } titlePhase.loadSaveSlot(-1); // Load the desired session data this.game.phaseInterceptor.shift(); // Loading the save slot also ended TitlePhase, clean it up @@ -73,6 +83,6 @@ export class ReloadHelper extends GameManagerHelper { } await this.game.phaseInterceptor.to(CommandPhase); - console.log("==================[New Turn]=================="); + console.log("==================[New Turn (Reloaded)]=================="); } } diff --git a/test/testUtils/saves/data_pokedex_tests_v2.prsv b/test/testUtils/saves/data_pokedex_tests_v2.prsv new file mode 100644 index 00000000000..fff658d94d5 --- /dev/null +++ b/test/testUtils/saves/data_pokedex_tests_v2.prsv @@ -0,0 +1 @@ +U2FsdGVkX180j9Ts3bYWq5D5XOToUENdHAzyrfCX8bl05ZgiJfUzjEgmGQm7peYifEe4gPrYmx0NcjanSzKYJdmoIq9s60zG1j0vXvDDW5Kp5zdkXNDo+4EpHpRIbwvIzySL8b3HaBZj+aVBsbWkN6Jqn5ScMoLShaE1d7D8Tc9pv9TIW/9Gp/Fnl7fS9hmr4ZTnDKPBwf5pxd29VtCXc/EsWUNP/0Tp70Y9GMl/luCMwCBGoSvdvBzvMkm2Lix1YCVX8ZRM+o03GZj17qta/XXAb2dMHtMIE0/9btnGbYhE52SpjTqusCjEpaRqSuG9i+615mACeqMZeM7Xc2uStny0fw07Qv1mq60ncWhKiQBkvqvRmrsMubkW8ceurvv3PlLtvjkS1Oky3qsXvvOc09zBX6I1jYzL9/GOP+kP3asvjIaZkhv2nAiUTn9p3KLDXGQ+EEeJwcoaRBMYIuRD0izj0jonwiFiXCxgXJKt/r6qqPMaokzjfztwTLhfXdYDx5/wTREEQpHD5dia0uN4R41JPIsTqecIU4T8hxdsZIWMqiavDsut5iCOPPzzAkwI/vzyae9b5A83+exbkMdZEMDnIxhKDK9WRPNwIxGfUox5myORWKj0NKCH43QD2NovlsmfXQIF4+z0t9BgFtDSk20QTYdunUj/q4PrHhQMUBO/lAobG+cqTcovyotUnRja/J72sNZ0uQ7M0LYiNkLYRDOaW84sDu0BUTzGkmFbTMxMAA3u7/vqZUHcK9CyvVf1WlFHr+YQA7ZnrFGZF7fIB4ZgE7TV+4dIlW7FOsk7ALTNtXtY+3dusEM7xN+9JJsNvKd+4RsRy+Yp8UkOaKPfsn5DA9lhtBj6wFSsuWGJvoyJyOyiD/+bqSFUDWODsK+1Gg1M1oOpqZGzj97rD/gyVsc14w7c4nHvbz7UZfS89UbfdSsEn1G78JZv6n9jlM5Dyu/7oxn/JF1bzw3nI2f+6ZhbHD7HHqTmLY5k5iIJNq/Kt093vYdh7nCveyA/bI7vUzd4Oz1ZVGUXR+EQ4Uk9ZVEg6GSkLLHut1tOcBv0XJDytLft+d9C7LN9NMQTOV5Rp2d5yqnSHV1LlDwkNewUcTehnZrsYlzVWzGASoqQjfl2eCdC+0qtOYFYxKCZh19Gg5wMepzjm+c4Ua3fO3UNtfGZi54mE8JxTvCQPHHfadMttECmQYM8jvv6FJ4RmqWJ+waM6aiVBC+i/ZrVdhiZrbn1zVU8waNunigz4U7Txk+U/JJ6uWkhYPrnbpD+OiHzbK8KtjEebblttwKJ1x+HkrbVlPcIb782WlE++FCyUeDlcvHzntXHuzQ8C3OslrfbL/VcWB/YUrLhkeQfi0o2KR5+sW5wzN7rbxLs1f2W9H9rzbQS85Q2+8YNvai4nJQ7AwYdXSwZ/tUSu5JOFp6swYuF0ybyqlm/IrrgrIafev/9bdbc2jZWhR/Wzybfl4cj+0owZXCcBkmc6p9BBLrorg8fS0vRVPcRo1h07Wsi1ywDh2+IZoNVhHf5B9+wnG4xZouKPznu2gptYbhJ8u7etkLHZ02f95YAMGuaSKm3v4WJzwxB69jHdSV85id3DEsGNNgLboL5AjXcI6gPiW46BdA2Kwlr9Nh4JPclW+/HmktT4+J03fOYb+MDIiisfOdl043XwUBG7nvM+uGl4QRtAcWWleqPLP7+vmUwvrLKwA6SuLShOQYoHsjQXYoowOHT6mnN74MVi1W2+yaa43xwynKbk9mljzc9HWmY6wNMwrIELsaTW0xKcA01FOpcVvcEK4PJdIz+AwCZMbPRrg+xDUnkQP2x+xfM+4/W8XlbsrlJYP2OMgnDkkx5xWceg9lC2Y3+JHblnCOipfWXshux4fe4RZCty0LcDbMQcTkmXbTLVC+c15ngAlSxSWoSVYmNJVKG6R53DdmVuVCQ0hH3PUlEgCjshyV7yCcTaPsgN+hp019pqT/VliHWVErX60gxxNBd8H14IT4dlUSxvMnoJK5AuN7FKqjdqHtNum00OfBv5vjuAF1Guo8PwnGkO2JjSPNnkDLLOQ1ND3oz2qlPASlclWYvmODud8kHSvX5iA3pO1KFxEfd9ks1aokz9sENOvyc0vKsoKflbyqc719UIKJxah+KQiptpkpupCjHPlJlSz7KjR6YjluOM2SE6ioEhbr8iBjqg9hfzTxpSc2+7oi5WTqOWetuz/39HBvUcTlDocxcvD4crHw7yUigCx1LS5v8zz+De4E4CCt1NOIE8Est2yaFaiQQeRfOwDOyhoa+ZsX+mOhuCGBOyykRhdlFY8AQfq3HwWnQw72UAUhAsPf1fQbzI38iUzG+TJlzMuBpIjxj7b1fGQnpGa74CDpo5eZVTGKv971pN1ZQ07cWLY+woa1K6JrNzhhvHzuKSxZTumWvN19VjD8b2bltQ3wVwe9JrtEyUcvf4bGW7OfluJ8K7TLcGy/XB8C3G2PiPAwS/vgMvm8QFcBCocXfj7vuSbo0lpCu/W8doD310l/pJfKc7b+zkhpFWDK8oBmqs499Y5XHs0EA2kfoGM1kGVZOMyPfQJFkibNumQCE0Phfe/Ph5bqFf4dwhO24i8rGkw0DwAHyuXzM2dO3w5uVUtSQkldwBgLmr2fS166o908EgblMWBqm+OTGN6z9XTrWPxqJOURrGjBRtRz5f0UbjlyeytOe/I3WMzYu3mvziKUMBX/aFL0mNqgfuyEVpoK7nNcVAjhmywKaz8nEAkCkP7XSdVcjlSpemRehNeuvMzGnZubjc38jrtr2zKi7SPGTlWHYJmmCMi4NqEq/7P1JJmHM6ExNjxMvA+8W1/Ybe9X2nJKB6wmn9eckv2RgHFbwHMlBYwmpMIDo8/sCvDCSxpPjDNgdNZdn+AIWVm0+W/Cx/72aqubthBY9FyZxq8WHSYkW9yJo6vxj1QnoTR9TIYk36oO1RqiNmElP2z80UdTyJlV0Gr5AZKdPs7KT4Vg5EVQ4YwgMehQWuGUO8vBtfquGzZZ2Wqha+lOYoBsxsXZjItyzbF44sYssoFGpj+GwqXTMgKkdWNEzK1xkzc1X1AsKBJGwBJfN5Z0tWpb19LWh+Wmvro0Ix2m/ydBeYA2Yoqa1vsQ1GfYcQoWiteBOfBHEfqgPEAQyJRhemeurOmaXrZxNy6weRtb20LLHeLMXQ2LgAQ1rWtIB83F3ciXeDfyBMVZsiAyWnZX5u5VkPOWSazSbyku4ODcGQZTND5U5Q0X8Lz9ak9vKx6JAQqmHN1uskt2QYx3Qft3zIVlaOre1LXloQ5j6b4XCtrJDNVmhPq4iwwia5yAWHQy4P5FE3Taa/rsUMBdJFtO1XhtfojcKcWNCdX98E1QvMogkFnBmpkHorpbK+XnRf2a7vWcrX509lMgqskXsfMveg1PXzUV4XP1MxVd2rF+cEgS7PcTYjzY8W1uDKrsiBOunsmguJK6/K66T7kHYqIK7JrY2Aftw5Yfi23nU4Cu4XvNveTLaKdVnN8akA+P3hj3qLo/Qs9BiuNlgBtig7YaVWeJnnmpG0yvdlTEpDFIzuw7dH0zuZ2lmifwh58r3yyp0oS49PY+CHVeP50Pe4FgFRQZUzTlLkETjPmTA5qPMKKCoKRsR0DCiehQdQ8vS0nWinNsaGckZA4uF+KHL+DyJg/DSREIGVXHaqDPo/I14jATovo9kEn9hdpppusZGImljoy4Uq+o3E16PjKDl8mlBWXflQajFPCUBb04U1+7vmHlEishl1hAMSWXdcwEK1Kon2CfG++GD3Tn1+AbgLqjlhZbb17cx+1M76+WsA/H2mxvSIdoP+utjujkuBuMiWmDDdqGM6RYG5GYtc/WVcT6Cyi7Ru9CBct9BhYFIVZtuAytvhFhxVQN97rmYaXuhZDclVWQL0a4EOiDk9m44skzBZtXk+rBsGP0d1LwOs7ADHThLDMP/Z3KEUKKhaqxGZIg3Dw+JjuBXE0kv+USy2mPfjmoPYEmbwr57gWgjIikyVYY+4NxrcJqhUmLuIA6HkjsoWKjcAY6cAPxOLLTrsD0OAxrWu9vNYoZcGyOuNrioRbj3241+7MKErXlrusjcBKi8naqDfGCOiWJLz2nJDTdRpqPu9Nb6Yb3wINpmITC08eCpNfMlhXwpw8T8K2/Sgq/uxrYOyHEUHuZ3JzE6hKDWbUsZa5xftA7Ek3UNHgltveArDQq/m5O+E6j4MJDWWsbQqcqQqJEStRNQD+8sVVK7szDP3FTHjIkcmDN6mZQ/vjdB3m1cp+vQcc20SqWbgFuAws5IZgqLzkI8n+gbYpBJn91SMg/19JxTqxfbrhlEAoRRI4pL17kiy1bJYyvQkvFlM0X0YMzBsbiswxxyCY5Gk9zb8T8qJ/LiUtS80YAkyam5/YhxLEOoTK27I9wLxTxE/67Eca82PDpZrQ9+wsYZQ5mD4HVRDGWLYIEPTppspx+Pkb5IAClfc1vsqx8MFwS1u4AvFwuy2JR9AlITI5UUC0P/6TB0qAKbWwf35c5VI1/UJiqNd69TYsOCnYVkmTsKjkUbTrzTqFKhwdL95uWhOUkFLfDFMjid7CFlGWk/AicuEaI3C8llZDjARXXLIq6ZuK51ZH3YPIFyotiVXaKYl7xKdt4wNvRTLGZSObM+g1Ls2WtcXA4LwniJ/QOpgTTG9remeOuVkl571UHjjZpEAIdT5U825+hIK8JPElZSb2Z3YScb1UZOHgZQT4OA1iGFFJoCFMTZZVYoxK70gHDpv2IEc4xhUHb9oW4n3LS4ISmWVsKOSWdciuwWL4cZqHEIvQc23DAW1cZCKIabXCexulx+RlZLio6F/72DO60mpIGKThjt8SJ0L3g4lLrFNaNjg+0M4hFfg8aLrBShGkVC30yk2B/IHZHg9LgrVEeh9b1VZ7/PcZSzKvoUD1WayQVgfTmj/lio4ilYOExYRpDzRB4hNCZGf22Mid0Tb7uBTgDyNoWOkKZa2sVuTtUHKYd1nnmKFwMUmmYRRh0OC9LpaZsRPtPCZw3pe2Ur5R3j/pU1KVOQnCsz7ygjFr14GjMQo5soliuT7V0bw1nyxtev+WYDp+kQPwkSPXynoS+OAt6OaRw+OHByRdZ8uwLg0Lshy7raUovO45+i4CBEwqGoVNG4KVaZ/LZEYpfsBB3udDNOM2aTRfTFDFoouuVHfxRAuSTlukeAR8kwF5ZFxpT0rPI0ZMJC8+KAziKJlwyhcrsFJkNh+N1npoBMvK1fbyL8kNS8hKJGbXBW9W3dY9EO+wm74RjzGYN+ecflcCHhLklQCVNwHH77nkkV5BNLbBhZt6uOXtNLpJ57FAwY0Rd2RH1mnDh/yEHJG10GM3WAwKRH88pJbghdULTqfAoxDk68XRPjoywQ4+ZzImjuLtroOih3CAzhQE62LPmUOd5zeNZtKZbjJ5igqYr497MDL27PzqZOyCYJ5OXezaaBHFziGq/CLOlf57GIoayFvtVVBCPXQKhOzdlnsCiU9rWhGiKuY2dSZ0EDVTVTB8woyof6wRh65GpL+bQCsrsTLJtKUWIBGYjr2Ag8tv+Y1mo+VyqSORfxWtlsHugqb8r/mXYVpupzbTfPRBVE2tGUxqLQYPnhUKdlp4G2Y4E4eSroXM+XOtacAruSx1Fd9S39/F2u4oEBdzlsZPqIM/EQnMGeH+bjjGyQvNRcksPC2XO7LOIvTk0gFNkRSIO7p8MN3PsONdXnDe6e8l+WKeEuntjhNvDPq4fw6rH/Hj2U7LZiCLVtxdyh1hPoCLWCYgp/S+2xQQmVKxBVW43NLksTo5CqOM4T47n0UQY108TWb1BzixU3vQ/4JJgwA5wf5uHw1dgUQYd+EJ1uwK2UpGn4O4XVYZ+3aSdZBQ0sXYy0ETVnpWCz9CKPTQ+nFmZi9SpzZ1nhRAJlfUJ9yevCSXtkIiYzW9ekBmj4FgH/sh+bvFPdsbMl2ZyOekC5YCcU4kTl0/SltQmsuSVGyrYOwG03gBnXO9E4acB94NbhfE69vUqrzkgW8+ASUW1cKEIXg8EnTvQOXAEOmTFN3YZyBtyWZb7LuJmkBFhLa51uZgvnU2+jmRxocY+F3uoZYcss2MCISKyLI2mF1guVOFCrp691dQ0lGpMYv44Cu/nrTCewmXnT6zp3deXIQCv/9ec+NpxcoD6F+51sIP6IMv3bQ3YlNJCbmYR1AOKfdj4pEZXleLm8ap0M8K3YERKrEJQq8yZpNw13lppviStis7pSU/XnJsNJERg/9aH8kVI9AYEDJckR51erEu7iOpEdyUBMZKZ2RrgeoPkSP5hG8TIz/LtH5soCOrqhsO6cDgE5HPT82P2fiQOTFOYJqfQ5cT1bq2oEOdMfWJ3UqTyreR408C4qRileIO1eMlUihquuktRjJR6B1WudKwspBswg3K7/5HNH3ObxcX+XIz62/fTe9zqDBgzhV6FDHxHBQ3sZUwaOQLIhDdxBB1uuuhM+c/S9p9op1vTQbnlIXIuGjZOcH4qcpR4/obGVfkEUL6UhO29NcLf/E5n1H7kJ61SkFbdpDBiUTFZxPJwZRegwjp3UBUpCd++jzq+IV01C6iyR9Cv9v1zIfuleONuH+wCUJLVpQjxiIFDddIkeu3cRByNEJIaa8QsRqgMPtxed01q9eT9TX6E7LuRue9PsgJAqHfGKvz4VbP0ezXQy6PMm6HkpnmR3za+sREkjOWKuH1IAjJhUHlAWluUwGpNGAGVcoUFCOtOkTL775RglLKMp7pXiwIMxITg7aQGeSqTRPXICAF29lCzt6G9dfFYPhroWvKB0jD19Y2CV09KvezK+4fdaYLplITP70tOEEM/IseCTdfktS62FrRXZqBnrNu4/3ahNl/kIquCBFt5Zot0joSshtSc4NftrtS//1s0d49OkOv1fAzqyobM0dpLFiFh9dLnkrG2+1JwUI+iFEZwHWixBgWkofcZkOinCoychiqzgu4s+Oha6NqBZ/GpyjWrR4Oz3HGuP+aQ0brz8vyhRHhR4GH1OqYmvoDUr3oS1Qgo2M+RMsagZwbFcwpyD0GbceOV1eD9l1IOD2dDdRdJFwYk6OIQkvP3qKUgWVmtBSMu7kjjJNHyNkflnjMKqJ35Lw/b/YGFCDfG9k6EkK8n/k2peIjfTEwKxK7p2DTWrM5Hz9S1CcNRFZkFCSOQaLc2Zf/jOEDWHKLpUXgBvBS7PH0EaFDzrqwhzXfruFm3oyi/ARTm3+tA6Fg+sOg/8f4cTWGgwKHdfHc5HBA9MCujNjx74UbXSqWf6Qmy32KMijvWy513zqjUVzxMjMl4BjU5SI1XwT4gYVHqZBdnaO9EW0rZ5ErvpBf3QO8itsQieHVK2sfv4GL6oJ1JKH4dyhmhGiY6jBPwGIHDbq4aIWfWnAskJlr7pjZYBjcFwDJM8b4KHOsRCTxJsKCXUfrPctaJeavWrx3Eadpy1/y8M8EQcEFv30PMFhss/jTrvKIf54QhtdQF11/gQHF8PY0xBK+S8j76JDWuH+1hFBKQ/gKCI6Z1QEBf4vzJbTYqd2JC5XEaEQyTcq/5Z06F7QDbkygiHCcEF4Brfomtt7B5guvuhx4ERyeK13gxMKY2bP8vJSrHYQ3D7vCVIpfjrneVvKQ2lYXNr32R/vgbaXuo86XKDPTgRBODKHo7OKjTxAWUwKqdXpdJ6LAyA41IG/WPKS13X7HDxDwb6M/ETQZEfLw6FmFcGR9M282B9yzYlR2Ux1l2Icuvy1cqqHhynR6qbhjZPgsHnh1VSiJJzc0DbUEh2W/T+rolSX02Ik5MaDcyK0OFRRAksMByCtbYT4hDr0EbOAQgPmtV4qLukT75vSI3z3gO4yfjeWC574orKGTlgUEAIUWw9Xzj5uMS1GP7T/pSwCz8SgcjL/ExZH/uOFbZgTjsxK7Yd8cJg+tbkJMMnfZ2HtA5UEs+UqYC9Uznp8sSlsXQVQh9YvUfh6rf/FHZlfpdyxSuIMG/P+PYKJ/RJhLY0ycR7ymotvUzzg2p41Xgpf+yWYcizOp97jUxc4/AjbiT2KRjsZ+1uxEAKI5hpMUMItsp+eQKccsQZpjWt68xUNrshh+Kt4bA8w4hTVijXYDrNYONIwAZ4EpjW3pZZHSdpuU5oxf6qP0ucoLQ9QcbVLtB3PffjSeU3xDmKTpeZdntfgQR00pv1TFLZqWVdRHUgLldp/EKeXrqlYUs+PuzSPp28jnmjb1iQGg6EB23oLcVPsrPpQc35o8//hOiqhArnj+uxSJquceRR/xTpvLv40A78b1yXaOZ/bdk4qg/nuQZ9xab+Xuv4H4urj4K3/2SXzFgNFxskHaxVUtAidmO8Mv0xueOzKKc9oFAqspUJbaMQPQhDm81a5y4HxUZM0+ek781MRNyaTXNTWiX9sVhxyG8wiilHUaW0QSE/iEYnMlWkHQhSG53aIqGgN0ud0rM5oBfqzeqh4WBAR/aZcdictAgo9hSpWdHDgn7SUCXOGHtUb2Jie4YB623VVId3ZhLEwOQ/hb7uJTczK4xF3zD4RW7DHUW7Dt4HClWQgQ5Agoz5uXZ6gden8LiiXOCl1K632NgDbN+VtE1JKxnWcrPMDNuLDsHzU2ChBy9HtDsPgQHXDxUZ/l3WJav/40v+E6QxREdi7zV/yUa/a7uCI5fhD+/a80vNqu36YZCG46Q0XhHFAPA++6a+VO8IMlZtmUm5VOLoQHht15SgpCs8226QjtnX/MViCCMD/ocd5PrnOf1UNfLXgRycrEARpIBrOZinVGsoir5IOyNmmcHDOKblfrtxF2EC5OZBGvYJi7xAkVzhTKk7PtlFCOVlxiTPfR9V02s8rU3sQiPENuh+VmppGBrCEjbjvsggSuElcWz1LUSWf/Bwq2q34QnBL2dXjac8ZMe1ixpP8heNcup8RkR8DKXfE/MSl3SD5FFRPpO+wUfJAgGqY1JsBVUaYxvQdXpb7QOb4EJq1ZH0O5+18h2p3YT2JTsMhjrqWK/RmZoLrif8oELA/uZx/z/3xphXy5rfCGc+j2Zi1greKNRzsQ7BuwzxDaxTgo/O+dhrjA+0qCXWN0/viYgjYf5fRosRV32jtmy1SNcMHH9hUdSA9sSFwl9bQSWEMOzO1wAqltybeSmxU9o8UofOfoEIPmXUba/ltSRiOvR00hPXprybu4SZib5hPL+lIqLW0TAb1V2A4XZhUm8i1tOF/qVe9OCnfPAYKtursnTNVHOmyzU/OP8YUS7GlXz/VvGAETjtimnUu92C1zTuxGD3MjGeaZL0maLZeY6+eLiI90A9IOp5GGoVkJYRBdCrpia4P8BQxWyQpzqC6u+IrL122wWzrPNlSYDTE5w6f42zrvjChAnnMKU9tf/QARvgPRqA3Yz7/YS897qeub5eW4wR5UH7vHQZghZmeoXDfg28MboL+Ea9/OAIF2C0MmJIliBMUafidEqefbvFtNikV+uAddjkhs0zZ85sRkDaP2YZaXyf224nddsIOTqlfsXQEfP2ld2BA1VWtSciTGO+LheyGXPtS0yRyUX1CdViDxSp6M/O+JR9IQbBr1FeDTkffBK9+X1xxpcywbiDBzEBsgboWW7ATveEmQEQc4Pvb17omaC0FQ4iCHa+KraFTOvOqIgJ8AmiQQ17I0rkpf4yy4X/6hnqhtGq2o4KTjK57U39Ck3O3rK5Df6qehFfcobKj9HdzPU1nPB6mVuAJc+4YGhK7s3E1zwZeNzPG8wU++EwOZPrd6RhNBTZLQRtfd13CGl2DTKU6E4oG8lqyxiG88kJhaZDx/LcwxHLcWvI5lDMM5edKwbPjh9XerEsOlXhaITDNrNralyprrniccp1f++OR/evahhWktLQQ2aj/YHJcsrOTXW9NKVj91Pgv9bbmgp8Oq0fM85pXzQl6OnkhRga6OXytD4CTntDjTQNP+1YMjg3z0NhXs0/yJl8nZRoJQlzJBTlbNnk+Zq/vxRmxKnMEGgwE57tfj73R09YBsFxZjm7W6uLesgONmOyeVSdQndjuemT5yJjQ2bOqKMLrTLVggYKJz00yG9G+6ViGya9sFRE18Hzys+kakzh1+CRK59vqwEp8GAWKIxULWK7v02/JufN9J8VOh51MI0FeOndUMSmwrucKGWyqwk+YIkq/K5LfV0tB99yHz1Rykaix2jwVDAe2X4+3F0xdIoqYGW7NmJgK60N1kbyaN/P+gTH0q5cbKxK25uQ5CiU5y+s6TQXvI1nveikPdZAlLixZg+6U8CCnfo8T7lPW5Jfh4B15Df+M1bC/YNDf9CjF2WWMc6A/h/RH0LWO/sNOyIl4U/D4IAr6IsNWASVenDyfoLfQktRUHazX7ndQtjTlYa1SSfJqoBdiEGhwNye01k7XQ/J1ODhJylz9QUmbdhDJBaTARimoYQnkeJpRcgTnnS3JSIebOF7ynR+nrqG5uMDDv3eHM4LqjQFePry9DDELShBm6bzaeG3jNqIEvEgeDFGRZ8JZGHh1gYWtsyxqNkjeBB4FvWAhfnxs63iI6a+dfoMY2SZEMKzrvZJUFW3zyqx0zMI2ttrDtLjvzOryULnxA4pBWO17DqPY2CatxAwBJtXUpV1cGT6iXML+xmHmi9GAL8kU2g3sdOIpMnkbEo08VF56uP0oJdM4YTMH+kvzvDd3St4FbsEmOuGz9IC0/9dNUF1BfU0MT9H3wMgY/28U9sEFpzkQX8WiSeLXzMrNxN2J+ZW/fythmaFoXcFYeP+uM+8CDtd49MN42jbrz+SdLChZbV4QeK4M1xv7FsKxBh3iROutbRzINQYNHxSd7xUur+qBYObel7Ks2ehJr0UYvomI5RdiRdCApQ7Jr1NXD8K31f1nyBMMSGYJeBCx6oPVPuPsPkzkTyCn491NA0Dl6pdw0WUPiEfaJidAAlc0Pyy4Wa8BZF42P9DWPsPmtBfscatSo1v2O1fhlKDPeIp7ee7y6om5Lee09bQM9qGpB01HKlMVPDRT7RkRRY44Y8ymmnWhgzzwp/woh8OqxJpwoCyg5gQwZT1Dzs8ryXFHk1XfpYAcsOj8EPZ096Nq4v1lPK6/oTAwYGBoMsKcEAPiJbPIKT58Z0sKEt2+n9rN6vEurVPC0wyiZpli4CbxdVQOZmIkoA8ta1QYDaML0JVIvwesuLPHpYK5KC96aoOwFTUKDUHfpguw3ZnxxxoVrUHg8RGZbabhC2CxbM1lVQgI6OoDjG2ORvbfoksVpecry4UVwhcikAMdSZsPxKozObPYEkbCxaI94P2F8UMJLHLt7/5jhgjBnMiQ780YwWclR//DCb57k4J/Aak3LrBEiVaxFCfkZD/Mz2fzfcF1vJ4MRU+/jhMhuYZAdn3vArr/oFIA/yeToPmui4ZHauQi6vXeN89iN5vmEmeixyBEE1M2BCO++HRmELXkLyHVqZTh9OBfH4q0J7H3bIHY0t/ytfneTQHHKsyqXZpGXFEpYdSHtz+KgyKt5rbLenaBwWqhR9IWGSv++l0QFBl3MlnLr8a51yEVo/CWvZufEe9RzckmsQoi97wuGilNEvl4W92hnSpNZuDPb9yG3bxwSpDjk7R+RRkii0KnzDspbVLhqZt3V+2AqsXu/ZMZcdVvboGTD6fwj8hcpMWDOl84e/UFBbbr7KKT4WC3fbIXVV+9ZaOiYGDnL5nDDGe1SFxoRKh7V53Gdh/Uho+eWD6EoL9xzH45k/vpGqtMNOxunrSSn75pkO9T8JtnpUESQ+EUmzsqcWg85Dcjo+6BoPJU1faFtXcVMbt4aPH97aOr7pdHzqQ1uGpdW9/eWjKNsJRK9Oe9IUWmS66eZNlddB4Bj2gQdjXi4zI1ZtwtMbO0y9QIpsoCQDKu523y1HoznbURfoSMXQWcmsQFijcLiAvYS0ahNO54Q3BQr32J7R/slbDv7WxkK4QJeQvrsuBVO7yNPY1odo2khdoCkot5iwxASUHn4zGDSxFjbS64noKO3v4FnBjHcAhkKOTvdfav3kp5miRbYFj3cBlyqygE3AAfd5OZ4UkM5fa1cKRrVc5j19V5b+T+Zw5sEX3FTO+sOq4rnYkuMcZZupuQ7rmfl653I3rkx52XnrDQGzFuNtuQXq9Kf3NRkv2nHma8TEEnuktT8Tsk/YmmqKvcmWuoOMx0smQ+9zccWydGTj3hZhIt344zBFh5PB9tdrlxwIkhcb+Drha/1ScYn2Y6ZIqc2iRNMPqWfU6DS0IHqKcxLVjrZmzPZQ3+/PWRlPQLTneWTMvT/Nd7nlbgZfGXrRsqaIiy3204yOhSGfKn72U46SIX6EcnoOcRtLGKcSo/mKNQBsx948Hd4uqoR6dyqCy1eqDcqu1DY6+gU+Ye4ewbHUSAncsBRtb4Aci7pv5Pawzj3bo5FtF+ZIiyq9yCkZSRnEzqk/KoIlA+nfjSpnpGQc6Khe8NQCkDiaPmdelctOnwP38maELan34X9Y87Pwjldh/B0HGoLLE1aw4SSV6ABONec7pHyslRjZTn3OCrO6tAatqKPLwtCIhEKO0Sn4lEUpIjWqURjUOwWpYblTydPilJNov6BqD6MaR95dM6bnUo9coy3DlEK/WjoCudHHw8AZv8PleR7Tb2WiUm61f+c5aLbpH6EHKctx68aFxe6YEXpiiI3iFuU92rCQybAco0Q8gl8XZYzKHoMykEa5pmCPh2JvuUYj1XLEhAW95GOGXM5SCVEooeoVwp78MXRCvSbLjo0ssOjZ8pTdaavMwYRjdi2NGy9ZC0ksGzYQ8KlMM8a5i/C7aiZhpEDCUk1SSAkEAxruEL8uinDmw4OUoRhwK2F+7toSeqT+bErZTYngpCkCvtlAXLsNFV6IGp2+PQrANkSOXSNaPwdTwaaGL8P5URKE4fOJiUVc3j0B/LcxykSiefLhhWhblcW8gyU946RCzshyBmvbwWzvKGFB9d8ZLtlJwwGwgCJsrvUdWh6jzhdx4UYOU5GyZ93Syc9JHrtICaEzPxo8TStMYTM0XC/8DcyyrieliIv0cs+77emAHqrglJ+O4u9mnYlKIov0AjLCrNEaEo3PrGzc1VVxzXJMXvLvWW4MXm2Fwy3MwGrL0PA5CmJSr49KsDsA+HzlQEJeSpf7QO/wn6b8pWAVi06wSo6y4IGfNSpKag4UX65Pa1mJMEPGG7saumv6gZ2ZwpHo6vfYFeJPL6mcO5t99Z0/n0SDUHsjMl5jIXvq8QZlIbmDKDG2WC5P3cIa8ExZkU89Hxkxq2DBNsu8SnK2QSxrXUu9+P7A1vsYAUR92gvmE/ZpJGqZD01rhy/gUNNCjx7j2Md73ichQ7f3uulCbevA1uhbVfJOgkZn6/LYFREqv1BuyL61k/hhJGxAO4gruevLVVAM2SeXri+y59S/op2LXIbM5xoJKa/CKUHGU5umuOe3whlixh9P0Je+9uLdqLpnjQTXaQ85mwhnfFkDH5rKMLyUQpLjcbudVfru5bgKsuJsreMTBpN3/1n6fFu7pgwT7dr0TCahyCBxZQs/m7AeU7Lsd/1lNpt+fw9azx6KapK4BFBr1fPgeP7ccfRJw1rhn1AZcpDv0wLbYi+1zvoevzyVw0gdwozA/VdauD7GGmPWV2D+1yeMWvZuglNC2wys9wjgllQmKvWCLf3vQf/OUAzg3RNtsa+4KdxOmqlzEY7etXdEmPwl2k2BNxPokDTVBvFHxZywCLDV+cER1DvzLud/LVmiNV5b+ZNMKmJn6c8Cv12fDWBLoREVrIFHhHRTSvSSGsQvCKrlHW0xdqNSrgScjt+56OwAGXrpP/q9rgmXitvenp1C9ZQBWdBXbepNRSyuzEUKyLZ2kewn9dcQAs9RzHTROBB7u8saj82e+VXPoRJyk6aDf8iNe0CGO7nT9bNisW/Jq+B6NwVg48p2FNWhfXDQsGjUustmxN9P+qQwcLN6sZ5x8xcl1YvJugFIicqjAthar2YLuhnPgSnWxkzvOlUzKEFNN7Xpgt9UUx1M0NENM0K4n6hX3s0VF1D8teyHvJ5lxhjh0vig8KicZhqKOhHr7bBTJXRR6Pf/EBtnkobzU2Z4jnHH6LPlEx+EwUDXtTww98WDtNd99pXrsIuzwOOSyzo4suKSD+S8dSOfUhU12UREOYTAN3HcOliAoM6pdvQVjeI7PrWw7uMEHqo/hUHrPcfhTCz91C+ktyWGa2WTte6npAvHaps1IakrfROAWDvkHf7+LJzvjDz8uTq1SVj0f68Eoczzx/bxlCpj5a++vM1f0C4ey6yUsvr003aYNGbnySj7aecXyJ3Dp5CC6p8A/tqhoQ2yDgSdw6jufb2TrZP0U7EeALpoBj6sC62JNH9K77gdYnO0uL+8BbnpeCZnWyQptd7ip09BBuJZpfZoS1QiGMz5LjS0cKKeFHAgW86xfiUuDTiwtvj5KJj9Su5XPcZLELPDzczbBsMLOJ2uzCoXg/XgYwFYZmkX6zLBv0yyORVJxy4EnxLkHw5UeOpokseLeDt3TIMkj1Wo+H3mQ6So643ThPd4Q8Fv8wqKiCxYjoT7MWaZUPg3OTvSiF+q9FS5hxe64q2QpGRB9LCG4prXACbO+wfrSZBnZeFaw5Dc5GLmUz9WDUn7LBBL9ATl7KnN1H1xMsUrMc8Rf/hsjieVpvgC5oqnPKDgiMuvtPDoWRRwQ455AYLXosekJmtlIzCJTTxV048MGzHfeWn9Yode0DVFp6mtDyk1V0wEoY2OQ3UVrCfv5bRTB1V9xOFciSeVKB/efDccftH4O2YEYucGYSF2TfUpQXYOA9f0ZgHw50y3gKhGOszEuJL1BhCq2S3xApIElJ/fgvigD/7euasiYu+wPtm+Hox9i53Y0mgjnQRo883X3a7hchbpOF6tQ6jWMem8tDPq4AET589oWketjLCZHTiDTO1NCS3NRQZipi6jzAx2zRf3Dr5x5zhY/x8T1GGinwdjHHOLdjdIQv8H87sfCR/Z6Apb1Y3Ea0oI9SHbxV7CSPyb5r2SXgVLJgYNmW6v4fVKxZf16qAZZQY3xMje7rXs0AytbTQr+HEbdU+DffZ+FO/KV24fBE1jNGzfBGCH9Xlk0Qc8yWdikwHeyA/NsI6aL7Q4sIOqgeM7D6G41PSq6XuPtoE5MC6B6XS6LFKhgNHbTdGN4ElAbZRLLjB8c5t9zsnCvHv+3BVuh4cZoaXqwaAum1WW/qWpkZIO0UEn+9TbWyc+ZhNbJF2yDLb/b3GczjgAc8d7TWuqNXC/tc4En6i2wDHmK4oF3TfHNFZcjDR7JvZFmnyjLbIrJ7GcwOKUQyr/Mzvb6gh2QdOXu/ci1R7/hkj/I+ZE5nn62nmRTlFAkjdLG4gIQ6GEWhJls9oTXzcTvTyVJWQHeuM925WiKKdCqkjoGdJkTmo2Bo51dS6AklwIJRcr7qhxDP+64Tu2H6tRaLjhZ5vEs/Ei9XwgHdU/rDLRGqHYNICXNpJM/oUesg1AFVocC7GvRj8zSGiUkC/7YOVnwVXKRZxSqzY/E5+7DdtiSqE+aq1mc7/SkyY2RC1GM4+/JKsGofv48UkQyNW2Zy4FH1IIE16F9LlTcapaiiyenzb3+nvuwWupx4Vk4e/Oa9L0tmpIIDxnU+W0wW1fbH2PjUUiH93IeneWn256LiWpgTXsoa+8rtj+xwJFSmjENyghHtwRnE2odoYsIgbQ4Mq8n6voh0N1nfT+WZa0pfwHMGYwwlW0Ohh3lbV7Qwi5RtWn62DfzSn3FZxrmJFW/e34e1k7AzuS+iXO0uwiv/UVZrAMOyJF8hUpqLFPilCPjSWJAQMlFWN8lHe1kOW7pOaHxsyivwkhQTNaNfvhrVJzOZGC4gNItSj5yI4z3YZGFHtbc14YMLVT0bwy5VFVboWw0G4YAaJLlvHGgAiTrOETdHX+31mOrhSgjK2PhgwXhLUxHSF13mYieVJmdoaqYdW1w1cMI5m4Cx+UqkHnOtPUgXTKSvGgKjgZiprz860d25eQbMEX3WdMRwUlXxltCzUIekyCb+yjzi3LqbHLyrjq0XnklKqvU8B30zSCcix5YoVblsslndK1C6JIGTMDMcsP1nfb4P5HulTYaGcxiSyMsylsKQzuCLO3QPgL36aJcghd+8FpX8Mz3Z+NLU3MkgvE0WOWnLnSG5AofBxwXYqs2cJFGRepOBKESiXGxB20yn1JYh4DgrznH5D/xu6rj7Qd/wGWhQqF5ewcPdeF8XrZtJOkICEn8y9QzON6W2lUo+PJpTUUe7CUEXwbQ0iWLtpMmWmMNzvfkKEJUeEBC6uEEwKimompjGnCQM2qRQdARqdEsCQRJt3/7vXwW06WNRGvdRWj5uiwWm2dO7fthBr2/k12ZclbajHK5JyOd2RjUFp1URhi1GBVAl5hPqGzyzRL+3SPI8BCcTFeiAUdTkUmf8Hkf0j1G0N37E+YCsLCvxoxehYi+AV6w2P1IhGaDw9yXS8F7AlDZPWLbXROIz8iFeaixCRu8+g7Dya+smNzl4jiWT6PeNlC+F0xeBx2KYKUOz2WWErOHdY3RYgZ5hulU0uuzeocMhAXcfQ6mOBvKkXHh1qDDBNgQmtCOUMJ7ISna9U0Vg6pFdUY0MGzlcNmhSk7XwPnjhcNqkSmvUeG0xxCtowhEwKJQfsf5UmTXV32nUabsy7oIovp5ZJL0VSgvEiUWlNDl8zrAwzap6ZeR21vnOf2f2JyLr5RY3rcImaMFAF+JdU+Ztor7R5J917xiy4J+xEbi0Y/Fa6ojMUyB8qK9OUwDWA1fI4prbutOugqgkGOt2JfdI778foOr88cimxbTylfRPY1wrXqirGNIGQYSucx+Q9Y+pkKZDcI4CXvIeDfMW9+f30l3V9tfI5Mq9OYjUQxNGMTt9lEHVGv4PScBI1K8cXo4E1teyK5bsZQ3RrKAcXIOSZ95upiIOdZaaMqpIvz/xOX/4J+LMwcz+IZsSCXEMr3HTTt0y1VqWVSzZyhk4XvIrUXr38iBLM145u2YAgIqD838ec1PakWiR+CeD9P144tsolJpzkI0atgf7htyr0hSaU/P8X5x8aGeIDTp8YKuuoxyP53b1gPZu+YAStkAiUoXkjzFJqyjF1Ci7XsdAtUs6ZaFpIuobdoPl6T4tfnvkuoQ9WZgeDM48uTB7SDIGEXbNmQKrOgrokrvqtK0XaSxJp+wu5vYXYZ/u7uLkhLbnL1VzuAVKO5QJa5TNuICEg9tWE5Mp7mU1Of9h3Kv4O35AaVQpczCrBBVCLUtpV6N8eJkDt3NVDINeg4TWtVzQUNsgtHZs3oWNCbxlVblGMcs8aM+SC71KoS9LdRvIorgMwXLbKYAUoIcUhMQ+s3/KNlrszdbLa99h7AVpMADwcHMYg93Rqv8X8W6uqJbgGxg7qoEJ4uEOSpepwYXM/PWqpApOVr3t7rIVj7AhOWRRglkjeEhTwvNuJi/Vqr2qCoZMmFJiHFz6BSZPg1J6+LabZJBGYrCHApUUNiQNO0aGBgMlmhx8pN8etECJSvgK38DbESjtXgsMzJZw3shfD8zmUyFMvkgbVEphS+aFczwSYluISSExTKZQ1fgUipx9ZTQtBsfNdAqMNlnijNeTFU3WpYWn3ZLwWceQU4FAgbESI3BTeQd+ayXQA0gqdQEZ/xnA9N0lr9pIkJrOUvQ2RBhZMYi8fXF1pW6yacpN1Py/iXWcntGSQVUaQKZme8oRcRt+ncpudIqj/n9RAmeGUbUnyu8ZMUC+oyNeRO7peD+tsN/2MTvN5eqA47XATlPSnyXgK0t2Y7t0ofax8F1/y0TpzCk71G9KLgBfMMXrDGPlsh0rz0ZBsipfUnCGbvZJ01L1KuECMB4eIMfxORAqDLXLGcnQgZVnunpXdU9n/h3E8Nc02xWuMXcF+QDy1o1NIn/wyMyC9EkDNVwUVxtUa99RyKCX98QyF7QlqCzjS0eBFWpzqm0x7XLcM/MrkFBoohWNgorLLvtWLAT8e8fJ7ojaOp/IKYIC/8pvRSLRcKoD4OCJr1gi3Wvutblqlu9n3qGzomRkIlrBHoQan6nCDSIG/A8hdbKGrVOJg3XAZYX4/WubDgqi1y0lvQvCx7xz65nn2+yJQDE3lXiORFsSPBZGFclf6wbxGgMWYq5C1qj2ImLms3Tfajy2/4QEp5WOdwhDNhDx69DBrRGjwDPN7f8VLPnD5lr5LAs+zZd0/ecNa4SCiAl1+i0JUSQSiPVJXP1SBv29/b7uRYMBErwT5GqTiKWcYtH9cTB0gDl5T5fqd2D7/vDL6MTgw9HeISfjcv/hnV9EWrhVqt+aGYhLDpRucBfqZc88OI/NiZi6I2663GL8tZw5m8BDr76jwvw3o1cLhW9S+D0zx0QGmfqqAMJW+9+gEsXakIMTBhhCiJYtUTeJyAhp0kfQNpzMKXPa/1Jbl2rYbltl1BbPVXvuEJ5niSuiwq31G1A6+HILZ0AF8BbYMVy6uuaz1wZ2ckVc4SVUbPbMe4B5D+jHA+zgEldm+5zZzOVZjO41t4wTH4JPDLFsVDnuJDN8r9EwZt4m1AqkDhvIVGXl3lL9bGCxzhUWYMrozpEcOCRkq16AmB1h0pbrlqbD73aedBt6GapO+7DafX06/vcYMU66c8H7wyXaspKZ5DB4zZ8kTCQPoqxsvzDLpUw2taH/M96FY6k9NWnK6OFrlaqin9v9LGt1oZhvJAnLMBjtDpZ06nrJ9YNn/EHYcGa97lTzR52/9y6iAJwCAUdLINKLz0IJoV96yTWQR/v9Fdy0RrkZluKTXSo47cSWXL1zpTAXo3pPaWCDr+ZhNiYERc8FieQm2zv3WOfRq+l1I4KJUb7WoQ8xeEQLgRJn1pBf7G0zuCOSsz3g2aJUVVsHktk65+mzoLiTCRaW5Rfv7xkRORpqOjNQEamEq7eiFq5tu58Xnwl94ZAkFC5PRw/QIpraeExstEX4npZz/nYWusZHq+z9f5GFriJBMPKaV9JXEuXK/PEo3XfXhFqD9JD430A4C5rMHBi2ibzOHpUu+DV85EWeaMQhCOJT2lNdtBztagNGWVNQUDo7gRXOzN5ZBjPDMqo8totlnP39c83wIVpmzOYv0lTLUm8kgZpXt69mqt14nTqqoOpryPccbizq9C6FQ1RelNy7CN3k8HAVfS6/kVIGu1jgBbLy907icxS8czLP1YwPhZsh4W9qs+gBfIfP9okHtmtCrN8q3MYQrmCon8M47VpJzlVQjzfzBNvGedbFat3P9SAbA13PCHwl4ln+czWh/n2p3Gzs+M3H27RdK5setE24MCUWvIgfpNZXp6sGdrmXt4Eme6zKOMxOON3TQTtQ/pjGQoOAMt+N45leJcQy+4aZOyk7kkP/95PpMvCzyUhTDiicTBbpCA5VnEfAiXxtGpYk9/7a+D+pglUbaETqMJ/BWW4pNeLduBagDYKbxIhBGNyplmxOj4JHGxjTooffmobov0LTLQCxLKVH7aWzrTQLZ1FO3C+lyxiPD02PaiDMw8fcEEXPdP4TLilVVidsxpr4ctPkD9Vjf/xxFBNKQUPBu9+Kq+49rp0BSoQUxD3CxyH+N8P7emWHDR9U8BDHjler3bo+xUyNI/hb/1GHNJn72bmnSAc0v7HA8uMAlzKgiOYQVaJo4aiKGCQ9gxRiZbiZ/qAzicEABGi/HIlplxTBWggBA84PLpuK6NvPwHshVCnwiqhjQZCch0JhmD2byRTn4NlsdGW0BvTygVda7LkuOaeqos7pu394enpyBqL46wNBjSSby7+22M0Uk2X+xb7ToKRihZycgW0iW/MsRspBUZ8NQ/LpEcVs2Vs/MOf8nz4Xnjj6HZmuORwoJVsZEL3UzPmVoKlvVJpfAtbY4gA5Gwqn6PmekHnFj96FdpuqiSZ9zKOjRiTExdlkwpvt7gF9iThSpxX/ghy8F4AQ9kBCA6HemjsF4fDb/3JC0mImsVHUIUv2R5cnIcL7N9XoO4ay/OXcvWMaUrUGlLk+kvCT/aIR8g3uG2WIg1iVw6PIGLDZPz31WzcGTU6eMWJyGt78O9Pyg1NHkAHDEvGLC1wlhh8IDdOG+BEYuBnbw7c4dBBGLm8X4F5wQIGXYfIgdAhEZZd5QIcVIs4iRdtA+BhTws1eeD8aDVAoQWlD0YNj6MFzSURWVW9GJyueE9PIZHYlxllYa2rbTOeZnAbG4Z0M5xl/2h+23kKwNlNBsMDrMYA5P0Obb/xQmRZU/Y+N6xS933ZwQ2Z2PQZeXBcmSiVGaOFHCif7j8qjIiK6gD7Zumkgth08CSSmV+2QZ5gIOxG3fIZ2IbpCgkLKX+i5/vfr7jM/8OQB3VyaS61WDrfbFwhtq0VhsxnSD95od+yGK1SCq6v9rWoCQupN4Ok3MneRCOAAkm98BKIM32IZKgNrLKN/IoclFM4PiQi/F7xQqmVA0AQ1MxOQWf89UpC9BJ9g6FzCernR/r4aPiGzIX0lhaYFKWReLO0CTt/DpN/2UcZpPdpyJvFgTmKKYTAw60BR/V1jxbDfWWRj4FqRYmZHBnqvlA7o6vvgkyVkOAIx6FEMhYvNHcsVoCa/f040LBv6+og/xJL0FLIoyKQ/JoI/dp0n9QwgRRc8oTpjiQsQWmtnxYpgWjXA/1FPE9D/ruyL/5E0gGSD0TKumPy+h5q9PBv55tJbD4UlhTEsUk4oLfMeVHpnQ3yN5dtmcVlI5l7jfvCh7NqCOHfwSV0iyVchuVgPbnTtRaCE6tyICngmrpmKKzMNOSYtdDwTZG86oal1u/wozmfDZGXMhflhNQhWwd9E8Jtl2rTPjbswpbxY+1wErIhCgkkgz2g4m0inlnoi8IrZJnkdnaB30OPX+s8c5zwlFOWnANE92aQyj6IdeBarMJspEUzJSwLPhfVvlwsRq2MUADmMGSgWbxKUMYRsB+ffuSnZsVbns2q9nBWQCeYbvYJ65vX2RzHw2BJWsG2TGS5AfjcGg6EZzfM+36vJGuxPS63Ry9ipCkNAWOKt5nTlU3M7hV8siFnIIeS1z+MsI99sN/oQLHdFpxfVxY01e0qWzB0sTUamCbDV8XWOG6iEB8MGfIhakpVE0IOlCdy318KM4PDMXI+Yni1C4JL28AYyE8/CZSg+vCoDJ7O2B1RjIHaLf3IhAwNxvrnKxcP2/5WAHFIV6fJGUMDzNaqnpFIh/N9Dq3deSURzhhEk/+tw492DAzQ5yjBCIZvOXF4ncaq4OYky5dSh7WI13HGs9SEugdjQ/JKsKtM4oNWmHism259yivxC8ZFcUVltT1qw9aUnd+Ft+FauQ4asRgnVymcn+vGnEHlGgTZ9Xe7tQfi3sOi2M4JGSJczTT25kq7905/FoyAVDM8lrz67tb5yWWJFATqz6Lpa3U1yLjPTGJw4lmDVVo6tNKA8cnVjmb59yvQl9XIkD1zfkM9QamrS0h2D3uAhN3IJrxcY+MbNkCbxLCqwkEEG5nBC3EzUvoruqaUsKs6HCX9P3V2nkLJdQ5rex4ETRhE6OgnP28sluID5a45qyV1HpkTJLGIr4pmRSctyAoxXhkCbsv/8Ue8Ewd0wqkbPiPqdbF/D9/Cp1zUUY8kXZ4nHLmormIxWOANsDiu9TapVxWYuUOSB9FM8imgy9liH9asSRHABEd0OyVwNDN3bB3shWeMkJKKgT1ePDZ9tDgf5j8dJ8xTD2lXlwGr+AlEWDKeMxhx+5uzAroBECK6Qm1ZJW5ByO7JkaK8a0Cb3Ei9AxUEHysjUAhj/8Isw39iFKnVaV+Ra+Z7NizHOwtMUa4Jef2JYcdO7HGFEJXC3awhwg9qodI1sK2Kds4LVT4GaaKjdIu2xoQpq9r/kveI1qdMPEBWlZdlnC/hhSYQhJT8LiCYTRsT4aVVWtGa0wwSR9IrXkYVeG+/3ZM4sFHrPgqsi/0G459tqExk9cf7oDy762c4xkdKYWFgyx9DdW5a7lNbgk3BFjH7ihRw+Rwmww4qPSAJoy4U5whoRmDuktlipbx/MqB+OXakzXVTFR3JECLFSp/4E4G2OwcJ1GWxv2461nngDjaRY16abvFZbVENR1cJbgD6N5NXcYDlKTLwwynVRNH6Wo5ZNRErGOHl81LC88eeSYoDRU19GoZUUGkPDkQdLmGCAedO8Vp6ozIgWPZCMT2YckFqWmHqoD1nUDvC/ls8qMGNQCw/4fUkqkp6tNKSmuN+Depu8K6iYjpD/RIcAcQkLYzmuCvACBqg0SQsxkh602ORtQcE29RCc1sJEPtr7Dq1Uasz6o0zgWJ52FECX2BROVjknh/D111wjlEpz1JDd0GA6nOutrIx6zkwRNNu0XQhUBxifQFUQBK/ks/sODlsG7EFpJbAyogkT9vk+ZY9jakX7+ItsGjjl9M2Gkk6pOGMYBT1US5KYCwHHaQjt54ocoMWjLHdV2alInxNgyTTna4/t0itdcRrRnO/xpZWBVU0IZcg09n3GKOlJLXVpu1Z3nOTSb7bpzL22ePf1jIb53TK8aFvGwpI/CND232BA6td5dDGs3+rJXdqV7ssJAloGfOO3dSwkeN+RyX1OKfSkaV2rWg4Tgw69hJcwZD43G78obYjQPnOrZLJdMSy2y1esTp2Eh4pcODkH5J299y5RNNePRJpl+exnyCqRyIkChlVBDyB12lNaEAFayWDo+GHjAoug4LO+wjjNS3H3eE/UboWrdGIjurU7ZEkbjLsI4W3jc/Z6DhW0uVEdskMWc5SM22yY820zbaEww41N6POPrp2lvxCsVBw+ZIAvj3nKuvL5Kwi32BFVmu+PzoZMmosdE1piTIgxrpOsVdOU1O9VIYjuLAc4oJ1wH+GzWH/ie8Ci9aMUulP6rzUcpRBWblhofd/f0/wBOaIxbBlGlMVDGXPKEVintkto4NO62IAmuEHCuWkBYk8tI2nfs78VdgprvdXI3JtL9Attxv9ayrPhv57RFw7x08NNsOMvPcgMj2GeHHeH5QHPcfFSiD+Z1AWlglWTUaTZbkiRJOaIMUCntkQUJyKma91xtKEcctFSmZzqSPQjgT+naqrox7Ij+S/ibi24ioN5+k+H1g7eTbqzwicPSdSKnwG7VIRSChbeBbZFYCWYZptf+PVLRMhBLLtPymcbr5gWlU8hV5rMWp91uwIzGnFRDeEcv4sf/3z6RfXCy4fjbBpDIp8MnTsY2EMEe3XUZGRP0YqF4mQEaL9MJDsNCCWjbXz2J78pJTaRnwtlTTSFz4qL6kQUubA8rbkyj3XVEFkojoJOg41s7ckxBj4tJMxQizyY+Nm9OACqpPkOHfHQL/cooUKPzS90WOszzxgXCj+LCn9V0nuZBAV9/+3FbouwPswITh5wyQ330TWiHNNI6rPECbcA0+/rJX/6JZOwPy5BNvMaVPw6SFbJ0IH5szTxth4GxwQjiPYDEdRh+/xYzcaocVnePNTbRlPWyfAotz0KIoFMrBfk+zBwt8oDpXISSfJmqFAopUIUpeKHSRQK36k75sRBKH8sQdCcWdaBn5BSR8v6T+XbK3EVWWx35bBnmvrd9SgVTxpAcoNF/Ko0tt5nSDKsKg338h/JdGaP5KPNIs9FUOM8Oj1OSO5e5dSuQloWp/ArKiD/8IVav433J4alDCaxb8i4jzaWaY4U/D7DJY2JtzvRtR95S07rSSPaD9GHTZf3ytH9XHCgqErVD6LCzsrZSu8WUORsl1YOATi+iouukwYmYQQ7iw8Gl3jo3wjbidNKFiZoYD99PnXsrXDPQMmIIX0q2Lj0v5txzPPLz1UXkoHVX/rA5qObZfpZ+F7mSIDUj80R7jTEeQPwPBX+fZfcZzxj7eiiL27agQgoxtz4wJqgj3m7ZvsOVgCWSYxSzw5q2ayVc40S2s51mV6bXNO4YVvwEb2oLDr7q8fBBpKTdkajAE9HyTI5q1WPsCEZKB/J4jOFxOjdaoOkzbCKbYDNAsiCbZOma8EFl/Wk7lhznKcE6WTGADyiTvdtvq8x4syiSS12YjFHx8/NZyarnAB5KwMZrgVJJ3Eo/tqeXEUXaZDgetgUzWIDNHeKn5ujYNXXW9vlpqDDzvZ6Bq+HvjHqzJQzJ3fOV6z7Nhq6AavWkxZHOAXe0Ai6/ne/8aRlxX7U/MXtjshLlMY6xjrjS0IPqNQsxHaM8XiWyfgF6m7iNKBl/6yQ29UzZPz5h2TV7jlYLGYh5ZSisR5utTCrqrHytW1zCfqAECEGF0+Nf68SREMhsGppAePqVb2mV0upIAY+JE1Aaokk34Bar5FWEDDtde4scxIgV16JcbxZ1n2iuU6uAdg9IGxgbQmUrQ99twqTz1pFpVaXcFFsGYxKgtYAX8vdwrmjLjJzn1aEPrYSuxoHgG1eGYGv7j4W1YA8hDhPe0JwLgpfY+Yqs6wRaocFcM2s8V3oyz4n3bBxsvDT+MjKWtAxmifr9PgA3bLOirPA/N0BtO4E6RBQ2MwYiCNS/jThdMJQqRzkfCsfzEbp3///6EY6B3o+LnWwWUFBWbUU1hQIQKeO11BXP8cw4oatMXkAzfiXfApibBv4QYkreE2fwG80LEtA7F/MWU1kIRwSpwCeUQ8JAsdIQQI9dFPNonuu83X1iz0CNuqfTd2KRvn4cxODcdNmIIEb43b//Jdf9lhQvCZMpFYTpyEMLSLPpWjzYwrpr9jkSVxAV3wdv1h3PvLKYAMsWszEvYfKIFxcFkNpzH12366O7Xuxn7hiMOpibQwdm8v/znLH7PL12vaW83LbQiSwLWg6iQYA8GVxmoKDg4nJ9SanX0pyGJnYHhuxp9R8y7iMOMjR7mTuoBs1aW3rrz/bgoMt+uE7hg+JlYg0cZ7JohUGrpZz3t17VsdsyqEFm/0G7mw/wnhPCSO4Gmn4fQB4xZv0uCnD89tg3YIleWrVnANFWGbQITMuzARP6djTSPCPP6SlZnRQuUx9L80OBagx8bxHE+PYcEg3JAq3yXiEiDiI4ayfrCVARgNWm7AnJIJHuiKIv6O5G2chkRPPvBtWNtC1c0yKh1RVBtIPqH9BS00n+HLiqycscksp+JGVN4wuxa4SoXuEs8Lac6S9Jjlr1VKee4UcSWTwz/dYsAY7Dpnh242aSCPp34Cbp1snXADLYBaB2Oq7IDtg2Nj6VKPgH3Ze2VLhPa40+zES7jqEuI6blAm1k3suWrChBib/4qGW81+QB0dnU26J7cKxKPLkOJ7X6q3jAV9LEVesdndAkGlkbh3hr6lie4Y9K5BZHIi1QfG0snPx9H1w6hueoGEvQt7P7oKveN7BuuB53ERwYyfUwpaa1nhPayU/JQ/Yj6HDGy4TZGecjSF6x+DR4/eYtf19FvSHeXclJ5oJlIxviQy1Yt0lzQ1JfU2WMm2loWg1ri6U1OTU2pMGHFSNtjqIseU1Q/fzvLwLBbXe7eLuqbIchquHHM4cw9co/z+mttfy0T19K4QISmVRh0ZKWjK+cmCb6Su18kEvNtvodT6z8iF+x7NqWJVxUwkL4wslPXk0Sv0Iz1YZv+3a6lNPpcrsONCmjmOMPGXTZR4QNmVPtjlAIIHDj9tWjCQ9gv0ec492QEullFdxR1ZXpUkaRM4D16JviztFKsWSZOjZfkrzWPDC9X30Nr38SeUp87TZNc7qbpjmZKVjTsEm5AFCKdj7WjfDKa0DZn5oGqY1n3xd30zkB+ZoMQPd1JpQJAhCE/bZcj+CY0ood+Hfdmc6Y+apUwtWZ2RyNlD5AAt1aEONPUbjx8/H+OrLsdvkONjAelZ0OfOcwd9lxZ56kR4YZ51f0wa184gLtpPg4wFcmgxwHh2wvFiVh7L7KRMiVBEneWUKsnfp9d2Tp8/QlMAaKId3aE/vBlrbqamvoXxyLpRjmqRHG78PfqpNCnOvEee9gBBXngjDA9ljCXMjOrtIuefhgHGuhqJ/wZ/itlTNUdn7tBgiL0XZMHFldQjB11xU+cJBIHuvvntCheeHaqUIECPYcwRRlSb2LV+Ap1NAmUpyl6R1AOP3KNoVc6kC3NsPgo7Z9FKL7jaPxciEb+oIWfp33RNuKAaiu9ZvfJHfkJMTQb3N2jv/THBNWF3y+6rlGZWrD16uQVBD4Dua7ps2cwlYXLRX2gWM3n4taPRWV6qI5k4i0fRd72jDj1t4W+Qqu+5YIGgTWwN6WfSc23UaXqaVJF/5gWNQlLCumj48myN7td980UHr8c5CqDdWPo0tnN83Lzq6Ah7rblPQUaJjVAX30xVfL6gJBUkaR0ch6GFy71x0bQLEdOL6BTXGtJ8Rufe5YIr/Ra0viO6k/Rticvhsb2eMb+ysZqQ3JlWTw9jmH4aZl9Bv9T031gDyon0Hp2kGXRktX7lZ/PHLEnMuV176lNg9dVovp1Eslth6DnIvaSV1haaRdmBO+XBAYCTQRCQEscfilZPi/uAVRPokE5cbVa0p9p0XILiR7cTLVm2rlu8yI7irmZlfzwjMijmjnayNUTyzS7cO5CzLeRhM9fxUJd2ccS8r8etXLwB60P9yjjICI1HblT6Axthaa6V2CBkwpOpUOu0c5MwVnBniODeFQYZOHUZKIK84DPwyWmSDaK/1L0647lbbcle3tsBCISrYycYO4A9CFHdqtTZmGRDAfxOYVVZ346QDP4+S08br79huTxKbrVEEzdvvVjcCamdq/SXvytpjJTSh7JBD7lHFIFOUBNKUoWzz+Fud8G53ztdCRXjGYc8OB3/aOHF62gS/EoT127AoG+XS+hcSIDGXlil9v7a8cktiPQ+xh6HSsG5kiP/m9STroBZPpYuSnKxYxQcbXJfwEraMg1tnyJVSXIz6M6/PVh1QE0QN+HUOjr72Cx+k3UzQFz7tsKh9W+PMxkQJRZ+RyuAtihCCJJbrsXsRpx01/BzyV7xBq7rjYiZzOmnsEf/lD5QpoW2MmLxIdNIiis4Pb/B7vdt7cho2f+f97NBCearbxV5TFPXNMSk8tZcDHejvXbIr2Bi0wuXJAyGXVXKVxoVx8OxiTQlf5sZVOknFRf6rhaZavPfMlOtd+8Jo610lQk/QkpiXfnbsVsKzbTjFN0FcBArVpEzCvXv7MA4NjnTq2QYFq5ookaSiuGRAjql7AW9vS+epzMI1rHlwBld+fnYdERFIq9zMLTxNZdJXBFW/b+t6dGCU/NxX8fDLJJLiy2ac/fAJiRGB+A8C0FUeIpZG4y+pMzUHrtApsFRa1dwfGoqs6YNSfqlyqSsMeXxpnPrRiLoZH9DTBG4+9mOWej3MnmA3OZ8wILGr+YeVA5ftjpQdnrFEOPZltBz9qYYel6f475zIoe4o7MnSnMtGsuKXzYpMgnyrLWr5sOqBT6Zb07fR1LZMLHahEIu1Cb7r0S3MlXa2XeNlwTPFm+TQWDYjzUJZJERVJ5Fm22L21crfGwaf0PdWKr/YK1h8jvkGiHJshi6TkdO0WYSFzNRTmi7+YNx77hNcEblZWo5iuLNFCQQpzJmDvB1W1EF1hw0deWW2dtAAkXNYmB61e7yOHXPyoy8SLQMHUKB0Z8Tpx8hXfZw6Qqo6uM28xvzsSKSVyHVh8jge6U6paLJC+atdVQ1qriZLVNWJhv+UqtMWNhWV3ErGWaaSe+ndlJEOU1RNgC1yRfNcoLvABD5WcrJGqSmtCbQIdYHknBkiGa/2q9sPiqAasU3XlBZFCD07H2QMZ5GU4/d/pN9+cLJd6MMW8ivby8SpwmI8etvMO2Oiamiu5lM2hzdkWoDEkxccgGY0F6vapNbtPLehge2sCk5XjF2dZlbZXlIeI27PfVO0EHUgOmejPEiNYKXAk+dWpU/MWDTqBxzuwfam443mHVJCEepvrCBjUq4oOmLi7XNe0Gs4FJGt8JlyYBAEohYh4VDiI1fNA7WmZFlu+CsAbIwvFhw+AJVeoUm+WFGzZzDHKkFa65Maj79eGegeEqL4bZ4BYwDORoTnBpPtlwkktHQbjFZV8/1qjCBRVaNA1tammTNrWqDg4FR4LoXqKVzZEFz1qoD+BJuJRX0uvxBBAh/NdUYEMy16M02arwBehwYEVzL0ThDcDVP7iWL1KP6CB/mKo/9jVId/7z19+R5W21D9cScbtRbAofqZ3DHkecIcle+faT/+INmEnQjOUwMyh5FG3Bi57XdBwTJpSuiIWita+6TNRnskXWvAsNcqAUewxCF19CCCCZcuDstxtXHB2ayC22frE6jeqVJIsJhK9E+KE05VLnvArhfLB4eKfiZ+RfYTnISoMAtlPX9nfRw3DBQyFEaAPeyxUOMMCOoGAXjPuy94Zd4ziwuTRdxouqh8w18K/RlxaPjkIzmAxYyTZbYssFwHGavjuP+uy6C/bKSNDNV5S7qcJCbxeE62DRDZt5O+DPFPYGZ1NQVR0smXwKNwH8i1glFpYsQdL2ZJMr5wrgFGsVRkBa4gU/Oc3lcYxE41cncqzDFOPjIRgRV6h2NyPStD5TmzeW7IC4pGSJ4NnkUFRr1jaNWfdYHe7YLZ5cOLwnQK58MsK1gkwHv8cA8spR020uysq2Vc70MLPVyEBh4NkKLChOesp8WjMFQDFvorXSMaTg0m9b/Bv29gc0Z2JCg+q155nLiQdbwDeihE79IINYwtG77Vbye/jfDdjN7n5+v4hszOpuGAE5QdKIIAR+ICRP8kSm7InBgh3hfOAxlp1oVxO+CibKCb7q80ZfRLu852c+2NC+EreniEGecIMU1N+1xIWGrfkOrGmeJ7O+fcYXhpTw3xnrh/GsICkTWcvwMedzamAExr0wMiBejNVEgw0aLfzvRedzYrkKTrAu0rVFKApA7rcZOaK1FVJOu+hu4/xnW2EWJq8ho7ZZ77L1AhNJJWBkiSHmQ9wsfnEDmh/NmNZjngeob5faUW4BDFOZtKXMvg0uUA2QLiAjrqQWBiurbGyVuNy+i73SRgeH2qOrZiZYVQDds1znjLeKyNosjqcq4N9dpyBBxrCLzTgjPciP9852FFBUvCuTCeGhHpI3Pnnr6r7QEdxLf9r2MVAcheJ97PVZrQ8xSKuWd5dz7A4Roy07xjc/QOctxcZa8bsuAwy0bk6H445gdLRcTr14BVuLpUYQ6XwMHRxV1lV5ajc+v6T9eksXMSABglPoV45CkbhSHHH5UQAEz0iF9GndY/F6WcNDuJgpiRSAJI2Erl//cg/ztFHw+bBqzoD2ghfwuzCJjJGPzbnH/kzTZs52n7xqb8uENyDGR2PPz2TJ39Lju1h4wzFSBiOONGi+BQnW1M2RpspW1YMFcoboUJo49bCzgFl+DRA86Im9k2LxAcwkGKHS54Ao1fEd28ApwpasyvQN768t0WcOvpt9qyBmm7YCAE3TAGfmFljV6XvlckldB9xG0ID+jDha9ofrF7Zp/xK4CPbdaRAjpgUJE4CYA3Qw/ShjtisFrb/GP/RmAHDmAum9R8bg5fwAKI1hLo+/UK68g5Ti+Ii3/uIEoTQiGtOSn8B3fOr3jYkxD0sRHnqR0PZYNtycUNhcZXUyNHsp9Jc4MP6trU+8F8/KesgXHwy+9m65eo5dIExSyu9Sow2JQx/Ty+Xs9SzSZA2AOL5C9GGfvz8YnzvDRBRkl2/9Ws29nfEVAQJDOBUlKTqL6S6Q8dV32PTTO7+PzB2ta2xl/rGQEhY+CuCpcex3pF59wDjAzsknVPdtm0dN3OUBT45ctZ9IFjUZPZFuGfnBYlEmF14EiCNQ6haDHPrm+vfGogbpvGALGSN+5+87XSrEEI7XgVyzZFru8Sm5p0zQnG9vDHGTvon9yNW8JcWfi/tOAD1tbgFG8WTxtIiZW3jV+VPSJD3K5WDNMCQ0R+hoPHxz6+8m7FhHaQp4/nDzfPA4GSEKd0ApQj4I3PeydaWPOF0oClAY+pw2xfgue4Fz3C30ECuvAi+D27+/StuYmp8h1Ye0yv7ArFBsTZ5laXC7JWknkE0ogjp9dxslQ5xdOg5fg6nRJ3NthW6LX82TQZEvQhSdUslzZ9+AB8ISoeKHKBV/DTCTj9FcACeJwV+Go4o33qgHKuzVq3kfpKaWh2m0N/Wz0B5RAxk2RBbEi9eG6ZVFbKOiwltJxrxFuaG9BihD3/Smoa6yy1RdJc77n1AWJwUitmk+G58LfPmkg4IDl4So7R4+B5VzgzMMAbwyBuB2H01v10JSix7eFMth1OCxLg45Fqpwwn9a3xCPCVj6Ma77LKRVSwLm7x94U1eMzfWYYFjrBrbBQLcd+DWdmIbCEfe3xTwXWm9Ihdm5IChVg3NXgKHD4PyZlurXJPIlTmd72L2vxyH2aWr/+3pZXug9PBwvHMpIk6a5jg8yr6uwsGWqVsRvwPmuvPI6dNeY31vz3bDSPMH+xQoF2xVlI/hZmUbRjavi+VyVIKPlsL/2QFmIOf54SFsR1X9rn3sKrYPUHZTwJaoD1A1rhqwUf8j7jYmhWWRWk9ef1/EQ2ByUHYw7YePgTlNT+L9rof+I38giqY2MiMdDkLp3lRxHjJVUUhptm/WkQ7nGel5/U/ZupGR9GmxNC02PHOdEhiy4LcamDYSApz0jdW9+0siMFWYdNGbcjguMOlZTIbZ+XIbyTIAB0eIACHEtW3LmdUWefVGWYIyAUeBRatigWz/Q5Pi041vmTmlmXi/3RJZ49cd+AF1HnfSALF+syXLqMviUBFIGnJxvUokRy3/vdb9Zhk5w22EVcIDFL1UI8FPje6OHNVNuSlT3CZPax2R/v66uD8AetVaERrhj2XHH3AbsH939m3sy+NXyYwzHnzDB4JK6D0FsWb2SvQW1ZmABGTObn3Eq5vuHZsPEL3Ix7mOe7xc6unz8+DqcudJ1ucHMzxmD6Ptw8D+uMr4067F9vO359JIcMGR7Aifm2Nc2JppIh7N4uTWt5P/17FfaAGgC/S/ZDi40Tlbk08ZcGJRYQnBYvOjX+znggocFBe+zswRNFRsAGkLR0i/zk5e9Gg3ZAZvkHafuSFBA4Oy8RHEYLLUwjnZcEvM7lbZQWgu6NxbC9UQbGCDLYH1BnUb8mhseexvYA4XGnjfb5XxmeNlIuDERIHQFx9OOMRCbG8tbrdDRC1VYSTmk5lmOtXBZo9JEx4jJNdMkvOcX/3VPTeOkoSiS2kKz6TQ0BZm0rtZTjKSWFOMVqugzyA+xMqA7oRgIfkHQw69Bn6+0pJHG3p97O+IZXCUICnoe0aJoXaKaWm/hhaGO/cJ0eOijq4wazLgzVZDL4HqQR2BIq2mXpIW9m2QOlDoD8rqMbdeonRfvscswthrGqnXvgLcRBznDWJbROBkbV5/TOHVeyLN37wryZL+jZTo8FaDMevcObtigQtr9pg4ozdI9BdUkbhF7yK3mm8WkKBYHeeSUlAek0j3xxOMj8gLFBE0+XoLl/KrH6fYbBQLwSj64SIy/ym6UN8Iz3oQcaqgeN4M5i83WkWz9vF0CHqiZv9g0Sz7ehS8j3m69bLpbDOQVgUrAQTJjra9LpytKfKU1JlOnuQzePHn98BCCj2PMfWpk+ckVnH1nHTN6gdqQsan3YM3CLeePDUUJYgPIXDSxbokk53UheUFIYK2iB/Zq3+SAqAqanVfO1VahIzALCdDjd8gddlqpRRq+iDAFkJV/dwsxxnzA5kpR6EI99NzSNiTVRqL23i22dd3hyE8leezMh1qju6DDV7xTI8w/pxqIzC/1JNjp5ezmCmcv1pKfNnrfL5jG6phP5KE04meUDQjFXW35ogYenTdH4mKEGRQpSTdpIQUXR+4t2+5vyUzLj7C8IizBwK0c2t//J78Nv1UhEtZ5ceulvQp8et1o3Kr0uP1WJHC5dU/Bl5ukCFLbMKJ9cKT4TfSoRYtZqxQFRpoUZDZPzq1SyJWbBsfDeuHe0l2GxhHXFsM1mpB+lWYknsTX0k73cqXbA/Af4fLd0nlLawtAu6d1y1tuMv6RTI9X/yMqlLS7Y1j6MrwiO5HJ1/l+weDfc8vK40ZcUri8GY58QMgk70OB+Za3oWV5/xUTCTCupRrbnREJAbObvx+lyE5To6S3wPBopQ09R9ujuc8qDRWVg0pteYKKrFeBWsSiRpksrx6LeqIpkwLQwDAjuvthtoQgsIIlL9LLS1hNsz00oQcBUiE7PSP0An0cYz5ph+bz37cVlwRPckBkijPq7d6n5+phb6wKdx3qp1FtWm33FXn9F1vIFKUrtJfbvuDmPAFo3gar8ROJvC/LiKXzHuv9syEQxFRQD6RjMIHciOKM9Jra9W/vnGdOubxb658dn/Rkc0lpeCRSLlhgSzND+voqjFrcXaGO92MyRsUZ9yovxacmKMo9/kaJqz8wgSG4HYvQOO4XH58gojgzKJ4hJgodOaQWfKbqbwUWP4Afs15PGUxhmuioP31DnSva1g7vzMbAiePTNu6mhhCKcAVPZJw3Fr5eXytUIgGHr7qr73w7jyds4iqP6ft0Am1w+pd1qLcnesE9ZGupZFp4/tsPZirO+FXjJMYWFYtCnE5s+afA9U0VpbIFNqAksgJfZtmTSM8uSTjiI3Z85awVyx6jjFgYk+6JI0gyjdfqKE1u5/84Q3ht6Ma2LT4yhcXIlZ0NaSUFv/9EPDXUzfO1eAz6iswQIe69O2SvOH8xaKTPMUkAJYKueGpZ2AulrP74/535U2P48lKLiE//VGxj+JyYQz2ADVy3A3JLyFrRiNtGwG2tavSs8BXHcgbyrhdH5F4bDQDD1rRPhi45le9vu9HlcUgfITcdyxeegmjAi86XoGeFvbK/mQ3QeuUt4OUmH7f+uwUCDJ4xL+6btechKWZ2rCeA+zUYxONy/yxHrOoQuOftS2QhJg+GCi9rZREJqdcX6HRLkuVcX38CeIUQmGsGobJ/5LLdG4mGWzIiXcwCmml5FM74fRIeE0JjX25M4nEWJ5mbul0Npn8u75GPDNw1Fe4/kEj9EIqhiK0Ty6oPK9RwEOCMOr1KZ46dsi1LgBkse2NXynQ1F+iU+Bg0ud8CigVl/9xQOU8XdGcl8qkGRyBiQTGJ90ubgVrun+i0hlKoaYd4vCsvQkHIkTSsH7vpvMaHME/1Urd6Wm7cbMgCKDkng25eCvO2gOBIS69f8guDepU7WC31lKLw1XMiwSG3iuTTIrzpcruurMRES/y17IxZoIkfcf29DcHReNr6M+J4W55z7UIEao7wXHg3FAvQRaX81h/nMilpVtPorNrS4gP83C4LsCVfocczQzv8dM/49VooWmsLf4G4rebcRiav9b6LOi9Wwx/Qwl6ePYqLq7vQ6YgDeJnqecqmGK5nNtsRoyQ2l0GU6Z+6x4fS8f4GqgZx/uOb3IepO6D8SOrtiWjrdW6+QPQrDSD1XHRxF92B1HH1KEbyH4+XVCsXxOBnkptmzjqXG4iC42fFfv0eFDQ1xbKE9wCaPchqQ7AxXmbHPEuFNkzrmAKIacCe3i2McTEidxqral5tcnp7mF82JKaDuN+PupxG4AyImNq0nDhfYbqWoRTbUrhiSKFKrlwP4D0y9gUeLY6Pjf276Bu825Z1NrBx3eHVkzCZDe+GMOdf7vLNs7Zet70NfWzy+9IEdYBR/xQtJFPZOFZp2mRngT7UI41+ydm9Yozd1QxfoPEQ4dA9ap8e+0whEdgly9hct6hROnTia5qT0hEfd/4HZ9l7k5aezGSWqZGKXFsz5yIzFwT3m07a3cgkHXS/PXGBGvhftBLejIfn5eyjoQs1JyWepJ5zEbNS6U9axJKoeWkkrR9C+20zBn4kTpHkRpCwAtw/HOOmAPznhV+BocOWJFHR6DUW7l/L/Npn/Ws0Nf8/0UtvrRXzw3g+lkklBFP7MPcCvzAD8I6rFqvL6KrFCAMWjZkJALri1NnrIAdd5c5baLcQQnXuLinRN8c/IBYfS1QIm1+Oh0OacVlMPmFssVrmM8Crf/CP4+NkpnHRPD+3B+myPXEwQ0j1VguFJYPje2CtRxhTAg9uf1X10h6B2j2woO+R6P8Vu+1Fi2L3ecor5qMJtU57zXYeFnoUunDt/6FMoy35ubhOyNSTdOI+cc+h/RYsfAAwLIHX8tiX0JVQHXFg2A/K8s59jtC/hG4UsqWeuK7VyfOc56KkrOWwxK8fiGg/1f7xAq7BzyyvTNcAbeNbCoqGMetJux07yuEA2evOiSr5vPRkVKHNQ/c6heE81whDMx78WnKQHn2FMmL+IBDLUKXQoIi70dbM94EFM7WZh6ZL13Km1AG2hpx/eBK8e3A/xZqBXzwtxNiPZlDRsPDUuC3dZsx8fcbpiAb57ZVG3NtmXatFCkzuXrOXXRWH2wo6HM6KRNFWilOrHdUa6dUq8/b7Q1rP6QqxfrYSGZjqnm1dEow8mE1b+6ljko6/8Wj6kkqp7Pn/m6HOZ5w77YT8M7dlbJbP+hUCd1CojaZJY6dmPVWnAtbX50ij5aI+hzKH3rIwWGUAodEBGxNzWrOF4WOVdxp1MZYF97h28sjqsn6qbFg1Nd9l8SOoBxTJiqPIIxDY6QIXmrr+sYFMC8nxgAn4y8n/t8C8KIx8/Hp2DqZ8FYlnbdXJFga8QSfTH7DIoq0zua9w3pMGia3kTFc62SIHX1cxucoC8y8MJSCgEIQtJ2+l/UEitUM7xW1adHolawI6e6OFCDHclFXgJ+lA6To5JcZwjIpV2Ss/dF94XzTn3IooLSny76/VBj61tDz9zgXiFtnuwyYBy+IRTFDBFBPMLrP4B9Ke24qJKacVwLCPhtnYAGHSOCvM6J45UfLwTe5r+dpqxrrxUBjdmzDd8colLbjlANtQHMvLLdv7cQ2mIxc3L3MOZHWT6sYnr2Vftf+GVuxHC3Lk6IbY+3vf+FmFVe2Py0lkUoxoeCQAbgdyS40Gvl47+cpaeg8R8vNC5ACoGtaJHeBoAbVwG/9/VqT6tUYIryaiyh/CDNQMt3Dv2aVdkhjzZSQ3jb4a+n451zA7wpP+rwKzt7CfE5D5WnOOCQFOC39bV8SfGFa+BNDX+f1sr8NEEc2F1YUiJgStIk7aAoN4EFiNF+KJSHyOQmfoKWP5A8x5KwtVY5NCFII1fHQG7vmqixDH1b1+6BlOx4kwL8wxQDQky5gmAJo03skeoiH0aDYF028t8jYk/Oni2I6Js4wLQ8fnzyBftv9yUi+D4e9b7v0vyB+tL9PEKHR8t49fhctNC4MFdVHaCTvA21XF+KWfdBWzAQBvMZZ8dq6Ax7X+RTwWFV1N5O6Pr17Q0T0ZqWx/wN4tihqw/UfHk/IB/VISdhKkUS3/4STYQIkmu1iOgyWgpZTRoRLcfC61sNB3lz+ttG3QtMv55W8fAkM5ZSWeqyWFshJXrIwzu/XhHVb6r8B/RLjJGUVRIxLwM1NdSj8oPaotnVys4oi6aZqHpSGgPt1Ab+Gys7MdSgvVi6urWiLOq603r9FSpAQZH8Ai5W9VEfqv0HtiNRzpWWk/sFK52IwHYE4dZrtfQuESxd1ZaQ9NtvqKV6Szh/IXLOmTX+Td1h9pyrevSdKVCX3kTDrtg1Wuw8Hm+IcM8kBoLJbowbNasIeb2kuOv60ykz57PAZnTC/3pa5mYhFiQwbCQ/mv5IFlyws0JUct9pVn4MRHxhxOeVNWaKLG8N8Z8nai5Y61LrATkpDFJ3Q4U5Jsrzw6apn5ebHFrV0UvQRnKwRThsQSJUWraMmt35onpc01qUhm/btraQyz+ok3I2oB3Wry/CIh7S/sfrTx0BK7GyAp4LZkSmfulvgslQfUWdDc4B3qhetbDt+tfco0oHWLfPwCkmTaArgoJWKzOUfXK4pCRWjRmjuCNI4uWFclC+/e+g9o19Mhl8fp7q7I0czDbjgL2HsquBeFeVKxMtdARktsvgZsd1dBUOA6BQmOOOmue6i/E/w4K82K40tcJfPn4g78sPPXX2wyrlqQ+PXPcCuTInvxoibzVO2nFo0RVRf0gZbjZmZZBR0KGeBxAQTUok0CMwd7L3ck/gFDIwv4WHz8Ini+P8zY2kQJYk6DhR3Rd4nh0z7QsqXNpm3kst6gUKWoCeEi8inCnTQAoZsXctDlaC4cG3UoEHsyKQJIc71bDBTW6iqR4yd4ANTCGyhp8rMemqTm2s/n958bSherDv7u6ZEVY+DZ1kUA17ari125I8tid6CoC8aBJh/Ho80xCoHDGSMZCtvYq/4lWTyzlzLBllRzJdZKY4NQeiRvpTK2RuPeBGOqbURRoLTw8Cp8Y6AeqwqrSyxYHJ2YFCWLVrjHJ62DNxB99pGsp5Py6ktGt/8IEf7hQW+puNvbYl3iSy0oaJsJ41qHXCe84BkCMOWB/nNIuNpd5BYozpKJmIlfyUIEaJJZ26cc1smbNbKNW5cJpnwO9yCW4BSxtclXMYfhFmwnZ+7ZVgc22GdBzjhvIe6+DfgBuL/qG/DEW3cyY2e0KMqE1jItBT0pOtKmy/S3XDbpOdQzu99tNqQCAQ+b7+w2ShPrHhPxmuwFZLFTjoBGnaqbhEG0QWJClnNdz3W9zvhedIVSWQnDX6xmELO578hDoFeVUBa9cG7FgSPjApd1Itp93UtsLumoCFTN7ZomtZoOOlnL0yjcFZ4+u/M5BD4fCoq0uqSumuZNC9R3h4wp55sofWFI39ZUT1wQ+KrDJSUwnbLavg7yF3C4xCkp3hQ9AbGfZ/SxwVIBj/iRhPwUoknNz6WDMPrrbPaH+qqe658ksB4expg/yJOlZDAccrap6ll2ZSEUKBaS5U1/UJkFMAGS52SW5BT6PnSoxZkGoEfH0niRyOdYy6dqconFBZU9nFl9gLcPnMfITEiupPvrrO710Ro7Lg1WeM//+9UYuz+PD4J2RYyjBQKwjYx/tERdNaXW35c65bLyhvwXfG5Wz/6EFb/IDmxOYlVZWQzIkbHvYz/GdhntSSxFBN4/N0+ngx4eJx2fXKzDPgWvZDoc3rz7IMdIPfhCk8CwF+HqHR9L5dEfUs7nZPerNE2lyyG6h5/3zaD8Eh+w5fMit86ikcM83xYYcr01HNiTUD4ieM+xuDwQGjVppCtOS2kjCiQmZng0DjSaZb6YnT6Oe/eRDASsYudbrJFru5KR+NiwXWfx3NnbNogoEJwOtAa4ZM1yzw39cWFc6pSIUoIweLf5800Y3AZWAqR/0RME6JhYVNyST41JiNj2hesbJTz8eQt5j51KgBrwEgWM9kJbMA6Qwnfc92/1txzYa8+GxGPRmjczSgeezi0fvLJhc7V+YrqCrZdVuFj5uU0XkOvHNIw9sR0P/SQsg62zij7urE673jzaDe7uoxTF/QyCBdIyZMM/58rjStUF+WNzh1xCVElXT+7QeMquF2JQoR6I2/rqmBzi8pb0XnD/ZguG8eQkbFXsWSBr8dFf4ruRtzT+/9qAxWwA1YnmoxxBtj1RqU/x5NiX1XNdt2NGAkvRUnB4bhGxLQrJu9tHAwhS6W+vwYnFsJuxnFvhsCovpbVPQkeZOTogwWpBTxe2J6iazvxeKqv1hJhcmSa8ykmQ7UOkbdMv4yCywsSyISkgx9p5j5OK2NpNu6xmlqQvyGtXPsaEfRi5fzk1Mp4S23uokmreVHm8AGN3xZ8K5coMm75pC/xxjjm0aa+D1QMW1ln28ZkIYHh2I5V7cDbtGOKUSBb2wm4vuwNDA0A7THWxmkabIABqH9yq+Dvf1y/ToCiLpotzBsAB+4b6kIeVT1o095ArwbGElZT85wUrRtJ8iXh+pfVryoAFOHz3qtkziaDb0GTPRwmrxMRAWTP4xA+xNCiWpWYkdDcYCEZI+OzcSxZlrFgXrO69CU9K/mET1/kPkO02gyLexG6mo36o+FNtZ+mMWFXKkZJRGCUFYVb4NL/hjgqDbqA5chjPf3/wkEhcsuo/HVnfIifaCuqBAHHEit30XEjbYYlR6Hgauv0baZDXBcLaZcGjO3QBrUUn0ng1f2YSafZTlOnS6/wVBesCAROJySRmKNfHEy77wtsHaibh23aYGi8UzH4M6ApM3IH36A4Eg04788zbpoCQH2mTfJjGayJoS2LHyxMu7OORphSnWemrPzCcsbOh9V7zBSNkVvfBA0nu0xa4YbzeiNdRwV+dLZ/RZQJsjLipWDFww7iXPIYGGQDe5cNnJuwSSvg59o5mm5GjEgawpbavEWPFxvrP4B41XRoELjgxxvbP2peg6OulDNHTNAoFjFUrS1tJ2HOjRMCpv1Q4hLPgs5mk2PGLIreEySFSd2QVAfeac/LMG2zh9JMWO1PxsWSm8BMOpSQO3r9C1GjkzL/94blGBVSEfO0E+iOH95QgSnYogjPXdzsTWErIrfOOut72RG8ODZ/wzZ18wmyXAIZ7MD0DqfMLKTijcnH8hLCQf3anB2CoHQZDbAeaUDB6Cmalh2OIzEB7/jCl2bOM1HyszMj0/nrpaOmO7BdPciT01pNVaKgJZdVBg+I0xjcY+juTXaI8s3FtqyJqGGoj8h6MTGiLWdqo+FRyogKHC7HrbkL8vQNvhzOs/ogGO470kQJ6hnugiZM2B6qvrP0wRH9OiRqLyXcNdhohemNiUx/jAYPeVKkrJ3KHiSK025fXZtcyHLyIvqPomZ5B36AXaq5Gbpb33N17GwbKCtjgbwOf4CnSX+wyVweeS5aPkq+A7eoRMp8+Fr0QdDiEc8guITLAQjvY1HJGPWB68OzNCRekJwEFM7p6XnhXAiN1aeT3P6IXu2T9Rga03EZFbT2cX71ZR2BwB5lopi0ONpzqKamkKamGipMag2+97Le53B4uVDsd3bSdnX7BAjYEA357uUGdS2Pkc0h5W4c3ZRSyZgvCxSff2moqaI2hen3SqPsCbow+Cln8I5MLOdcTAg7uJHxPwvsF4z8lNNVWsyoMoNI9lEMnanqgCDNPeI56ewEmBp9UocNFl2AeQOgG45Lq6S7DhoYhkBoskKBGT15iksAVcdxsN8/ZbucPOewjR50HfuHYvveR7bUvqIZcRwOenRPob1q3dI5ggS53JQP0691DuG9U0bb0LH/4mU89Bbc/Kscw9UJu7MuR2M3nRC0y8LEYls66HdyJ/LQu5Gsltf66UUpZdIhx9IDYJ9gQwS0vzy16HwF9zWuPtuLTRmvNq63xYxXsmJScf1vQEbuU4r0fpDxwc+US5ujTuWIbou/xKGrjWlRpOYe+waCd4llFS4OcBdf1OUad5McuO8dqw1GCBzzgj1DL0u23ElO2SrDYbIpaQBMJuEjA6+HF8Q1uxi5rEhgR855dGMIWeQivtK1I7TDpaqtlOPPd4b2oQvZeqoM8JLNMaT9sqDDjGsXbtDaV/+ux2eSLe1p9ZGRTyQv9CyMvmJ8n1BbZgdtFpAz/2+3L9/fMWgOWr5wTT7VzNC4zrGeuLDkGp5q6TtHN7pkPHJiJrnGn7VA9Bc1kKVfpx8Bl2I7UurYisNnMr075KxwiypXYMO8FL7m6Vhy5oELnGwjfXCENr72WgY6ad7Ls5P98SBStKiTfq0R/VTY7gJEqwqyciISEAqqLjmDgT9NrqYrHC8jb5YY6e8tf1vUGcGN7cZhlwQh/GUGNcucoTRdLqqiVwCutxwVEjwkNn8x2x3Z5eRWWoBmQoULQgdZrytx2QzKO9lgnIdwluzE0hmHuG3X2X43k6qc8llra7OEpOli8G8mQAqXtXOBfAyZ5IcBrpYYlQKC4QuWDomHq+9mjhNP8i8txX6sh+aTqP74cZkFAeEw7wSKPUl7hqvnSSMjVSBA5RMkAtE1aowk8uk48I8HeoDa28wRVEPj6vGBnN1kpLTM2MJGQTFOBTyZrEQHs2eYImrLbYSU7K1+xtTlXGY3+SXmgC0/zY2tle79QR+Pa4CP9zAPJrlm9bLchoUereZWBtROXG0sw1EHTix3c8eEeJeik8x5sORQFymdeGSDidxt4rhjzfppq172VsH9VtI/ed5rmOayJ3KgolJlkJrrvuK75L6Zkc1AqkTXvYj+gXosYamBhC4rjl8diBt2wX4Kmkb/5CecK2RnX2Fgcw8oZ5fVsCCwKkYrHqy3iRxYOiD6EERrh5o+Dc3rd6B/brDVFT/8/7NgygR3fXQWfWYucLiIG3MHQRriLyfnLdzYJoHREPQvw2Zomb2MRWJ+NGQ34QrZTIT6eYmJh/ajFcRkoSEtWXrI62KEpQlm5My5TwSJ6OYpBKp7Hs9La9RIyseH03UnUKop8B5sNeBu2yBbc0lnytoZXi0qGlPFR3lYST62NeW3C3ivA2EZyvJrUIkhDYtqEQIWgXOuJatq2WmGg2M9RqfQi177LyaNgunvYvC9SCq4fbRTYXdFiVwBvUzD4gsWMnFWHNJQvUf+TAWGWlf1TPtVbFBOwkcNfeCYT+0zHQnHnSMIZy8LS4WGCfoQ4IlU/ZZ9Ewp1dY1oPUNx50xWrO2l6faPA3qHdbGX5wVRaa6EpqMIlb9vN10RX37fPWSKLlPis67B9baNBB5yGb2uRP6vOFfheTjv5iH6vZbgqUv/Na++bG06BR5DTNsf7e4oNAGwteIaeH0zUH++3uzIoSUz5dT66x/gf2FAi974wOWSQfDgKdwhsTL609OAzL2+NRSyUP6pFDBy/QV9NpZ5WXZgJ07g2qJmqdIaTaIBWN3+RTjFjVHodBvZ6TV5SN3QWIMG09hrpKygEa01eucPK7JT6BFEU3mFuw48+GNTAXyK3XpCl0eYWUl0Rjq24YB4XtbIlMtbEZvgJIyPlxW7ekQUNXxLNWXKjvj8dIOOQ/v17q/OMxVtkMVk7WxAfSaLogfbSK/di55tVMiq1foem6PIwAMKbO/O27rv0FES6UF+Sh5oSGJsxmlNvKqlEgOqKM0nPF+H0Wvw8g7Hn6Tg4fh4khNpvuQscicruWK10ULUEbI8Le0O/v1J3IuXQd9nXF0e6PjQU6+YHkY2MPLCUONO4h5sEJHjwOaYbNZIqwbJGN1CT5hw5e16ccp8iJ1KTMm9v4du1zgmFcCUWBiwJnfWd/wevsgg8CkQTv8KUuRr9nPIkWZlUmYgrq/X2JpfhKEvG5eBg0r+IHjXebg3YC7B5YYZmp8uFCaOBMLqYSug4SewksT5zaW//CFFpwAUCpdRJH57N0q61tb8WMs+80eECt8GwOfV9n2lHDyabydt3LCafpQJMmmyGznkuA63XLXNwXFnzcr7M8CSI6gyCnSY39jyItETQ4WuIw4EJKSr38ktkZC7zefzI7mu8G+8cRj1uQuy7Ec7gxNqZT+kycIXP07V3wHoZrMkF60Mv86/xPvEdF46JUEnieFQdjK3zzTCOuQVkakZ5SsQsFmg39t1VhtjHHeXOTmeD7WhSHEjig9BLxkTZmLFjbuVv4Wj0E7bI3Q6oKXbHcU/sPKgKnyB0Gj541il2NNrlgRTsxj36ZtbcaYpceFUxFY4QYsXfJh9mRvQrU2fGLK9UBGKMucszqQCo6BdDM1RdJ72rWVHUO0n1jDI4XQahvNfWbL/PKwsiHVxfAKMYdy4xWrPnTEiZOWZXe4Dha5xi4gvR+h7fuMGvMZJLxRgJBq0w1C4la5zCKret/dz9HVLvYcj/4r/7jyRBd7pBCMhr5EpvYHpvOtNEbjZDUd71X+ImwxBk+DY1jw31DBjd3g5Z4XeyE7hsuY00eSn1xTv0LFQ9NKcK8hU4j+Nd0Rkc8aFcnpDfGUMLme/Na5GRrVe61dRW3yzOms1Y+r1pOkHGEVpDQJpoasGir0AeNvjfhrzIIxojDPbc8zJY75FzJkeyetvLxkV2va5l32ECeXkuaa/tyLASOrSL8o4CwTkqBIkujRhDMN3NO+S3TOMrR2TmsLfV4QcaSfNgYg9a1ukeURaeoaEvK881eSVpSIXYQsPVOZHcm57oyW4Y0fXy4PDmtY5gld7Mdh91zcNyXGn+kPuuCVu0c0lFlnpTv3GORorcgccB7DYXpKg6/b4Et5h6XjzWImKA5mMBSEWDVfiZZA2XSRA8/L3mjVzzvXOHno5TTsj1dub3gWdkfO/GoRfE7i8XpOlkzF7a263Zl5GuSQ6wG2rOJJ9GIrVdTSMeyzrlG+cuztEoEc4CK5hGErZAeIWEPHwlc/F/cHr+hlT720O9WN/Tch4GdivMJZmp7pK+K9LrL67AhhRMyUrowGuiY5xMika8QWnOjxVD2XrAw9w8g3NorebX+yuH1azGI214DtLKv/NJ+2mjFPoB1JRLK6rfQq6wKmJu6LTDVxXWzGVyYWD6hKlbeQbzFAqF8ofIhBmZl4l7hS7NHLjzsXTvpNir1VjD3QKPZwN3qdH/VELJpcaTahn4eXyZT6UJleyV49LZV9DV75uowInw+S99pZ+wGo+0a4GddwxYCUakrXHbJpHCaDbeX0uZaQr1vj+dv3swVfuv0UT9+6A6CTGnFJbW1Z2fNQSv1cfVqJKrs2VOKVJGmuQFaCeQF/1WDy/sID9GAHCMDM3ZCCZ6zoSSyAC/qUqWxH1RTjS6VV2lnxCveWnXAhuDegKIALuqIwdRCyQrpLdagOTLI9+O6ohHBXTM5d+ldj1xyAotfS+bvNq1yzo30tHa2TyLWIEdFev34gu7u6ocdERJYq/2UBXkE+jvuoUFM5nV2TPkA7hdN1295SUSrM4NaLEEedc7kUvFHJfxggf3BDtefzL55iyJo0AThhQxU1MapYARrOWgrLb9jXpVWM7HnCUhvt9XX+BOSdmE6Axahz6jrePjPXxmGknDoq2dboZY9VfEKpiDbXcTI96jhzOr6GwAUThvXTzOLmKjdwa+HqP/Tpk/1h4yT7r8WbIBxxCTE+2LCbSNdNQoIrtyRzO40Z1OvzUYcL6XJOlirqRF+wtGVdga2EdHWQyTUqL68RcaTHXm9Tw0RHuuJ97Adpka24Evcrbv4vIUVcmj5qvGNWsEXNzMawCHYU2bNbQ003TRc+6uxBvxXyaymaRtFmuJSoFLHmfTN96Kjs5JbAikTzNkzuXAQksqgVGi05bxTjPc4b+xZYSIvu1KNW77vmp3A83Cq5Z8Ww8rIjzZJty6kQ9/Sq5D28iYPpLe509V9FOoDp5k+7f2iavWr2wLhZ4luvN5WmsWjqTnd7hCqJSVEjRTHy4Ob4l6BRCrVp8mQ6IrqUc7Zw5BXWt6gypQadQKdyLsI/4I7f2fYh9RbpkhHZ+YyTqe6tN6y1f30doGAWMxf+5r0BnVgPW7EMavTc1Ir91QJh/6CEnvicM2bjJ0HESutVMmTxywZMEve/MBirwti+Cn+qb+4BsbbzLBWK0raQUTVQ2T5vjmfw5EFaPB54hs/tZUk7X9uXBnk/bJfxdwJ6G0vKrdouvqtwcT5tHmpcg++7tAlon/VMeuf1n2+iY15FYDnF93FEjyhO8ftRNJrSGHefsX0bm4nNuVtPIB24wpCpriPG1fkvG1oTqAG1jeDTp8aqEwuPEX5E0o+VF1dPsSL8mZwdLmj/dBj97rInGb8nriFGfko89tK2jB1NrJzjkxUo+OQACMU2OHUn4AYDeXyEzIK98UWxA4BjAZN0ykluy0u9XJJgaWoESTY5UsN3umvSlp0xzBovE7jiFaF7KhbccRDN2Wl7EtZ2Qn26IU7VUA84GAgu5Klg4PoGQ/X7ytuu3Ud9QZsF4uCtC2KOeGHXSRyrpPc37UrNsO1aqnYmUVV000fw0OoCabshhCm4TfxJp9ZRrQ4/UyMu43BRIfKk58cFtFM0VfRb9ru4WJ6BrlijLhFg587guCHBaeUfNhkpVTGZKDB7EPYOn/lIsXF8baBp9VEDGJh/zUqRUs7d1xUiqw270PfcZF74fntZ2SEDS1sG6fmBUDLP7ulB9i4ppq4Vd+8jxUgnxEQPYJDEzbWF3B7rGkRXXJdF2FSzCuSSB0PQdjKK3vvAohXdCOfSoMY+PhL516n/EPgpZIy0FjNEY8nrj4gmUi0m8HTSPbWqqn6pbCAyFK2Weu+rbGwbwDZVV49P7Kv6il6CY3MbPt/FN4X1dbJtspGq0jL4HQefVQTn+jwuQtZa5fA+CgSyGai40QRsnuf22C0Km6cLiTi2Fb47v1rYOvP3HBtajieQA1iNuoTJSOCXikWRYYCdmsSEyrwSMq2JdmTNxYSAOpd08Mg13HGI0s0VTV37c1WYY6JpKR5viBlEnK5XEUM9gpGL6vIA54foTf9I/sLnH15P56s8XW7jOJIgL24Hte1ZczfLwHMorgmbv/zR0LVU4tNLLuiH7wHWajN4nVdW7DQkiHrFHrAunzkf+CE+/dLV4sEtraZqBL2kZYWjl5zRPr5jGQpEQikGA22RLzCiLzRKGz6LeDU1hfqAiDStkbJwN+6jHRUgdu+/S13CkE+fjV4pE5RWVvsV5E6NBylG+0Zwtmarl7K5eRhDlzVO2Tn1sMJtCzXZVJlQkyhfp4F3928kYWHXul0ICJjnzE/3fxNi6YJWz+D1l469HzliQcMxxGRVRd9lr/cBl/t5mk57v7sPOOjDnEtMbU3FQgRb+cV1tbYdes0Tr0J28JU+QzWCbMtaTHwfz4uVMGdnN5Hi0fuG5Tc00qzzVyt1iZKQjs511CsZBI82jzh/+gzXHAfQfNbjeTy0XBPuXu+G57hlenKfjxM2/QdXIuV3x3ZCgr3WR3ohaUdLe7Iqky84u/UtqvEEoKEihcOG62W9txkTiyo0RVnU/HFGgSMqgD7gqNeOb1mdq3DYr1Or+Tsqa1AIZ0PALwmJ7DO4Zsv3rJghSuuC1/ST0cvsPhd5WOW8mFx8w6k9s2B6inAcdsavVy8HwrdocUYtd3jbxgL8XqPw5N1sP2VyoO14q7n+EFLlmWNZwxMTsmm6983G2eMrUbY8JZ/wTCLAZ5ocjo7orjDCIWWRYL3meBbJlblaEkNQgqK38BQQl4soSvUx0XLp1AxnVa5xhgSoC492+vxAZiRuryEx+VTUgBOmEe8hXC6IwcXN8GhWXu0smEP9V2NCbP5nelmTNNOYCIgZcEE4OCTaaSbERbOqIHu6qhH/u6gCzZUiOFFjrWSeo++B+R25B2x6OZW3fYWTbIpzHnVaGJmmd5W4vw9c8rqyVybpWH/uwX8a1RjoWB/+Sjazk2GqmiAJIxaH2VKAq7VB4ohDXbHqnsQjg0wEVeAGpjNcPDcXrHc2imdchrfiHf9h+2UMX65p7tPbb7FUABXGnELMOB7SdFtBugE4MWN1E8MoylMACBylMhe+MxTyCsx8atYRxkG+lfJjWxAq7tr2w4hPH7W4/phLZXMGNA8s9qaUkfPf7GUACau2f3HnCSO8+BFcb/kdutN4ICXfFiWGtra2DVfawQHoBGGF8KmN/THppaxWRUWasfzyr5pFN6mrOyBVqrV8lXOKkwlMV/XGIb/2DvNORPsoHMSsIHEEVia27v4TSOXlO/1r4xmTGudgyyuw3dJXyVi+wRvowuQcZ1SweaAKZELv5R4kL9DmnT335Z099/iwfnV9KnLq9F/j34LQEH+iZn1t0k9yausjvI6x0X/pVKBDFxFpXyxR+srpkT7SnDNg8KkEPrbkaaLnm49l53fuMnnqNkXywnTzdmTxC/XP1mt8Aqn2Y3hBKc1L/7qgCh3ozkHel1n3PTMFgUWQayLIG1hRWSdlcYRTkIUOCzO8UKRNoH4SuvB+XBF9lihlk9H7CLO1KCilWuA5R6qZmvrtVDFUATiIfb3DjREWrT2MSfDcoMwovai+uX0ipnV0PZfKIa9im6ZyzpQ85mPy9U5+J+NeybHrNJdZqPnN0yM+ciubOQt88dMjfk9cz5h6wLVrLhFEMs5cx4i0jVwHDP5Ua1+bcL+CE+EZkmkDIW6mUXUSI9Auu3zRYvv6rVdt2VRSR1Qi5wzSvgDl2bSI6DRGFGflmYI4sEGTSQtONmwehqG6fOxqDTBZdDMePnwSFdJ1gAGeG6DaNc25NcsENI+15E4E3isf0PBufFQGzCTiCXnCtzPI1aeAm+/E40lSgAPifUBvzWaEVo/X54fyuZx0DVhwVSufDl5/bz+czzMEUOsBTmlAftz42D9n4Vctku6SVjc2oYj9XbsIBumKIlbxDYOqXay7XEdsIdA/1q7pNHL6FaX5vgNWMiVNECsfIZub/aHm+ersKEOPwGlMqc5AvrMv2J27X9GSjbbUQNsE8XhyriAYobR7EWYrybmReyN8s/wb+Zwnw5Blo3xgMHWfpRLvrwDU4U2RK5IGqQFxTtTp9SxsZSbuhELifgAh6H5d7ta2zyaTQ+DYDDoMh8vXaOIb4cjvUiYX/T76zyHMayGAY4Ws5BB89NpX62TkjrlAXJGz36WByuNxLVICw1+rt1y1ALxLGyLawNzwKE2ngwNNKun72yciyEtgBWi2Lbn20U4d4LUuS1TSGzw4mZSrBymnOKwPIR677178fcMZMxlPj2I1cwS7OGktC0/Fe7iXtqvMSV0lhWYmqVnm45FF8+BpXdDDoSfiAJg+JWaFHHmaQyOgyt8PhbKQ+r1zi9K61OxOg8FoDzWXBIu7uZu1LrYwroC7f3CoPL6Yb0ktjInl8VRfKAlHx6XqNtYpo6MEpgWZ5y/jW0lxqy4ZiG47VdLf4KTfp+KumxoA4q7zJVCSiRcjheaRAftmK27yiUJWCcrgDtlZeOulTzkYiNdFNexNj9bnOGqF0pQ6fleiIekVOS0n8N2OoEUTTd5MemXnCrfhVtO1xTbWX9Dp3ecE8i/ZNq8lhBb92rTmQU/m05EBWTLSTJFCxj4o3VkR9VDyVSvUDbU9AdjE54oyywf7R0UrQXVUbNipOud9IQEapZNTGA7iToKob29G6NriiFawkRPceq2H0XzMvMuuuK/Sy0OFVSbvIcvGg/aJ6mUH4G911uVvAwU8AGsxy9/fztNwg2a+FgTGPb2arKyPNEaiq7IguRL7PTTowwD6XsWrPqUnE3Pek//pbEoNI/lw65LTC8FMq74D+TL5oT4HKALLpVKn2wSQBIN0YdGMUfnS29p8Q0hiLFb2SevH0yuaRxmYKg757xNXX2CJG0uyLqX8SawSoJ3BckR8lnPcGOQgVBYEkfYNbpWzqitbPfcaHrojxAG8I+toP0B+fK+s2art/759IXZPckYc6RRzFyzbu+pTacDfcSDcX42ch7ASJtj49icGQM37pv66PkWrAswpWNFW6jmUPY2Nbl0XzAF6t6U4VJlLwwGZM93n5lZRslTILHKB6yattiQJluRIzu2sa3bua0GZnfO+GGK01rKK/Dhga+7f9a1EK0NEXlXIBVFtG+/zV/PoCrPp9Z89KAiNu0NNk4+BC+MlIjxLGWfiF+09++fRM7odLy4AYgOsviYuv1gQb0dkzpro7qM9otHVe3LeWJ4La+wIlBUeS8nQKIVWGaM6BWVANUdR418wpNtGn79zD+0dYyppaiTiQwob4YGAAL6k82824XaAPNA/ig+5tIJPzqVK3ayN8MAzyJMvGbc2QL4fFT7uUJyI4KwE6o3y10DNZXVpyvVio5P52p8Hvz2zCaRyzipv5tmsLxwcKT8rRUEtjp4y7RdYn2nkhg1sVq6wAK1WeauOtuQt/9N1SFs8n3HbntqECtICeLxNibH1M7tmGuRDH83cUsuUqe2yMunH+zgSs9DTkCsETgOVBFClpqb9kZsxqYdCB6ocjlq7POeljj2UfE5JEnj6PyyBzzCHkzn/IIVPTYW7NS7pFbPeqxiQNvqfSX36S2A+uzUlWjahMVZv8ZW0JjSdE4JiuaM06SGo+D+SQpsgceZ2PiQN91Fza5fcBSMDMUS4TT7bfKxF33Z4GkilMYA0638UORNFxMis5BuhsQWdtdcSNkEsp1/7RnEYGwjPmQ4atvznFSlmFaByjEbnIrEe7MKhke5C0p4xwHRSrR7e4xa/YHJHsIwadvPAj6XIBgBWrRDfLm1I1tVzdmxRKCGEHUlZ1qj6+c5cil07cUY3/+MrxUCqgCuTaiS2uZuVKKW/QwPw4DEi8DZvpkZTdzCBOLrJPkDW86IfUB7HiEHeOdyMKCrhL7Jt/TL2/bC9UPBv/BKVNVAv7rG3xSfeuCMU0l0B4m4NurLOsD19BVzmx4CLkn8FUeYpe0Pc41aCSE62dpHbVwIlsLrTri1kbu4VLmZZLMroBY5Axbv8xj1EAkmEKgZe+uD1Y6e7hKrGJVVb7J6S8zeAJ7s1P2/9GW4p+wF922h13sxfK9/fiZClSo4Z3NCZ/dZZn+bjcAJomNfmg5Mm7yLGYA6w1ewiqm91ahS/7MCCqEbBjjv1Q92fEL5qJ4Bc2DDNc2wTXciT2rpD8IxlQW6umMq9ujuK6X0i76XoVMfmbvMe822DPFlY/FnuYbxX0Cdo/LfLPy2IpyhT9zKvHgz11c/Q5y6mEO2R4DEVzXgXjLVT3nf5MIcNb7WhKL66ib9d11Pozdzf5JFdxC5fm7Sf0PC7RVgXMZK3vTaOF5TI/MUHp7jTqQkZT5WfKwG0iAYGE9uk21G+ZjARAa+mHabej18r3nYoHVPN4g3B89/7tjUAV9B/Y4bgTXWnlCwqyvV0N4oArYoQ6jfeNRNaJqFjiNTcv6sbMzEk3yAL5/1Hyj+8jMTB6uBtXsaKGHQzFhCZb01erDSHNaZc2dtCuSOxLf6BWuk2gSxMrT4L5EzAZ2swZJRadgyuwdk1F3+jfuuEPHuA9WffA8lMmPlGv8cnbakQW3hdsNn12GKYc9aF7V3h9brmHggEhr4RhANggFvgpL5AHjKhoZ6FyrQNSFuCO5w5HJcBAIp2HvRu1OHeARyZfpl7KfESsu91bxvGZ15pbLVRYbu3xRoCITnftQknw6g73aGwIAg6VShAs/F5Cd+PerO7DQ4pOnujiKnRIuixOPlsjmJbIDidsiVVAGIZG4hJDklptMj4SfdvwbFl4EhVowPXBTNthlkXhtwPUMG5Ft+KBDjhWtUUeo/V+k7dthJAgM3SNDovTbJiXYqvNhl8zA/ZkXuYP2TaAshuBxeOJmaodu6S325muKZw2sbjr95T1OywNhOvv3xK1zyzd7f1t7BlUsPaD10Qjvy5UYCZSEDGMMAV/6OUhOPrjbkwb6xU6hGIwMGOz8xK5wMRSxARnN47UdDykes0LmPcb83iQDfWYpvnjVQgmB7R4NfedTGwL2YbtoysIuzYkPXyn+48CpSLDq5qLW76VYSGZNAVdzs3iEP/GQgzKj3ywp+q+TzRi1mR4mR/vh/BpKZGFbro0TeBRbim/C/5tupI94WSeOP6FdeTxJQGJ7HuGUxlCoyVqUCzmyIFyC5NIMcGEpmtpSNWsJZJIMguI7RQbHQBSQfhqZXJ31nafnff4c+lJEENDAWwX4Sw1ttoB48mD84zREsFPwYp9VKgHCNaO+tKnUeETrGUllYW6W1j0C/wF1TV46B4hlpafE6h+/O1MCIK0mCZOPCwmlxtRwgeGTwhQP5LcbFJaZmFI5gusLtJVdocb53fWci2uQQ4aS/qqGZMXtFsvsxIFLost2q8d+eMAFkrNqt+L8548/SLNmHA0JepuYGCldO4KbA5pZOyDSD6Kph1/i9Gxb6LE5Y07KPLvDiRczwIOh4VhpRIlJr3FOJHabcx9gVD5NQHATuaJwsW4mxllTfKZTNB5zrSZwTF1jkv2FDN+42l9LkPFNu1HjxWt+BnxLMZD7Whf3/510dIvmubxlLdaXbdN03q93cw+Pg1wQuzZTUNqM8F75N2wVf+F0jXbFFvOvUPy3K1JlJ7kUTOvpLZj/uSNbpIAgVP4tOR9SYwIiEXwXdAFGkgs32pw9khcT69tns3XHiu30nHX+JVHjMTBPP+TQilj2wYP4ivy2/gafPs6nMKKdOL5gknO63fZtQTmlikB1uhaBnmec5NwjylEekxpJ4RI/nVZbjc+qrErb2SvkHycFJzM4YApSN0XUHrLolLR9+I2RkRzHO9gZ7bHuJ1mgNnz4B8nDx6saar96t82O9qUBhib39foEhIJAUKLWqjCqwnceYj4F46y/EWqrd8tYyCTXQdVSAWfjKI1hl/hwe0U0xQ6sYJMFDC+xCDC7oLin3JgJbDity24G1pIqnPfdL5mbJob2S7al6QUUh6GNIqJCnfDW1HGUyEbbvbcZA3UHzwQpVcBHsL8Y0mDT7Y8JdH2dG/lRvoHIzl6b1dJjCNnzpiSLOOJS5zQEZalf5NkESBInz5jChCOE1lUABWTzPKfa0FUkHCiDwjy0wN2G+ITOh2iwuk7/0q6M+O99fx2uJW5v7oLbfciqHzf5+y4WYLJJAVJUwg26bUOlRccSFj2lH9ejhzfqPcRwjrdDCd+goSgchoYNJMR+1XXPO4CYxsM5ky5WjJdfegi1AM+ENspIgcOIXwaVwFfpLvJj8D6NcK/ZYO8HZG3nY16hZCOFBlqjV3EHdXDDHDeY2jTd2RpGh7gRUfmuQlxaiCU7W11W372o5d2ESgIbrnzJ/ThV4jvLUQHDMUKpkayq1rQ3DO1isdyMBU1JVESNArzCgRveWU1omPJ/3kVtKj0jaQfC3x2l4vihcWAdMQLprI5fzRBCqIejT/ul6cSIGzPfbnQCDPR8IrK6XYzJ6C1Wtiwtw5KXstKXGvQc4wCwx8o4KCsnPq1kJuYQA2sW+xSfl16ziFs1XaC/kJYj10Echiz+4IQPtJ58WQW9NAbncByIYkYj/QwdcvfvD3KIfKdEoje0cNMrAn5xgUkAb7340uQkzglo6zjuiZPY95bEXn3wJJFc7VfxkBs12939/CyGfrpQSSFsQGHbc9LLUTfA22WzmY7RZ7N68NnzWxtK/A5WMq6z158JgL8uklFdKZRYPh0Mslh6Tr+2fawIz0xAqUUf7kmv3xeorO7XQXdH5WItv2XYboRtM/eyqzrWj+3PZocN4B85k+bzJrc6ikPs3wiB3CaQA9FlX0rRZYO/Tra77jWF2Q0pQHqjrhdHnAbzfSY2hpUo20yG0oI0ZKNWnGa5Eys8q0+0WXN4Kb8+SebxEtqHHOko+UxMBoTCuJGKTrZHaFSPBCTSfeRT9wH2WvT1AbeSGMp50Qd/dL57AargxP8boVHnYttQMjxRpAQ/QSeILbbA3rrGUT1eLumA6UtMuoeHs3HKsG0Yl8HpBXSxW+itJgSpJXsGiLGE/a5snV4zrroDJFs75HXslJoLfXZVQpbhLU79X48MJjHaSN8TSEKliobcdL6584yX4I+Pwp1kMQDhBbaKiNSvaCGRStkTN1159G4qyd2v4fwBhV17ZN48xjkg1N1MsRtvxFIVfBK6UWbt5htmkCPM5/ZNrR2lLrj/md6gtT0kncCGtYv5tNEjstp461DQQa9lDKRg3BoDA+QgkHkBtMygVcCqUbfiVMMM0bpmmIHdmthvkwXwdYu5bGqfbWW1jIaNHzX8TbGfwqJw+k/KauaYBu0UQHFX2VNFnjUrR2cuZ5uvTg4meIb9dWWwXZB100QpJ4Fx3Ai2buGyANARMMLbYLdTTpGQvrWrre9/T+ANZFPuKuSDuWRBMH5j7p3rqGPWzJAczeL8MdKo+i0vQPAKFnNs2gktuRYQWW+3VX/L92TiADeoLVaHS0g1McXeWj6nO+DZbxdiM9I1CaBa7tgO7ag8gSdFx5ExsDIIbTw7dGvAJgEiYq4X4U78oTmqehSVEIzotQFF0EfAFckL79WwkdaMR6gGpgHocrYH5h33ZlAYjKKwc7tPJZSNxhNmsBdLLCOy2clpovb5DaAin/AUFXoQV/JVpjurxjZ/I8tnioJRDciXku587MynGW26bsSfl4C7EgBdehOHDqxGNVdCHGsrkSRgkEDTJJ0Q4UKazoi5MWLXEF3RHmamiuiH7rb4DGiqBYY1h5yhoNRJDpcXhip1Oq4Mncw4hGMK21/f53EN3k7gC7CK9ZqxyLuT0jl11gaXltwgUv3RYWqaAuUZC1Yhue5SPohKa+2EnGVxecxDnBPvvlHhL4RRN03zgjMEn1+dtdN41BQXzqd7tfZWQWkhQZnV/ESx3CxIEvSuqBXtorWNofIKpdtfuVbcUjmN/tY6ul0e6hFImxTb+zpQHBG8XBwvDXDYzfPvL4y8AQbtdwvermkwvcFDnjAsHQFEWYYghttttjlWOWradm2OZIasnu4/xplV3vF2L5fC2FK9GqSpkahAhNgeX3Z+izPIeAyIP1X/uxJyWyXEVYe+cHOlkpGFh257Pa9w6dviBVER14D220ec0N7v9geqzFgLriHrgmq+8AF8V42tEqQpgBmxOqR0Ll5Ec4miphIgOIeZ/uic7UgANWvtsWYgREgrq5Lkd4K2rwP4AakQzXGn4luMzcZwyFkiR/7kx5jNQ29fFE9Q6N62K4D3VzMz/T9rkWaOBnBluWkZHIzjHQ6h9DcsqzYE2KnI2O2HF721JZhvsCJ2YVTLRIB2zPq/fv4rLDSraLwSCv1breNrerEZB34Gi0u2XglcR07PJS1RV0qBo+qQmDdRUJ8fiNraoTeBxDvWYZ6Q1TyM0ciDkBVZ9zzQDOyW1t15oRZoEgwcZuZXqIZJAZ4bwij+U9U2dlMRD6QwvKL4ArNNsCylXAhoo6Vva/G+ox49ZfnPJ4Nie8gi1qq1TDwwTnTKSZyNQWA2VhTivXfoXC+VvP57g/JAuZxrhQauiGUwc4wdtqUY3ySM+tMDa6r/bInIvYzRI+i8xPHQm7/47waFxsh2F0htQagEGiZ+YuXQzJI/jtFhEB1ztuLS4E10odIgyLYRDsjAw+AmpGPLKE6ZhZBDCOLDatN4J5+seeMt8rzYv4rrZpnwpb/lMDfP9ExqybUTLpVmOLqCfh4nf4Kmi83eprG8HS78j7/HUet7cRPHe88XTmEbz4zH4S4Z7ke/61J9mh9aO9yOJPC9farg8Djg3zqTS/jqc8A7LIy5jILA2x5wJWKx/4FtICW00jwX4mELPaZhxBrK3ulKVa+eIawFUFFH2R6JW3sm29zQ8OzsyLsGVpffDnKU72ShHDI6cdKaOeHnjdj8Ye/6DJaNnCFWoIfaq4MDjPcXGsbdQ/R770E+ot/ZmrTAIX/t8eolZXVKqpjT7UIpWHRvDjJ1Kkr+AY/zhw1DQuCbMngIWbOv03Z4eJmXXma2zkwfj1qP5Xh0aLwFKoIrBQ8KRKvfiVEGTp7NoDQZD9bKesb2gqGhS3Q5mktf5S5Fi3RYrxr/p7d/jC51Ig7gKYG5EYC98NejuV4rYEytAJANhgMEauiq7n2tFbUCvXKdEi7mLLhUWS6uUQKlcF6c6mFrTZrXexGeJodyG2v9E/p1TNWQVWbbqxKtcfe5M6zfrkcDfMfJ5XU0f5n6JcuvjvLAZrhe0sKPqPCtycenwx8s/0X1MFLvpVgnrILcWWAYcrDx8U7yJ29LDYvwlDfzCsZN4384XJGG/qKd19R3mkn96wqG8KZAUy1vBgDTTSWNY/3kEnRaPw6Cx7947a3CCE7n8mWdVdVkelJL6RHSNvrcL4nwkXQKvE7HgZnYOVCiFl6mYvu+8rfxM4BCvyMvJdEEDwitgl8afhaymah9vZk4ZQcvbGexMTH8l1iOecW2LXhRGiw9JQfdQP/ls7w/8kJujk3HbmNdu8mobYcsUQgCtwkaoxP+dYervVjcgrDMEhzIS7Av31Akiy7prvBu0VDeI6gsdxcCmiBO8H6BFeMmCx7k4Y6Eqz/WkJzXKXIoBsAPiAI3+hQ/8Zpc/eVUKAytXuB95GhFv9CmBUCqHnAj66V5Hkvhr3Ya2ctokWXZHexEeTbfFG9w/4FxfT1HkChpJvupw79yDT8pLQx413w7fXWgknkaLlLvDpKh+mLUHGKGnnruIrNJ+JvGLQ7LRXUMSktD4bX1gQwWvvmZs9NhKUnnK6bXG68GEE6gMXFbcSSaa3Hzqx7Uo01Xk/X5Vspjs8aArXZr30mYkArJni5NGRfr0iUkPOiRkXZgWrQiv1gQ43DUfUyYaMPo14NqpMs8yi7oFlt2geAxmWS114gx/tpnA15WRoFkpdkeHPzOof61KfAPrG9BOnCOzhKATFTzp1CtLUaZirFeG044IuYWa66bx8+lFTVJ/FnZKNXN6NPBh2SmehuKyoc3iZePfXnikeeM2eDANFkxlsEHZawzfSNxPr5avQHN9CG3G6kv0BPXFm6EiCTTLAQ2hUZmalw2CWAfYCBgFBOCldUlytCQW3CIFAc1r6UPoyAleBKBcXRn0SMouSehoiGUvtNYBdeLiHKcVDsXKAAMIOz1yI54QBvu47/t5EdSU/EuCOnQUUtH9J5kNV83w15LlenpfYGhDwowA1g/Kg9/xCNrHhbh0QapNN9ln8eAWqZz1cuZYOFb95GOM7sbF0t4Ao28hEixLVcpN7pH2GjwyeWI4A3/+F8gJm1uJ3GM48Yjz5TDp5NFVNk9m1WALySXnXcw/E6xk1YgfyCvwADmo2F2ImdiwPH6B3s123eVvGPfnxN5rJSoLRQa3bPrI1H/QT7NXI4ypkAcnn/xFsC9Tb8ChO88q3DybC+yvACC5pBBckjpL5zGW8vp4h4z2VHmva3NB4MwoF5BOaDHjCa53Ut3N8MRkiut1SlNDfzKS8qKzzGkTyd5+zwn0IJ2YVzbUtYoGxUIHUrxwfCSNk50k+IzOPi3dhocAQ7b9xipGRJYTAXJ+AT9qKp1szhwgCZQW7eCxIrRFKyTBJ+bOcwtC9uRD+dgtGSuFQnB5YWawzFwLGJuKNZXC6REzGwFNP3EEQ9Ip7I+vN+uFR62FdxedotFmHn1Bnku2bSVbsL39j32Zulu2Su/F+w9XgU2dMT9W6QK0ABnLXMfr63syOTQ7A1qEW0KHtwx7yll1nSxQULLGo/S4axGlo2IOVMAKjZWtSCPVHOi9MXAO7Z9vZiAMsMPYkOkntKvk0IPSh2Qnq8AA+54lJFzDolnr042NhYGMcMiIyJXc7liuZzgxZF/QzLECAwtRutbnp0n9PmjKmxF/kVQ1wx5iI6lD9SzNnGBi4W3aUBkmP7Inc6pu4d7zhHKTHwuS55BfWak1dKQJ56f3wn8rt3T2qyjfLahZdZG0xIWzUPZlk5HJn2R4Zq4jGxP8Cc51KA4PxH4JGKplcmEgfQxqMgZJO0vKQz7aAz+h4EOUfr6VadIhUNxgLa8cpSQ91E7Qv5Qf/itQUP0Bo611X9RHE8l/al/H0LyUzckXK+iNPKifIKzf4FNk1W7JBWPddno8K2SluVjtpx87hLV7kbWrbOd0hPH0O9YTNohogmSEeIr2bBBRi235BB83gINJnV38dpSwVbmaJJd0Z3GEtBa1sfnF8AnuaRSQccs9VUq9xZhjxDKtbcdycqYYuYAo8AQdGM0vAyws7tlvOD/AB6FHlid1Y/t3KDOa95O3QVYcAgxMRdbvE/1AkSRVDw6TlsM5O5JYzxOWwaNUYgdldZLcSniB5KefErRn0AvTXKlpRtfykWZh45C9lLMgc6DYPXlKibIsOPKTZQjHwcOXH3MgJiVe48RStE9cDr3pKpopeVmFHLDif0g8GF5wB9MTBoJkNnwcpjpJdjhOSKW4rHveb/Mn6mzH2urEBriGdY3vZ12Fm1gdNPIIE0oPQ/4CebbHp72/XkcC2Wxq0iTRYhhIu9XXWTZwdNeJn9UodzKGO/J5eG6VcyD3ta4O3wR8FcBuIUGXJR5mpMI0FYi0K5tQL1Ttvj2HTZOkr7QAMvBdgXNnhEC6wBpgr6qCQrLxhBapsRVNPCh27JT1j7pyZwYBd5D0VV59nvSEerSBImGhlZAURWC0c5LejZrUpVau9Sro9zkd05nEL3+u8kP2XMiC9vymhpQNcfYVfr/jMT4I4xqwsexur4wayW8h05EbLv9z5xOMl1y20Yp1gh1QhopzKO05TVMyjA+EXt+kfzBxcFagoTwI6gt27uqa72T2ejTxjSBkKPO5bzBaUJ6vNbayKSiqd+IKUOlJEXVSnIlu3ZOs6805KCb/WZsOEHEKLEV/HwXtunSvtMFRyVuz0DNrmn2sQo3k8rYPIKsND0PTCEI18iqtyeaG9lD9cTNAxc4cuMa5Tx1wI7eULVPT8JQ+w5BquVm40xZOAsBbLAM1ZLIRJyNlyfN7xg/TQBN3Noa30gokWszg0c6Fmn2S/bRZid2fr8CsgmO5mCUJWrpYU3rBIAnPwB5H7BIfkSDr8s21A/f0ZIpPhgkzAVTNU+QtTWxV0K/gDmla0FQ5Ujt5SSLoWsEiJnNhxYiWFZXL4rwt3d1wCoS2oaCT2NBGfqlSIgTrd6huVfz7VXZWHpQYtxlR8Ey7QBTH77vhlhYCuVd8VTdwKPi2aEhEsM6lYqpV6SEzZD4dN3mSUJTxAOUgtCaENKUoMOpGdl/mgkhPLQvkIXZIYQwviIW5mdO+lB4QJ/4Z+8vYKYA/Qz4Mkjmp+s6E4UgCcKQwbyfDn0kUAAhR40uyaKQEN9oNBrKwxNvEOle9zntMIWwgTNedvrdicREYNdQgcaSZMrQTxszERnm9iqEMUPXr9hk8A953hx45Pv2ec7DgwJxQi7P+ngzkuUbOxspnpBcaeD40VOpTFSSDhIARYQqmPFnlhCH8dmeXJmVuuSdSdelxHwVhsCbIwEX9aC++0Bv6dfUL1KTkt0mqkEzggPA3F1CD1N0TzuaXOJEZQUBH8a6W8S/eVU2WD/K/qzpE2obZ1s0Vf1Mi4b6/RZo8gUY/0DC2zJyYBtRMEQFiBYK7jR8yiyg+2ApwVdsmSVVB8FskGiAsrA3MaOLuF08p1KPB3vgjMGd/P30NEgwOmCkEb3AhTs4dw3hlrU8tIG6ilejxMGvK2AI39FwkDNRGnciqpxDJ9FK14+NZZtqVcRBGiczJRqIs2BwG1IghQbUsPuja8Bu+PYX8y6SuB3rhTm+qPeVYp/gEV/6biFhXbbj0kLpDDx4JuKMGrzV+yRLopkln2zu9d+aV+uIB9VqQuv4c/QAX2LcLe1S7YZ7G+EP7USbsK0vJpMcMoW39fU+EAIaQYpjB2PDfs5rMxQt0uZO4p5VcicccAUmBHNAha0GrYhbzrRyHNW40fHyfECPpKP6Q58EaKfFF+U24slEHrXm3VQk5PKlByxHFiSzgY2JU2NUxi88YNbD1UJrabPcnZxlX0lu7QSoqbsT4A4LzXXZRr+O+MX8wskk549ijvuaakeXKP1J80fYUhVwbYQrJtBVnusekWzhmH2VGynlGanUSdffx7fgjkIzJtu3yHjrHR3NlQqzXhAzQmtTkUTqFpropD7wH860eeS9iLrzYssKB2PTnSZ5JRZnH79Dtp49UJQn9gyXJoIKAV6wXwYlI263bk4t+9X3pbzYDYehUDZ9TeaELqfb4M8iYqhy6Vgy/Ra4yZ63tUNn/cGNYVG9nFD29zwqHdeXpvqhyyOG41+IQnx/oZKp5SOOoXKxqyEawXNsa/+NvkMR2undD9OL0XGebJoWyYMdp/wrAgLtMY66QD1f79Vbp/oDtRaKHEt6VS/uOhfr8+POklmFs6kvVFaEMxQQ43OLTFfUxoZwn2UqcSzAMVzYPloROkMLdvpH7Ci9xhXFM4pAunqnF+nRVOiObQcweSAevqkWGBrDDnNhf8RBBUcAXnzdzrtkjp71Q2WQdpUYMuGLbJk8polzbEZ9AvMYbbVXrxasqncyj+Hdy7FLYyp/1OewsvOKq9ViRlMeUwRvv3oHia/pNTH0JVQUAwoJkTSGFfmUP772/H5MJM3wiq6TtNB0nYtA0hQN5A8bOCowXAcWEnZ7TojuxJ8IePQTmwb7TvHgi5fzn6SuTd1CQorzUhQ1Zufd53MJ8bdes0xMyIDGgZ/d0B45tAfLjpx2ng73Fc8twiwsgcLY5YsdcDz6Gt5novqwWgHjuZCRCN1Jh643nGL4x/DyE5jWBocJ0hXNtPRw7peGeraIIH007BS0vFC7zU5o3e9VMnw+573VLZ/sng8R2IqgxrLTdnFzDykBjUVdVRAl/Zi58VRRfOpyUW35E9BwOvOkn35w3n8GVLhtTQL1ug5Jk6fOPcDUH1dKgvJKYpn6JMuS4oK9JeRK0a5bE02d8183mxOAdRak/6Rsmhf5CzAEIxvdss5MlKUHeceBOUGdUu2zTaqYVjIa2qCVnlP621hS4uL7ccbVWTSI2nObsPjcrvRsWml7tcFScSznEUQkgPm29FrBna29fmMYwwEV8k5puB3vnk0jHLR3BmxLhXy23YbhFZN1eEnliMu616TUol43qV4VH3aOwFTNymLF2waPsgx9xIQqB/gGWm5B4/vwhOw2ZfSn6HNazxjY0gPjuRd7ND9BzMRb5HcQHcSW35p5olAzUtxrIyfZAJ65d+ZpRxH6N3QIF8C8/WDyTZhGgnK/s+CtSf6OCQiTd045AujrtRMerQl+XXAKN27bWxy4MDODjBD4D7B5Irg3KKeIrnvm1rCLDIK0OOiBkZiITD/ZPCDwk+RpeZeWdPGL91s7B12s5FzagNCypwaSQuMaPr9VbZMlAhCSFxJ753+ppF8eSwfXazj2jWGVKjMYcPyBOutMq6QET3RE0h0MCwuj770+vrTFNY339RszVJT1ChYwU8e4gaFWADqb0s3a+MI7U4loKBmdIMOXoGL6w2+YRiACHWIOGsLfVlRnYMqnJ2/J6qWCh4/E0q+AhP2NC99auOmHkeEhvWqNyRJNXPvvBDwn3AVBdBgHk1zT/TMIOHGNJpQirWMjzMkyYN9IJGIq7V8TIWVkqonQ6ZlZu3F2Qx+8HTOJYj4V8rIWYGF/GdwJI/Fa/eIEXIURaDRpcogmBCIM9Tgsy7kOCRaMhJVvC03vOmNPZ3w3oUbIE77ZjBKT9fU0cvCewogqhdYhv3Fpid403nr5zpIO3qvjeTojyKjPxVUYMnDGV4NYNCkXCZihpEmG15on7OXy3tgJ8t8efH0c40/K0L+0exn3ItibWRQRyB9+YBpCm2yzQSYDOMhCXT2PgUJJIDSKEhcg5A2nsjp5KHnodlMuSw/XAHufBiUNRCljq01uw6HduSsngmZSunfdtuLA9N2nLgjOInxJ9AsddupgtpWH6npbU1Vr8jyzxLOuU3/bGEQzDDWtptVJjzjGOSlQx0RfOnFZrMcOB4EcI2adXRJ36KA2mUQ55KixMCRtWehpOQQ6njM7mLTWNJd2pSpkteOzqzM0FU97Htz4W4+DdwMZcxVevL8x1skSRyZqG16UZdI2f2/I9fOEKaAxnKufFz9ClOP04xT1N6/GQ9lxzaoHHHF7+Kn1RkkLB9jJxdyITL60LcEV944VAY5sgsVQ3yt7Y66zeghN1B2HqtaftyBHaLvScb+TjapMtQ9BFoajlF4AoKSnizHDqOsWDSeoC83mLpOSKRp8+OKGXIbhBFz178YDAn/kSZZmRs58IlVRGCaRnEa6GQpEnotG6GDeejVHIM4h1nH+wJYtUk5Cv9uoSkODs7MCo1xoy7GrVD1sNPtOvlgi2Es409n7mU/w/aoBQykyW0v+OTej/5KRdPkFa669LklrEzRgo3UWo3c6OSEt2uJdZzdi44e4T2tYOnGkQ/FdE/83uzN4hOJRNkeJ4aq6ueUKa0a9YPVsDPGmnHMBtNYQV6+UyvEDW5+p3IffEwbxMeq6JMA76TS728tVnRPgf+ZD/nrz2CkD3Y2D/1x3fz2LRl/VR3lefmE0N2s8zkJdoi1dZBNVJChzmtNJ42Au2dHdaffB0Kd1ZmcDca+QLRfzdcXnijTw9JoNfR9wj9lDkCJ1sH9UO8+WOkL9cCCe4mh1wCILgKSneIRCAQ7i0Lu5PmQtdzly4s6bpivkZ4paMABtSLLw0O53Ii77EzqLPd63B0jYgJGj0f70x2LJVav51ilpe937lfig9FBoIK5A9ZcfOEZF6MDbdJvE/aAVvKlXPOaFFTKItDh6LzRdVqDS8gwKGatNVH5IGkF8VTfUaW8F094MVnYYNeqnG54ALagnavGf6MBTvgdJsj/lMBlLU4Zam/2QTEuegGF4gVTshhjLSCbeMh5Hz/LEWWLsVQzIORk1Kr94VTS0dznGtZuFfyt6BV6lWWqg+ZJXVRUlK3cvJsAzZt/DhNsgnsatemb4hLb+PgFcPGNeIBi1Fs0k+8R46YeugOvPBz3ccz7NDVe2ULQky5tmxmbGzW0JjMeJqsPaFl8EGMsI9rUEpROyrC7jOOI+3/qOJiBInZtXMjCqPw6fDVnzB1pM7bNlGqIHxy0FkaX5LGIH6UQo8N4GIAKOCFJ8W8PtjE5mnjeSaxED6P596jJXhQV/edY2Gz5dH28+7IMN3x8Dk9PhR79/rADQD4twpPylLxqvIA8SbHaDkOu5FhK1qpa8NHxj1JmIYnGO3d4eKWFH08sXpA+hhdnlWlEYcynJiiquXhcbM4qj/DF1ACzih3/82ohgPlvsPOYgkl5aLTLnqntHTUmUGgtEsy6OQW6f6UMm7uZkuUZisqdIQM75vErOKTm7gzn4BZItP/07CMmaCX2coRXM8ZpQucRmDPtO4MPRdK6yHEuu+dendlZIBSGQBguBOz3GTEdb6QkANr5urGBI6k9+cRrtGOtg8ODxQ9tr5CsEt9LPvrn1V2qKNmDeZSwpF+BI4zFyGJxWabdrpWkznM/zpTKGQ2i5zf+gEqYUCAxQA+ayCwS6oQXSX0Y1khsiqXzBw0OEuM+fIkcOWbGF6ycnXgl3DQTkTmj/NY2CJYzGAmg2Eg+ATyc1xiQnITAOKyD/aYfaJX+beT05098AwHlpiFPYDRmf5oTgdXE8J3/BRl/tgz3hlX32e4U7LRAX/nRHTkoPogxdeLKTAMs0PuA4yznbMVbCwj7LkER7DIzoAV8xHbCwUUEoqIymA+REwVAalKvcQk+gHDKxt4iZIy3SV5P6iYuoEOJw1GhVP0FTGiNjU8mCagykt7IZPIjsmDsPrmyzyhWQ0IXiWLm3AuMyHcEjtgB5WlxAHYgREZHncsfHiRCQonqL8amV5DfgUh98fqpF3CadlHWhu78HwzvU2RsYBr6El141oC5Pu94eq3jqnoHAkBUzMly5FhJU3ci/N/siB2QU9sEtcKfgS9C4PXXXEbOY9jfBlv5rEY7CIf0YQjnr2lN6GNFzz8mBxp0evztrPCr1i1ULFxURYWFi0jLXQgdsXOTsoNG+Loho/9XJW6gHPEeJA2n19AjOQAhhwmlS9U1OS0IX34epq2D56ZYElvL3OCFZR4meRkov9/DEr+Skju3La3Kqhs42GbSauaeeUw8mPEKqiooil9N9STd/cK0ln0W7CxOoIO/IqFDKX0tam3Tz+k32m8Xsj/AgtRC49bSIohPpLqwIIhFHx7qTd+zExygNFGrJGUUbL5KeELanS+j+F0OtSn4HPxP5UQI6F0aDFkCBrM7z9Cx0ZKUA+uMQLkarFaZj7oKpiAXhYy4wVx1SNBmRVrw0eKqY4SjD42q5OCyNuZjfnMh1r8wlS2pXJ1HYoPMyJ1EH4gmlDcMVSm/QDI8kS48eVjVU4K7dEFM5W71y8gvFr9Jw9FX+Kx9yC2bCCoQ9k1zwtMHzPX1rL1RxRYnwIs024K3ABLxKOMh951HwSnB5BmptgXXbWU11KZKt0moOjBUNNeHS03Q5g47H5uVQf3AK+N5hBS9JwA7ho6U8g28hR6VdEYc7yK07IXW4onBsYNsjUZPE3ZlqFagVb2SyCMJ9DOKkmTkEM8ru1XR/CnPg27JoSi/a5eXbCUx8LVjA6vMs7yqLr8xFkfWn/eOBpMjETm9DkP38Cif0YJstWHo9/n3xiCrxWuDQdDVJvJPIjgvFAZCEgEA5cSPo1ndJRM+wHj8vR1awjNVUl1AjncZigJp7KbajYciZV18coC4kHdIx3NN94wqliCQk4oCjV43JKbhNWEFy3L4RIc4/xt7QopELH571MURrb/lUefAWwuVv+fIEIEHCUdkREQCIouCp5YGgP0wMeQ48dBRR46YE9mMER2EeUyTJDU5pw+kaQ43B5G7D9UlLSdbPisGynOruk/W2A0hiJgipA/64hEzccKxV9VWpjxlb9MZpBNUo4gPczp8bgjlsKI+hUc02g5fzTgTM8/gDRONHtshCwq5ZKqfCUzL5Rz311C/Ee5adFtfL8nw/vgQaVUugEBzD0p42Iho54xeZ5iuKkez8O5v0BefCBBwBXLXFFdhFSGqkMtpiRMwDeYqNTtjjVO9uFfDHLyfZTiOUVU3TWXztcgwU3sPubUWg+4R09QgnNNTSNiKR5es11uhjfYzS3mgKYN3Rx7V/GBJMobsrEwRdKeHrXfjpi/ANZWviswJXJFdWwShrwlwUgwjgUhTkT9PUAQoVgBQ6i1U6tOueQ2wE42W81+6IGdKku2n4QAGvaxrYa88GO89dBxypdsUMLTxR7Uin8YM4kS9vrLwGZZvh0NzGr1KoXESUOn/S5xUgI9K/CdFKGj2icNuBgVqPPbuL0I2l/4kKNGT6/Ti9Pumeho1fp+c2V53dClAHralTb8CSP/ui19wDjLmfRmHPUk7smn2uZ4XgawQa1nuw0Qe89g0uLn0vHnTF5wcVNPYwxWeacGuHVc19JcFDQGUIA7qhhZM1cwXw0E7mfcgQQt1FzRN+9B/hV/sUzJmlNBEuJbKcerJE2/zfMYSkQZ2Jlv+x1hQY9Iqc9iIW2QGiGSLlR2EMDUlxWJnntZEW/MJV1+1U5j7vDuqsDWR3ijCXBebmnlzHSPTZIaGe6KuLguejzceKtL64ru/04xvhFzsjp8juVRAhv3aEIdxsEBhWD1RJk8kBCAw6zhAqj1kybOwAjZzzn+vpB6E8PEL5iX4hIHvA1b8E0xbWtBpzWIjQQlIURxWJTNjCkQK2HzTeju0rSFu2favNVFLf/jxd8R6VSMWz5LggB0QftjNNcyU8Vvnd+/0E/kEld3iApnwG5Cvs+02RcYRCeT+HuLYCSH6jsJjOwlrJbuzBAhpgf94H6NqkpcL6qZV3rVOnOd/aUFatfh+PVWZRJWAZh5rvdRdPbUGXHmVABruDVYsAyt6rQ0BWAiTnv5PmFceywGVhFFEaDLKjH5wJfnZuYxXMN5694vmgNWmsSQFmDSW1YdTqJCBPU30mabG32EeAWI58Ivw6LGU574RObsbrmdv8tjRbJ10+zzaIzHfGrEBJtNgUcb6WtoqGlvwb37qvXC1EXF5PGBzZO75POywedIc91V1mcJb9cpBpElDo3wut19EKbZiGrGlzIJEkC7fuLXlmRtlhnpq7wCNeb93p7xqw/WMRjyw8NAZLAt7owM9x4dmvojfJcQJ3r8DhSlZjzqnDDvLbDdZg4j7ZIiH0mP+06PONQFWR22yddYG/Seu2CgrO3lO7Ckdno1p1nvADZ/eiKI55JFXE+aLvfkn9CiUVNTInly3fBvzNLLb9RKxQIVZJmxMjJGhh+JZfi/BdEDdbyqC4Kejlt/hDbfBXaRFlVWsPXImbK0oqFD62i1lqTdAtY6W6eMnhXwG+iFXOUtJjwDvjYyqVXCkk7F82L5XsmBKtfQvNrvBJ55J3t0vxVyD1mk3R6kb9TuINNgy/++0QT4R6kqddrpxFK8RiKlyad/3KFOXxVny8vuAH4idb828hJI5pKhQq2yUUnKGwg6h0s470nVEAkDkf6UmkCI0xV2DTR/dpTnYfR/cd0FXUbeYV1e0FNy4eEqOEEqgF5DlMKHwV5sFCL/Wrp/5opVn9v/PLOFHxSJID13frrgN02cmAHnIuEQ6TP7FeopZFAU+2hgMKAVbxExp2ZbgO+JBJiF5muYjCMmln2nBgMp30Dnhd+wxfFyP6BoULG5zhfmc8QiJ/E8rLC4FtLN6dr5/2TcFcz1qi8TWM2x6ePgL/OTNJXY59qwuueqqu3n8BIO0de0TH6nLjnsOsO566s6Va+42hXKvpaZzR3kPiU30pTwR7BJZYLGV9X8xRNL2oIKzZWdP5hwOjIU/4Pl7LT7KhoVUge7C6S7vbFFuCz+hH35dfTwkNI4zrOm7dY+yh4GNlD3zt1WhRmHRD1WJigzMzNuojvOrCDs4QFjGumd/TUo47CaUCOnSo3bX64CUdDmFacO0Q51RHW2EDfQAc/ix6pD+3NXzo/zdwYt+15KNxDI9viNkOycAxmCxIClh5+wRc/TrvFwyGQ1qAw5W3VRWHBp5mdkQ4frKSaT/jfpqJnO8YvRQwprWdnfUPkSX7j13C5YB1/bHPtHNSMIjgBc2s3cWZVMM84yG+0JkzO30oHKotOCcTJ2F8wQAyzhKpEnGryKehKApQ47qiMMvSJgo+ZGtIVMfA3jchOZy4XOhfb0JbT4CMqRSAn/MiPq1a4uWMxaAMKRo9IgYf+4rxgVDPawKuBPq+XuQtbMZAkd1/ujwQCCPUhC3WjaX8Oq1KSN/QsetaHpdvntgwUZncIBzTuH87rakCuazIS2ItHskCWQjQaJYsh0QNUOhXiK7vG10nWwyGxtLP048F4L4pKOP0qGi4uRbJakukydK5zYNOABi136hF3m07SyecaV+bJ8CvyL3BOI2zyOPZxDQF+EtAKm0OEaGq0oNHsyLPdeoVpRudK680bTWIbehpBeBCnPutN+p8PPKpV8C2/5ZgW3kSP4Ev2/HnQafbpykUt5MoyCUwNfj9IAyQTS4Jt7KPrPAyohBfmOLVIx3Bwq/CIwYspC0/uzDXJl4ZLzl7kzKGFtL8sP93rRm+OyDlraX2KYKydSPw1JBaNaDgYxqt4oGiY5peLh/cNDDRHstqAjBvq2B4eNZxcI3FLX0U+cjonzm+2OVd1LQwmEq8rkSYCYdT5N46zaJi2g5k6YB3j7Q8Nt/8VebMF2nvC4AUWdOumluY2faQL3S5VFcjzyEroD2q5vOyzfz4p1bFPlalRP6Yxzki5WhCK0WiLHHlUgdvL26bKksLBKThecwqVmAOfycsiNNPEt3Bbdt4bm0lSn/ciF+L6QpjByQQlEnvMeCrgqf9MNY3Y46+klD7bbk/VRvQeZ1cE8Zv0qzjyqnHbgbeoEPA8akxtjfGrOxJ/6MUjj3DArk/jozPYoS74f2zJuqAm4CuSrM0nCxFJRVaJnCJ7BEfXGZJLZRRC2HFfZ3KhXZW835WyD/q1XhZPvF/DkDYw2RPB3JFprI/m1v1YhEMnh8p7TFhShgyHZ3jofpCQ9d1Jb3FW9HbEyk0+IMy2ifrStO1pfEJc/QKS8lBjZ0UOjumLTUOHI6G03Zkl3hYqq14Vzx/ccQFLUfkq8MMw7ScqiJuHpIRxOOkoEQUXSCPoNuhUIQhu9z+FsR9SfzOxNWlACfInA389nChWxl7Fmd4muSZfCQ11aU5Vab3rU4YHuN0lgWf82LDX8+VZOrWvxS+Q8yoCeB9RbeEC67HX1Xrt2UfSu5yUCMqEjyNDUOs5v5/3j5mm3KqpXx0jIsbY+Lj9wfU1+KyyuBOYc+HD8LbCnBvFeEPI8fvnoInmnFfpVm15agjtTazchXSJrzSq3KotebWFaRvPOz52wVMkUxBVbCa5NbRnioewtYaz3Dm4ei5ypjKattjbD/O3aSjP3wg0GJoJxr0q62Hp7OZlFSWObn92zj74MkpvGxYsT/V8HG3d4O41qSM+eXkP6Yw29J06PYKePjAMrVXYer/P3qCtW8s24CiaQyQ3mFfdbn0zkHng9AkcjgIPhQv8Crua+iBwWlwgXZqPrvbYzOoZpFR63CfQb5UJGqDw3ni+CCFGq7Qrpqli3xfyP1riL4QOUBThw5SVMAu83oGaAu++rYc+mj/4GecZy9QV1sBcwrm1jSzc9Zd8ItpQIqrkCYKFXe2VmwUKCqfHzGPaFaNg7qTBWgyICKdBjzteLW3VcTPdI4brb0Mqz/ipQKc66jhULhsyhRN4LooNlgRFkYWlHRxGcAfiAJPoUZrM4jF2DX6j/nH56frIRe542EacTtmjaHKg6ZpC+TwHPK+hqVXiN7Y8/fEKvBuKg95vau4RHW6teO/f3fHDxjy3Cpy/ey0pRjJ4edW75YsjFWL8A1sUKsWk+dWQ7y6j4rxQTPzY9OOemppYL2HsDsLl5a7ZfdVKVBoRJ6ZjzDWPGRGSI4WNiVEMZuR3FgZCf2VVroRRRvMJCsQwx8UXC9daWnA+E/bM8bEtn0EP9g/KkzYs3knZ+RUl0dZ5+/dAdm8z2gvZjIzLoA0NrnZJaSjJknNBrkxQ8PLrm78om+hqcP41nJaanm8sT2yDqGLHo8cRhrN4FpiwKhLd+C5RMzeXdp3EZ5cBbA531sL9K2k8LuAnSrRitTFRhkdOvOXEuCTc9wgXSp11VaHjS7zfbHtFy0sJH3zZj4qpZ+vP8fu6lUdIT0O4u2EGzXOwIaaMd9lW0pGYjr58Zz04McaOi4aegh9Ro9sZKoJZ6egPg2ImcbRXqafLxX7XJ/QSLcG5zARbZaOSTxGr4WEMHhhTLy9YVZctygCyOw9yAKx9DBCMTdPmcYxA/tbp5GrCbvTzQiPfON10yfBBrD7pcgybgEjbokMyJZbfE8I/Rmbn6796mUfElFLNBXf7ovoaYckdVLiUfexXf40Yvlie76tTI+WuGQ6QD91jSQlIYnDuFDVIyVizKmi2D8qYpa81dSfltBqSssH417Lx5jIkq9M+xiVTaifksrXFL0l+j6zW5b97yj+ddbS7IQGFwqTMv/lhH7sSh7O3QNTgwrEpw1WLp170U97WvVX99EZXeqwaql6nvcijB9FBJidshdH4Ig+5hR6HEAw76eMD5VbaQCNgyXdTnzI+lA/VkGKdffEAYNI5IIOM3dzZd00t/giL42kEB//aPvpzCgfWgxVf2mHb/Dga50W6MKz0WajfHtRtvaTmZjmoiRwMyZwjq3Sm6Fgg6BuyLDmDz6JjFh0dYFqbS8N5QOc7+UfAu3Qi5Z9sCwsfrQUTNaeYcpKoeKlS96AKpNgbt42FZn4tGOcVZksfqqvXqAYfgOdxvExpiyhY9lLs8TmKBfUumqXjBa58Xkj24JTrnjG03m3ioyOI+REz5U+FHr6z1k32vo9QUzu08W9Z9X68TFyHwO0J4X7YVNJRqEd9s3BgVE1BH+9XpcwdfXrcQ+GxefYlvpXxZ+fZPrXIrY0y3xlWzNe39raxiAUQgURh83wl0zvMa9PwLDlwE2ZZx857J+SbOLrU5Gz1P3bSdWnX9LaDCxoH8f0bT2oXAcKAPPfc3yn6e9rS5+iBDNmGChfcNt3tIbs9XJPM4G0G/gHLo6HHIn6x43VEIMroCxwyKX7C5DJ0BGbKw0BdCLuiwfXt2uyMwnwxhaFolI2s+038wFphe4Q4Qjv+jlRypWnmQsGV8UdEZw+2knNzGXxcRND3GpXwPOiE757TE0HJxuPwcE2vaChBdsjODjtjUQYXE19lBr5iPqlkC+8k7ck6TqkzGlAo+igYwN3wY26cTYN/oqoLVxLd30elVGZJJkQGcR2hzdzAK/EzlJfSmiP+Ka67rxfm93nLtuiVfLfrWKwMZpdfm65RVgPZgAIdadTWhtPGVIWU2/Umlp3dEdA392q0CzvF4V72leW966yFsgebeb4h5jGd1cXxpkI+9w7nC1LxTYklBbl/SL+BWuajTNvuXhQm00KPOXA7F21qtjrnc4lBJUzUkbyW4As5Fh1cepNhs0K4T7i43Fz8Urm05wTSAIU86UBmP4fJAe4mEAVORznTKs1u5uHQRZemefk9aYT3SplLB0XWZwHcesjeOjlb7msrktnSDob+Ti28hJgdbZ3t+znwKRcX/E3nm2VMvdsDx6AvnZZymrEhbkiniw9GPzuwIpp2q0braSQEdtEduvsTHv5kjkS7N4p9rXhatz+V1J7PtvUX7bXLvFeAi2zT94O7EDOteSgmjxTRF85x93rMWvATdnF817ziGBIS9if3PrWqEsolImp+GkkCaX3ys7MXaUkkCWljURL4BVWmh3T2lopLbmbA8wyEZA5/8tr76yD5nRLxTzn1MWH37dkBCw/77rVooO1gN91pjW0G4y66geKkQnFma5Ea8zweADegip+ka44Oc97XNFWSjnJwWCcWmbS3OKdASylod+CNYtkbtlpyL5F1lfMVjJ9mKJ0j7v3XfeFApsOA6liMZc4UICLIbQr7MMrerg0QfR1PJLtW/wH0v2v8GDjYqF+dwFysWOmjdqflXbRw56jdgaqA9oFO/wyMhy/4PM86OckMC5YLHthjZQWMThZqgJFdfwYZvOQzmsAXL2g3fWN3tNCp4ZeOkQ7EQJhT3CXxhWxXYWLDgchP3L/Kl56FK8bohZ7Sp2XqQdPXR59FJPBbEdxm57utUpUDrx3XwRgP3ohkTC0IpmiffcZoAvLwla3yc8PkPAUKA4cgYFgFWcBSfcBbHUBfzSfzmfbwii43lar/NeooNzEbgvAhPnjY0lo6H7iGVu5no9Q9Aw6aVYHSzrojcqnh43UCe3Yh7kx1jzwvjrNnx09qHCQSVpjOlxHi+zszX/UjXsNqvO2XVUpms7F3vnwtca7O1KLPMJdUjfV/CVM2USubWXealf9UTm9ZANOBVIEgIzXND8fBNk0X4n02ypS1AQXpv5XyVJqgIDp2/j2FLotV7ceC+0ZgRwioXa2Bm08QBz/kubLHFdyoR5plqjFo1BjHmBEB/umfxJY172VeiIUx18HSFytq1COIXFDV9fK1ZKuhth+VqFnEuCzbyf/D0q3JsJFOdqMx954V9y2BtmYBO/sP/XRidlcnSCr9CAHsYNEIVCImhKzQKqyZ2MmabLTsBZREfew9qCRQgv1WQ8lkpF8bCV1C6FXKaYVKGOtLrhh4/qd8iunCVfRg3Ukak9ztNSTiIMKffAq0Yxyjuk29uaJq3qQtrYO9bc4wTAOgLM01yOR/E+mD3ZQ+2KIHvq+pJIAI8Xrn56LxnIE5eyyyT4vrBiuKeZCZxSnlrRB5Py9OgutmsbHAam/xnq7HXvOP14uJ+sWV0NwHoWVKjdz9Rx9wNIT8lDp6UXI8AMPExR8BvVn41L32q8LCiaKQWZUjKakZKkGBzGuK7ePvDZEJGvy/5q3UfADtiWw4bSJ/mLVv7uWp8hM0I506Ei9o4KrDbFs7AbhB4Xl5YkE8ukFoWJPOwM7VMhvx5PS1tE4qi3P3zQxMVPeMeRLFFo30kfMJ73HLFpnZZ4zgXMIH8hd/21yYqfNgee+u0ofcq+0jkaep/zv4G7q/zdk7b2VWEAI1uLrfibcZ2UNJc+/ApyQ2snuRMeXz2uKmmNCA07wIVAwpErV1OQ3tExrfM2hbB8Tn0efVPHC1AvsgWzIYkCk5K+6XVoxoWjEiskmgiV8wBD96hZuHZB4bIAn8aPvM+PytdONrwAZGYw+FpZgKLmPkCAer5I2YbyAjLlegu2z57ZXPCyq0ugCITczpjuOfX4cV68V4nNS+KRZgl/CD8uQP32ORT2oJOJQH8Vhz6Z85931evwshSv3MkfnQ7ECcJGqipkXR8BDzm6ZxkWuPmJodotc/5HUgBlArwU1v/Gj5QIPC73Tss2siIIZfqheuOKef4ey2ixx8/1rr20pYz/AJ7lwNNZzKMzz1BTPHgiRPJuWoFf2UcGJYP+JPJK3dGYEYB7PTSDDs7nG3s58ww2yP9n32Gd3XUo4KIIlfv1IAYlqowySID+MnWS+ZIdoie5By0EcMhho3gpsuOMy0ZjReYaM12uv5Ym+hkvNVwMVCzND1VK7wfs+MVacE6mdB3UzyGtaJKzhdeKfzsZyJDWrvT63EQFkEJQmu0QbnTCvkHcRUakiTMHgYxKW7h6mfqdSbSw0Tix3coqcgMmUZPmZ8ZuruCuqbEm8Pur9Slq4/FRj7t+Eqv1iyolhyfIw30/Of2E6cbiCLrLEM5/S9GwZdhJxPS//OIKJm8hOYxtAP0qe3fZhJKG+vKnho4OVqBFN2E615YNrbu57SI4x+JUuCgBpRB6ozpPTlB0zFgMRC74HNmj9wZcBz3NPjPz/m2erGthVbMdzSIAEgIjyqfEse839wJxBelKiXH8PSYt4e3oX8SU0VbGGvJTpYf6h6ZOHLgOGcRzLh0xm3ngeQ2NHIcL+spjT/tOgzfa/pEXG3sq/xku4zaYFFdcHWVgAF5Ivk9b26VYhUqf9wacrif6/jL5VcbnNwXnNAblRdd9usmT1ufTpv2dfPJNJSL4edNeezNuTlM0Fftf0Y1FoSsmFJEHvbG3u0OY6drD4Ilq5RA29u0ue56h1V8dDCvZB9tvcDtlz9iLt7KPMg96DqXhWvSJ0eNvASv+RCsG94EG9WitXT0MkH+VXCvA0MDJHAxdZO8FBLrMZxnXDRpcHQzhR9nraP9ymxlMoeXpAjOxqNzIt30Rld+IajscPKlf0aS+woT1jke/pWy9B4NCyc88pTignixjw3BeAHywgpTJ0qgh80kr//c0gzlMRszBau3Owt5zzpmlxOiZmg7yuTjt6KXi3TWLbQPGfZkoPwPj2O18222o//XcyjMgOVnsBCa3sRAcFjWjOb0pORmG98SO3lsDPpctesiz23BPSq/HUhjnfwdM7rU3hlv8Em58ZqpYAVBuZtkc6BPbEOZDTPhxBtvwqv4wiJg3bj2bmMtu47BXwvyCri2MFQuPQ5lZw7gQGrhRkmSaXJQSLVpmbdW8JlecbGQHYwC62KtBNREj3xygGRw26IVExJTkb3LRhVU7ixR9P1SovSSjQAEAmWpzadilYsgFQfoM9+yktfzZD/bKk3Xge+ABjYtbQ42ULoI2qJSLhoZkbgDpwCWVthr1BmgABuEnW7n+3NqVN5Lv+nUSPOl4V+EqsXkUDKyb5KWmHHluHvFDvHpYav3S2gsDOPaTzWzA1RaZYejBjoIs8MC7DdKgHIGvXJtvXQbcnLLqM1BvnV4HHXxKz27pmtQLfCVKPO3W62i6dB9oV+uDCNZokk2UnCskkRe0ur52gf0tST5mFKdbp7hmW4BBnrWgqdWHMFgCrjDles2677mnpSaIJruvNfnKETxV5CfklEvWNeFoBCq8Za19Z6uVoncVcgK2ixH/GOJdjT36gEF2cWTSxp5ttiFha/mC0m69fCTCnJiUuzj/ZIM7EHLxZthC6ymGX+5J3B75NBktTbsLgD6TC/bcu/JFPI1dT5WNyquN/h07VtsPKnA2EwQYq4rvyxkEvOfiZVfQ9HfWT4i9ExwNGwtFPdRhWxWqB67Gr0K5jvq0OwfMorevifG662A4PGG1mtsPqPkMCSbVrmruWGtROICqkPN0CGatrrL6w7XnZgiQXwp6QiHxXEcxbc9liuAHP56PYkRC+CsFCIpQarcNwWzonc3tVIixDSgqrbDwe+e0clEXf7m05Gz0obbyNrsygYRvxet0iuxAvq3fym8n9iF17xA01uDg/5XdkhHylns6OlMuxyp9Jia1G2pE0qQ0drZQlm2S6a6VF6Qct/vjH5ApADw96UBolDSOnfimzvI/noaJ+MJFUVdXHL28UF82qQeIAcG9uE1YoXxSdIQmokl49K6n9hvmUMc05CekISD9azztmtHmkwtPrN0i49U4fUoCdsGcoj3skY03cL2PdoYvBVGf+L8ib1u0TvZjOcEkgPSRQkV9fBURe3SdayKss78OrOSMvK7INkVLhfE1WOcsa+RHab0dWT6lZhdrcdep7zpTolq66k12U9k2y6H1RtZqt3AHjPM29KSofjF8KRsFzEDC5gzas6mRxZ9ljkyQdZ3UHTs9N0DVICUeT9smv4R5HuhXI42/uBKk/KxpGkbkwDnELUmKFb+rrtFoq0M4Gurh5tMwVfmZ3LDfeMiZr0CU0bWI87u0tZ1TTclXItApwOKxDdWsBgE8NCvWgCyRozRahkwPNUvuXI2jswqGyoEh5B3XvOC2uU8U5BaRQNNXa3HYlwIAfFHDiuvAvxd+BHRTEAUa9q+OZpx9lJ8YBWA7eYC5OL/PKrpow1Y0U1vMh3bbShWEdWfiGJRPbRpo3XrJyn/aPQ1jPVj4Fj1AmS8Vgj5oevjXZ1gzelqPj0J6tgHIgKDCWOvJt25975ZYeUNoYqetEyCN6KcLaUabpUjAW80+DM6d+eX/gqGj6xmoxlYm+z/aCREUWWCHQHh/XXiBdTsnOnDjaeXAXEev1BhTibN30ReOyR23pOdY8CVab2LvRbm3RSaFOYbA+UsLfJYu6Yyf1Gns4XyxJvqHVXX+NGZFdjRajw0rnxnbtOSIjKa/+Uj35D1KIqhsOeJGvIWszeJ5yET48Myg0qlXDN4wtsbyvz3lL8WP9XolS0TxGY5JvPSLTlMNBzaBING+ss/6t8dlqHOfmkTnq/akbdHXY9n1rEo64pHmtTXn3jo95xMK3WOfp4eh8f0f/aKNz4ffFItbuccqNabBSiKMdfGD4XbgPi0Et3rm4EAJNzcMe35r1rTgQNbPLQ5Oiq3Qp3n5uyk5xy0CLJCBCGEOOh/DnZ14sM3uzX8Gza4oX157abasQh3poSKZcJ2ei5ae/gRSJCkrFezF/Mktg3bLakIOmjeaJDa2UjTRljkB3C13k9a9E4DG5snY8q5ne9Za1ZnAn1/ECr4tSmRonq2RR9muFfyCByK8W38A39zslBO+ATDB7crm4BHNIOLD31H6V0H7L7xmO74AEBZ3pN4+OIlEVbWZeDnQSVxP0hLDlxPmFpOEORYMaGdRru9Hw/nbVXVzzWSX/cvbM5e8aTaucvyiCb+Xuueq1fUNTCg8bxI+eQwvYps+s1ZziPRe6Is6E9O3vQrgBvWSXzprwo+mKEnmI7pBERymRKhKmUb1fESxSCjGTsyKoQs8hjXMQs83brz7hYlISruR/GQybJgbpyB5m4BDzJQV1uFfo349m7M4sYpVxTiHJ76FSsZtttRvHt4jNrMvksDqo/KIZPagnNcHz0qh0ZGOjOad5mAVoNMdD1NsS03fE9gZa16TWusp/6pKtr2GEIFI2YWywnunGhL2vo2dAIKh4O9IE+pnlvjQhbAmOwhztCiYkX7/xGocp0FITTFATMW3uFnnuj2LfXCzsxyDHH2PHL5Usr6rUtENqZqHyRIP7TPfdbuigvFfPl9DArAxtCtQuGC8QzQmij7e8SG4k6A8aA1Ah4hGQIXh4LS2DtxBVBNO/bcrtRJiTOZ8IyqQAr8WFYoG6aAPW+eILIHnVV9Ogmf5w/PI1Hs146QsyuFhl9N7kszi8oS/DsBFPRQDU6rSDtTpgQd5G9ObJNhiYqo3HjmqjnKB8AgYYP+7zKUXhdWQdLdMv2mvV8MgV6PdgnnRp/CfXXIQAYibm17KjJP+A0tSHM40IwqMEmOv61ywKLycvoSMVOUSvUMUAmO0kRPZ71eDLmz3m46bIX0zfhaE5+Bw/GejswGEWt6xwwxXy7frtG2RwX645qi8PqnZnvGOSDOwCZ834MD/sOJjoVh+G+jaZSvrjBucwr3uqTDFDKzJNivSe8vR2k7OTiSPdmCwBx+s+wRtC35ckK3g3MpCD+UMs3TqAFnndzR0tSOtZhT+qdVT5cs/JdNKuLkmLEaJBOvZ6yx6KEf8vrB8+eL9XtNZgN1u/Etz0tYSvteYMSu/BbMZpojCh4lPJf1L0G8uCiJDmSJMH0jzl/+MQoZXiCjFXJnJ98RrNs5MVHKerN9LYdcAN0CZEveB2xjZkDPE5ELAkqf/UP/7cp96/Vhu70g8iBRCTl4bxS6Gee0iKt+E8HnegyaN9gxMqsA9mBjUWzE3cekzAd1PMVHdpZDtDABFrM+7ewOeQ3Y5KQnuJYjLKziwKhvEa9UL49wMKUwKQ94go7VujlCxswgfRyZLzBMROLuSHCA+b1T8L3oqzQO2TAJc1mULCteBQ75acS7A4NEkeAuIPVu8KE16+QpM0Xxaxr0jcFw8trAlEG8VZulGF9KB396tAuMoN2ZyPI0c9KKT4/ElZe+rKaPBCxb+MKX6YfjjBDLD/4IdgCXFH9XqzdcCDXrKE0PPOny01KICV/A++Eic8TGvKvXWOBCg/JmTS7k8ocu5AR0xw8goOtE8SeDTcisKhXrSD64B2s1zh/OITCRMkigrIepAbl6xaedprAw7ZZcjnu/S/nNWkSLqjUhZE3EOiq8RxbNwyOVzOuNXK8GEoOucRwqg0gQNjjk8Qwymj6W3I5+Nc3YKo9cAmQHZgEDZw9keXJskzZ1Hl3zx55LJoBUoAvJTDJ4tltTcyivndz+42Ii829qbrEyyvLyCDHdCR27WZON7dMw7nheDNNC7if1c3Q4cDAoufQHLk0RPEwzaD6GPAgnsGtUhvVLto0yB8FDtGzHrZtiPNQDPgudpqDJnGzA4ANuwKgoqZJFdgLUHdnmW45E4EMm4g6UksAy//nZ5/2kxjrh3U7JaXDFnyKbt36xAE8TeWaClzQTbW/GBIEULE3Gf5xioTQEXYpTqGJ6Bfz5xUaGN2Mx4FMIz6AAKRcNhx1FjtcdC+C8tfgQSTGWe9c3853kQBv6lk5kYoDULi6tjuu6N77FumzIIFAGd/ryYojvUdkLN/99VaBqOPoG+cjKuB4r/MrxiOk8w94BnPy9A8HJQFDRdsX5SUyGJd2zFPIp824d6F2zrRrZdy2ORW1/hJzeb6YpEuFvxun7i4ez07F+s6x1wxlLdt+iWft7/OCm/0GQ6tAW34VZ86GBYlucw0Iah+fuXcN4FA2KL7hGXipbEHNl3RmKGQ7sRFIlaiCPvOYIbZWjhv772w6NYIMdkLS7YkFn9BLUU6naJQdSMUTO6Zmr7kApJf4mlV2+cI8EngHxo5DQbKwuSweoJdiB5q7JKDyht+wJkQjShekCi/Q34Mg8zeuy5Lmw24qVah53vr4apR6P5y0QxJjYZvKYg6zJwl6av4fBvUzEYd7PDzHlkT3vR0F9FKYk0j57gstl55dhE5NF78uNbgS50YbBeFp/vYuh5VbwPMctQ+xjJx3dp9BfFoYxunfkkgQxmWF++U38ZsagqcwlbD8Es3L7xtHUAymOHwULbMS5U1ET+DUx3NqPP3bS1A5eUxB65XQEqDWoZi3qj1kXv898ftTwRs580HQyWZ88yqrplLDPQfQFLjgSX/ChBeiyenh7C5e7uVuAmuuxvE1T6nDavLJSnHbShCDBlhw4T3g9UkQA1UpLfum0gpLAC2cFReUoPO4IxDIOv0O9+pTpvOGco46elFUdTivDrJ2yLFFm3ZpNl35JIOtmKfFDSQvXJFo1Chj6wxaP+KWTDXPtYV8zX0KQAcAyD12PcxIzSVrd2JYtp/DIRwSA+Iuym26yYi0IVLNGWHDV8rhWLTAOB6VTAIEpDk02oaEcANLS+CzlUhI5zIZGqW0GDlfblOh5InF+Rm4cxefLlEG1lKhPR6DQLedHVWahlo11SVY/4IqlaIWsDwGcMZYWZ3hNgeXeLj8mxHJ5RXalrFsrOPcupK88nH2S8EUIP4viY3qic6j4Rg+3lcVLnbVQ03BWZu27sKnO9s1DGSFzCN7z3Yhw1iRyfB05+banYJ+OE9JQF724w8PIC8zZsjOPiTxeWoQ1Mn8chYKOWYuSBzkjUBqAfrSIoQIOLS6E0kQybjhQetAUeagVg8EmMol4Qn36HiD05jtNFeadvaDFcIw6BlpbScAxXEV5a+GMxQPnmRN0ui2p/rGX/+HhdfU+LyryxiCZkhtEKiaAN/9pFKB5b9GnoLzeO8vlY6lhDuyhX2ccdR9Q672goqk53kH/OVNTRE0WxtRtM1tBbMgOQ0VWYi+EfNi3GDlpPfOPejtsajdJGZiQZYQ8f23z8v1DlEFMGKK2zpFrx5+yjSawbl7B7dCe8Gsrfbn9G8UhvIz59VR5vKegndb1ch2pbkBS3n73xrqu28Ny8AFvAHipiTdt5RFw+8r0uCTkNyHmDKt3yK384//1beGPEy7h9+sATQ+GPjHf2KD/5Ucek2h8dLjA+GZZL1Wph7hWyGG78EgGdgCr2nS84XtBq1G9z+TWO4UaYH63SMUWSEICmVo2D+SXe6OKL9LtOj9Ax4W5dLSSEgsxyci7FCfYh4wqALkp7umikLJqssmDNmMBQ3YWUA54QIvx6FEsKwR2ArTkF1lZBRvkoplmlWjcXh2YysKRtWDImH7ECXwqUPPh35yTbg4aU6C8jDqcD5pBRrAQKmMlWNrTXOmU6tJ0rquB7jvH64fablq062kvw4VgFX9hmvqQUizkRBxHYvVId3s39bSYAu3+LDJz2V3LreWmtFKk0FezIiEPJrcZZdAuEe2ONicdHfZqfeJ+xi+jshjIYOwIoU83lcFa9CeCKGyd43q8Y07KNsPkGmHPNSgoy+BI0ZY4xhZ1IMm7D8w4f9f5DdY7h1cp4hd/oifq9Ag/XrIFdWgve7oM7Z/JENYx4Dok3S/49vPJQ7VHQue+tqh7yYI5JuUVtzZxQaYeHdlrNmk2jDKbkXGyUTbfXmXNl0GPuthgjHTx9d2jFBamv6zzpexyd7t1uHsIURtAwM7X+PqdSqK2+h6+Ez7H0eeP1HJYs/9pueq66U6AGQ77QdkvsqD6z2z0KzkuDrFZoFhOl92yQpMndrn1/CQSfq/f30vzVKfhOgK4bugrfGR+ifVBLn+Qk53mWTbVx8vepG9DUwenFB1kZNjxWf9xSA6ffRBeYXv03lFLRLirvGP7xQ6gj/wJZvi/KmD9twIqEe/NgptQgSXX1VMeB9AcAb/UloOjrvfaZ3/g1odH1vSsijZsheiHTETIfhjZwVbtaa736Kofj4ykjcZE4v6ZlMgVeICmFjGId21R0DidN8N3FVYj5sRkh5Ncv8e5V5E1l9hnWe8OrlMIbUFIbgXw0mvVGMYDSJoCpjSgTmkgVMqK0H+kww+cjx5sqgU6Bmeg86YQsuKdWAen/sJDW1K5uKoxd0WiSM1lIvgQUBfy2GNCKgmti0yCkUpG8w7FO9i0kT81zDqNUAfnGZQX259okUhi5ku+8TelP0EHWwpgdFAbzBoRGw5qlV6yM/j81+5gP9s6q2QmbiyVMOWZTk9NxdgQeM9DgPn/JM9zprXU1rs5ocf8EiXWsE4B/ZI70fTOqr1Nbk2PFJIwhGq7gYfbl9XrV1Ekm/op5f3ssut9SktIU31A9/WP5zTqf/jx73Lv2/ThZf4Pfdzgd12tFwGGhTFmGh7CUiHdZt0y/dzAlQmp9GsgH9ZUF/prMDdpj0Ymhj5Os/hXmBx0DxPdVhSu/SXKBT98gAYHNCY8QH8rBIZp+eSOO5lVzGUGke5Rbmh37WMUp1298LgTACHsNzOrfEOBQq9h4Takl0OR+8bcGcnkc83igKwKmc5p4u6yQaKqLtC8mRNdE5b9Ylsi1YKj9+iPdPOxhGpCxJs3EPlW5SKRu3VY/QIhDz1r9Hibw2G1iIFrAAWZ2MphmRhIBqfVAQfWcbAgjgNkCkerI7K6o4xTkapangaoqgOWeSpZDLLkO8lX9Etj1tD0+tfISOjB+JHANyhVGfzMc8hkhp40qJmX1x3fKeCfc/+bgStW7c2h88OIrgcBNMW2iWYPKplmGlM7RlJDuJhmtV3PgQBHaUgeBZ8dlcFD8QcY+ygySN38Voal/OThX29q8L44a3VvcHirlzvtRWx6GEnP6Iywh+jpk1rhv+h+uROfkwVqWx5HUwpFVaNJxLa0FIP/laLGWA0GCTmhTFOCfR7rYUwaYaOUFzztyuT6edhDX6sdy5gcNpkZtKXfp3s6CosXcYu63wS+Id8WQhMRowr9d4eI8JYQ8a6ALmhM//KUaabDDeUKJTx9FV4XtLun6qbDUS+jmO8lSEPAnZwqYAQsiePzuwWs5YFUbe6yM93yVmkybTURt581/VzPNfMpG13cXY6kKoPsrwQOY/eXMELLeAI7p3X/9mL8C0u6BBoYNbRPQxKVBSQpWeVT6vr2Qs+kEyrRp+IL7cQBDKFAvKNzNtpNLwY2gExxfDuapr1S2sXVrs4W4vqxV4L7vcvCouF61pM9J+65yeRfO6KQszDlk7kp1cbo8X5bXDHsv9yy88wwf66jXY6vfMUiPAlb5v/PEJv5257h6acSW/xjnKJep1V5VcnJsCMLJMLKSnZimPG6lgEeKks9yyEl6d40Iro9XzEcLjlWkDdmLlsezG2BubqAJohIaLhQEUYRDtlh6IQOBbS3H5hYb+YBi5dTwYd2ChrsnIGd1pOGu83ctc8G8KlkipoSLNJOxf7JMXuFtL8Y7BG40ZsHmKTlpAnw6/KhypyJwAE9XsH6ijoFDl4msNec6I3DmsQQlHxJZP7nvGU6cX2ktCHQ9xxrQ8l6pZiOPYFGmEA1vZIHo6lOl8RgE97+NsH6aQ6jsOviESVUaMbb7beiMGvleRNDQtigOHa3GI0taBJVoTvlnXWkIExsg/QYT5vUq7AZUb+VtWCwmCY9UFbpYd3ttp88GKgr5aHuDL8g9SS1GN/doj7c1kSQt90VrluuHQBIHdyC72TXe1dQsmedpLEsocT3+N0pJBSp1QE8vg0fMUVjIny0odKN4okirnEPQ6jl7jqb97MYYIdOnSOGdO2Hce0/0MqxBxJXhClQYCbXrEqs+4JUOq6M7AYoJFLXp7ecKUDlXr5C33b7YoJhfgrHgRGx5/oVldTx5kE7BpIjWRGnsX+CXRc3yO/bMoqkY5f5D1mJyQhPH3+bS68ub7ZrjJ0IwSXonZ32/F9ugBEsoUcD3IhVgb8vD5Ea5btqmQzoTI/U0ezIHXOPDzZvb81b/t03Jzf3kWDIiRDUDfR/ZIAWXqjSb7LCE3aKiY9DxV3o+ImsGLgjSjjk501rb6VcC00rwjYgvTCLP0DrW/yNQkH6htKVa75oY4wUySb7RlgqwdG4cM0HLKs0yVRbK+GPy0PvYYIJjCt3aNNI3jnzpLJniZiTo4I5VUZ3OTXzP00PHdqmQb8KL7iCdOdWzeFtT2ysM3DrxNobLwJVKSDnVPx2qAmcjkZqsfFDHeCiQGJlPfW+cQGo/ibzd7RxlIjtEo32IroYSHUmkfvKr7SJpgpHgJ9E50ObOcJzJsgzUqrMQzM1uCoisJ751jzpFDWgVQz5CnTjzHEvrkReLEJQUKlyUJ0hl2p63pVBz9/iYcObN671e7c7dY/CHi95kDpsZwBCxD76QK6AkTLViHyAzr8XfZwFRWdjjDWrve5H3+yZWXoIB/l71KqaBim4DOQu8TdVcVdAQj5SqreGfD5UJ2qo+j0lvSVfG1l6clb/N9jyD+oNtsioMH8Dv0q74atQmcGkr9+BuunuBwmSerZWAoJut9eLDfZIu+bg2u8ZKmRYhQ7E4g+iBImJmPxlZ5xF45Noeq/yXYQx9NeHbruaB1D6htnxEr4aheFmmRwI8fPFcPIKmEYEORGkO3wwEM6J8jfG7dDopg4OOX+2dyq+AAJ38KEG7csXL1LQMWAUw5hHBVhhHZJfWw7+yMYN/wVVNrhXL5lZlInrp841/Tdpm2lWf4YjmHIRUN7+44u3YCmKW/grReZAvlBzRCG/z44+RqdxJer0wZWAxrOB/zQs+z1aKMuGwiw9/jbz9V16oL8BPHIUY1VSYCVLoDGUxcWZuBEaAHtgJ+uNTbcWVIELrIQ6FDqTfeXMdB3CYciSHNjAi9dLpdcUZxXmrhfnJJ+cbifHBENJcr4jNbHqAb0wIwBSfZ/6svDcmek1qpUJL9QUYO9pMJ3H8XSxL/9Mt38nbf25ZvTbr3dBa4ngPXjax4gzKgPCRJlPt0tWX6+DtNHEIkskIPxO27itfyHpluOh3q51e735lBjn8HGoP9BKYV6m50hPKvbR3IyiO88HTx3u479fyL7wTHlhoGPvNMk9RDm1GpkJjcm4rUJy/Mi3lA8Pb4rP44ax/++7Nrqly6B+6R6GIj/+2b/r+qstyUPBKDDbGi2CDdbIr5Jw/LexmeUZ/e/WOoyd7DwyoY02G3lz+V3/70tCI4MwoDb0kHHzAwoVMkG0whC2qTB6vsM3kwPSm1856vhdmCigZhtEJXDx05UgDB6cHJRPXu4avCzy0ksNBacOQ6Sj3hK82ot/CgJ6/TBC4CYHsaev1MYpKF0syoY3oO1pK2O2GFrrwfhAsHbkZ/7ggIbfD5FrAhNY5R3MwYxxZTbBqTXztMXvaSg+5oHxVxTUDYK4bO/Dq/Mc9oPikx9wpy+dY5SbLZiNRMbwkIWDULqAivxngoPf8CnBcEBtD2syqCRZtkt35oMJxl/Y0GFLugEJPjLSyZ9KJHotacpWrpH0CWSC24eCIVFzuSDmw10cbBv04amSarJ5PDrME3+5Od+7SDdkib6wps6Nu8o/Zyc57lVjhuHow33DD/OGbP+qgPRYZHQIyQci5tKWSKmOsrFDZH9kznLnmc5Gb5CC/DVy6DOIOPVrAg/QK+/RWAPUFoU8waq59d/m9J8H+XjsovLt1bmv0kMH5E0jzajHCeYJdPFm2XM5jUzdmMJWmBJFpdvycZn9L+ciXWyF7daoIjeGFQ+a+8j89obmkvcbSn0o9r8ifQTixHRzyVLBOBWzUYIZt/8FqQzGq9cMav6j38QO0xKGDrdt9kj2h+QJ4Sa1cuNX/Iu72O0rKMXahLdHGVKyK+jpF1bEbQ/MT9SfWjXgZ3o0Qaah3PTE/esPUcGAU6VpPCrmajnjzA06uiDhk/g8lipAxhDqw+UUdp2jn27QfCzaqDba1bi3dW+Ff41ydoTC8kyu3SOnQsrFumQGOqmijClsuqxcEkFckahHGcZm/0uoNdkhcVDZF6Dj1Hqe5PKK/GIfxRpwBXic97A7000PsnTewp4Kzj0QhqutYYquwI3drDxfAdRRXTHW7T/t7gxQHAC8IDo6FjYH0VWFD5WWhgxsyCJJoa6+q6u0khhQFt4zgS54dbdyGzj7ibo5F+WOE6tvZRBoi+XcLdV+2FGXIBHLA+ECNAvF5CHizz8jUQ0zYhBGKAJ5NhCm3AxMtutqwg7GjDXPLLzJ027nRbQkcJtONdXqs2AzVEmQsw4CNw7GZqfVAB8p3ACEeTprAJzHZItWS1D4mF+Wo1agC7lCXdX/bzV3LpL4mNPIneXvfF8MrUuMi25Pphg0mJ5XabFskAU5NEGDpPamnxT9DCN/o4y1gQfKAtTDsTHnvVaQjvKRfhW/d89FVEhfTDGJ9oyo4AQOtg6URRMWKANxQ2ZNGdQM0v1ZviLEx53Qop2pHS8rIqMQYNlpFzHVmN12VmkUJ0xTl8ZOExuk7ysYy/r8dTpfAoDDg4laZM5xwxDlzEuM7/kMjHnQoz71vP0yRxOWtvxSqQFryRaoD+46rRaRP6px79qgWwKn7MD++WOhQpipB8FPTdB/P/02T4ZT0fQWaaOvCbIXmChXTq+l0N9KqlYUGpIsFywxzPv+WLcobRTaWCLgg3Zn9vyxmUIxo6+CKw1hzULjbocy79VRFXo4qf/Nx5zTVkq2JWIWty4a/Qb3nF3AAbUff6vKks+3Doi+XYwkB92YoR8afjZfpFqmtYXIA1B/bEan8wxi+wECIhD1rH4IU/RJDvdTFs3GXKsxSboJ+Jhnpg07Ahv4VATcTYb50enCgrUab5oUJWS8UlB2bcXpeTiB9nfxMgizre0PX/73fLlb/QselwsYaLaaDustrb1W6nuqYE/brBjbj9Zea1GXQR7OGgoJEKT66RV3gtVa6KtLXpO6Yqluk4ECZ24oPr3pyE1VDP40sUL98w6FQyxEmJeAyIUtp4u1Scz6ARiIitdkG6UmkbOEbi778J/UXFRds1p7suJy288eNxjUpLOd/Y5CDJQ6oUe7OOH5WlKwiKJcNUVC/Iv/xh0Hl1dIxvGKqPKOuyZ8dPkLhNVA8rGCAloCDNDx+930BBCTUUiiCjGVOMrSLyz2/nsvoIt5RIX6fzlEE/zuVM+RpDSP7U3iRzCUgAB/oiRoiUMpiWCHHCsZSKQOsWi1xsmQCmoZDWOmmgGVSsvSVXiG1JZEHHKkasPaiOR2iAI9jYpz58ty72Z2X1m3wFNnyqPhmzAH6GVQZTQ5sR899o1GZQYuUW1a5TWhbrywTTFagnBVziAbpljmefMVi35hUedGk//zaca4eJcwKt1uKBvU6phB/hUA+ZiZJ3HOR01qbJ606OUuo470OHYP8iwdG2RT5laDRt8hnobmwF42YuH+AXrbXjNHIhn3PV94ysf9YpiiSLgca43uvWmIiJDsB2Jgl5x7oJpfZ2bBPboQXI+j1NHWuJ/eStnszgheJuvLK87n7NU2M7E3FOfqRN2kCXIALvTvzZltn65aYquRB7kEqCtvqxE/XT4qKgazna+l6/Q9IiIfie+9uCPMzh+AxmUnRNUcaYy0ILLJ8LzqReifLLsa0qTjS6Ca6pkPYrL9Klbar9Hg0/KybvMH1QUIbxu+m6iT7miLz1fGSoEz30J0ZRz3cEAGltfwIljw9mm2LM3qN2zaYWbub5ScOSeh/8L958B4IELN0kl8hpa+TpgqaW9pmnGJsZ980wduLfFBMsTu+Cuc7ZgAUgS5kVKNI/MHYEl3BMFav9xZQgBtsC8LjUqhwalQIAoGYrsWT1yFdzm08MfreV5CeMMY7NLdibY+yy/KhXAWsh/LstCdDzNcpl/VwV5ze1RUhzzMAPx38gl0WVjFslW8JY7yNNbuBVL+uU11PjGdyBgaoagw8TVRK+o/Z8eDRYNVAQooTmWjvbFE5GDDrtG3wUl0ssRBJ7tTyR4Do4sKjYFT1Ra5kXolT4dfRwwdeTEsweAnOiJHWQFzr9jPRzEBrhMpdg6lAo/8TtLyByGh46R05/v2C1kH6O8/u+mBAbG/9HFT3VV0ArWcWKvag/i4NvQZh9fImyPmZv3RwdNHaiC2QbQDcFL22o+Kvvf0HFn+u7YFho4oe9jL4WbDLlNkfnTjjqLbp3gHMdr4hdGH1hUFr7jBe6jNAFUdD5AhP09xvPpBqNACz1C5GkVVk2EdB4WazzR7Bz366X15n1jaCbeJCk5qVqcNp97+Oru8bIehq7XTov9prTFFn9lY5i0KeLHmtnUCzyvIFGptE44iZUyeGCcXNsHPQty4AV+Jc58CiFsJW69v89qwCDT/OBHdjg0tmqiknfPuvSbEntEeplmh8YlMkQ0DWvJVXuerZUsgS6Q0GRty1ixINeN3miZ1l3pDTBHUC/7TgMcO2iU1zaDYQL2Iy/bdpxWonqQY6w4M00ZzENq3DxKOXemJXmAnsDdPrf+svpst8YcR02YjBpIZE32Odu5EuUwJV1qjJ6K1reBO+cXnaEmpVpFCn6dEE8rf6VjnRwFo3TVledhB8UVqMoFllD39shB/2n9t+bCVTANAraMV4WXS1e7LKnUeVlrbonc3YWvpFkPFYv4LqkQOavP3PsLC+IV/Q1pz7NDuav3fqT8N1JYQLL7iq3E1HwPPCvHcoKO4Do7M3ETniYph0laXlJYgZB/gdePPzdVuaW4StjK2Zo8jDM2HadTSHsBiyDtBtz6dboKVNC1vusqBwQ6G7r4MRUfnH4lIInygIRWkgBOWWM9q5wjF9AHNtn1+jBX9NFaqjf/+gv4uYHOQ3MU5A3pHekcUVKrFE2L9Pf4cLA+dSs8MWQUwkAECEZsGyy7esKjpz3/PMbMD0YiOOlQKCO/KR+jTlcbNPt6QPbicUPyDjl3ztalUVgyFGU9lOqLwGsA4H/JWHTZJrHMuaIn4phiWVa4agwXsdAacLOYlYDhwjRo0sHPyIAH6dG0r+gnGNxvFUgC+nGliYJb/ScfJs1siOJK8NrsKkFHecTXryruhxZnOhjkwUqQKZ/6VS1K8fjP9Y0YdB2MEXl30gYFqylvJSGZvaFlWaRuCRydSztxIHVFy+gqJf3VRGiW2uBBBnwzwhGpK7nzB1s3njKJ2Fng086Sg8gVesgQA4Wf7qakGF5bZ4vBUJ9HCOZC5x74jTlsKtkH0dyiWOmy3hYlVjxIO2VhGQzibksXFLY6ngzinQgZ5zSWPIcSPw0D5maX7jLvbl4v0iHWbfUbooS2p7cXSK2hPDESynGa7RUIKfNbg2XmDXwNj3SNV/2eNEYG4E3L0h9Ytmg8gVOlM+YqqfbmhYxMWanu/r4oe6jk3AUIURsYmGEMahhU6uxGTVpz+ACzE8aXobmWMG2myRBDOhwx4aNJKio/Q2SbI/Tu/lw2PmbF3TdGsNII6gtBWghQNASC85C5cRkEZueFUyAZ4uZGGSpsp0Y6p/5PT9Y7jYvwFJdgeEfXyPnfZhEFIYmw13yq4RL2zaPug8MT6Ciamtw3t2n5gAAdGwPpC1JyBlIvndWkmVF8tUMk68KUPCrp/K8uTMpTrDOudd7kBJ6ftPUT/HS3bcvUxyXza1OsFMSYhFULP4EvJpi3/dIvqBLnuaF8iVqe3uErr8xsmnDM2L31UhxqQ4eADnn8lenTIM4KZ3vaqODPZP+lKEK1YnzedZFE1Sf71b5pwV73bh/v9zTuws+q1vi1K54ULxn9lvCG+eb39NpasJB3N4F0qSGwGzHu4/vlC5iKZG6ywBhKy9eyQX9CyfTwkspX+1/RmiJHF6jw2WznsJ3Rv6tp4WMuSkOFSJaTAzDFz2s87/69U6Ddxv1PU+LDH3BiVHVHsYrw5zw4HGzrPG8IH7t+KW3/tkOKE+4M7MfCHFXykGi5zmv3pSsoqGKVReaaHIOVAH8ip7LPIruJkbu7UU1GZEqltEISlxqsZM7hyliUPBzhyFzoobSHWK9bJEJgeMqdmubEC0rkgR+qPqDGhjphWoko3hOC1y+XvBWCi/ACS1IeltWEWmk5EfBiihv3W8dK2AVrCnqtV9VfaVyW83eSh885sFu+EAfJ2W98tHTqVrS/+3HP0pNDfEyZVWN7XH5i/IrvRHzqt09Q+8q/j6DGs/sLC3S5TV5chRQZAmD0BPuP9xpPFtwXcU0VIcfo+9Ivx4c1TOABNe775Pz2xRfd70ow+nzTGgQsiJ0QndtQfT3yG4kwaAm7s2IvFTjH92nQVg3YL33/As8mEdlmPwjfDBySavL0d7hrtKymPNnA3WXNHPdhFMrmEfuLWeQwAuNQWA92nP6xBNyfE6dG335YTplUd7vh9QqjcfMndvBqAwEi2iLzZv1pLtCdnT92jyAPp5tBxDqtS5giZARFkkOwN+DHmiyyJzng9dTbB7gQwgpCYQU4x6+aDxDzkHwm4Mg4UlhDMBjDZxLJFMA5DLHqzzM2VBQ+RmknTeKztDf/x7PxPXVOuSNr2J2gJKlQCIcfFEhHQ7jc2tCbdm9ExZZdc94J82VlnyXb4IKyFIgI6Eh+m1TtFLMx6yNvKGkacJllIaZWQXqLnixCc5boTqjcPAeOlWq870W6iTR1jHmDH63kX7snO8YPJkV5JkOHOGWVfsLN5j6uKRrmI7K0CB9GmRMTHfO0LT+mRdU1oVJ+ph095rl5Vg5BVSSzNLWvvXesuk9ki4VjClStsnvG6xezN6NF1IvJZap+8Iuih7N5ijEhrA4pVgOkWt8Rtb0LUWePrsg/YNieA5wle6a9+s1eW2NuNdwQYalX4NNiYEp49ATb+XFTnJL8nkbH8RckbnpXKXZ+z+dZDEZdBWF4oWEME20hncQE5ujx6xgyLhnYx/EEuXpScXR2C49DoXEKDLKtnD5R5f7D4027khkFj4rmE4rufXMO7eqrnJXqvNWQpbusNHMwqwQUt/pnl4URcOFQ6etmnY/0/bx0YsbMCnP+eY96xx6UmKWv+4bGjOjTllOZz3ybN6+y+8LUJXwUn1Wh9ThQm27vjB6dviwGEJ7Cspg1TxksZRE8RlbFdwZNBq4f+b9dsNs7hpSBCckXzyaGET2/h1a7OaAKg0QXaymddCmHu+ClfkYY3qCHzMagdB2grfTQ0KE7afK0WEpYO/sgBiG8oBqdjyY58LjZGS1AWLJxzOv6SWoO1tkHjdeKStbrEIAMuFz5G/oP6rJO4aHSH0tFGpIKryG+ZCkdXPY2XboTQ6mZi7G0gEcVJ/1rda99hEAPP+ZU/79kyhM68Lxc9oOHszMriNgXQK64OePYPovQkq4sCyBINwM3cd8IERJ8KXluetEJ+m2nBx9Rik3te8y9HBvWracnROaJ/pVx2p4loZtXvk45/zlBZSn3KXhWzw+6X8P/vURPfcU3wEZr/IF91P9v6814G5trXCJYb+OdTNgubYVOG/WslTqzteqkE2AlQJr+6ssxqU6t8mcdpDr+ITZVVi3oC5oqJ3wI5ZVZukItTmRjAALixBo2J/j3l2PDzJEZ/pYNQVLTl0Q10/5M5/afih6p3Go3NfdjjstzaWxL6xQBz6L4Tgob/NADmD93KUUXV7tDnnA13xcAJ3hI++XlOp4DXSgV2pW6tPN37MLehMlV1JvctXE2VZPGT7P8q4N5Jx8NpHCp+o3jzqgWphtKNh/7Hxc8tT2wTqYHkpLeP5N/nT3r0pJexJ8cPRbjcErHK2X9DUDLSWRrZx0wTtR8ko9QM7vQS1W4iAJoiKrOgESmmUAOfiaeQzzaaF9Ahb8bjjWT2kU+Ka8jNKr95gOg1ETJ6qSm8RUZDM3lbP6Uh2vUj3CsZzqP8DwMw7xv1KyUGb7y3hEIZ7Kx2UR5maP8uRLO45rQ8oAbvmhbt6OfXh5c5h7DDSnrKCaGBwe2AQcPTRx6kVM2OlDJWBAmsnIj9vumEFZUxFMC68ZQYmfeFrcqjP5kziUoxxCeVszVg99t8enoRbzSnNXqGZobkViOAj4SP7zeplOJamuEMc/f1p80E0k1KvGce+3f7knv5wfbObHf1F9aWBGgjION4gQOgKHhj8RzRXATObcPt99g+Pe4TZ0iocNX90eSASKU9UJ3g3WoUyjGVJ0zLQNLskQUjByfbLSGIMiLKMxpgfl9vu5saAphic4MmyFotXQu8D6FnnRAAWyhDwx5R89YZcZ0nwQJZqbsKOCbAoW73TnuXyDBGxPQFzNYuaNLmJSNZ6jpUEtotTqsjT4VRieqJ8dIC7idKFNkH0sozrC1DmR93RdFot+DzgJWnLLd4kiU/zVST6feAQwkadP1LxZGt6mD6tTdI9yI8FgF2tFLA/SoHFeJ+Yr8Kw4x34Fzj/eGoXuc4w6f73b8cVCRROMLBSwlr9jLhirL7kiZY3DEFqzkXx5Peo8uMPzeZRETi1MwVL6vBRC2OxaIUkxgDwWu0oiESX5S2tcN6J0Zq1celGVOHcNfeUmsDy5fNCsXFqb+f7cazIpXnNov8m3qW9yS8ygFwc0ft64NVqf6QL5f2TjUC94FVQJsMFTGRFVUew+5OXowTRvsR4WiyfyxiBVGla4L6Ip851OFA3jjoPK2SE+AF8CldyZUX7anxxULvdnc5qqwi6bkypjCnoWsRRzNgd237Rs7nLm6oxU/IFq9cug96+1RABdw2hh7T0mOTv4OTgKk/EJPql1CUkrndxtkpJZ9X+KtKmw5lyzUPJ2NEJfvVK40QVAua2V82O3tqvlXzZcAPl4s9x3DON1facR+DVJThN+88b7V2AWGjB6ltI/7QileyuN59nGoqkSKqVJQhOHhq6Qhj2bMJaZZMoPYgM9hKtZrnnfO7Q3VrHib8bO04OaW7ZfvRtX/IH8Mevcr0D1B11Oss/lcZOjjkQnf4GzgkrGHGZO3NwQ+tXhfYRqv5E0eluk76QJFBovKuaGuHT3dEHsAjPtLN3l4b+CIcmeSwTByEBVYV6UZgciHeRu3l9MgCiTlmfF8C5DHPFBEHw1PqX9sKiI8KWYqbylgtiiBof53zX5JKf96pD7K9a25Z2CHugcMzfKk6C57tLpSnLdZtv5XPzWQUtZv33QWa/52FxO5VsyVjku0ZD0o6PXj/vsgW1IecVppD5OlZoFIKlUP6iklwVDKaXQov5oT9Ti323rpudBabnuv/KJZ1EqKojOQRkR/rSe4kr6N7JwAFomBOtRMz2ORHvm12XOjYPIuLhqFk+3ik2UTlMuXByRwtS4Wfki5jz0Qki9KbtBV+bXhkeLQRkKrBWEnIfL+kDQ3ycQolhbpDlsP1THfZc2Xv2KH90qszeRJ49EZcpQjpuTyP+IT5Kj8fP+yi/AP34O08gwVhKDP4avzPCVVnJ2bG9doR7zQ/XJbW2Ac04fRADHWnAtnPSbRfjkQWVHjAt+Ruz9jk8QWkc9wJf03fXM1RSbt3uKXUbpR+5pnscXf64k8eWHtZnPZz8zHGgc/1j4Q9IvCGXUKwwHbSL2POIMYsRAWAPnOKlIvyyXl36AyjNwI9ilK88YY2Moy/Jz+K+pUx4hC5uev/JQdxuhzJrs3zeDOJMJw90T8Os+OJVfqCsnFcvJetBmTi2wyV8OSu5tNICHd1bZaEUfFqqxSMAsAh9prB5+uxKtLpmn3ItQo/F9b4A2V7fcFzuJ/Wbzm2UzoGtK1fs5Xj8SyKGRRH5urGE+GUK90YzzRP3QPr9KE7i4nup1tqgsbfYG6TTKPv6aPXofa7BMng7mEuZChwc5zwoVfdKMhkNfvVm/nW89Y5xis8tKJPDG+x7UaNq/UniACTVgbjMXHPOjOwSz98Ivl7CShFBlW2XfVl9SKSVbLzfETD8JFkXrJeENk3DIJhJkFUFu7bSuGUPZstmBS1Fltle4QivPDgRLOIrKfPFimsIIEE6Vjz7RR1ZdIhX1almovBZOVlGs5r2h2WyX5cOISk+5suF71gyqpYL34+joW1udYJ/iDyfdXLuJCuFWWoEzYKQe3KbQqLOqmyl1jDEFaoAzvI4I1NvDMTF10gIZnwYdplIKIexqM11w1oqF/FL5radtwJVuRXiilSNhZ7vjfW9NE8ENWS/+GGIIj8gesfcsxLNd99VIQCq+I89GieeOjMpm7+QMnL0E/H4Ry4fAqJSTgjwUrbwamVsP4iKqbyZ8dN/fgX3sa7p+EwOPctWj2BCkvgYVmJkO3GDu4O7HdPN5N1f5QdnScU1iV3jYU2plZ6vdnK2Tu/JKC8mehpdP9Ec9iFm/pVfCrU5HZK3CtU4gBziid6WGGfWkBoT8YMhpILJiVutxJbUMrRWHpzoI8kVUSVBdMRqmibDrQ12ejUpB21FDQLMpkt3y47Li+MggPT3/Gud9SVF6FnW/vv+4BetaKWNzddJpWmMh1fST1/ln2huWMCM+5q1eMSjKueEIFTpodvK6SezKYio/NITmkLBlAFenMptNE2MveBiewc3Gvr+P6+piU3RV3PUwjyiqnuvb6Vqix/90UFNqCZDECLdtIdzkoeA21t2g0ng51wYmv984HAz6uplPm7SqQeH8gE5WRYo0FNhS/XPv/3/MqRCepZapb2ZpBkzuxKtGSFfCHLuBtjZmo6J0R9XbyCWhf1Lh9wZwR9oI3+npLZghKzGXxuffpTTU7ysl0wItimZcB4DKpdJ/+Pmlq4/Pfd3A6RE4yA5xvxYnr3z5noP8fC6go44bGR4kHlypKFp01M27OsO4OYqnqhuBfma9yUC/btH2NP0mitKzZjHxDp7OZVXSKEDCGKuWMbEHk5Wqla/wohC3MKEJwW43tPp+DqtGj+cA9ps7TJ363oy+CmDzRd2Y8CQLuQ9gEMDZ609G5duE32mt647zc19KKeLQ9lzKQKLDLuUUGG9s8GElE58pQMWJacVaO8WnMSSzwNYyw31hJRaXANiwsHzWRYONOavVmJmQFd+pxAfe/MfDuWLE5/l+Y5xg0f16ONgeQx5fZBYqpHK9VIcNMmAauRZ7avrZxCJM7Ckh2LZY8pWf/7ZLKTari7eOvqQmTVJx25vgkLDQB6f5oCb2gK1sBBbzrUnjoecVAxjoEBOt+yc+05nMQfQoqOsAxeYvVwngmtc3o3nPq1wY0r7lQh3ST07uxkI8eWKvUm08lf82Yqve4xRB6AFFYXy2QOoXaPYy0ESBCepcIRuY/TYR3GysdrdM93WgrMZpRc8JqLnp0b2gufLopj+vS30JjsRAuexTGhMevwEDLAxrEnJO+qykgsFCT/MJcmzDX2JTMutXUpwRm7WaEogEEkkpu2uRP8x1xflQ7bBKnQY9+UvxWz2h5gGCAkHVMOWnC8jS0raShDW4YT/SmG38pv7U6APHuF+hblj0S92r5+jx+zi30bGLB+8nX8P06kO8xC6jS/yNuOgjAV3067oQqm/nEc41ZqqpUMRy5A3zBvGvdmbDbTqQCtF5pNtf5prstBhZsgqpSlDdGbPJm49HWYu7qmPMafk486y3iAE4HAPRT4ANpDCyQfpm7kT3Gjhsz7W2gEFOeQaZHboCqiNTZvUTOxMZV523npfks38WySUlvGyq7UL9COwifsAKQuCSsuAdX82jXfC+dOpvLTNQza8sZVJ6hR2XAsYw4B/YFS1Z00gyp482PTd8tCfN7hSsGD3lKFbjhL+909ri2oaXcO+S5NXm2EUd+Em6SFL8swFYqJY/D08spI+zKay49oTIO50+pV6lbGUUCqT7NzcB1gUaVXKcv9+wUalh6T0Mk+DETlijOeP5Nel3C6Ehtp7Ox9F9cSOgeDtuP5Cn9TAhTwggzEqbnR7R+6NzjQRfzkYOoeb+I33NnPxcP73B4u4wf0RjlqK3NklH3l27S6HHAlZ/4qHrcViGIdy2XY+z7G94TziYMN2ElZuIMkyRDRbOa7qT3FZMa3Qd/ypXqhOSVfduvER4VygBcn54v5YKhpoWndDm1Nxjk+ostBlCj83lG4hcbHZP+ozBZUEufFi1i1HyiDziKVqqSW23S5+TvyOUAHriUf6aVX7/u9cmcdnrLohNtGu0UNKWDhhD0Pf+K8VqjfEletdq2Vn0IXzwkHynPsL1QXhW3jwUydn5oMrN/ru04ySYy5gVdpPYHyW6mG0PWPPx0jphfbChUJGyqEiLMIBTYC6Nu+IKF5xoKUGDhbliEa4fSsOhVNlE/Difaffahsn/1GJjGvqkIuOWEuk1Zm2UvnakMSk32b1HnqNycKRqABS0wOxsl2KuMAmPOCCfuSU7l+V2xeATagJ1Rv3nXaCeN7s4IhDA88ohRxjyn33XfAZWbE2/yTi1sFXdRBY26XePe013qlrTxkMX0scC7FsYtA65HF10t542b6MhfFAcSgoYpMDpD/S584XhHYjsvIh8ow9EMUB3+nwmXCjUS98HlaCwGGLSZgSbkpSZY6V42q2ub95PsAQNQoPh8l/OGIUViTXsJuj+79qUO14M3/RO8UWYseIpRBnovOHrQnsK4BKSNfbBCqHF+JIMNDjBiPxtn3P693VcbMUBNxOTXj4aas27MSQxEp8OepYK0zxnKzou+9oFj9PBg7gJWjdCGuSkhDISF7F5Y/cuCVNjidgLi/5YG3y8GGOsB3Ay/3IQJzhRhk/sbmssmImd0r0n1zelpqZevvYjzLmdtM3ewxEKOeHUS4VT5OmBN/7wZqprAzAhtapDmOMhA0dZl0x3mpwPvzmQ4P0b4f3DcHpoE2HSkW+DvUmnNlSBuAkY5rFrP9TC6mEg1stwAtKte7qaBEifxLk+BOK9Hn2H/MSViNt1MPrXOtPjwrKfrGZtEkkX9ktjuOf+1Lbbd12jDLKg9YhCttROjIfEojKuB+hhD+rQAValYd9kSad/ggKhobbruAW+kjXgGapAyhMWBiDyDZ7jbGsWwslx+PIs7jcPD/pedM4cGAnrkkzoNbQtGFslkteo2nq2hrkBBMISoOpZIsjlVzvlToTef2PCRhPHJYzjvd1kcwiME6+z1wnjlWqgr44XqOznGgWqVaf8zxBxU1MCVgx/eANMz132C52vim0sMgCJrvoDfbj4spYKrri9A+wkdRadtB11DhxO5zQkhoEVE+jdWkZe5rvNyAcyDPJmZu7zioj8ZZWN9sq80kCdu5fyTMmyEoWLA/6wPpOZDVAxH7vDaG7Hk288jxD+pMQu90XNtdj2tEwmH5oGxQic/aZJxlNIrFlGmKTC4xsXMpIwUmVJGNaS3XZV9LI3KGFXAj3PDXAz/nKuEDRTj+9TCFd0r3LfKZXEdgkvd9ULjVfJS6DFFpgO4lbzYc0apU48bYqdv7Mxa67xDdV7TdFFgnApXIDH5O2dB6Thq838GkBU2yeIpAPBeTUlXqmPk6TJseHoxfqNrwKE3wI81FZJfFOaT46LgtxUdTD+uBxOOpXBVCw3FnGm+3PHXIZbLPjNwsmINqFi04iDcfPU+uDe6Gz9OTdgrfFmAys7vH6sOMGIe1o8d53hWTTDIfP9c5rvCjsrG35jYj+fP9riS5R0y0E/UXVgHzp2jyjaIxo0mLE/DLFDWKgMjWZCU8JYgh3R+jEyveAQNZNEMzrrIriKNjQkCpnAJX/Nx3eTfUUPRcpkIhgS5GNfDDRP1vNM4ZOXzmrfxjDeS9K6Q7wiLELVkf3yJFh6DwmdqaFPSrDRlqVEeB1nN6d/cyBEra6UA3EIT/XsGy1sM6hOoRIKu+fXySv6zs/jxrTMkTws0d31YZKkFpakh7Cref8hJ1OgjK86J/3+yBCrbiBUl0E58+jJwizF8G/La6OKEpDsQ9ScUKF3pOgIz7VyHhxJCKoQ0bNGXFh1LmJKOmgeI3gmE/pbWJCcuzgSHFMhlnnwfh41O6AIqToOsO+B2YN8VhVjq1J3IOZCgNVbApQt9tQRUyEBULymGF9jX1E0GFnMKxuPfF8AIVgXTibSZ0p0rPzLATI9t02jvs5CLsI8k9tlOnxm3gKi3uGzx1j69lG5ex3gnEd8z2yR2DVGb3Vpq3jHX2RXXojH8zLEHWTooPINSMtNrlKRRqw0F3D454toUw/tsR9NvEPclETI/ZJ9kxMNC0AJnhFpUjTe7GEIcJr/agDbCOjqJvaGPwEr1KJ58k5ySxRIU+znclbnrWb7AGLOb3Rb8Ng3RDgwV38hbHHYrCeKweNRT6ajJ2/KQrhA7YFVIN50SzqqDWVwk8A5hOP9eskeAa8GsnDIaWbIZ5RVT3PLo1HTeEvCZlgcLo/xxHmcvmEmSVPg9SKPVjmIpKb9hZvDRi7jEtLxC3guoTtDGQsDjHgjLEDgLmWfwPS/qEdCkFon31Jy+idwVM6OlpDtVAQhSLXI7zzk3Ved91JrE+KlSmRUlGiCO1Jn8gE6678PWfEDKhyZHfkVWuuOqv8OluzQXUQLSRiKinT79no5eEKtBn0QLkFWrYVgYlHDOdGwwAbX4c6ZXYUuF72NEG8FA4rUX2SAY+EI1o1dWxXCHvXgN9rKJsRjwu/e1MbYoY80YpNd9s5mjz6HtE0KqorjTdSj8BF9eUKqJE/QlI+xTyJ40z6j/07ZZGgWrOcFmMumIse9K7WL641Zy/suByuCWE3dNL8M20mKH7sCTZAWRj3Vdj3GOZFE/Uvh6oSm6saFadi2ofShyr6dWEHpRC+HSN95KWCOZhbF3PDLXCggUkudfVKJ/4fiD/O3iN59LQM3Xr1m56kclYvhZzQ8j2GwZAwxOJNWuTa2PSrNodpjGPM1qx3LEpHFULmyfNGwMkcQ8ON+GRJqcvE88xyzE9U2CrUNfevF71U47B5h5xIZ4krb/H0yXg3YuQxdCHAnPk9cffs0e5W4SIpibGaG5xmJ/nqmKii8aKlwaUqg07WNEZrwn43pKWhHkJLIULKDRSxfOO2Qoxqketcm8td+r5KfkMcyT9mNDP77cjLFwIYmtBRzpRVa4XKHHHV+KhWVu6MViCWKP2h5Huj77Gw2x9isgUvnrXTpUs+TAgUR2LTegPkYHL7ee02VJfEV2Xr07YuKxyQ6QLzF1TSjRjtoOj985RqN/1wJNqyumGg+TT6YiIQoEMuI3sQm7nbsuKBRHSN0vvm/VcMg5t4T4Ry6564NwclAQjq2woTa2chXljKHxm824M8fHeEXVgE/U2fbDDjUUVU/14PJk0qCMOwkyv7FLOALKSvLr2qkHpd5l8wk4t2ASPJQo8V8Z/xh9LK1yrDkoZopUWeRnqse8AttTR8tfR5UP/vUDjtRVKiKoJX6HypdKcizBlGvQBhRzIRABQr2ZSS/YbSFg7bt8lhYbinZlw9vZ3Al4jjVUC2E6ZaUlCiQnlM9L/JgNJc73uIsZPL5WaqgMXZ+nEpR0bZGfCAYuQ6xDfBzSBylKVlacC1IBdO/aIrFCKafhWtsOIVybjqlXbGXicosEgDeh3FvTjdOyE/fjXeIGAop/MEBJfQFOUkEovu8qnJ0I6QBo8cTzhAxhSsrXHAM0ODTmamUlTzFNFWDYI7fViXcjq6g2y3S2GFyMLGA7anwo7+gmW6xeFUwLtSZ+a3cwfNvQd3mnzI50u6YhqaVpjh8C+ACAn5cis9C/5E6A178hMeiSHhdMrZQOoMIpHvKV9TXdp3r0fOZlOHz/AOG58Nabv9ZmuXxxFKDH2gKJocIruNlAv4FrgGVFQcfWYYBXE3YEYP/ItG7/CP0IWldBLNv37Y6sT55dYB6zU8uCF4HqOM3J2cz0Hgmz0QT4N/ylCy9z6YVRNBQbFsQihWTi6VtIzFo2JM5hhK29VWghWrOGThZ1uoDfcfJJVtaHBA/vCkUAlVzJ0Ko9PwNG5jQGkQF3MAmZ5MP5+JrP0RozP9ug+PpM9GCNDVdf6M2zB1dpBCVna0QW5fMcFg1hW23KKpmVvfRCPtWv4DPqyMpNbtuT4EIg6CJfDvm0RdNIFclznKUtogWf+qINE3OaioUaWJOfxdXi18r8Z50znn15pVyrYojEtPIYYPjMdFPlhVc35T8pF48544JQmvfk9w5Z/skUn2M1dB7GSV08bANry36yp3VH6MhOPEsIkYIR78M+lo2bgBbNl5tPb9cSDR032Y7h2EsED99ojq5J1f2OC6eG/B7/itqK8UdSh+fMt6Lq0omifJFrcN+zJ2G7ewDGAD/paW4gzu5qLsS1OXEmXUi2RYxtRueTNqHTC6n3qs+SLvrrVeOTpNhaL7w/uakdU0cWRlu1S2Gsyl0bZmsSZ5dIJfu81mZ0dXdK2Wiiqoadnj1ok2nh+f/vbeEluq2XoA2EsmyiQoP0LYO+qR13HM9Br7TAAF8y7+I6p1CpEL5pTwbf3BPHRGfE3woYzt85HvCkFE5GBPSjIU26/vDmqXGyGsmT62ITUGaeFqhbMAIK6OQuTHAzqF2r2NOS2M5ghM5omuUSMzl4HhCSpuu3wrG2KztlNQiNIy8tBxXkVeyiS+We3OO2xWFi/FFM0rmo666xlYB52blI5er4O3k9tsHbSHQ8MxKJbx2PL3jsPosm+48pcIcCqsOuftKPqGdXMNhLcdbbcG2H4AwR//c38HJGKwFop8QdhMQOJ+WbunmHKiLaHQARhbJVdz2UnLR0QZr5RUHoc0XoHBMhi46qu2EYzu/6dklqD3LWNXqDY5+LOMRGFxjJ/wFwsZapbqN+1R+HIwEf/mze9M6jw6xuYVp+1qAVoEEbYJPPQ1pNn8DkZcwN/LXk23zdVMp3p/cFkkRCzx6VEbAeLNTks2PCDI4JmJnTBWGGPypqAE6T0VBvWv8/We0+m7KWr/4QjESIAThk6h0r+rAk4z9AGcbT5i197sXOsMJ6MW/rQM3hs3ApHGvZDtjbr1WJdSVCjGEO5w8Qq6G5x+yE6I3GHuU72xrzWd1fsnbPj4ioeNkkbYV/kVqSpX64aI6Fd5PyHGgGI2nybj2tuoEZaZbA9EaU5q7h0CH1RoA3GNpK7/l+33DFbu2PjDW7DjVeZY1D6WvTdWn1MYpK4aXNRm8e/xYmbcdedWWmFF8L0hMeG8Va2PF93wqVIUgmJfW4CjL/RMBVcWzZ1fulDLuHc4ty6TL7uCR3Zt+q+EaGWSJuwOarKEkTXqrmidQKK41Oh+enzNYKSol17NGyA0fU9okV5L2UYvso4hnvSwPP5Tj5gCfCTypTB4KCL7d1QEnVoNoQNmy1y9q2qgHtiMdUVKlDSHigub+74n5p34yKejeej7fepylyfM2csadMT/K+p9pPaah8GClm5enXleAdpL0R1NrhHG+XT8RXg7jtTNSslWfPHUm6m3ZBkW2iJQmN/VqKle1FqUW/NF4mlHKYaTCZ/OkgkXcNEJSZQAXUnE1xDL/6e5sALhzyMLYaq0ysOcp+Ir/yiDhkxVpitG1tFqtkecLp5dFfZMDutfeo9+oEYTx7yGelDmNZp1BKEOLjjoH/9Y9G+PriD9+U//EnYjvR1UNcCDpUKGECM/J/wcHmIQ8ertA/Qpi5Ns6P2HNNeex6Z9he+n3KoY8vhjZZmhFSIogdLwzi4berV/R3c39zd7yn8eVLlXzmwrtpX566CpunuV0HHVbu8b3ppquSi73iJFDXsX60orBkrSQI+iP8hVzR5c607qwCYHisUzdmCUkmQKrjillt98FECkcoRzL2SogS/+ZLF74iElWOL2nwPYnGnmhORU3sqqj9B7bvSS33ZtjS0RrH6wGW8ug/xZ3/yeDnBXbBiAQoDCMKHADZAXsxSX2D+vB66+RcOOvqwiGdLAfJpUAzyIIlTgqvVBiu8Lxl3g31yWXhF1aVGaej9CQ1mGrynfRBBBJP9z/fBQpdHcNx8UwbqEFBvyDpG7kfMXlBkrN/V4Ve/og0x4EvdMvM8PWkhsUC4JILumBgBTBRYRwnpCBx373F3MFo9Ub9HkAIB9ZCrwp3jnLqmF+GwBDT4Da/Oidd+45Hjk0+ShuK1qRp+dDiiZjSYRra7uJVtyg6caSw5pdWeio420V+RevE1fZyY3hiOhw7xthe+bQc5YROIMf81zv8/doEQfa7xcSQPgw/BLLx1/ntS97QbcruTDahxM/WGDZxCjVL+IE1meeRjKN1xD0WHu+O2lWmo4bCN41zRJ2HJZK2ivjmw0e+jBAkKnfFUwjZwhbeICB66qLwMXFGCH8z4L76p7N0Fd+KtvIh/fmKiJWCZK+v2gjnAJxtGuYGIlSMdsYc4fBH2JKnFYK3/fXaspRYselyQ7tIuPR5eo41AUWHkiVVhPSYhP3mUwR+sPV7CRGDaw3v2RkKhRgLjzJhJtrOth++GqDVvwdiE7HB/ijp/yzDwh6ssm5XAvOumf+ATbnSn80Z+X+wKE2/qhuBx2AgYjMFG8LBy9JDnrarS9ocQGTtZVwblY8IMfJNMjrSBMs/0TJTxg5gsjbKRw5pAp4g64PRqtqFe8XKHAeLrUIsReRe8SwnfZ0NisZ/a4X/QPvQ2Q71HrQEJEG7O9szXyC0KHewvGMfGTZ1Lj6kiRB7bysO/ZoZ37xbNxVC8ifgn05/yEqt27yuSaKCvlyPU8w9rfUK7EB59E8VlOkW/Bf3z4zkwyYCM1Au6aIYh/zkaLdtclKy4m8KZfWzlTj+ZsagXHJs6AaKaYexU1GQtA56fi4E2mY7AQf82AZveYpSCXkc1KDOxUEapcXkX/P/DIhC11kZx27Y8Um/IlMQpsU2m5f6wnS9lrae7iw2Bhd0P/6i7crJdvWKQPVpAQ8g50LASk6Xp5TSABE+fbFiWd3m8BsubBCW+fXKhSM638G9BZ3Adw+2fMcucTNv2GtNzTW96sRPCYinfDEfn2gQKTTuTQK7gB/PnVKAWJCyC0GbMiA33Lynh4qnN/VSuN+vaqgl4wTxepR1RgFYncCQw378mXCrLKY7fTj0h+8SMurbmTC/88igNnqtD9NJF6guz6BLhBkZj7SX7Rhw3HYBMgxMmcN1ZYBIgM9zBNZvMIpdbK9rrlDIpNLR2Zlcgf7nNWA0vsOizdzffHpbOgtvYi5fHZ17ogzklZUaAsdYNHHt31S4S4QhXL+8EdqxTO7fp5Yt2CP4rLkwqlRlI2BhcGHM5vHFx2FviPaFX8su4I5sJebLxa7B0QY6D1VfA7DtTyWg0YNoLShj0fCnWup80LuPVzYE5eBOGwrYXCDZjw8ndf8NyJ1nbcyqhhtG99/pdvjtCZ9vMSYRQoVwVtRSUYKs302hPk4L5Da2NHjgu1iJyJ9r82nREfkKBvq6JaJ6qdCVolzr49qjfsOxfb1GmYjv6BsG37AkuY8efbBc1gAuZsFyG0d4gvtn9uiD5+eiLxTl0clhR1XlhfJ6Zl+XuRFYy+/E+CS05hxnZG/Lj/ZxZVvCbBJ7DRrCokUerQoQdqzSjm5LY654TE4bkdvyfECOG95WuQEfaa95rKPFuv/cZqJdVM2r3iwdhvftb8Qjvk+mbCyMgNyo8VnKGVYgCi/Wxn2nrqB+YP8OBxgb/eB7D0jcYTk2RyhCKrahs5bWFGSBlZdnAPTFAcKGSG2F8Uf3Fgsrjtr6Ds88zESixu4TMZojwqNpgEfuDGD1LZPaA/r9hrfR63GZTxY+k11VdUselgLVS0zEb9Wlk8vcjaZ+xDCx5/O0IlOwkWtFyWz/6cAsXFYve0OT+JioopRfxXO0OFd9uh7G71/4NPhVV3QaZto5+v33KmWBzlBVfkW4itXwnn8oQKkYhw+57/3SyMwq1eI5fJiJ//E0XpzfgzDD5BMvQ3iHdKw3U7RrC7Iii+Q29YCRhkJrM9owAxMCiDuyibd/3pYmURIpwgk2YTUIu6yPSYeYF1c80caMmS3ehR9XP9qQdJPdVUgOjWp9yeiWdMChbThxXfQvfzDzeGOQZcic0Kgg6ELyEKrXzzE6ByhpnW9RnMEVEA/pkQeiLrVvKNzR6q5iUMWdw8XnuDoJoCpCvWijc9WjJBCT+7lwgDJ70kLHs3Cpbp5+z/C7pNo1mVDGj437BH0cHbzUQRC/Q32Y8p3dIzOPs0FoVuDvAgatqC0UDPYgfCvtFgil0iXxCL/ctB7b+a+EmtxlrGPwyLbGzczt4KQbvJkomxGPQ6Jyi3yDSKieuv61ethKSIUj7LPrytRlkzs0kATmge5Fhoa8YqJ3vSwBU5+DeqfsO6NChsG9ZMyJIuI8si4DNgCa3J58DdCI198A8txohjchckuA4zdk5kaF04anmOXybhoy8OjHNek9qJwrB1Wr4hgKiRAZTvWPlSDmrr3w1w1g2S1gqebhuB3836pPb+8owC7DNfI74Qh7R+tGI23cc1+E3S9QrRxrf2cioU5MOj+qEXBTFEmkhuzz+H1HHsXKmqXQWM5YDuOLInifVdEUt8whG8VVIbzb9eEipW6O6dq87IQze86rtZBEX3etomhvabrrBbvzxqV6gYBzg7bzLLqmAGq1QmopgGjggfWMxIdWDAqmDqtJHg9iZte5bGWegGTGuIMhOgAZA0LgtVBIGTa9CH9OJWfG6+I158pFJOhZwEAgKBA4YZOmyH7ssMZA1mJqWbZcTjMkTD1wXcGSuwt/umVaU2D9WOTebF9m6lW+ASeORj88M7oft/sdFBtPHkTedPLZfC2N+Ep5UUy/YsOtBmqFMA5uBXQRP3ODjsRy+cJTONoae3GO8h68aGSp1ygsZY2h+ZaCzj589DZZUKjApJMJ931nDv6a6GIQDaAQghBA32Dh1dpeaIYGfoUUOa0QvYll9MA+rX3aHewsbEWJqGXO5EvZu0O0i3u8dhUBxrI4AwCVubq4BklSIZgtwpA0Mm5C4xYb0ITwAcC+ks51qTrpX40Tlm+2Sb6vfGjd5swxVre2NN6MTxGG0L11kWjgYhwrRh/wuzg0MGOUWwPWqPuNtrTNNY7BZyqmAzNPNsPse7kyG08/iGufXaF9c+dyqZLLi4tMQ2oNzdRYNooXAWg1doFptDjpsyLKrIUTA85VfcDvJB4H9ff79mfEAF8tl2LIRju+mExn07QP7pBeXZNFEjLqrXCm8UECHVpVDxnWtS6LoOrsWpgpVTEqBsD0v8bSq4DA2iHyN7KYd4O9h9deMHxGPwpUhpTpIUdlKQEVc6He1qRMh7662hfDo4geU29R/ksptF/yEDflHeywLGy67fcmIVPkquUsMFFtoLCeKum8VX0JRIFdZHtXlssIYie3BtQWTuxVNYwprZLrBLIC+5vAuED6jopZ2bMuM+C1pd4pOFtSfLjekozpO0mG3fMnSkWRrMm50syKcXMiP1MrC5a+MGAE04m1fIcnWJjEUsywXfTLa8tOwK5572IT0k5P22rJkUQIoiFXQPIyN0UijY1ahg4U8sXznRKJeShL5bLq03aJ6lUIBpUP9IM5RlVfuZ9/DV4LJkO6XU6Yf/4bV6YutlWXUdSxOSlDvGepzReu0o8w9aBgYkAHyjr4LjzLuiz+nIeKi+SCCkeNVKjl1fmL0G+OxR191AhVYRvBJLwrozOSIAY1rh8ABglKAjUoqnU4d79Hdn0CcJM9AaTtUuBqnAK0uYTyJdeSEHupuZZOVlXWZRmf7f/jtvDailGHlF589ilgqBBNfRuzh1M56KxwIOqRJD3270xQ4bmkIYyL93RkSn/4SYAxdYckmHeh3AeWEDb/sgbohgdU48yHA6sMGLIwE6dsZuPwsRccl/skM0wuupH93egoTpwiquywLnSFwKSezVAtj+gaUkZeUtXyt9HP8w7KTHEkoXBtJ6sW2KPXzq9bFEg4UMNYV4I810jgKQyQsmnUhS6LwHkmdCjvt9Xn6NZ114ZRCUcGpa9q8b3vdFPkU0obTcR6n846+dJl8X/CkM9UrOdQDYbR8kEpFMKtmrbEFeFADZU6Pj8KT8XD/BhbZ8MHKEeGwAdkbd1cW+uPqj7hqSkg3rU4JAd4vusouDb8bUU6FSz3T+Wlv6qZidkIoc3bkfeFMapTPLuBZIbHAQCmzXMsr4PdLNENjVKWqmZNm+/x7ZVOksYak7noM95iRw6fxDebRoi7EBsLwQsnCaEUDbKxQtJlVm9yPY+AomFcdkeqOeaQM98JF/H0vQb9OudD0yqXh/LnxlWrfJMv+joSKFx90Wmg7t8KyHyFvXliL+W/CQEPLvkgmz5+reO16Fb5pMMVB1A1dg3UqQ9TfQBpO6VVAnyoW/eavcZSuLw9aW6Ku2MYz28EErMLFk3OUG2YyNSeQlmKv3r3ub04uh2II04bmrsGqEFZuKCvttsui0A0H2VC4H43mxbTq4Og6wfUvddOy9MxYrP9q6TDzg4aNfKwLor1PhiX8a65zb8ujMx0Jz8RpJz4hi1hV9NooB3StReLFdP/ahLYOaTy60fX3C110vjDRPjSdz8/p5UgHBOKzQCfsbVVbRCLR57vCIdqoyRwGlW2yb3TKc2BQDA51dlbyyNrryVRv6GT2kwKZ2MMB9d/rMQGjvBwm7QzviPWIEVIVtfpmuc6E/tFCOdyc3LTHV3kFEFoDT2Kn18FZPAV+SEW0HgTFEOaGBDJ9IKzmdOfGsqFLgmcnXb8SK78X5dX2j1dxx8bDxErmL7VSYDRprJ3Ow4I0XAYW4rUhUT/CVF8qZ9RwpoFChmM7lCD9DCcU4sj/d0xFKIxqHUNuIXL+8lkjxWvMd0qz/GLghMl/ZhqeavDNv2IRBmpVm2oEeHdnEZ9s37q2YH4Zsivodvqq+feWSvC0vKeGOoCTfnBw976W3T/ckGORiU14v1APRurAQFK0mVfg+HBxgkDoarSzpKc1Aybf7E8VMONG7Xcu/IiY4pm5PSpo8bGubPO4nLtMESLWxxa2Xv4ocNMqIdDlWfqLpuB9B5GDotL0LXt9G8iqKdm2SY3NZva9tZka6CVibHr45aMvBdVmYjqWbuFvLmmgNWQITP00GFYzAOZguzUi/4PoKK1ek8ISVRxJBj4sdM0/Ya3SyHRq/lU+tKqIfgt6w6cx186FMVDav3HS37TZuZPnIv4kwEc1Gq0su43TJTLdRvSC3ViskL0u3QOu5qzTcy7BeZ9qrq+2yWRIkiOlg1lw8ULDzjx0IV9bS8y6maCGa/drJ+jYwSkH3SyUJwCqh840zM0BXoXlKde2ipbGuD3bm6hl/oe1siMz22XUji579MfqiS8JaJfkBhYaOZKXFMncoaTgyNL/tW4xmxELTM/MxLnhmWMPvsIHsU8WGq+2Kjwj0PEcia1PShQjGa/bgZZHO4BDtXaODxGCIn0nDfGSZzoG1GakxgPJ+Is/dHxJ0z/HyD8kv8VrByBMA+fE7dYkUH1Yo1K8M7uBPdHu+IfrpikO3lnAYhqaCJowRJEjyevwtnT35txcmmS2eZpteY/GNxwf8kODuvJj5XCPLud9rHif8p1a4SgYdEYw53Cy45i34XbZdelbiFxa24nnrQIV7qMyh1vbNzRqp/AmOz9i7Kfvrak50C0voV7Rp0mCgHSTx4Vx7fFrzaJX4a86nvo/5V6zXaL0/kdwaf+RZa9ETVu1Xv8DmMfT1R9ecGwKG8Ou0poYcnwdsZI9RTaYZpXOqBcrkBe/K9QtKwOtywKz+HKNyv+ArLjMQyrqGVp0wzLLM6tyQRMemCM2TV/xDG3uNuZaBKJVDHgAglGXuU8TjXB0TQ5gf5Mblooh/5zWw916VtdY0z0Ilx/4RRcwu2on7s8mc+VjpfwO+aLtCDaDNGVPYiqNgvf30eticEwf9lUlMSGMvf0+n63x0ouoIGwgmwp4T4JabIQLqHFD75E1DggumLuu/sSNGXeha2rchCf6sd3xLCWpc8rwA8nCZsj5oDYrh3qg94Gy34cJ0uFKXH0EsrFc1hEByXWP9xSZLds/6TTzbFnYQGXNgEa6krjxFQV0fx+eX/eceNp457Awa0Q97wYQefFNDP+1Ntmaoehod1XlZ1Me9ftuM6fgpepnND1ukD6t566NQPNYOjLVEzvf5QWoRsEh5hI861w0eDEkLc1UHvxN2APIuWQ8x0ZniVq17pEcFbgnJtLPP5tOXienJ0iJu9jipor2FuR7SfSlfg/FL9XiXE+6sChMtrdK3Gvqnv4wE2JV9E+stz+h3BKcSU4oFaUmQlPuolcE7Svbz3YxA7xdWg731i/8voRLjqwQnZ5zqZBb07jbHBqKl8sQ42G8xuVLvyg/volQd3dBwplrg/t+IGki9Qa1Ffxjus57QiRqMiSTpHmLqvD9E7WySvsswzEWJf5nMAwZ570YHpHe0tKVfFU4FgdRoSeaBDyJCekF7uVbJl4OTW6OC5mqcpm/c6+rk+c5yBnlFLU7g9Y2G+zvjobYX1tkrQJAQHAmHzjSLcy8qXf9+1APu2jA0yUguc6kZRCc6Mq8yp/VsMxl43fgPpHJrd4IkFWrwmHDjWVjMvrcrLvVc4ltcLBWRgLP5N79yx0qDxB4GQFpoK24qJeIR36zypLpaVwPukEl3F1lpScju4kxpIWzvqqI3VqyCSjHFqwBpxLF5npanM5X3Z8Ek8TSNY8yJCWdOc3FmLaIWykOP6KKBf+lQ1FWRIscYdWur4CnhQoww6ps3MGPs/faah+Aqf3/kMJVapIw0juGLTZv4tgLVC4tKVW+rErpN8PEXrMYDgaVZidGtlYbeIrWN8Lz5w1gdNQhZ8CbzOSMGIhEbTk8bxPGRq1tWf069ZPeIcdOUyd2Ebs94muM2DiOU1aNiHsgKLiYrJNxeOASw+RWC5/W99NuCv2ofMDz53ZAm26V78U7cpd/WGxUEexZdpMxsMOAlEm1Jd2jBUqlbCEkWE3aKqVM3T3+IULis8BGopLSE2NQr3+mwZPJIqlMl3O1zjTc8yrfXP8+b5qoQbu6LgIoDJhjEbWpOU7jHk8xV6y6eEQ/2rEBoLmon+A8NNuBLWKJnEZu3yUHdyAcs+bqkUIQc8opCRIwAPWtYurr0f+gYHnmtWWqb5WVB5o5dZvKD4MvO2738do/RqUpqe6TTKftQsfj8TGxdWKL6aO8sm4Whz9s4ITBJ6SNauIh+uxU9Z2PVcL4czT4DrDx8JcrYj0K+nTjEAMLY/q1eksQDNPKlNQ1ebBfypo6GkKl0Q1W1wiJtrOE6m+JzAKRmMcMmVEMGvYMQm1Pdk5x8/6ofmcq0vhDkwNzokFdsU0PXQ4t9Cz88KEOFetJh1YBh/KPHvwvfPASPgy/yj5Zqx+ZpbHCb9x+GY6ZGkjkSw0AZ2YmY2ClnfUJTzEiphIqcp7ohVpQN0TTybJEf4iyVs1494Z1GRu3zAbvMR8DuPJ822ZRavMMtYjaF40od79pA2NJM0OrnBn+cetVs14jFjqsJlCZp+D5Qw4drWN/Li+K+1JWJg1YegnjQVaIJjoQcXmR7NLhvauQWfJhGT0kOQQ76C1q3cHu3w87Woo6JglXnceXH5LKjbBOh2bG0NHEoBTqplLxWlzHwya/m1C67CAXhPCPxnaz3YXqAM9F54m1Lh3AWTYrnaFWG9TxdmLbbX0UPymk1sEs15EqUEja+5E/gN6oiORN1YXYyi6m1mTWmhF/YdPgi1A4sKL9tbUzCCEVTbsUe+GFmlrbmDiJrOYhIjncvdQcoq6b7Whh8m23spGcwsVM5ZM4w0d+v/cEkoQMIDbxjZnzbSNgOns2KRftJZ6xDi9ZAGsz43BYgx5opWSPt2E3lri5nU/DuGL5zUQ7fqHQ8u2AOp1Hd7k2Rf31KMYj0HvguPURoqJyzN4MuiUdWW61QvjeEsPWlk9jyQ2ARSr4e4lauAJqkry5vifvmIfSfYjduTzhSk/wD9/24e9bq3C8Sw30B63JMzIV/FalT5XVanq8A2hakAAbx+kyNo9MojqkINGN/UfNbwzYI4lmNoceKAJlEoTAsTFMH3QVHrmUBgY6PwqaUtxnBEKj9vIOxzka6+PDZpxDAVqWAUqNUBxb0I0ZIh2HIhX1R5cYkrvEQMsTWuZEC3npbBiGAGZCnlJElFuuM2MffnRV695LOtC/TVgdaI09S6lG9qCdj9XXihxpnb88b/3jooRgqIE8XDuXlfgPMVu0E6PY81wMZ7S7mXqIFpDDhJ22t2stodOmVyVQlgluIRvtMGH8PPfY6F3jMxeeNIC/DDmvMDFh0dDKW6TiPmMzRLmTFicyzsIWkfJLRAnprYLLAx6jznAUoazntze/2AF/7qUlQna1FJC0ibwO+700Nbd5ooeY5ZN/oJ/8r5qRjIwc0DEdGve209e3WpnhXMCk4i5Fg9SV+pe8woYWqCcjZ/3zh8V4bWGPzg4yEoUqKsJxegAqYEM4Sdwdjv+NGjZQpcLDnIFg8bOa3Fvm9MlQKViJRsldHi4oocBVG4cCD8CbU8t3HyF6bOKilQWaQf6PbjQVk72ePp98V3taS97o9r1d+eIvGJqfK3I3Cdt/UJ5rZDhYk3pf01drBuiA0hGmXxvxPrm/JxJxn9CSZJygGw+f7IBeY16yjhQeIphfJ3mwTdvr3Ta4evcK0WKfSnQD8EM0hftq8z+0L6enekcAHDf7IedBzK38yH3NK+/M8R+nfuGNCiwEEzw7CuvdG9BXjj359n/WHyqnMrqZayKZRwlFPEhST792ByfFIncyviA3VLoE3ecXUwHdZ7geQ66FJX3wHuDeDsu0gXdbqQIqWA3JGomfzb9/297DdkwCkHfvRj2GY8mCbwp7+Dpl+ZXSCu8ldvYNVIZ9DdBPN+PZQmgdVr5X0OhdHgvvG39SvK/fmhty4vs1fgBJrAMSWcIsNx32WetalJIULuPhdkX1VM9k4/ZjBtiQNtQaarFFvkbiqCuDxPgla9+hTG4xgX2C2xv4r0M/n/lIxJsmYBShtFr3BffXxL7npzSjjKuX/HbsbjEHt4yS90hvDjgC5EFIA5cwnmlKWHz/DLQUzCN92rUfJq8oSvyVC1l/7YXx/rY0qKrqebDfkBwFc4VitSudd+Rv/hMpnqt4EvrsAs7sJHpWHwSa3XVNEEI6nEKRfZuakaYQjReT2OMdQLJzpMwCmSA2psQkedGgj0ftfxvxwlkFiwrbPhkCcekcYqFIMOyFFMNzCYBj9qm5nwQrKev8aseeveE/rYyFH/LGqUsQ+meG1LwRiStS03aEcK+WvsBi1K2zNUoHapN37rEQmO8rpxdxbdQX1BbuNQMWMdvRK3haLB+yyKmxMTRHmqBrmSM0/snqYQ/dltXBYj5Nq5geFJJY7yMNqB5yGumIapiHbhaJGK/vYrZteqjetd26iZA2DsH6TBvkCc2Cm9JmbLKhGquzY3MEOIWqZoZoHSDRrJoG51kwxa81dNoGOND2ZQxsSoodsk21OgVEGujqjoEujMgWlZOGqZ12QzIRvUPU7D+gMVZ3ktNVxKmAxnU1mHq+PRfHN1n+shfbcZj6lZn+Qlf5MrR+JRj2BvMZNFbPQ5ZRt4MM3COZXgi5hfHqN4cXe3wttl7+jo4wh30FfscvUXWW8P1ZuhkYwrWgJyj913+SMcy+lFJYUZcgHOOijMOXURA89vEGR2UC97PBAk4jZnE3NmoynhfQJZSfvkFKNwWPawUGIQ1yBzVw3HQUpFMGmQ20RMb/CKrRA4ZyJmjMJdBjyPxQh251sgHRyWpbgA4chEBVBN6LXPJX9KjKx2dvsw6GAOSM/U+s75dTsU+KCRiDF+8xf3oBeTW+NheAAgrbmiF05ksdQWTVZLL7YHg53DA41wAv6eI7HFf0QcIn+R7VViDkJQREwrsGIlz+OkUi9RkFnRJGWocxkCsPwaBTxFfBrovPiKd4DsUXakypXCre190+aNv1sPYqfAqrHZWR9kS1N/0QW/m5i63YM7xqeh5DVFu+lZHHXPUWFPYwNyxjEjBjsL3xEnWL6QrwnXV90UYDHV0s1Qqopo1jeiw57qB1FtcpWBy0UGGux8KM9WiuIzppPbuAm/Aw3NIKyUTCKRhBoC/l9cw7LQB2q5YctmSsu0DzmjW8QNAuGYepXbkYlwaGz2co/bMtZU2MDtYZjJQlW5tRkz5uOOHsP/GIhSVJFDVm3iGCt3ZzVEBGt4ygiFnQKituePhsHHWaLKBY4Hf4CZZcr8LXkSD0shSo7sfRZiatB6FNQdt8uieca+Z0o2DyyKE4EbtVuZExkb2cskQb4E0SfG2DG3rQx0360urElw9UZ8ceU8CZg9r0KR8tT3Wi3hEAA037vFcHb3NV8R8acI930EIJHefLsKCVuGJbFx668g0Vfkg1Ro0OGgU1HUTG6e6JQviUNq+/A8Z/3v54ub7ebFikFrrJGhlB3Ktc3ZcSxTlIlPQkBsYorMUzJsfW5VuEjGeKPloGY+i2nAVZtd8WWlDZsmuMIxF0F4dZI/Wki+rjIVQEy+e+vXK35m0dCM4SWddTQ9o/PHqB9YbgSH03juGI/xi/Dl7+fG54jyeYuFo3BX7GHoD26nstWc3e5o6T1XiqDz3MVarmzTTl6emssF+sN7hTEB3afK8JIknUUcBK9z1a3fNIVEpX/IXmQ5eggUTuXjhwNEBW+ZYh/sV0/p8KWsQloDMoox/bXXu1dNMckXxuFYKJXMMPeH6snjahJGQDxm0o230t7oXdSYw+bWt9YlnCflehcA5bZDvTRIt2KTFf2fOAQDxk7fXHAHT0w9WsTGzoctRBuNPtVahVqAaeFeLfYstYeoiGFGCu8HxAIaEy3HlJ7l4Zm5F7OioOMsMe/DAlxXxS9SzNjS1RsuVZXcapTAgX4cPYC/jJgk5teSfW2y/F84eTNO9wb91TIWjlxLccFVDdjprM8Z/Ia8UViMEyMh2O+ih8nnTsIkaLGWSAMLRHGvlptfgYD3NwlW+Mcg4QUkhZzEKl+guV+0WFFTLb+NQfucTKBA99mcmydKATnYKMQ19/Zg7ncaoNHOv0wmYDkSC0lGSUMLr+hZU6vwWKhyX2mDqswBsclwaa5V17BISJifbu5T0DMYPkV9uzVuXIYIbXu1ZQfQj68BbbMJM8j6TSTZ2cKnQVi2zEhjJiMG2Uhb8NztPhtyi5C3BhwXSQb3Ut52C6gdaaVZ1a/hbklFrTuu4saiLZl2r5C7NBrW6v4DKCrvmOSBMWZmE9WOvb6QsFfoxIQMTl6lnJLJFcrnUJeK6ISLvcxxvGSJkoEA8EaNR73F02PdRsM/3nV1j2ZlDEpYLso4poSQvaQZZgBRWbYXhR4VW2+RJFoGAjcV70cbQjXNMWzztVFM9PT4WRqDe8uWN5sTuNWY6DLxJmn7pgNsGVikLXITP2jh0dXesp2yRJ/0tthoT7Pw7qlm+JLIS1lcscCp1b8CqaFWRM67IzUmu1zJub5w7To2kntkghS2e/1dJiqfVf7Hz4e67mGpQWHAUVrX04mlRPio+mobOyDjrAMWnO2uzhnGfXapgzop5l/+Dt2E7IHhTFTKigTnq8NqUuqROBUHWY6jJV3jdx9PXhpA9cTZJ/vt0w86wdwyG9zb84TdaS/gcH6kV9p5GIBr5I8qsxbJe3uXunyQHasgKo+KxcUUTdD0VOi7s/rts5UfohWOrw8usOaDqUtT677BJ3lZflsL8qwfvO0lEepXSfbJOIyQxiGQshW7/42UkCnCpug8CftzkUyWOhBbMms26eHoLfGdyLODSLOssbUUvxC3d+GirMX22au+bvcA0u3/GjiQIT5HSOctXdKMEcEwRLtBnEXxlJuq/CzvGYtZqyL3uMxA9AsrhXe3HnOxnx1kcOwR8GsanIHfTvsQfQ8n1jbqm4spcZr/bswbVsWeLtZKElZ04S4tPW0IhXirSyul735Wh6aemvoEHKt+IQTZ1IJS9OqSEqSbkikR9IfdiXZ0FnE5fxeYBBH0IKV31N/daiLlrfZd/PBmTDrQsigfH8GJDlabNbsEvDRyrysB0bKAgsBPoEwLiMvp8KnLpr+/a7aeWPrcj2OICUoFaM5zIDPyJg5XwV8kOjUyTb4qrAKLnUq2RkIVS/vVtCEz5lTUDrXqLppy19PgIH/OuEYut9O+toV1u1arTxKLqcB14KLF21yyloOx53gkp8YZHsDRO6YajU6k5V4CU+JhFVeLoC8iz9LYtsl1nH4jnl2G1SyUS0PHBMrM6bntFeJODGdbbqfH7DjxWbUR5XGEFMCEkjuq+b6dDDhB6R0pQo5Js9W5hK+NtFTufWuTVSBdwe58pxcEXiZsFLjQepIwv5HBq0riyVs20rV12aKCGujls7EzzyHrz9FHKVqTSLacC5yYg0Zzge9kNUYb6OPGxqhLvBUv1re/DpdAgj3AqiRvH8b2CC/KFmR1LfHPHKwC4WAQ4hoDMQ7EGczue4/bv+Nf8vWwTtdzAECUZ49yKycZeH3VW2gUbIXrPyMU59+13NMhhevJe0bpCo5mUD5FxosLMXjF2q7kxPEe9xa5kP8KpU8t+dBTI8Mxop4zAsIu0IWtt8tmp/+IiVZuTRshKJvGnewcMVf9/gVCYkiVidFBGct8G2fSICJkOXtRPQrxvGYXkBHLIoc80lCd2mML612XGFOptUeUsoZrGy8Uw3+MT5QQfB/aNlmHxnJ1OsuBDrYvrpA8BaV8fo4Bvyv3E+PLEwANsic64E8lsccCl2DeplZ/0/PJa3DGOvfWthaZ53wm+CUFsZrOTORrce+lNkHeSq3wzYdJLDsKyrYMHxeU/R8hhEzdwaR6+RuNmTtavf1ZMM2ioIu4uHyKrR+JNP1tnyka9jaBYGgz41s68+e/muJ7DszeO7xeTidLZKrCFx/ADn6mcNwO8vCOBrl7s83dYXo/NDUzkbxmOfbaEXiuaBw5Rxjdlz1mDGG3iVUluAoepmDQeEyg1GafdYGT2QjNKZPKRa58lw9WDf96osOnEsoKOSsMNuNvfzrIUnTRFJ7aCKNItcZklpXzaQSDRZHJ6bKknlIMePBacXfRBOXqjE8IpW13gtJtMQvWznYjR4xb7x2zVJFoDjtVELFpkjXUAU5WK/CPpK4aJrbZYbKKAOv9+PVYtuyEf97c+Dg99ZKefb5AhfihPatFMFqBTwJzfTP5bHZZX665bTltUCyBIGZT927G7Ff2hdh4qOqaSOeg1QidtulGdC327D3XKobghgWZnIOHBN+EleVMRpAMKtoXOo98kAxUgiCFnDp/0aTc++Xd5StB05+7KFyvELjQMi3qdu3Q45X3jNIy25UvsbpU0eDPXyRnHVBx0vr024QiR7thNV/bTWawM4fisb+TAbKzc3KT+4K6X4lPI7SxnNdT4bBO2fgJAXyez+bH/nfhCBouDixAcBnktmc/wPNCM+nS+AidvRYVAV49w1K2nOTPaQC/yoi6sEe4LF2uZ+kFx/0cyFU12eHLM1zD5uM0bVenMCgnJl2HLo7g9BniIzr2W45RLJEliayV++XXq4Y0hWayALzceC+rmShqPBGHihG59hf5NAqQ30iFzhEB6p235bQumAo2h1/DDlI2Q/uiJ6bkBR/fL7DBNpuy15FpJh0OL4kCWeDQOogmpdKws8yAH0ZXhk7wndgZUnW167NLWKFYSg2ZpuNDuh+o1OQhZXcYfAsXErsveyBqE4jHPbqCwdNbmpWmK5KiYN5LHysWgj/cjUSORhSwGjUjfhwkblIsLy+CVnWlBloP1S64QZRrNY4ynJxl3I0gEhOHKcXbankw/GDEZ1cUndufsvvfsQCxd03GqGGe/k+nVmlhgOBrsS9L2y1KV5JSgMVR6SVvCaSkNku8YDYKG62fne1J2vsZNTlAj2xSmIxbNGm1kRtrenvrkZSvpfBndJUfk/5hr7x/COkiP7eOEf9JZ686dWSLn8KASkIuKMcfmfy18G5N9/fhYdv7/cB7ROc/zC7s7GPosdrX6eElcmd9LGjQkKbdennfjCqkJLsQ/yKLb1Lj0ak3D3BLY13hyOmJ3Q1vgES+2zzFA3Chzxq1KkUHIgPgA4hImndH+OMb8NJg/UTEFy2cQM21Ongp7ZW5wDock2WKRTzTYBqfqSV6PBDN8Bo5AyDA4/AWGIfPbOHHx42LhmCvdl1sS2DaRd2FnN7G31mVYtdURU8LhefCJmSQN3ze/q9AcAujW5ZCUzYGZARMlgU0KxeZSwOgEg6nljcr2CSwJTNQyOky0jGWfxp4oS7w2SRKNvN+naSd+Z2SsoYgrCIQrD5HorZAqJYMzsJRSFpavAd4c9SPh+aSMQiA2JjetbcI0mPzPHMhpPFsFgUeF0/i60/oErs5lYbLVh5FKUPSV994DVjlbXrGC7mM98N+NJLVDfX1VcZZHNkewi3yxF5vtN2Ii0pSMNnv2QI3f8eEMqcC1WbC7m2yK+Vy2uO8v7K7sGAm0jV9l/Yf9NDy62tF8UtybORokKxjPIlJl0HBCrJfFYOwAJjGkKJgeW4aiEbrH6dXCSSCBnSJukRlLB2Wx3oGaLYqkgyTq1tVQIzyXyGF8iC7XKKgCjGJmGTthGCmjBVskrUB+31fQO2aA8jfbsHDNAX8L+nWZR36dv90eIQdRg30bsvHxXfgKWDUjr5CHMWvU/ECVnL1dFPu58o5mO/FlvDRjTBzqqhkgmlheD11lz25n1j2TSYm6Srfj/1d04kh3jmMBUXuBK05acgyvBPaiqbQqxlfegaCAbGamA4hxq3qMnhgh9eaG1BJ//5F0lLaZt5WbXZqMm/+v6SOwsYr4zrRKyQqXt3GcBi8nvh/z41qvVnAcluLoZ5t+8FYE7QHuSAel026P+ZoZQXwrhByLbOtyF3qy0Pp/lLC0nhm0gEPM3pSRlkdwuFTcfA4diXS3ESCBfjzBbjcCLtlaMGw2BtdRv5gjnfEROALQbhn7L8P5bbWHbwgqxjCduy1YCIfJBR4u95J0VgeIv+WPQa7hIFT8/TIYqc5YgaBPlFIFZCCTC6T8AZEWqxoUBrCXBwTbp0+i9d6O53nmVkGvzdJDvu93f2viSWf62axjpCH3uUtAM8TBrfAJy+kecVAt5RQdgOho7v/sSwkWixUNsxQ+Scxy/hQmFcurNw49F185HP7vWr9v8R0rVw0TNWmNEqtrtn+gsP4AHtIpe2i0eKkgBUcsvIvKNDBXERvPlBSKtPjNURAGu5TCP6moOkbVdimxe3u+Xxg2v/FDOvj+8EOt84Kz6u9ps6pikJSqqBQy2rqTurerkShU5Vq+BndJ8wBvldyIVLIGXguyTNQ3t/oPBIaWoOvAXuFBRASQq74WJAC5HhFnSqfliej9MLCUh99AZqXxq0rG6Q20nE83ljzuJNjv8cqCnpt5YVtSBbQSFHonWMCxy9yMM6ngrk8W14jYu/0L2LARPXzTBiUIo02/i3iqMX0e3Elbo0kheyKY8bjuJxpaSt4lnO8ZVbq6QDMfqgsMdq1Vr4w1ZhqZBe89JGGzxYL5ZkeXw5w69GCG9qiVE2S6M7nKdiy4XzB0w5u0v1Nf6lB1JCIK/OhLL+L9WF/DVeVeoQ33bTy2zwDVjYTWYqfGLGUqWlum7bEDCyTUcH4PEriP2YFqpzsyWdRKo7yMqLNhyoJbUl4cbqUuSsx94DW5YPhv3MwDCtFHwuTf2Ol/rAdx8xU83M5GoSjAfMrTWJQnCsxF2Bt/+kqCWd1RCOWgp46hPewHdS11DxKYUHR5OcWoVyWtxCVEcJEG17WNl6YsKVzXm4vQrBw2v7NOC3fhM01p++jjRm/3H1jEqT4oqdNZyBQF3to0uZzFkaZjVmK7yC/f7MlpzG0mo2oIQiMSKnVIuRqtIdjR7deffP9ezmsxE0CqX/kcqtpgM/lnopNAsVu11epgQQOJvBBeLEVO1kUw87f9anzq8c9htIrwK3cJvU6jNMHNST1oGoQMrIpY2yoc/IpFi7c3JmPujs6ERpZSPcbvoJ82J/w83Fev5kMHBbWIhkruPEs8EPhgmdFq9RzROLn82lbTtElFxvuuHsoUpnhDAR15OT1CZXS/1sYOXI42cWk3vX1Ak84JTPucKwf9/Vd2Hte0KMKw2sG/+VkET92BGJRRsJK83VdoA8ATj3fPcl9Ocbhlz7bkW4+P9KcE2wn1w3ZieS1qKbeRekJOfDPTqvfBN8EcSujR3GvpfAWFOwv6JU5YmB0qDd+ISZR6ckP2c8l2XPGD9YF+jbMq08Uc6X25RyaqNqXlxwOMO7bNnzxJEwkpV5xygu1+7gMb9QtCnj2MdcIlBtzbepGOnkdShMntLDYXCOSPXjKd8OJyThYNWlSxpBYCCfEaVZr0iFieQDDNIso8Q4INwyCHGR3ZSLEvwOEekyaxK2oY/QWyjN1JWoa0hsd92jBrLdapAq3X8w4mKB4dNyuy7lqSL53rudyiqU4174KT3TgtjriPH4fiuxjidgA2lNYfi0BHRcXAL/PmcWDzQACO7bFWrLom49B9xgSWywVZClEubgwPTcH+ZPNjZmn+HHd3QT4CiDarXBJkQr32Q4wm0vHm2XCCQ3DNs3T+I0jVPfzuvXZS45GGyFpaHbZRB29o5JJUFkD+Vz2+rPGozbAGMUX0dx+YKQLSzYg4fq3b23+V6AARMSYw8KdP6WubEc7XiopkhZyOu1ghghDNRJ3kW82ENco7V/cqNrDXvHQKMMr1qk8eBVSF7lMawKRhIGmLKlHc36vVRGbRf0IwCPafp1b2tk6VTURhOUCk5McsUKJEOhr3axDXlS72+PmiaYGfT5a87T+rZQCt8vHMkt9qaBbi6J8vAIkKL+et2rhW8vOf/1AuGqq7Vg8+/+SYOMVV68Fohamn5nThdJhbvNjP94I+DFu9j+gdPPbBMb/j4tmafWeQQ8qk8bX4NytTKDvL6gQgM680ZJ4mWcvVIycd/6hCtz7r/j1xyRqjm42TnNAT+OUD4wktTwwYRQk6Tqs4ySMepZTfIGWUDcb/0fpR+TKrIYsR48fU8w98OQO6L8LJ1D80wO8bSTPXGwSlOaYAKzi/RoZIi2iBGd6RPDEkpROOeedxdiY/nP0u2HJVcEXImzWTIIzUP3Ds3c6yjbBK0pJBOKjZtTUs/DjHzO7i7konmxbkPGoEEqK2vn3Ar/Sv9+4l4RdWlhb9GsUMm30IIoSQSgeFPfsSsaNZzDv42QzRHZC8DlLTW5hnUO7Yu6tmc/vB/xpp2IU7HGHbQJS7lxKxxVhJ6YlmhXk3o20v6yPZUt7b6d57VR4D/vwbJT6UyUm4G9h+Vu7TfC6iW4+8kjsdhrNSVFw31eC6LS/Az1qUf6uk0dkGjoj1nx2sbR288VjWDZ3E7PQ3hy/DncuOo8ExCdCKL5pjNqkz+bW9AFrO7MLVpdQuwbbcBgpoanM7dsJPcBAxZ49kK3+WGrDecnXzBOb7+h9628XVWPsvJpUIegQNuDyQwVLBUeVaQjJ4qYHwHVUWJBVvjelKHHYVekEsnK29D9oq/39RJTJwrDlJcEJ4FCkudpZOp6wMLcAkrVcjTDUEOpi7R+pC1mjC6nRhr7izwgBevFuOLfaZiiiatXiCxoe5B4C8IHnZhXHHGYAw4+leelcVdnVZCLKNDp3vw+c21dw47FZdfFZoH0x9ZQ4fOYSEP+wC0Yl0GexkAB0568ELQs7XHWOC90n189ymIwvJREMUDXVEFQ+0aazyWtzDnEebh9kdoRKvbCaLea8IxE1hN9ejh19O+mpnRe95qi1uBg5oh7J8BtPBHlT4NosFqgnZUapnEBupIGAynXY8+/g874Cc7IQtBcsQjD6JvCZ8loMVKTTyDkU42VcVCljsDAqofjUTdqc84KvSkJbpdqoG2RVVr9SMrP+jKfaaOajlEZ+d89SlhwfEq3Hy7Mmu91vqsWLKj8UGIFJR4BaL5Ag3lMI+47/LHOrZlGIhFIf1Zgm5FMe2QSWoT3xHIOBEFTulyUjahx4wgId3bJPNF9THI2GcVPJTfwH3V7bUfhgJtEa8JsM92I+kGCkJ8OtLTCcV6+ddqxJele1nULTxHwn20KOTJtM3YD2DmJeJi8pu2D20KbWergp7b+6PL4KfaPJ3lRSoHqCDVpcyJXkFWn67U5yCQxcvLX+KKBer789ug5JqwkMBEQ0t+3pa30oDqAUiOnvY9bioYlG33laHhilaTtIhyAOXOVgI/uffvRAbnbwZNh+wxUwvPg2Uql5womoc0top8eaCfcWS4RtjABOgO7+UdUHqdeRU6Pknfs180PmHxJxP9jIGBCPWixfG03NW4S6LWXeqRd0DA4mfedE1qrVmoBiaof5OtlMC9zYT223hJCgjU0f1wlRhVPMEO0pEVrN0b/NnJkwcLcHweqZr+5sxdloshEpqEQ4yG7Y6uWcyBsxux5c0Fbu2hsAXY8OYcwhOc9aiGmKqg09zuCz+eik/gcg7zBR649TevDuv7KiKJl2nDPaPhR61EItTHFSy+A8PTLVbfSQ0EZZzMfhyD1K5Niayh60qqWPauuWhGq6uMIfybCoU2COHY6aL5csE3aHkqN3u7vJ1UkYYkoomqUUrnhYZisVigbv5B/GMt9tvOJ93WwqfrFHVtDfWPIkDoXOfJn2qqK5lkmgLWPgDDLc7Qz3RIZimyS+KtOzdaUHzsZ3qNZtADB27tdQNhVCMXyG6DEjogJiZGxLbCG70HjPFf13Q4Zo6Z0IUlPeHm1qFxBb7sxWydhpjeb1yYVmVLRO0/EOHLZx0cMOcOKq49VxUhMU4oy3WWXz9vm70q3fKTPDFaTjIxKucrBrFky1PvKPddSB6siPaZoicMxjl02YWh1AvkzOrK8S6lE9GqeunepV5Yb3Xv7ZasoVPUgwe1S1Zfn4I7d4BUJeMqwijbfrBl8Egh06njsGIFk6Ex3mfv6gDr+xXOG6kyd3x4gIBn5bam66KYAXeGTOpeDiRSe3BsD9iPVLaoEn4kwR+zjWoQ61OgLPCLpRFGWQ4xv8LuoKp0Ccn9jHzyX18klOIeIMdFIbUWJ4LjusfHqitzJC1FegQf+P/qHmzqQO4YOZG7unKdRnzNLyV3LxOym6tvzaVHjJgN84VxkZ+jNB0tq7xN8ktvwLvPjJsi3/kG1NDg3eicIxkTw+bHrZTmktGAyKPW6vDShZrT9lO2mmMEtpyzxJNL7zRhMcaIZGH9zKDamE/pjZV2VzvM9eXMG0gKUYV3JyRYwbCXN+lSQj08fxOc/sVi/KGY8o1ovbYDUUwHQSZEFoZZHLhoYaw6EaD2uMlLrWTH5dx+OtITuYpeUfgMJnGF2PwKw+fSsOq4VcXMhMiVZlXrl68sJDOA/WknFzYwrDOnv3MtKb+tiM9829/tpTSGDQsg/x7UCoPN1q4ASi/7pHEKDpkx1PkUpTNx/JypxUt0sXSSEWKT9dPnd9o6tsdUwX3rAyXGx/lBf0OgvpP52PS7xQPhpB0r1guzrwm2dF9oZ3xhISR0j1lFW9zMAzG+wzipL9Pvkv0pdPfjPYI8GqSej3K5qn6vGMVF/vHtqF+vxzu4+k2qjurwHy3D9Bmkf5i4iwYJ7KRF8BppSOwAUWFIJGMDHbKfYu3fFJalzRSxTYLQJeptTd6qs5paeRqompNjKXPmx7YnieUjphnUnuxS0fAEy0ZNua+hB9bEH9Bc6TYdC6TUL5KqNHsIgUdfe5ZJYrOrjBIe6NHiuyOS00HWow3C2kEJAw+vqc2qJITfavHxYV/PL4Yxh6KDxG+C4AW6WvkzJf2gTWOjcBNNB4cnxKPeDjU24V9eCIjqWo3btfUBRNwgcuONr1dVpnAcP15/+wyJBIvk9ih04LHGm9uF1YqmmwEWr4BfzBdHHgeTsGrhFjJwPFuWRIJOeX7pHdlfIdzJWm37QKVCFvjWGHleEd0FnnPWHKzOzMP948kEmmlcE+tGVh/tMMogYnu/P8cgYLmaWEGW0y/Cd83GrT58cQ0gZB5Ya0GMajnQm3PSi4IwZD4EsfnZEWchqax0fIzDtfbdohGakVG/mIczKBzGbSYvQqeTFvhoxq2Hi1Yqmynrweo3k2lWc32I93KwkmK1Ub2peeBxgslZ2gQBIPWuWkgPRF1CJp8XNPvVXa/4FJBuWM9PrdvueVJhVeAIqmOVj6JGNqGksHzHcelmQSekNWF9s+X2rn4ilywxZk/sTdZOJvN2BAxWOrLPnHyAs/lCD5YZiZV07FLmbFryUCRcPRpLsTFfGNif054QdBAlcxja3Vs9gGQJ118UlJEVhwEVDkhmQMROR5wfd3z33CjgNnsuhfrMP7f4pDQMsQxcpfbVFD6vVs7q7d1LvFtCuw5FIYMIcivAdyVI8I1v4LFY52ag9OP4VnsT8/zgoqOxPnkcs82T8mDkFR/BFhb+R1SbgfXKfxeReOsUsuBjGHAZGIqxwMXbPFnYaqkee32ywPBXKVVGXXKhgccOinkpAYkBxoMCaBCtzdxr7XCXpMN6G6yoKqQi8bc/+p5ClUhMJo7MVwAIE6/yxVG13XtJkzndSfnB1lhzI67vlVqEaNtL5zBCyh/NQB4dzb31iCnsGDXgzwuAouLM0yQy/brBfLgCLEZ9sQGnTQOHWqMyUpZWNYO2vzBLTe5q2jOUEGwNbqKrQFtrHzwGIEE5h1BCrLVKi1ZFc5YXbrnq0Z28bOythrdwSjC3aF2lVSjQckwcU/9TzEl4eRgLDsCvigOUYLHxsojYDTMhfJym2m3fzAXb3tEXZVt/k2xtKXaqfJCzQyOeM53dkaaKEKrhe4+Q2jsn3IVT6jGFgvyS3kSYrTmKOGVkUcmz6vKvNaDWp20D/1toThXb6rT9Z1Y0yr6+HSxT50ESo/z/bosz6ojMnGPZs/lHxU4WKt1Gsh9XEvE3l8mnI8LVxUN2t68wz0n3HaVgXslBj3TyysSJKNCBwPhrRHlF3nx11Qb8bWDeaJUOXVuH0p9om6dNkNYsjfU+fDLKwlGuu5ncarIxmjuzpF7enHFBrps2gyDzLif1T1gHabp29195WUsZ47YA+VJYU0FF0AQ52xt3YicBqWAw9Pptj8f1QesJw/xeKf9AOvEHWd1rGcvAAHC4jnvvq9KHkvrN5xgINbB9vVPFK4PxKyzIJ/zbVzVfOMz8LD/VWYc8DGdhhibuicMVusFeTkjVwaOTZlK4DjmVNT8r6Y9ULLKpYZ5yYcVcSU1Krm4TZr0c8pGhuFBnLDg5o3es3yvC6+3KaSB+m0pJVADHFJkWGCN8gF+J7nDa6JreVHixNC/bGY2eu44M9Uve4L5b43+lIpUwuh5QxpFqRahIHAk6UPhkGNUWqtEKeQqwGmNuE3HH9lJtTjVc3ZM5h4Y9PlCMd0QTj5UKEWH224GPBt5d6zkIGk1NzxOAZaK2jhi/nlCQIJcyt+EfaG4Bwg1sC7KMCr2u7my6AjB2r/s9TWOUA/0aCmnyKBk8Jx9V4+YFv30R7IiRVk4KT/VfZhbFakz2SCQDO6bWu+tt5RkhOLbt2F/UkVHvXwfXWperAMAu06vzdb1fL7tKqggEyXZebT9KTyE7TFnzU771q43NKJlQLE0jXZF1u3e5FOPrgzDORPMet4TtXjtgpCP/6V92nkk1eGxwz5rPWqKLnjghVjuU9j46tB61RCTHkvJlHBmT+g/0+AqKHVVMtpy5VbSZxJe6OGkODT8O+k6ZRuOVXjlj7pmQ0mr/rhx8APghNkomMkYp/mFyds8Lj7/+lFAJrCAoe+DjVTezWB8iazQFzSy6IW5QqvF9Z6BF0kJ+Qij/zCpckTwI+V58or58UTR2IK1mRykuOcn4I5bbppFbYU9o9Pa+ZqgUOIcawd96hbGcC8Yx4vDBXmnxEpOxdTrdTsulKVRRweD34QJq4qcmdq5dg4vuUtoZUkIa6XOtKgDoVefad51polq734qUez1EgnzX6BYtpqS3Ij70RFMdMtn3tFCaAQAm7YDdeTMURJ2uB3j1syQlxYVbPKMSOV9PrdAaDv4GrRGP13AGEN6KbH5KPq8eCwxn1SxLO1+OMYR7At+Xhj3RHYMpCM857WtGoVrjGojjTxOVfH0pCoNzgqyAvOFnGscsG4Woo5UKKiWgXTrYTFnnBCE3u6bJBSFpAds2UWzI3e7Bsoef1RDzN2Rphes8tsLdgU1Ktk57CZuut+4gSyuAW2g4PlXQQSI0VeTJyVFhLD7G4qDfeOlS2ubC3sTnkCekC0Xzh1wocx8x+ygTdnk+HmSynFt3DT9xFp93Ks/XrQi8wZiZMQrKBuQevpGVcGAC+s9xqpQlbjjFdMfHVuxodmgij7R9hJOPZUByKfBRJH0ITOdEj9+AsHK46QFz3mljNtIAkRpDJdVLDFyXVReKNJgtzRtkS3RgYK9MfI+zKtufXbOw6kz4uGKnIaV41CiHzt2lenmqlWJ7i63KwWMBJCegVAhv/aiGmkdv2aq86YUAE/p2C+lfASK0fFcx07ShFIQe6cWiY/dAT005So8xKMPL3vCEIFFn0h2qSLkOMi7Qs5pZjsE6dAQ73P/aLwWgtsmQTe8SqsWWan6Z5H5TgxQqKxKY7t6ghWNK3OSo7a0+3NO0b1xHNaM7xSiH5BV+E4xXCLMqM1wIlv2vkP9Im1MEfOiRynDxxUyP3aa4aQJNq02VnYAARemhnxK+nc/fGZrXRGRTh5jey/Zwu5Vj7uwzyVRJddkhNiSyNWJ7OPQ2Jd89wK9bxsIf5DJvzJonurAeu+9F+sMWblLZIL0be019bUHWq9rYalLjMdaU6uLXdrKDU2d6q3AF6cbKg3CwT2bHFm9pke1DlBdSQBwzvnWxyZ0QDOTLbhxjwO0lF4jhlIGIKr3it22mpnweAwKZHPdur2wGs5wd3Rb+cRsoauAzO/uXwyC8S1fh5169BsyL0/QtP1W9LWAd1z2vaCUgoRQnrNwS4UKHuHMJVziu/Sk9PT7mSl3nrNycSJZAt8s4eE6XCdmexuxcQBrwmQ0kSJd9b6/aTA/JshjHM58heQ99t5QE8gLJCpxUot8qSLYSk9veTgyNxrKbJthGRB49I/uvTJcRIK+lcagkcCTYxB7DDnYEzPorej6sIeyREy5r1AyG/YmDngyWlfu/FNIH/JmPOyDWRm8VSeSIl/vLZ+2TeMurwEld9lFrSSLegtfkGveW0TTDtCEP7PsB4MQLSV4dmTkLT8DkrosyjEYVxBawTO80pAvKqSJhM2Ikobook9dhQDBNbXLIaQUM16wmXXcxhnok4RsirOed+c5W6WaF752KWXmNBQQqLEsV0zrue1EytXVQADvpHOtP6/cFwdV0OB5AL8T9DHW3TR5fSiwigo6A11IVQ0yfV1Ck1HkKxUgh2RtJguNVF0hpBjCERdmc71zBetSvE+YMPP0JKQjZiFa45ohgfNIm+7YaXavAORU4UljTLQYfpXRXIOoG0ud1DpZEUN6nKlyW8/l69kz0JJbEqr/w9UwIa2mJRRORZQYCpD7vGyNLLaxy8+yRiJ6an4eoN0+ZazzoQUrH73MrW7JxGnG7F+6abQ0oFw6KJ8RclucZy3pSA2pbf9IwwbfmJQ+5y/IZ2/C0LrUSE74MvGKetgh8Skz19e0HWecoy4jPIGHH2dKYJqtT/IxW4zEcHHGXbjY3MmYUrYMpdXWC3NYdtkMEKqg8244l+jjRHPXLiBBCI+fOP3RpYLko76dFxsXjaYdDJWeHlqz3tHOdNyITIUovpkhQN8mOzLRcRWyZG3gTTb89XBORI61UbSv0S6SuEwWEzs8Oli2VBTG1idgfeuxeV1m4h7RRchf7sFwl745J/aBTxSfmwZ5qeSE2T0L+yHAj/BmmerXyyKnmZRT0Qwf+/M8A8lZHvj//WJIRg8KjuRvJ2vvk/q1gu64K5ybfeovEmmnci2nPQwrdk7LcUcxZ+h3RUBeyF1x2NjqrfzGLSRpFJXHFBg365K1IrsnJ/C0qDzSQG7+Hxjp7KC8qFMQQlrX5LNIrf/eaRf6pMYVm544xLLGOlw6DVInq/0pvex7hzhBxz1m6LyfrovCmhZTjYL3w0j1HpofT7+9iy5kmykDZuNT8L2q02co7GMJfDylohWQ5cWFYRFXNk6sE9+yKJyCmQwOP9Rk7sYE6Mtx7diTq4EpDUzTNP3XIref/OGaEDDy1jVSeIrIsSSJ3bfffhFhP5CtXSeRvf/P9el381jGcfQmPSpB5cFwG/edjSBcKQY4rwkg3nXLbjNNhLFzEaIrI0TIKhlq2k1Q5MCXHU8JkDF6lURQuId1k/Dn7InkdKOhOZVq4AsrzfHv5Sde5UnNz0O6/eAKl1xdEnib5zCVYgjC4fENAHndzi6crkaQ5Kk7Qlc3dsBhO9N1rYwtG2twltrY8oZfH8mlHcLs7nbjzjkEGfgZEG9QAWPGVMLl2bBuO+dZw6lmh3HRA3w9rkXnn3K1Bo0hA4HbvXBr8/NuoTGZWO1YzBXbccmCeCpbGNk/CKsyH0gA9TQUUperLQn9aynIWrhEs8aSTM3gFCrA3YW/ES469p71O/gHFzoJJx4D2BttSYEAjUt4BikOA/Cr2BlUKvCQ11e0ApG5j2FetZf7q7sPE3FGaLrIYZnWoa+sYTat5c2zhHDXPtDTHr39bNxlp4GfKxaq+wpk8HOLOLaQNucLatBIzGoh6AlzZk8Xql7yaVjKmX4xG5d7YknJIBcgEtKGOlyzVnubmzEI+k9hlhjYELJfBu1BiDKA6T5RF/b+y5GLeZ5jcEJq44s44C8vsVKWClthh7yvablSMTveDk5x7o6LP/cG8N2Q33dYcrxRKWI4dcZB6PRPXNHu75HANHc81Yv5iw4kg6OwxVM/LXks347V+m8DtTPlC/kZGodfLPFZKDyQhsqdHVhFz1tI8ENPC94mUqFcBHKRRgpjOKtAvdRafCky/IPm2q1pJ/jCeYhSyjXncBI0/VSl6p2CpZkuY5HF2aJjQafEzGG7JYjeCVw14XfDBAOHckTYaF7+O5QseCfqfUWOF1ynlpPe41h5n4vLcrAs5srkVhllfakNFl4hqX9fRxIpC4Uv/ghDtphRU5WdthKm4XygfhfJAGgsY9nhil6DBl1DB52lLhyEvRVJC7aAnaRcIGK61CmTOUnfwCRQozHSfwFxWh4WofNRNhHjhFHT6KdKKEryQCVbgT4z5TlOH2RdgK6VxitQ7rcCbNREK9R40/4x0idUymFkrn4o44Z0eplSdzbcTPYODr/DMPZcIx00HyURZxE5sm/MvdejYRZ9e6NRobk57gqxhLjZPQ3vmcBELsYmTEN2LJWKNDgz3aNjiJ7+SD/kpYTye3PjqNSQNza0lYIl1SoL0rrRmDj2Ys5JByIQMCD4xus80JtkupwUsJsXrEOvX/1TLvfT2+MLegh911cJCYfQATADIoyP5FP9rI2PK5ISpnVINPWa5cOMxumdGuEwhSLTi2bkqOn6874mw3O3S52owGcxyUevcmFMHuuM27eQjKTEyBCPiRERqIVapi2TgOgg3u1PJ2X7AgxYiwI2NcyFouvqOz36X3OYEQKR5gJ/byrGoWMUXNfm2f3k+l4EowRqYruafcQbliYLstBsgqwYa4D86pfyLFdYB/QHcGzQ2chXh3UP5wBh5vD/X9imdWLeGRje8SwpFuZCP3NzEm7omdf4XoGD3tmqi5aobOrEfzXx1eJWM+oRPJ7Tcvoh9Ea0o5yaCSNcPgHZQAaMzGlVeXFDdfRl4nWyu9gSVhlsWjZjG0craUVminsR+GYL9t+8sZ3LSqwQ+kWsW61iHuIgtw1glZcBqjICnd2k1zZKDu+OgCAOM0DS8t8WahAN302r3+DCa3AVYSxpyqhgheTxssgGd0y3WIfjlkjzwdojrzXVUfSNTLKLELb+7n/gYlGCZZgSZkkhayuIbaieoCjYB5A5YtcLvVZDDc8XM2PGna9Lo0ZG9R6aEFWeJMymT1IA55wSRdZupgTZf4qKtUi5po01mEF8uHb5KVm7pVCxWRX2qbWKR62IJLApiHAOopvNHse+tTjZEGpluZ3by1mnsuhpSf2xECdA/JF1HEt7VnxUOUNx264TEii3aVVJULfeRlas1cY3jNR56veKQBtwqii9LQjxyyRdtvsZvx1jXuZxE8BZc5zUHXPP50kb3tmq/29WUBMfyVdtwLUeSn61tftxroY1pIn88S7M7r2xU23A0FCX245Ei9Vgb6f98b75rxi0Oc6Vd5JUDsoowtATLUBJG8BFvQ4RQ1gwALxglUTx0ieG5fwCJ5ecVGYQTK0pIaSl5PEACaSfXUEeSTbs8A34r18nxr0GYu+KVgk84pqfWFCwBSxgRW6dXwk53v0pUZJb0PoQ6LkYjIx6iTLfQE6MTfEY3Az/GuHfPXec/Yl0UV7RvdJrtNDgfAppfnRhJ4Jz2nRPwcXv/KjA1ASOrR2NyKht9rf2HkalJigx4XX/2AtGnNZqDmplojxE67vbJHczy1+drKDyOJDJFp7fATvwxZbeGSBltMSnTpR9yTS6zPVGO9fZXUujalQMp6Av9Z4BWTN3L+vlB1o8csgQte5NgtK0fqlMXIX8GyUhmYHioaTZAA0GaSe4pgxwOtaIXz1h5Fr8lbRgYYtF7oiRWCrz39tR4R1p+YUYNdQQ702zgXUNh23QwLYA/o5YUab/nnYYRU0Uv49PsLJ/2MV2/kbE+1qpp0sNUpHjYEbmmIbiJT+eQnGaQLmoDFIv08y7QQKQhLUBYPIse/0cMU4fvhCayBuOr0CKJAane4wB/wcYq5LE5ybWLfyQlZdldgsgzbYI+SZMv4fcIsm5MZ6JnpI+AnqoCsxmAr66zTP8zHVRYtEbuIXgdGUUa0SY5Hx3NqC7Ukk3Dq2aGJ47Lu6HtSTI4tC5PcxiMPYV9RXNn60KfLhcuW0p99OxXTmGt+hBZPSl0t5coE45NZKjydYdV7+DzAo7pus+w807BwycK+4A8kP02bkixb7ZdYWiPjWrw36FmUUpwwOWdmez6g/qcyRMqqIsltnOfqrGcu5I2hTn+w4KXuDGtTtwQY0diPAsgov4YFJT7wB/qUEdjFo4R9h1yEp3GaDVAfCd2to8/inTiwgq+Bb/Zs+iPbIni/QYv9kCH5WUoEOIOFPotP9FbvAZfAFM4QcNOa+702lhoYh51kRCc2NBTs8shLFf4ygeNbxzILKEmAu2YOAGqcz6FlhtT8XTpN56tismCScrq39YRwwSB6banEoLfBAnbvp1nIBOiweYIECi0/1MiFZHldtFyI5i2+N9JzIRUyJ0BPrGk77Ryts59IDfteJFNuBNUjxUNoH0aF/Lyke8IgRoTfZd2n4os25quHMNUSJ8NMllkkBEuKB2FuDlapiS2TpPepft5ZFhd8s+49HaVehYHxvxWXeyaQ/niKKZXZC9XSsG6X8vK0tAoxpgcyoo1ffJxXRclT+KW9XDWaVgXIjKUjOdMHOczRzKxt6ByatsXrukATwaeTd1wZwSznXz6IhDdFVhissj1z5IBNkVipPW96cNFQzcOJI5SYuh94RPg9BcTAVdeGWLjQGx9WUgmMvPqxDjMOJMZrovxppOzVdsWPeTkc9BL/d9zUtnQXAGlDlJHwYWGe1Qsz0eTO3Z1N6qYolnH90S74unA7Pja2UbWNg8A4HP8v9m4Hh2GZMfqSx+qS7F2pmORtUe7nY/PqY7LJNG39GhV+i0o+9UtfOMGRqBJ2idz2gTRJ1HZA8fqZkvgp+bJFP0MdpV0xXaLOerQFBUK1Pik8U0BUUpffNpH29M7WvwgNY+ri5Peafxc0CId3d3zeVCKtUpMpvaB/d14zWtCb3lf7uY7XeqN0f83kuKs2TVofK3TaQiyJ8Xp0uAosoF0ikSxXuYIyoJmvAxF3MB2OC/lmF4SpXo+9IrruSnL7uJk7XYBBMU/1Js/nGq7PTsWzBWsh4tibjdbKbY6BG80LRKFbHAfsazqhfC/QmLrm63PftrHcNwOy6u1C+4DB1jgbpwodRC2DqEfzvHJ7ELHLFb6jXdA01ekI9IGM91LChIJk/d+N/zLPicdW85ZflYgWZ5eO/y2x4DQRdL11e46lvH/Rc7i85G98p1JdhxYAnLS3QwcBVrznGJQQwASaaU9jY9Y9MLumCHMYZxA1EtftXTjM6O2WhxgJLBPxk2b8SgTy+8/mQLDKe2bN4B82NoWE6l7pS1EK5B9p2kIV0wd6Ofwf9yehrUSIS0BTgXVYt7o8GxcblA9AdowMYbwpqcdz89Xqweler9WjLKIeVP2392aEf+Zec/Mn35pL7kFusKRuhfTzvqT/hhhmTIq/Hm95vudNkQ+t+AzJ04hxnDkE9UqzrEFr+1dz7BUZA7nwagohlfbL5XH97t3IeleTZ8ZB06qcli91w7hHjOPsZVJcqFZlT9wYfOn+iFwow+NrW9ORK+WKK0MIvgLo2S0AHAZNguX4X9C/KZwmUZcUa4kRe5ZkWTVSTY7nqgJKvDv4w4zMUHA5JrcpyPvtWE7h+IGVpD449DsiNfIh1o8xFb4IDjFYrWOr3V+iLY+Tv0xc1Iuhj6UDlW8wJ0f+ZldfxVH2toc9qgYtgCGJHWr1l3xo+0DE8eNXjnDCZCO0dAslOf3jRE2UKDT2ykNStvbmxuGSlhBHXx5CIF69I+moGDlnq/KihhM2Qffp+6Xm1+UGYZZ/rS/nO1dDGxThux1bpQKPErXbU4hC6DSlWBBQYlGzXwqhEk2DfaIOSUSDOdFZvphnud8SEbtbnwo1Mi1AUvwQHSDEfaE5+uEpCoJgwHFgdpsomDVjI65iA40rAaq3tyPiUbUu50ZvAGghWWVU2sUcgHVbZcRhcOLwyFD7i+FeCKAujWiWM6cgOTouNpraFKAX5EWYoQvY9+TpYB5GASmG3rWradddmKsFPxcTx86hA/suDwQybhKgVrmlhcs/cFJP5cABauKLoi/9ZE5Rf+POa4RK8v9aSx4WviPqa++/LeTyghGiCQolCVfGu6Rny8qrxZNHsfmvxAO70M1vgYdiSG1siskw4UJFY+jdr3NW1S8vDw/33TTHllnxo+jN9NBN9LFLwEldvh5VrjxzD9c288LK6wGx6fefS/7DJF89XT/Gdcd4bIAPL245t4bBx1VBo1ptQton2sFSUm8aJJMqNywZG0pL3PmHAROppJysYrBul2I4u1vG4UxNsgIcR2u8IE0BEU2dkRhbp7yaebS9405i4Vja55R8Nq3xMs6d/YeSR/5lo3Pe12EGxst8C01/2vqZaHkpGklvmi3CcKfjn80TaZ/alFRhFFDf5nJhroPIlEzuOWhQzqd5FDU0kyxvb8Lh/b3bhiXEWLoUN9uZ+rjHq9jN28gLkkCO1a1YsMvAXiSBzL9Cn4Oyi2pjfr/JOjuaEQ5ZovAA8ZSC6Lc6xPugvgWvutAg1lUaw+NKRC3WJeDR4bwl3VZHDOJ5SVqH78N4ZVWGs39srzL2hmanrlcK+163wP2gdhl5NQQlXcq70zBWYupjyTc2WoAazIzrvzJNsAe/Ioblb9JdyG3caJwr0P2f53zJFOe5vaGcUrjkrdRWu8paW+P+e7+SixetkF9Cs74Rj6VirUcqtmdAArDvKtYcwj/f2go8vNqEvqMDQ/DHpZbK8uXtbEqeC6wM69oqItiKiitvx1X9TpWwqvWN2rsk9naISphYQaH90jQlJjVCNFoePGinBU8y+CX6WpCnZLxfkAbGN9QoStQBcvZuRBqvoZAruyswm4t+9DbfRwXEQcDKh2SKAMY7w4IGeW4fww+cYezlpHinfOd7Jk5aeBfMU4RT05Y0V19bfzmMiZPTgluDtT/luN23LCcojV8dlOmDmLzUoUN+8wF4QhWS7WMJ29aVWT02lHCF6ZdtXEskHjAh/nD14dnsn5NjJPnXYaOD1EkL+26xZvcB+R8RdWEK5/lgyGpO9qHq7VE8cw5zlcupU8m7z6dheOUt5oWVxIlT/E+R5mzjeKmxhHbni6/PBdNv/zmyf+77gFyvcFKUN84u4znSXnyS4YLyUTDwOFW5RYAwO79DYn2JJO9P9DVidKTpvPSa+FsWThIi/hlgaWqwvbFDWzX76W+0qGHIn4dGrFqbjpFLoHTB56q2/LVzM2IX6b2NAUybTXO5Gbo9YbyopyXC923iVga/4l/nZPWixZw7Or2KAM72Hz30cCvU0/HExIzWo+nSue+y0XbdCktzU4bmLG+uyFfGGdKCLoTKLWvajT8t/XdoXmBiP3x+roe1IDa6MlCpKyX+k6hjz255HY2GXtJDCn/Unu4uMKAw3un7+kaQRoclXpToZJ+Qiv+YKgGDR9XCcJn5rWZQncQz4G0s5IL77UJhmgSf16t0f1y7Zct37zJZnFxONO4wfXvQLsZpJccCkY3ISk/WxU9PsDJXMifdVwzCggv7Q74zuqnxHb2Hkao8D6qjHBVKhh1HahebXaS+LLwra7lTec4vGQH3ULfhLD0Kvjr24FlCAFsZdZZc4qu+nyPOwzFI2SXbt7q8EziLmuwjMN3z16ncTzdNb7VuctEakTx+hnKxm4STWuEiiWKcmI9EETDITttINhtabeUt6mMdANuLLwfAqEJqRN4dOBcmGxU5JEkOmNvWLoywxfaS0VDWyUFE4FZdYmbkpjN5u54ELGRMjMf1BWMiuw6QfyFG/uc2N3KuQxqTD5nuVr7b0txV+G4NMfZgXm66wubP5HOXrqfK3B1MGk4/QYO8hSctptg3ICqxlOTyq1ccy6qZ4mwrrYTSDgAjhM76KsIlYvyPB5ZEtHNFf/qzg8udy1FJdoOuvk+D8CfmBAZQrAOi20F2DPgboFviTFI428qTD3/0AradsKHj47dwBWgzvkqyap8D9Hw6HtNTVfplX3qISJMkhL+sxwsodDl0jyy/NmteUjdey7Y8ewmPXOylI3kk6+L0iHyRaKW4jurJFB7PNf4VVzXfQGO1b4JWDbpqq4+bjwWiKhCi2O1xiRuX9Vm0WHQfgM59T6T6GpnPU2ywaDkD3Qp3494bv3VxIG53p96kGeIGHT9mru++7BeiSPqsZdvFP1PMuZXSwDCcruTUhUy6COJiZPrkAJFgy8KjfYaE1HPty/4FCNfmVqFyEQDhjjWfHfzX/cmTijLau8T3G2G+AmL2vNg5VRttDyE7SrzpoJCMwlp1MDD2BVlRauR1j38CEEhf/8LREX4b3eb4eU+mkZ/+Mf/Wijrd2ZbOPolohQlgXKoIKiWAovj+NVqJSaJSRVg6FHX99sjCrmCjbPAU1Jkdd35zkHgqnKaPqEr/02EH9TLNGv4kx541sr35chQIM+sxCDnd2FPRBYi6cjfRtw9J70+ClPB5sk479Q6ZN/YYsXMaBY6WWKmeN62aRh04kvylEDxXzmQTY5U99NX4odKs4jFuu+1GwYSzER5uOiNbkmDVb52UPDT3WLwG0QvUOACy505SQlFTf/3au2ixldST4zKUeXaFYBZFsc9nWleagnmpedZu53Iv2WXCbVAu5Q5Fys2IG+OjnbKWuZvUdgLs+qoTj0CmEVgMTVASSRmXEUMqzqBpy4MqsKwosM+7mxYwUelHGb6K+dvjvtsqmFHxm3ekvQu6nhtHjVz9vkU68oAn479JPosqBq/wCha/5coAnObhJvTcsz9qUx1IdbgRQke+FgwCX4iu4F76utfM6lewV9oavWS8qaxmKmncTVOeItepnWf2TEAj88ZmMcasJv1jwzyCHbKdatyBZiBwXIK5bUHpCtvTYD4YnC9JW54yEj+OvWd6Tzc+QnFLUjNl8hy04JMOJqsgnVZlirOrWPlzgvkGp1rQtDyQd/6Z2jZ2PeG0qoib7sHHmtYypIiVPH/xWHxW9c4P376PjL5Bj3nAMyxcQslo1bZvTSLFObge6mp/0NcMxFeG5kB2oo6kpick9hl03SBTS5JXV02OKFtazAIZ70kMwoJhDFijwIfLJI//DQrvY9tbT125qOCqb7ZEBC14gisEDWnJPH5rhmGVuMmkOt7AC76GdB+/VMLtAmHpnLB94nYAVqF0Tofmcd6znzIzyC4Ge5QrGqQB1f0kpRswA1zngVaTKw1Fevh7FwoB7QncZ54Nt/aYqelunQ9UoYTb/NAXGpEvtB9rhzuQ3WY/Fv8T+yVPRjKWS3ONMhkAeItTecib7NXfMjShs/6aIUBgtYfQoK4RE+IYWHl2aoKKrfasVnnH/4Dw/ZlN9SERqnr9av20filE1L7Je2Awv4vgxl7jLM/8AAnum43oxRtIpft8HwAGZwcObhb2hF36qJfUpHQJ7EScVlXk2PsR0RFhishkXEfO2UPlue8cqG2bI0ft+dtsuxIHXor0nTjxRWXHC5FMp3ZIMsXzy9QEK/jDd142IuPTFdd7X/KqJQZE//SPu9ORMRj6w2lmHD5jAcnzN2tRB8OjVrHBzB3dfo2JJfmDypMtqNHKTvaBrQixHO5Nk/pQeIrfvDMFTShbxmBuVCBSw0iq3YA4RZVF9qJkZeOjn5pJx9t9IwLUFcmvgjvycAOqbTsFHQch2n5D8cnVkPKctZO6rQ01rMaPXHP7w7hRu2OvJUPc1WURdYwIatInj8gd7eghJXmjshLSMwmSKqTFnrNOIOK1k4vPt6Vr2HxgtqiU3bUaONFsqesEDXBPUnL35+4pEYQ4O+sDEhcKnWji3yZstnEMYP3QACHPD/jJ8xnwNNEdRlXziZUi6Bj1roqIY9aOdUQUJzJOi8uBNRba6XWQha//dK9tzLeI0PIYEiufu2NtIzKpIOKN84xrQnNjwA6Bf0QY0lgzFCznvwX6O9bc0RJYxPhhKERxNHBqjB0Ktf6jz+CnAaRSO/+JLWIfker8wkn7aTGhMfP2nps70pidk66ZCVjjM3TyMTzzK5incbPXgbVO+4/0sUO61ZQVbVmATxrCS4/1ruDpc/DSPrZfjPVK+UXBAveuFvxDKgW6UgNloUetn6lAOz8unAJxL0dSk8Fznx3eBp9Ty6xoGO7mFpzHL2szuEea0icomqHnmP3tmpMzSbrvLW3taiFVLhXutI2EWUX6ig6aid1kg4aNlCRFNd/t97xz/ce/eqXpHn7M+m3c51JHxaf4Dh1GRdvQfvkk8RkT/QdxBFxDZH1UEXitVb1nGEEFiDhYJJNJSm3axcNlViEPlnHAJ1dUrlbtZAKEpCmgHEoK8OK1Zh9C5bfva0SWdcQyiXAzTIRktzVRr5YqNIFV76z1XRt05tW6WZG7cFQcUt2nnz+/lpDpHCQ+oRqsXR27q/Lp+bHaAm7hYhzqpVwRWPkdeRZsxY9YiH3DzSutCs/jGHApBea5igd91J2n88jm4DN1LXH+vACStJNZeGnAZNsL7JLmQyHTTuHstbkBk6mgREQC2VZU5VCX/kM94MBCnZiRJydHEYnM4msJ/7UlwZw2uXysPRUNB5kX4CxSPP00jx1ghrDe2BevP7QJZUR3TUyXIU804dQ6/ukrPx/L0vTG4H56vQ0bYXZj6Zc/FvCuU/5jqoCjeWG6QFqd/12Z8Vd2/GmXmNVNJgxgCt1BOtexZjM57P4O0J3+JjpIMCQ6kBEUesYz7D6DzpLR3RVEAgJlMuHEtzmckfMtrpdUw5O56pQWj609gE4vSkK+o6GTTAPhuLJxPheVy1oXiCwsoGkK4zMzVASyfBKoZp3N7eRUA3BsCZZquYgtvVIGoJsMb+opQb8iVCFW66r9/Axjr2qSaMPp25h291F7Q0H9sNS0KOEU9z1iqI9kACqVTTgbOyw0im2RuKrcMDhOQwbEoaGvPB76MlcHWCvrnjKNaeuKauBu/G5NpEOPNeQOCosM29Doxji1dmxuoyjYDzZntW3Hauksj3JBGgAtqzfham2FqBV0evd94ZmGecs+VqDk1EtanciD7BoCTyoYuZzdogMENyxmK5tGVQGOSGWZgquPKjUnt8x4jmBnqbbHYFYgfAhW7tfCACsHIovAWvCHQAkZkyjoS4Z5fagXANXLcdti9BL6VtVIXiis8rcz0tatWw4FOgVp678OzHxj3HhQParPmYylCYbTBvreq8mMMFOg5tOKT8iR7ZJ78+DgM3j5GxoZtd034g08r9Hy/q+qAu4hxC/RyhorFeg5L0huOuXOf95qI9Wjg/jeb9zeLsrTSGKXZuUi88A6vXgKGrRnznV786lzUG4JPmdn8cDDTYMBLiXOrZQAK/WXs9wQp2+I5O1alEvrhKDhb6cyxXW5KggFedOu5JIvkV6yjUI6sAbCrtFu9f0BslU7h24an6Pvc+2RPD/TnBye6LIfGRtz/aZnixdVwLA2XUv7kKpous0Vpll/6dOrGqcRRZmKsr2V86VqafLeFOhTCbe9Th6w/hYFcHAs83/vGEa3H0/Nv8UGdlz5M/2ElOY6TeMYJXO3iRoofmBWdqRQEYFRvKlNYWuKVU0k+mH41luCk6e3BwMHP1nTQkwA8F3ExvfGVHqkC+HlFDf+jnCM+N88XjEX9VNN+v2z7fkXqSUpjU3C0LUfwk4iCdWuCzIiM0QRe6dBP7t8iFDhj11KlQUdcp5xmgNv7OvFtRvzN8Osxm5N1rVKrLjvuE4IGD0z+XUw1FlIbwyD7TR0kT1YC1FmEvljgwt6wo1mcE6UjHw0+oIDkrl9ZjknmmGpPW+96XJhhH/JMS5w1zW3DeLJok0MPeiROdObEXrRwRPJ2VJIUp4NQN8C0VVwOM7TGhAtp2Rm5zYmIvbaZrBkT7XJ3HJb4AqQgp5J4nevte2yoNxuWAwdDrf6EknRj+r0gJ02yQghNoFROarG7QcZzeieHpA3LbDYa7Bh1UR/1Vym5yAEWpP64zpQTA8Yl00z8YtZLUtY9i4KEaGilQinwligUYtj0HgebArHVmyAQZWXpjz+htGO6VFG3FAoEzkrbFlo36eJZ95iqNaCyZgJvBS3s8Fny+3y8p3IdmCiINlbVkyhruyc0WHiCFGwqAZ7bAi9YVY4QNe8QK3VwPgkBqAMazG6kOPy0mwCydK44LOOOVnVELdHzoLdkMtOZ0V50BjBMASNrhD7aAgDSrLWg2kBaMvSmpSo7il3Ug82aXMg31ZPtkxUlvSwMB5vwLKhGkP0GleR3yJ+EdDN7lLXasdyy7L1f79tgy+RMljK/Z65AWTYWayMmk/a87moVse94w1XKWxQZ3z9mGealoBN2zEbc8vTY9bGw9pwJSdUTQzHVpLNsbPWDke8bfVQbb45bTUnRVGjFQ35cpiOY7iK9K7vpW6deSbx3VYWngbf1VkrtoxP2G3whMm8VHXLWFQR7p8oOMJ4p15E7gC6iiTM0lg7OgM43kp1VqmILiUsMj9FV7cQNjF7eWvzqH4e9FqCyTE6/iczPHl9cBEwpSfnm0+5VZbyfVcDshan9zJFH/dmOnqKlCc8FkNIHeXZO+M07B78NJkm1UJ0Y+J1Mng2rtAkQM3D73GS1LuURMTKcA+aV5p/uy+SdTQ+sg/mfSjOrp32B0H4iUaV6U338A8fvWGdMbMXGuWGb+Qia0K3g6ONMhfmla41YqDsyQWdrmju/rbNTQVGhqP47K/juQBAWqoF1EuNpV/pBX3z9S4f9/X+kK7X0QVl9WixulZBC/OtOxEr+Af2ef3hX5NwHpqS3k6DKOlc/omCBGHUTwqlclGfesPEB13LghjNUxwHJDATrZf0c7PagzLBwt+BGCIL+ccn61MaVGl2Plpj3S/zNJoP7bt0BWDLrx+hQZMu5VzY39D9Yb1mSmSXSGqmlnkfJZgrFIeDWmXAC5XWssuJm5+HoNPhnBhmRN/lKGNBxhU0xPLHmjvQ1CYPYWojXV+vX0DtpbF0m17tXbPz1R7t8vetIPzTwRp+CO3GihVlsFqW34nhJcfDo6bLdCWtlhwKf+TUYv1SltUHRxrxpwfTDJ/ggGwHyLQu1CXGaT1YnI08uU9zlNXqrEebo+znDi408s+m8epRXlU/FL4x1fUl83NenfejiPeEoGGUqgPPk+Eizke/lyGb1/mJtMDklPuYAsKOwYgjEwYiH7Mlu+6jEfB5/RT0sTTepZZLspgfXgsOn0CVAyq7pkUyGkv8XQhNLW1xYMkVPSMtAEXEposYEMefPPxBikKt/ivJ6P4BSQcjWrNpee5LuA1b6hLUyzVcfiBUXUNpUsESEz+5JWs6ibTiFCkoBnAZKQvKE/dBI8jqDXQTPKYgbe4lnT+KuDeJSoVwsmGVfUzLtegxbuPkVZp2lAogM9OY5jNkIJk8HYyvN+dwNA1345jrO5R4npzlgplM7d1Akf0+DCt57/s3yznmEX5RBjpsZPpmzrfenBk716C4eDP4MaM81tdlwiaXrj08Lsp8ZSfqNK2vEe1Okhe4e9oKvp+G2IjDjBz6zBSAMyiIWDLCpi65GZVccfhJMWLrcbvnphZOmN73ysipfJHJJ72npzDaORs/UWk184XeSmxT60UFN5zz5BXW1siu7M2jZmRyrF5fXVpYhZ7tGdgOPYw+kCdyXdi3+d0IRHlJZNeJ+YtaInKJ+xska6Xe5lpwNOsyK7rH6duFMCfy+4UCI1QQt5Wgx5+uNZASEo2vlbhWt7AD7obAdW6EVfUsRB99c8DLskJzp0OITHTUQ6Xwp2MFTWA4JppfriPXdYjiQXPEJv9G5FiksG/3SI3/WGeh7HiHp8n74N9D51vQPF9VKOLGz8NMzyS8Wxb8115KoV27ALsjUuh1AmOH0kQk7AW/O1Ig2quzbkT8kgC1uKPQk4dRrky/oFwpl/0HbY9u7qiakdK3M1vbl0KQvGaQVz9WOuIlQ9lIeiKyyfpTwxvCWjorG8XEW5nCW0j77pRL/IVhCGAthJJRuXVvokOZ6QCrZc5JqpYOmu3B8wU8l5TW2romvYPfVAdWRHfNwIHgOuLcs6rAbbWk6lc3Jv/KOE1Jg686ke+ZngeOgBnmIPkQX6ZVAw2KVsuLqiIeuKICHJ1QD12RIirehwlvuwbY6oAFhzz5E78VHNh82IHavB0hZ9VbS9WeYpBOczIm20kMWaQiRrnT1fQ+P4XKtFm7d34OjtzywQLISo8bGSz7CQoUJ9gCh+dvaJJNMsQcYqQIpnwcPFNHUnbD3kGtBVFCGlY3l7LUOJQ7+iApoZuphVnEizf7ugiZqis55MgDgOnwxpNAXqZkh6VMYNQP6KTroTqVcNcWgd2Jrv+P9lt9VxsQK6OwMMXAInTnznHhtJ9ZvREB8l3rxvEx/OP17nLbkrWF+icz4IqvzbmwulGq7ZHKVUgxFf0uK8mDQH+2C8yijk+faYdyuHkpSbsEy7R+42csOWKr//qYq6VevfX7i6jBOOHF/g7kZitC/6SPEhMlYFUFd0p6KB9Rz4YW6vZGZsYl7eTsY/TvPaE3Dc+lZTEuEGjHp2X/djHO1Ybw15OCuX/axcwMA0ZdDeIuC5Q7YhsfBAYS7+jgesRY6PWMioazgK7Ef8cC+4dUM5dB71FDT9PAo67aTHEwaQiC5ijtk3BkPvliSWHXgBtj1xWqLSgFoRKFlxd2qezhqulUQrQopLdVhxAZGWmPtqqenMWZhsNlD/YhyIokoY0LgJb6y4pEIKxemICqXgrhWADN/O9eeDkQ2n2akfgMTO67lbXRbXcJkAljDqBuNkAVNIRMlxQf7x1RcaC3ezMLDJ1wrz/LLeBYQYIzBWjeuEUrqsIziILxDSlAsNeovKzhr/CMTY6Ioe/KhJog5OrU2gtmuF2TcSBrxZgVaM2qDvLM5nGSo07o5OC7BjtSiRYfmd3xCfeDIK386vnypaSi1Ds9Nzp49uQHsKmdq6ALTMQEv50Nw8/JcVxUZdXcCxBKoD9jHh3RAtuvT0N/y0R4PjZEhk6T3BSWP2fcJB5ETjKTXaFwaVvicSolUCygBjk9OinD3bWeNQr9ZZzrd010Yr34SlNpVd6iuRO4DEKcNgL28Vd18m2xtAY4A+USh1to9sX06D/w8H113um7FTtNGlaJftwi9DcV1tZPOSkrQKpiZ1NX8opYC4mdnajZkPO/CbHikBpun4x99q+g41ngTfnClOiogIafEAY0UMk3KsoCCwfbX1CAk3fyOJEt+T+6XVJuB8N7fiprtTMmFINmfEZeQTaHfez7Q5uIZoEReUMsv+O0H+r8SpifVPoGzuyWiOd8FSh3kkcQB8NxjLCr6I06rDobeOVVJ2nqjD1ESW6L8AK5ECTt2rtiN23u/JOjJjbZiaXrFJNdlTOIU/OIaOAYwAcpnESQI68eF7n1sq/3eUpjFmXmu3EXTToq0XzBD7i1wnXi/4TaIl4kqskEHbEfkhewUSZAj0HtPkut3HvPs38LpgIsnxDQmnHy/4qwtoiLb1VGV3zfE+6gtTUZ3/0KDFerd31i2m9qzrjAkac/FtSiI8bBvwAtLt1q1vwax75ThmJ8LhqjXspd/c52KPfvckL81mSbVnma38SZ9rg1qjjlHvK8/EJWWtO4SiSbPhKm2nyVKndNQ3huYg4S8ic0U0KXXAu9TE9w2rth5STIuBRl4AThOrSVUumqWrwiWVIxPlHC5L4eY1CQS75nqV4aUbnkMHzv43osmgWSHXIC99xPxhrxTw6W4E7R3JQoqKF2BhgIVOvvZDV6EWIUi6VrS2IXn9OlAJYDOS3SOADiomVA2TGGv+FoL+T2fqdlVsDHx8lbKE2ejKy4JkFJYVWz+l9S8gxdLO8GLj0KUSWdTpC0TpPIrdtg48Q5HnvtS8L/mlKaAOBzJmk32oWcZjrR/Byynu7rRc/ufY5lCjB8LvhN+iJbKu8fAvdQ0/NkWIqRn+ggCmul7kqsaB9A0zBygEYMV9Wt8Y8QW08DmGJpBgBKxwIqqUBEIgvxy1IWPvLhzDwNDyHlOpUXDi40eVOztQiET9XknNAzXp6P/xtHmfGesQ2cXNTt/ZGoi1cnvGW3ezSievWDtICJSA2toZphb/jd0pI7fmTzMhPso0JWEJtpsonZlqDAd2d4AyqBRr3Rcva1G0YB2uCJfWOB51jGcEI1isuQ8e6wk+xM+Jt1iJThhHxoWefd984aFy+LfWiY870WMBURUcr5Da11CPzT6NqTFgeMWQ8d6H9s4cMZXovdGwd3nTRwrSo5TEtIA8wxcKASpqJlpoz1pF8Qsemo+pEN2ylZEDYs4z9VbEQcnOeaD9zhtIEZim3x82kcc9AM8SyzYVFOOEgi61DmvDn16eQRRx3vHWQRVsLTKaW9r4XZ1qsw2ZlI3l15fCqzK5jQD1QDls07f8LSQR+Foat40ArNS3BIaUOsrmCw7B5/amW4ybfRl4jUhDMBNoO/Y6Rr7iRAweJdClP2W0Px7Ddalr+GXXiQ8ktqGTcICNYN8Sl2GUw1qt/0wFjg+3j0EIsQ948GBFzQNf8u5K342R5DYagAB9LGstixeziAWH/HfLW/dcYR2BgaJu6zTmg9sG1HqGS6oqmYQHF5NP7tRFx/A8j1uOGtmhJz5bzKJT33/3gBsYW/AJvUKRs3Gh5CTxSDaPlg2n8LoK3seU2FxGBz7Y31+uQ/orpKCN0p4rHm5Wevd7h/+6feE3p/pGZRawdAeZS5+hQEUlgmP6Wp4pfKEAqECp2G9MgzGl4OMVMIzRmMgifee1FekFUtx1OqpeCQtu7yFZiLJKN/4e3kR4n5eUet6hkDW29VwCxy82cXUED8Aq5b3vkZvdr6a/9NYOBpFrSU9nX6j4zBnPMvgPY+8jVR4gQRF8a6egHiy1oHtZ8Jv4xGnspA5+9QjhyF8TFrYX9yAtiCu9GGM6lEMn+umjyxEIBQiEVhn7CEkFa2Dp5eIPJXff0hQEXMJsg+eKtkXuvYs/UQ8JEXvjIuOR90j0Itt1d2vliWwLBO173L/xsuNkr67Vz/a2krzQP0Eyv4Ey9K4lhnSll4MSVLzWQYyXdqQcMahaVW1s4G6dIAyA1ywesSS+Lzl19bBfdE1uhNoYfbpr2S2dpLMCmtALoHPOgrKTIki3Gj4u2EJp9I6uGMPaAWipJgbLrnoseHemdSZpWC5InO+/btQdHArEIE/WFLJ94tj41CB7+F/mhdR2zZGWOkJHrGBReERoEjn+CwM29K6sxnNInbnEJux6ap9qPfJdjfVcp1nPsxEnPNHvZknOgJX8H68mZ4GowYQRlS/KxrM/8HxF1k70BthVnchjYf1DpJ8UGFTYZoaMGsaQnJ25woP29e7npwnegIWn+tabXKD1j86j2LmwLyiwdMSLdsxn8tFhouI30q5ysz+m8KFML0sCtAkL4BsW9c6aJ01CqaXBsEX/lYVP6pzPbHWOskwE0l9mGdGng1JAASBsBCONavfchQPOqw1CC1zK+49FVqcp/pn+1o6/CB57ynj14LqmwIL/FtgNmSO+g8flFwNs+Vu2FxKd6ygCzhowvz+f3hg/VxZAIT718Tl0KaXa4DPolexk6JJDIu3E+YJGurto482bLr0HFddt0g8UeLy3i9iqRPno+QJOa8BchOQ+LwcxGSXhMDsnWh0XsPZCZcT/QIHDxcXbnb/+sSYqVy4/5HFlOliNC2oUFLv5NsE4Mzz2wFB5277XZuBbwoWMA1Qg7p84Dox0H8OhzfzBfxOJReR6DXlb8gVuoRG+KZ+lhRfDQAmj9Fbfw1jJn5RYNkpfbwTuFnJ9gme9CAekiBr+LYLsgQ0IbqxPG2EwB6Ast2bgIEjPiqsw3XKEqvfLKfaeANgpeb3Vm0rAulG+P6sCMhSN9fdJb+CW7gLbkCE+tdHGRTUAtJ1xoA1m+fBix4dph5m5gNel976MSEwb1bgiGS7ij/IXGNIgHdR/xpzzsgywuAQFUGnyQ9oQEN9LTZGjVMJvzWGojaDfUfAbpvSk8s45M7ZrAUm9AMNi/IAs9l3qWhaB9oFh6bF7MgGLBfkhx1KETprKKF4tRccCLF2iSg2yGtinRG0SvGjzlKCdsdCd4FPysshM6/nZZITsmjvA7/H9XseHlmbqimWziE9hJ+FZTQdLKEpcWFE2jR3V7lWsgyFy+lEs8ItOlKplK8sCZQD9ZfmmEi4LFHQ2VsNqRA7lV+9QT1CegEqsSWhcJroA98aNgI4mg9dmjIM+iGTgRTC03r0QdokAc+8RGnElENEjIZNpzwiHa/YZOIDltOdSQFdVb40itmEKpSkSVgvdksJDUqklh71vY/LXQ+C9JFwpFLrb3MjVCZ7Zv/Y8YSJHMZkAxq+AErBabJ5xbMMDzsUV8KLrKaA+0M1W6SSa83gLm5bM5dp6/xGzpOL3Vf6CufpTf4T+r6kR313iMoM87psMm+iZAbBltXVKnSAhyJjk0VVFLjOb2v8N8ioXLm+dRoBLXs7QwS3IvBn3k3eyESI6WBkZaw4eDWMSELY28PVAkbJL9UHg4axgQqtViuj4nOykkCYk35cjAZxKpkMP7jPoNN6WzmNfUP56Fshiq2kWl8FJa5GeQCfrryQFOh7gkg737jIyGBHSOLM8XwRs9QVEAV4Q93ahf5y91DVX4i88ChsMWg7Vp4ZddTLzVA6hIwNh14fCR7i4c92ui8m1RqAK0dYNKPxHUyyMWlJpUJstChQS/N23POEpc1C/6qW9SMIjg/F0tHh33LJPmxdEx9j3f1bdbnFG6gfE/LpbpNjv6eJz4mRRjpgrRUK8inQL0CdJiEZBdXDVbgnzqqohoQ3Nj8mH3VAoIdlBymFqTOwKj1a/f2WiMT5CwW+ePP0X40Sun+BOYY+a535WTGWHoXJtdPR2gHw9W3rBD5XEDQv7FQotAN8+n4X6J2NQKFu0sZT50gF7Uq8JJa+cTCcPuPv5KVtLKobsG2KFtiIHoZCNJ9mMP7kBWF8/YU4UKaFmeJC2QD9G8uR1vpT+R3HauFGqrDX38UnkIoa94/IPoUlyy5xuqx3BLbO1ANPSZlAE0VehhNrYFae7jgD1zrTsLa5oSFOKcyOI3qRAZIhDQpCOtAX4yIEwzLEUS0NLE/2Wny3nsuhwYwplPlhUIX3JfU9t+8aYNU3MESPh7v3E1NQFxQLprAZOL1aph8Rp0CejiGodLOjRMdwGd4pDv+4W6B1OOwWHPjvUEjTUXOt5n62N9Wp1YA+ePdUclxIX8rRtKoWqH2NdWhk6S4BzUxSx3wNGZeC+v5gn8TH8IgM+TyhrBRsZe9LW9TaSB9rcdz0cSfM94cMoK+kenq9CoTa60Wcg329pWy7h47tfEBmDClWtAVERxh9U6uHsvXp4xyTQrGx2wBYb6QFigTO5cra8dlWiSTLy+If2gy8+g9ODpBHLMUMAkJcoNatv81vDzKxm5uqP3sKkWQMGqiX2dYFRL5Qje31KO7DS4OQTbs5j8TN0LJ5L1aYDBFEurjgH5+e0G/zG6fJjj+daGJ2hMaxxo4FDEH3SqeXISOPcfdCLFav2XUr3t05HVPatwwgMvzahEpaVYWENVzk5gDi1CxO6vALcXp3sTfRSTALSKRIVwJ3FyJehR7dzJqgYxgZslwebl/E2c8Cb5hCIR9sIwt+uURKo3zA5s47d/63dQulCH+6lgfjNmaiYmLIftzfBUEquRsQ0AklppkGG2O7okT2iC0i3btYoafEODNmm03bc0qOZqViJL4wQ5vQjg4lF52DXbOp/v287C10X6pxRxAwfPnyNXSiq1G4RnQqumlvzu+bFA8lLZtH6EwcboVF8aG9WdGMRdMqCVZUQDbRy6fA5wUqlo9CYaNX5jdzvAGj7whtI12WJ/+qppfVj0rZ1QqsIZBDyWJopzMvztN5mUSZz8vyo24D28axRPbJIaiU3GCbFTttar0/3L0+n/i4Po9SyyS+9QhJcLWc1vwqS8N8Ivm2jwefY/E9rxU30mQra7/C+vsJVRdif+IBtxi0+15Aluzria3BRahos1g5PyHil4veyHirB3epZe9Td31dwQj6Oft2OUP/H6YPX7IYNDq3YFWTVBI9rkN2j4twHv1PlfNTDW6IRZmyvK4Ud1FmicdcOHjuJGfwC5BEDHuVLz59eUKdzjxgVKMiQoST94nboNuaN4NGCESSEzGJ/cw7HlNGiDwuRDF/NA2ECK195J8lVOtvqypDgwyFyra8C7qycwPcGNbGV5bpTS0LOWshJiAj+VQBU7729z7g3biQ8mHqbng7lbSlS/2SkGuRUkUq23F8H1z4xuBODVrbbLlliXiiaAKIkxG+poN6vLeo4fxZ/WWX7RO5RZe9qgZrhQuCrwojqx8RqFAaCVQVCGKADODU62rdy8qBd5D4W6Eu6+C5CcJJks6HQHhUS6nsxS7IVaUwadAWrp/7ISt0HqEJaCgmgTDD7hK6hJhcWxD8CN2f3ao3gIcziy3sWIZcVtV8FAmUkDEnP0itQ5PWBw1HNXs2CWsJxp/lJhcGwRZp6lpTBK9fcNsypg1zQSevQ2bjqy8tOGD5JIHmRF/l24sSNuxbYgHgu0klzZE8Y4Ut/iYn4ycVqUfvDcvmfDaG4YmlGYDclUlEVzXjmNRdbcbuhqjdbkG/EDON6+egSVII46EV6rPmTHW57Fhr1ZapRbqPSmyB8cdFW9Zd5vOIegpHjqRxfL0r/oU6PDW9MX6bXJfYpY6WWoHXi3B552vGw1FIe4WVvmgh4tbh7C/iGncNgLnA54FVGePs6fATD4992gqNhtIoD8hyDvgq6IzLRYxjUPkzdJlCMhMq418mKkCHDSCJzOlj/OZMngXUJg87ok+uFJYxyPYTddU5f0MAsppSiCY9D+wLjMATOE/v+cWF/wt8k/oO7cKew382PxYCwOpR7zMsXQz8NwX5la8MVLHywA6rIhdu1+gr8eUzs910meyYWM9TOjJuk1O40P5nkRX4WMw27eaM5qPxVvFcXU8JDWv78DzpgZ+bJXKbknmP8cfuNtnGZdRLRJrp144k94KRTTLpjos3fC2mkww4zf44x9zLWDqwPJsQ3Z47l7bo/RhpjYXF3/91g4Nf1xRgPmm4mzfMtbpldrvYgT07TaAPYKKphmVdWQJBDF7ZsGfJhPVRg2GS7BkF7U5SbO9Y3478IW92vNMlwv/3ojVSGjNvUt/7wD0JNaP2JjFHLEzR+HRjx5C0jLiN1QqG5AnQ2Zq4NWwlulEqkoSmacAn93mXrL77QKWNeFgDn1SyOXLxkxassKhzDyoUW1vWrIBhuSVMXmzZyMMhVrxJCe65Kmk6V0vYdrdxmQ/KbeLcQFuFOnES+s8n1e4HM9rg3WQUc2NZZ94qFoQb89+KObzm6VjH2yaRPcrLW8Hzpz4litNVVQNDxTY41m0gYVliyoJjwEw3vHtdGtn6Vsua6n7lRC62BitwnmL/bAj5U1AckG5iXUmegiYqtw8DYuqk46sb0gByPftWkrzAY15K6HpsTMIeEtbxSmn1yYL41XFe2xfRLCWJDsSqfmA2HEzEsRKW+ZOZEQh91nPMoigP6ipLD8ukCILpMFHvnXtZZztVEaeNtlwKfLlxv6nRlVOCMLbDzVKFZPPXaffr7kP8hiOKtUKSHsb5S/V5lWn3jQ2CeXYNTxuRkWJyJacoDKeApNgqy9L3jp99PVtOBIFS3b98B069kFDrIkvnpvtMYkn/VqXlpTpVy0GwTGxZ5fQJdC/cwkNZqoTViX44CgbsqpawP//vrxiAqcjtxcQKH2+rfhOfOojB7xyX3Dz8Gju7TllCB9yyj5OCpnVZiYqlR6CrH6SEO5C1H4rKL3u50BrH51XcUAAsNc3bOzG4+Gknp8hcJPfoMCsrTzqKcAs8EUT47HUdKLEWb6a90Df6l4yoGc75OiGPd2+Ar7nCaSjGR8jdTU6tfqflfj8rEzx/4B359JmHufK+865GzM2a2fOPLf/ICvvSc4dU4D99SXok4SA6ClGkDBzgJdzlJFUAXWS9JZ5axmGJtZnMo7BT1cqtLkZc8Fk7K9SMxMuv8mvkIw+RFJawoaMrGPoNheGWlez0ZB4bSecseNG92LQYE4tebRfHMkStNzUH7SC2Oq09bZdiyNY22hilN1dXFqOfIoesRX8Uh9VyKdOkmPYBJ2C6/tWrQ2Mve7nYz90Z8MtpxZvzLAXpO+INcO/IANEd5+nnfOTOKlWqRWIoxDVrqsjDgKH409iO7PDyne670ZlJ+9m/uEONXEdz5ma5+IbiPpAMs3zUw1GlNQQ/lDP359gmue0NiFbHsm6Bz2cEcoZemIcnbyNeTsHwKZL7ewH3YdO8L3L/EAWJshdhynLHCJB6oFcZf4VJPZ1Ch126R67i61DWW/c3JIKZczx0/64IwPV7A6iwgMzUspIK2tLuvo+g4RYuhWexih1pA5lcY3/qv0q+wFH53dEc953l8FRbFhItxoIKaCKXLfn0VfzNju04T6IDu8gA68SU9wXdxNO/bKDdLJVax+AmRp6cce3T9AU/NYAgUk0n/rpA0aoX6KJjvei1ubMpD7licjDRBpQz5BsiGIzgj4b/4FFCiyYRUg1Cu3WyO6NgEv7qPeXU4Lr7gK5bvmnI/ASLfct/eVF9EQF6KvNKMP/RH3vgqYb9xHH3gojqczfRnIGUB3iadt9wydhjyZy3zynZlrgPGZ8fgqdiKpFZXsDRLv3LZz/gKGPeb43qQharPnM1Njy6BeqQUOTSGomRenY7K/9VCkyKf5/kyR2Ni+GMjE3dGyZ1BXWazWvbNeQ2c5pddDatgAPFn/ZCxmDOrcUaM/r42hdrJEWla0JVSMz/CV9JzqZMSYj52JbILC5qJqjlorTSRsZAX7RMgSAvKP0XNASC8nDr8l7R+SF7/+3M7GFJUr24kb93qaeVJ3RNFeifXsJPheMyKv6PC7yODFl4qplWgO4lI2UaJrTN57SvbATegFP1+vTBmw7GD7mPPvI1n18whH2eN2bv5dv+2qnK/90bkiwzQ+wK3puUovwYNxdnG8nwZ45yXKM2rNlFMPF3bGJLad1vtFK2KCh4HZcu+Vlczm9r/2m4ZgWPdPhVtsiwGu/AP2GFfG5nSUvGB3EmUgUZPLODsVJohzgC7+uOwifSWDw3Jeqk8Nl5O02LjAlZLW8w7YfiKlwFa6Vw+NzIWxwQhsjqqJKcK0qHrBKLCawWAl9lvwsJSFFTQMz9++KpXi9TwQBkZmwTtqy3j3TTiL9kalkIhJwlglAZ0OzxLKyWpe00YRWMAD9FIoJqIbnzst2w0/UQ+lqTEW5J7BFpiH50/sURUybt7+20zgy68ZTMqc0sjyRSpIA0VRxRKoJJdHm8d8aJ0PT3HvOkXeen7/CADMAB4GgwH0dE5zeGMSfU7gG+nG7pnHoBAViKVHXFoaZQaPnKgiFjcTwKjkuet0iOGBOeUDAESgIyib3+HCm3yEyVppdfeWV6Q7kmLjU6qGCXmCh/8eONneXISB3mYHV+kYh70UPGPEl/Qgs7L7dvROGmW7BnFBjjEw+E9cmPYiU9MkxkgHEODYUqTQIAiOEo8n7427M24qvE2A0dJ9Nc4+M99/2ZuNQB+WEN8fg4hoeP+1cvsFHkNYsX0qWZH7MJbE1zEzUAGAaqE4XcIjTiScza5XzbXw61prEvMJP6DgMbYteTR5CFeLqfb4Eo0BV6EOGR3b+HeqNY5qiERBHVPEpOv4ZQB6EcNdAP5Kzbq5nbzPUTYw2Tqy+ZH5hlckXZArRV4QeoBO+OwE1iztmA62lGxlsI8uIsWeEv+NLYo69oD6qJ8i7Cb3HHD9DHeDzYtBmIn3++NorQP3RLFp4swRT5LfLX0emitqMdaDkSYcPDieUqjK4mbDOm4FLjoxNHN0ZDkUylDGPMC2rsUKRXdWvG5pTloQhexxaQmaAAjPPxcKwkuG8cx4JUqh9zGLsc1RStJdGmBUoxAkVGccHRyAjo1k7h+GvW6BUdVPP1E6Qk6ZKY0nkVqH0X6lST5vE50qUNCGIbKfblNdfripawclrbSoGuNs00uWXxcJNtAmry4BT4UmA8StWeuGenKzNCdI7C40yWTvlR+UCuuabOklhQBJFxq1WZlue2Fvkah/NNfgPLzi8oPD3ZgXUvepSiPAEEP7x9w41ry1+LBy2/sIkxT7tZuDcY6dhNxBs+p0+fPguNa1v4QuI7KL1qUh1kANqYOc6G+AWBVKOhodfJbsuDsS3dPQpCi1ZDQYzQ4FFQYmj3erVPYJj3e+OSsckqxTLWMgyXTrBHO92cAvy71c+cJwW4N7u3q2jx6VisKWE57Wcv1ld14mJ/rJHiuPBGFfoGHSrMG/dYp8jkmRH/0oKBUKEtppZ7LpGUtZIwa3/rFb8hUEtf/BHPgjTMomNmWr0ib8VPiJBXCwfT03b97isSTyLmDCKGbAEcqlm4+0kGS5noz8mJgwqxD6ZW6sW4yaNBfgY3sHePjhElZyqLhu9M80zIwFZC/8aeGjUFsWTTfvTbG+6uSHThOJVEqxO3ddAP60Gu+6BhpQAY0l3Je48WSZ6HdIJU4eDpNuBFv2NG0jVTo34xrk1cmof1YX5msIwrf5DhhU7KJvSY0ZZ0cCdAFwoAWe7UZZgGvOsxlxIJb2Y9AZicORkagCAgBzsgjr6T5INcoOoz8jPc7WKkYkI6mkUDmxfvPXESjj+xDlVrGK7lOc9jY+p76Z2qeP9KK8Vkyn3dWP63w9uC9/1a55L3mkiKqqDwnF5Z0fysvB0nsqFEAaHDFgPZCV6KHggEwd4NoeQC3Q4fD23DboLvfqIFipNC6p9j6TcTsXEZlphYYGi7ozLttAWvOWrZnVLTzeZ21fOtCFJDUegW2+jZf5kCKWL1/WnqR/UK8LQUrXK5c431haJuHOeflYUIRt5GUeprAGB0+7/03R+jOz5n8Oz98J5H2sb8k6LArXBi+0eKJ4wKIXJBWV8oH6aDRMn3klO+KzgnZtIdWTgkoDwNy4PqHPecty9rPdEsDvVHGtOKkLVPcPjS3X8kgTfWjJe69cMbrU3qdWWskoFrP6nJkni7zS4LKIwKl8ZlONjC/MkbIvfFLIV61dTI76T9vtBTGbD47tgdB/qQEfHT3fw671ieGcxpP9gXUrFCwdybcZpwtEnGk7zswSCGGV0pb/mqVoI1nfo2GuyaqwRx9ihXy5nEtzwEoLVme7DI2Hv8ww+/86D+KSnfzqedEpSj7WI5+DR56rno6yvD7vJ/q/GfJgeHCFVcbq1Mt5BKm0yHtAvFT+LbepKeZmHR795M/hECpjeUsIBA2Io5IJvsqjBoe5yC2atZWYITpEQ1NhF/YoRpPF9vsxpz0TXwPv/1GgjnRJ2eCCxMWofeac5+icDbWpcH6W5BX+IkSLPogNXOpos9KzfxioWvgov5334Ot6yxws5qxo+R17vFDzQ+QVryuzj6Y+m3x0LiIHoNPwLlosv9/qqUDCDygGxCfjLb1aIgYL2wmILAueW/BzqieJn1FschYD0nYfNEn0lsp2TYRt6dR8d06C46EWHmwP5k9QrMj9qajCNbG3y6SHxnKCecLZhTgPQ2zNOeS1VSPBZ+yLRn+Rd0ftERbpqQIS0BSG/c439jU5NOhKAyKoSp3P1tBo1OEx890PLjJnWglByXH3pQhfOS33Jcea2IgHKMWKtkI3EE4Cobd8YJvN5c9RuWHx93eBhlKrbBcxYRcLm1p6DJxL/8OdRt+QHgDPAjGyrnZNfpBN3Vcx1AaKtBlcNHJ3eUGQ2r/021sb7PMdmBfTWcrQH/mkdTpw5VpbtqNfVtBZ5wNb96QzKjBFqOCZ4Hdzq0RS8rj00QlQpmeV+xwC5kqSqkhvD+IJYZrk66L3MbEv8cqzZijCHh/+VrJnSYnMr0MIFa/6kcdccx631bnbEs+5xhck6pBIWAOfPMUVm0l9wqWhz50vDBLjcGE8iX9P9o4ZSO+JJL3lO//u8752XZJm4/7N1hK69+ITaKkg/gn2/rRD/jQd082aoAnSNh8RU0bRpkb9iuNGiAY/SXONrxoI80rT/pOPwOy1Omic/IYa4za4xfc0+LzN9oE3GrFHECjEbF49NkTU6QVtGBVEnyjNTvffsNQNi0BuUDDp5iTeiBCPonhXiKHzFOwWmEiQhmwRBotyF23qevoIapP8cx57Opo+IEpl+sHZczHJqxJE/NLptS+HOnZkRtkQxTXhhR2879DuTQKCKENxz3kE8GB+V+ZZsriLhNlkHTLUPKuTokaU8Mq86lFeZtcc8ul/tk3tci7vUjjCHydihnDIE50i9BFsG95YE6dSOGGk39/jhGg2douv3VqDAFoKx77c6Eq8R+5WE0wHimnCxywj9xl8aiVOqmFOrxTcpiqQ8yMjv9i/sRYUSQV4a7QR1hS7vk/IJStuXAiSblyC0hmHwuUuKms6oga4OYpki6aN/6lgeL3Jqx23HRxBg/Ch8LymWZZGFYnPUKWlEDBxqQFq+UsPDy4Ok7OABNIQA6acydwoCAXJ0b/ECfAucryUfgR3GrkpeBYsxHuUqwoIxyzpxoHrlFQ7HTltHNdxNALBvbW12aOHt05kYpYST2wkWHjvZ1vLAHuGA8g8gg4ggEEzqDZpo88mIwYd1waTuuNVZLoo8GXYoUOwFmnXcdwsUPpVM8BPN9eTsIdLZiLShQamshSlS1DFlZJOO1aVQtmghgKdLskdmE40AZNzwjAl4YiDIm7SI9ZLJkmSZMvTHQBC6PEWGScL2PirRrT9XsPMtXuIPD9eUwa42J0IC6Hx0d6QPMsmQJaxWqY5p8MEeIZJm6UZ0nQx6v9SQGBQYl9aebsdjd3x59eMCNizRy2xcVQdsiPkWSsS8R41lhsWhL6qpeVKebkZXyJZIRa3s4sbuGq7kcQUwW3nCQ7/E/6wKrrrB7pydVCZ/u+f9JUT8yT0uB8MJ4pwYd9uZr0dCoYukOfIn/z8FFydePTJu2GpTGYsQ6e2lLz3QMRJT4UOdTRzMw2g2NLMHwCzAItNlVSmQKb0I3DpwehFgHrz7Yk83IAewynypBROHXDuuHc+nc4Y2HLyGWDEhk23laxvU1YcBGzvqzQ7Hhhy6neIAyWfke2QNHepXFT+XVainkqq9WNrZGNaLAMzvuQyJZXprPlGM/buMuWSVCOMWK8SSqu6irLgJh97YFgLZquecF2sXM9l6lIahV2e/a/THEKNmp/h+B9J6Ww/0qzJtnUKDLqzCK3MTSmLxdmqeRtkUYlhaUSZw7dhVIb2UobtSMvvSyzLnvvx0LGz2sKBV6nlnjbrR+0jmb8TbuOxvKpvlCm1dsaPf7Bm4xW1HsOr/6KxY7UjZuFCgtFSozTaYMz0VSgPkcO72D5S8boeImrFcEx1kbiZVfNCMqP5H5XBy1FCuAWPWBFuqHY8Fm0wy8DH2YlyMIv2sIp38KTSi0qWpwToPhP9sMbA8ow58ces0X4uop00D4J0pf7NQ3raHbB3tv9roNn4E8ORACp/Ob0H5PlmF+DZsqoCMdNE4u+ElpCg4veEwE3fa3oZYXSplyv+TqgtXW0IAzmkVOJQt1WT54Es0J6P5dJUGwPInmdhaynBrtc+5cMDEmbkjGoVZ5tGeDqGQ6XYu+UqcScONlLE1QI6rS5MQ0yRJEdwC/Wc9c37aMjWFvDeKhnUW/3gKYZdbQyy9errGQxJIH3f6wM65WFznZ9mRqwa7kn5OLztFtWZtFWbUDnVuHj4xYWGDzJnxDXCqbyl77zbG732V6zZ1nkymYqBmbE27plpkN+IYhtB0TQrwrq/rjNUKeIKyi+JIo5G2YZJBv65vQ58qcwT/m0RaAbDq29dLYFvFh15ihh7RyiH4bPsHtm5FScGDah9HnHzHG93rew8+H9U1ORHeDZDzftlyb0JlWEpQzhzbAUSXe5PFUJCqx4nHe2N4K3MDoSoZrEshMWjJ191uuMSDMahi6yocExT8pa1fDWcEwxzqJkvTCyA/5T6HV8+hXLV9u9d8g6eNNeNQMz/46zNN47se7yxqL6hZk/McXv3tvtnpdyOk2Yfdy9/1ZPrDcRqEoA+TyJjU6tOnSXe/xHeUn+HxBXRjt2N+OI80s0aOhyiu33leFuAF8lEXJSMK/j+whRvD8LEGV3tuJvvrWlq9863CX5IGfskK+7FvLBy9DqKG3Pr3t6fStzDSr3dGfe7lWZo4+f9mqSdtDwbHrqs/RoH+bClpbpnIWuTYkD/n9Uy8mdzEhGiqZUuz3jJcDbbgyGc5CAcG8A7sSrecPVdzgz0ZXXUA3qCdv4OsqEdOs+uMcZsUmtDC1K2ExchNJfisnRcRqeej604MvapV6UVAyKUX6w2NmV+n51Us4chKVRo2FHnNsESbwTaEDRjrDKJkL6s5yJQ6xKLira/DXJrDXsMdaqoAWdVoc/ArmSN3FIUJfjuxzYfQaQ86b+EgxfNxNA1bnIX7YnM2up5sFdDa8HQ2Ei5ehLGy0rdWOYgN8sQ6MLmx7pTC5kP6q9Xng4CBtwNXrm9ZLrIteKkBRfrCxBF7XgIQfkdR7rTNzVXfjrh2XYLM0Pfh3Q3tVszQQjUll2FNA+Oxwqy/WfT4sfLe1XyNHCRNWHYN6snbaNNLiY52jpC4oxoGFlgQhmb8rctrXo0nmfuGWbKWXARVQ6VEc+sLq1DhsUFUMejzlKMPi5IBImSxUICJTuTQ0Q8lF0NaGtH4vbAFiIp/AoLrd+BBiCuBXdpE5CNcO6hqZyht17ZcRYrnQHcBXzEPYiX21furvIXtdCicALarJ45gkjD4Y1ZtTuOqqRX99lT0CfQB0cfDT8Hxm32123ETt6/cAjCxr1E6B0tJWJ3LahBfqrmojRFHZUQrRbJJGug0MT0aTr1bfzhb29zKOJug4iRx4ikg4ftW2ww6yz/82rc78Qmr8f9otelooUbNn30I9Y9uiUs5z7cq82e75BbLhsj0h1/KfKTIIuyDZbekyXMnuJ8CF4jMRLG9FvN6hJxrH4j833bdbg8lMxRKfnBH15kk/dqpiKttTT6fLXmqy+QjHPdqUvAcTbs6Ik84eK961kWoJeY1EvrBIKaVTUt/EtLDLGPXSRQ/qtEXBnUtrYREPKTvQ6u5GUewWGBGpaTn0Oz9AwxmOIi50XyBjVvGvE4K3dbuSXCfhzcX/Lv0k0a9Rxd71S+kb1iFlsNRHKlEdXXsxHHrwlC/UEiOZ64HbXhA0fpQGqNsg/rECcifF6EJGtNeit2IfJgYB0ZxKnV39Io1e3OVT4xKkkl4gciMTDC5YH1RSxl5zruTVrSO+KZZrIQGBliJgpf7EFOUYU6RXkIBl2PcCIgMv5UcNGNYftkj4coJAF70eCNxbbVpv5ps5nZQb11kn7yuwmaa/4NdgToIj9QklX/7JnwO0snt/BJpSn4TB0iez7AFYF+vMsQFFxYe75yw6QM2zBzl+kmOeePCRJ6iwOKjwFGcNOFObVG8sr+HQkn9Fvza6Yqe+mtT6wCZve8ax0OLOej7CNuN1TekBJuptB6M1SGK7y387D5xL8mB1pYjwDkyAnNoUgHlGCmvu5Lzmn4aQe6NtqZxHCZX+XkFD1n1cuJJ5JeDw4bMyojZDlKl8VfMjWy/avLvyGyhvGtRGwtf4wBx2JJYOacGrIKRBM/sloiJuMHbaAZMdWKt8Q51mUX9y8Fht1RglLSEb4CxcS/QC0WRgSNO6RkOrIba99f80dwTfenrdImLY9yDHXkooCn/AQOinAwhotm/50K7zOSc6WpraXQ5nRZDXbjr/HHGTpENTKN0R44lnV4fQa9pYWeXWq6TPoaSgOq23Aq8BCGVjEB6j0mLGCEhu0ku6wbyICdq1a/WGkN/tkm+7Y+wivx+ggZ2FyHG+8KE4ddvtZfAT+zgGMG/pMdRz0CE7US8TifY605KkRxncEWqxFOgPf09hJA4Oacp6CdecWtyNWBzmfGwQU4E3L7Bzr2EjIw8LxBITkOkoHzvHBivWD/AvdjWvlQxly4zrWtE9wWv8MWRIEtQCSz1Nk/qJ2NI2HQGpIruyzfwfwK6L1OlqwMpzcd2JAPR3+LdFRbBSErFXq8eT5OX5uqDsNjzDk6NGoqfd1YyhvQgHgdmzPRsBc09tKjaCDkkeYAE1PJ0SuAsTaX2GDFWZsLAPWMgdthlzoFiK4+mO9/4D42ZAOIJT4nUZovSvu5zr4rJdQrMqNKRjrIx8IWHihBHdJMCe+tFNwKLxIrArW+Gg+1OmdtsmJGVu93/I6gvpb+uP4C9bZyNnS/dLWmKalJDMao6hOsxUhFlYzWYSVNzChAQnrj6oaxS1PwHa5T+ELrL0VahoTfyTXSTtQ2zNROs3mtj8lOENIhTorLcFISSBkUzvJdQo5wbcXIms/xK+x7L34hAOdN0SeSLklCqeq59mX8vkcCqju+Ie6dlu2c67Htymy0kYCXdOV6q1vCYJrnHWpyuWFY6dbBBySnHReBcFtzB1mjuO0fnfuFeMdaEItow30zA9fcusuc/KayJpAJsAIVvEyOhJwcwbXbVoweW8nUSr9g8jVhVJJ2nbrsWlUMH/rpo6c8nmUOwVcut8BtxoOqbH1YY+KGWYM38PoV/dnsx14iEiWmu98KbW93Z4ex6+0hgfT0ZsoG5noTReolEWQIWxMVb+aocgGPgMGZ5nhv5wjLYs8WFTpgKPh4dQfwdjHo5VpgrN9iGq9cHh75UnmFetmu0LgwZXj/wykuY+XWk/uOYoRHhx71G1hOwvs505vRReJ0VDZpIQNdQyOKQ+3piy4R4R5IPKofZ3s1pVxsv7btvFAO8Gy7Q4EMtTJ7+FrEWl9jit8/wLV5zUp37bG0/MGjT0YqvxtmVqrWBTvl5vjTZ4XsE9YXBNU/pAjbcf6CUzTiy+pQaiLrRMunNqFhvgxIgqfPPQuKp/oj1dbAs6QllE5EdmU2EEN0GiOT8N6th564KJDn67BvIHW8RNNyOMkDuMVyx3tHG3LneiNrHRXWaz+j5eV2oGwxCVc4K2daEY/9FMnlot7giRd+YswVIViQT7/xio4gDgwlWNIejqbkYEQo8RVGrbh4XltB29Pwfj8XRdhm9EcG5S/LLz7blDBz6dj1nwb5hhZfcR7hdT6PZ6vs/5nRQYVjITcEvhNd7WQi28r2A/iAXS/LqFYjyqZO6vS3KQW3fuzJ5FsMIiv+MISzTtaCJ67zVgNr71IoQnV5T1yYw1RWsmfUZ8rppPxe5LdKquY6Vqh6g0cnGGWBwfd4rjH2ua4qk+1/e9rVSy4AXw/TTIOUssfGXIIBveoA0isC1FHqq/NTw+glkiTH2Pl0cxijpV+Ozuy/mzOKol+boR7CK88oEjTy4lPgw19NDsGzSUtJH+0mi8inIDsLCKGR/h4M8TvS+w+T1/q1hA0d/MNj69shDdbr3te86ckK6680eUr2Y9bOykHUduvycJ3pEg3qJy1OiRbe4UKmQBOn8SRb5BahT4OdFxgZLfBS98gShKG/sThfoOdzrGDO85jDrJ3nrfMdMuxru9fHalX5eKdRz0Qto3pqoHYIr2r1/LRsIwnBcItrxp+Ud7oWKdNZjkGLahDKU2XF9bfRxAR9LJanijaHSTWvjPjMK814O4ub9vq9uex9fDAfUEX/xib6DWsRqdORDXwmfc6szKGUfx2i8MfgqvdzRZkbN6wI43k7reVdjvO9phidI1BtVWbnpPuGxmzGPzSMBXqZYXmTWXjook2pdW/RjX6kKoZR/B+xEYHHlV++3FDJCPqFh1zH/ww0jMeqIBgZUQff+udPVZvlP4GQJbBlRQ8vW4AH6R5pdjvq/nhVcPw0cQzUOgOUtWW/+3FIdkyLulAhlGuPk27y4pg4boSI1LrkKoP5J1sEIWEEAclveaZQrZIKUZ6RZLVSeNa+KJEq34Zhj/+ozFZTS+ksoUK8AjqjzTY4HgDEi5J6OFwnly8SJUuPvBinOHuuOIO7ygJj3Fq/nRd3GdQwvKF5DpYkZS45xQkncWgM7FVp7TAaJhSccvSUvyd8jdxxz+79fO/y8zVzanXR94xM020Eb4FBSae+OPM5LAYyLd915o4iWARPOehsLjfnLJ/JURnaloPWHIIzXXuwNdo0jZiREXvbI3kLAlVVXTtrHfSDHYTx94c1F9JQ7FNPlcGtLp7lVVYju/FDQRW7wuBtABOzGZF7b7cVHJvKUmaNwTJ1Ck/YbXHjsHSdwc0rYnt8UBTxJgXTEzKiXEuLp9UYpssMJD+66t0+eXPfv2UBI6XRFG1kjQoOwHljx37m3tra82/rPRNLq1VFjT2+u9FSHGgBLrrLhgHD49jw3ejvsFPxynDcfzo2v8Tiq/cbl0g29efD1+gGGo22lXY6+U0SuITOSkk12JRy6YDGC7Hl/d9XzTIE8SW00SVnq/gb8efviJY42eZcPOFQ624rXFWUqXreLLgx7CzQ2BXh94XH5yTnNvpQ5NcsQFZx714g3tg3TlPqVJ9slyY4VZuajYilriCiNvDm5qXGQILnp8aiRx7pfw1E7bGmMOuX4kdOx/B7LveGj6X4krzeyS2HXG1JlWl9DNgOkz2YjpzfYPsOffUUws53e26o/pu68jCuqkLkOuz4ScSNJnjElS7CNFAWwIIdTovY1SaDSQF21b2bJOUM20NJfY0IYkF02MHEnDwhkQdix+7Da9lK81ZW/Vz6NH1HtyNc4we2JU+eMv6dUKgakHyb+XN8n3y96Q/uX20fkWtRp/wRr10SXPJylgP95XQDhTnBXsN0pvgReXQAE2oUPduluwcjIx5eRjJki8rf1ybXq9mp++ocfbclTYzROGVZA95qss0Jlm65zOamMslSWHtR+UsFkoPAlU5ugDLgn84kktpM5K8WZ42dGPlXDpkquHF+md6SSiEjreDoPyoIWkvtKEZYObODvL22zCe/KbIletlveyag0m9ek1tDEA98ZfvK8xVFXW056WoD4hxQoruZz5hjRyfwXpzf4etCPE9uruESx2v+R34uKLSqk8ydwqa7DEe+kGkwV3h5B4EMBbzDop1jOwoAkif+awszrEHMTCJR27qd/tmlURCGxdCb7LSzebtiz328YQnFJehFh4CYqY08PoiNMvqz31uYqpJjY7g+nTZGC3xaOjljWJDyqhGkhLIBLJc8TK3fwFAdbe8iPaXmgXMD1lY/n08RXKLnQo6pOeIBzxY8XKdGZ+301HvnO8adM8Ba+wRxM23QoPbl7Dl8r9URRBoWFc2H8YldK5YhEpPZ3GsHgzUVeEXrGMse8cRa28RD5OEWjKIQbFlBVdYY4Ya1w5/DVM88mIQcxMEPTo6w8XyMYwV1SkPFixGNpax9jWj/ScpD0OL930FMz3NYInbiK892NFbqlos2XslJnZ+Ojfi5+bd7Et6yve1FHDkykWJl5wOV4lZGgsYnB7BRMHJmmV2TCQGCDi/Q26B22hHqv853sCKjWwb9nC8zlTH8HrPOEb2Mi0tT4zc7Opi8Vd7GS8DLG6IDMOjsIk6xuZqGG8Ru0+Z+Bu2MdNfHbYmBjp75gnmOVKckefbLkOb+ZcvyF5193wkq8qXxw8jjHPRAdhyQep3iTyCAkiB0qZLOarElGEwcGB/Kri3TwgJHP5uBPgqLo6Efx4bRkX6DxivzJ3kgB8IyoC4www9Hl5hn7UzxUvjlss5fR56sfQKabkE5P4VUxYH6Tky5MDM53R1CrDprzc6qdmI6uz37q0zdoHz5MupzsFTNeeqfKKktDK7Seg+eX6Dds+wUIRi1lZa2JE4QlFGzOv/W5M7Ce0Git/IJsPEdHmXoHJtVU06zuDlTtiHRZdxMNcgXX4PJui2fOsVvIuJhzVPzKNvMasSaZOohXk1lP5t9z6/ftyWwbiexfsNxn6s9UJW4ZqndCczC4BDKWFY0gpTPOnYtWPfufrSdu4HnHGr9ol10aKA3HlB1ay56OTgl7Rl+Nulg/xEHugZ+nMaePC10ikmel3shZGSDpMv0V8m3m23M6hJI4/o7wKMNv5E9gJo0dIQ/kHW3fymZMY+RuJGNYdoyxtLOQyq5uqE6fjZ1XA6IQKQ5zaqRuUVHHHkY+lI31ZiUgBBuZzEHtS+M1HzGWqiOs+NTuqkZexc+2wca4wDwl9aREBAghEUItjUtu1OrediXGtVUw33tt5ghuoeMCkrSUR4F+6aDOIQpcv6lCxplVfFqumEfiAfdWLrf2My1At4fNkFk2ujLQFN61RDMpUTEaYhzlCXSqE9/h80fzzaBwA18DAXfXoiiXaxbc6RAYAj0vYc1Y608qqvrAgQ2OxKEJ4zopzp1tCn5IbZ5Np8zAX/kPgbRIrdV8Pv3YNaJP7xoBZznTv4zoQSSwk730MPXC2ZR2V8N+CvIT5vAO5e6aeGM3x18CEkBOHuPrrDogGcJDNJAmifERqI3T4//LcNXsEpd5zSedZjnAOu4b1q1ewPSPSyWJiq8oLT2psctHkG32GK/G21U6frFv8nIPT4XbF/p0laMds/68gWQuKBb2A2opR54c5tYw0vtQKk1Wnuutd/ciRu91T1Zq4ScnsTnBmqFiTK/p76ApY5YCtblPaac7zjuAnjEpznMMjs/HQoHVfPEdZ5Tx9TAjmsFteHSvW4Ip49W+zXmVKadpd5KRAIf6oCfJ3ksWPORe50cWih5d+W0Z2LLKUkw24puZJ+bM0q7GKjOAhiaEVFD1YWL7ReR1z/Doyp1DmTP81VdeMIbV88b7PHoXpFt6/MiP5TrotJVafH/z99xLoD6POph8A4VaJHNlI1VSKFD9qVkEeaaEgPXY7eATpOxHJDLNBIU/TY6HDYse288DcXbHzz/6kHzqcIoCxY+v6SVoM0qt+szRXbrJEBAX1zf5vhFsBzTzy1+4kmW7lMWqJI+kYUWP7/GhExUk1FBOFhXqewcMlv1uOOy0wBEmCQG4rWtODFW0ayeLD4cNSLk4qDdJRT14H+uC4IqV6aHyQPt9jYfxCmSg/wVSovWSaGk1D5zqerOg5GkiNPbbJo35ec0Idhq4yoYrUiukMazQiJaPfQWiWHlQ4ygjJ64K14hB31Ajhf9gXgSKEZsYWjjS6INTIWgTH8hEawC04gpWYG/CG6HbyXG2DzYgAOC9jDtol/4LLAt/gO1n6M12BwRmmREj5KOB+U9C9gIIvu45Ju8NMRX/xj9c6FEJCU6jEDHujVg39HrZXSCovMd6I8ANyUN7aO8RNXRG/uZ2AOSBQMPV5T3N8w9jXApYEf5It9mlGMXArrWAG82LUXA93qbSYhLvrjwCi64Pu7+U8ZDCq6PDmQ128PHRtPOgSyejPB/jBx6Mu/+r3ZqgzWyxjRhgoRXgM17EmmjcDHl+TiKVUzl/OACbJIvaLIXq1bsP17ejcQr6T8Ly9wScMACzpMz003M+UbuUv73TGxOfOIMc8aHLS/KfMioPf02mw5G66Tldc3sy7PRn95RrOcAh/t85k/wxhEYb4q4MOGqFOdEUqU6sUQc9d8z3ajNj3HxXLiDkTxT+4dNOhzO1udjeq8QMpa9QdTkeOc0+D784dK+NNVKLkH8uPpGB7XX1k0C+NTqCYnHkHpAqfU1FTqPGd6OQjGF98HCECI/7iQnjDtUi4Eobs5SQ7fKIvtAhKPfjZ+r0R575+PFvnOs97Ux3S1cimQ655UYUeI7M1/LVO9wxGVQneuXXgnr5u4XA0wBUDHIin5c3EwQAyjQmf8d3SxmSbfy1VexQPOQKCAimZUi7h7fxthIz1CqWR6BTB75KRVSGSUFY40r4CJP0ggQqueb5YKZoZOdPzt+A7c03T23Z2W3nKhFApQOhwinks2gAhRWATewHw7ZnJTnx8IptbIiOIpCHF3BGw9wTGcbQQM+9ReCJg2jaOJPN3zgtCqVotXEEwORmPA76QJZC45B1QRSaAM10+3S56QDfrGQDL0lJ27bqVL6ZmZEsio+cEZcQyT2xewhYSeDR1j3qQ2IPYB/pYVWj+x5DtfCtX5OC/ijnMT+iQET+ByiqhUeFMAoRCFIO8qzbrGAfEdUlVVHTDAGf+aBxSUKHiSVBYRKRE4v9oixvYc8GoQenw6UFcTFtlX5aeNeQyqL5vaf/MKan043HrhMs+Z2Atd4CNwatmnw9ph1TALuJRrY3wWQWXC0uzxkJiXifNDKLfPVVokCxKqpfS0KSN1qGKvqe4Q39E7hJTlnia1FMl7KXChT0Kh4EXxPqvGFkV9pN3Hx1HjQtHw24s46QaHomXhgyZeH5y95HmvwIYmBh9PAO6q7Hzo/RLCnTdbBLV94CjP/3oOjFKDeYAwzWN4w3rD9bNP/BBfEvk8iY3upJ4Ze5nzm4i6/1U+0QOn6+I7fuk9ndhMUSKBOXF2ITg0PDQrblIG5HSzOlR4ko3aexvLTnsU7gox7LGlF/AE9OStY4YOc0sLTSekF3bdQk8kEkyYx2GYmD1MZh5ggIqxY3pgz/0ZGYKNC9UkRrlMWSM+K5gd2hYkAuAnlPZvSD71zNmCQvQO4aIETq70t0tLpwk/vE8HzavqS4Xbzs6HeImqSv97g6C4uk7mfBZUkix6sZ6WZoUiJpOv11uSDE8/kiE8IeAw/IbkqvX/uiV19s+UlLEbazjm24TsNCEh6P1/R4wvJ9ih3Ua9LZ/Ccbuz2dFbvlowFOzgW/E1mxZd4PACStqlckHu6sf6UFulyYBwgL8T28YvoBk92cFGsOkq8Wfjhe34aLUPmV5eGvl3BqhrkMNl3+LCsEs2kUbnVaNJHm2x1u445fv8iHwf4GDk47B4/PmLAKfVHg0PO4eplIaYVNp7mJGMVqGADlCnsodIcbfBITZyMVWgZJ8YrTAUWCy+6jhZFBYDCIa/aYT0sNwyrJpb7PEA1p4IYjy6ite7LvjUZTF5B2kEINMJSpQcexd+4oNxn45agqMfHgTGsvnit/qFiZYUOxYqTKMYmpPxsw65zU/gxRy4bc5sW+0Gll3TPm/cMgvcjEvt0A4FsxzhidA1rKkHhFWPxJnrePX+Im/zVqDXbL9ZSk4fxDh7kCXRCXyc3QkLCcdo1Rq/L2+ojjMOC7fvtk2fI1pfelojRnNJlMYdsBbbTfP59E3Y2kgvMhdXY2Pnn470MrUlZj15kRkgjGtBBsdSvAjYYm35kOAaEEVlaXx0EzJGEUGTDq73+LCzEzp/lvArkzhwXaeaILnNfrzDrnIAg8q+UUaBO9vx5uUOSymY9UZWpUiEFP2OPHHU3AXfKcLImHf+77UcrM5mWkUnqmRYbZWt+EfoPkjMxegNxXB6kF+wTDvrYKrUV/OXp6mOdx/43V/PSKp5eTDUuNHTTg4x8X+2uq7MnlrLCc5r9hAgKwKZgjIya3sm5f3MQhbTanQLviQUJ+zuZBy5CRBRvSgsP/AmxJRpVqCAz0fyrrTBa2IEYIAYZG0h5LPzu/koHFJ0ppZciYpKIj0lwc57KvpU6BdDyKuE8vaHk1O/dmVRoi0zgIDG3F6EdTKKsuZPJXaImHuecvAdbM6fjATKQWOYXSODASZZkt+kcF82VRscv/yl7axN9gqKNopU2TjriJMW34ip3NoQRJh1MvCpVw/k/2ZhC5w611wZxiAFVlEKSSIE3UDZEXkW3GByDhpnvOM4WMJoJtI9cQMZF9LGRssKEJQVkpgnoCkn7kaaEwhYXFGrP2TRpPekOrXTe7gHa4eTTdBizExOgGzC0KIlOE9SZ9SRorHRnjPDclsvOiznq+bOOd0EbEZQSUj6yfRWnZjXBYrevansFs4EaufX2dmDETk73PI/H/uIQ74/coPiSixeJTKDX6ZlyKDGph+76BzzdRJEHz+RqjPz7nH//LV7L+5Vp/1xn4J1DxA97PsVtj8OLrWwKIZnrPiVX9ctYXodF0eKJ7Jq5P0E1Z5OFd5tvqsbZVlGB1hrA8neKO5R2RwEZjz29z5PHYVkGKsdD6ML7/FFnhlW1gFTWHcb0lllEzLG7t7HWK4o2/LdYaMj82WtcdYownUjTIf8FXQg/QaUVIRNMnZ2rEIALzco/2T1G8NbTcqRbxS1/fhpPyCk3+SsZ3ANHwRka/UYi87wR6yZILg0q1Ol9rcFVPCyU0PWKSlzZSbmWPmpWeD/lgbiACnnwjIsjFn3KsHSdMs2GdNqIlxYL+q4gkDN38zTgJI+GyCKx0Z/kDmrWKMzfysJSGhVcuE2egpBrcbg1MSx9EQ/Yb9fp/pyLdcS2K142a1knt3Y/wijsYgI/Orh+Qy8WLTICLrDAJcwoEinhDbwR3ZtlgLXer+yuEzw95LZcvM1BhwTHvbogbhJx2NBHcUxgoLk8CCq3M1i9uspA1dndbQpNjm6+BcX3Xd+2D8YqdPNxIRpsB1nvINewgC6he2Yj+Lm6UTyiWotF9mxd/V62rSMNQEPmEEpzUOgZsOQtuLmKW0oArLf2b1T4AntQIx7DVbzghiMZTobsKpMqfQhhIxK8M1wA99tL/G+3csY2DMiFoFcdOp/qwbbbqHvrv1BZ+WDZyk8+BoudsDanPs6uN62ysH/7RC4128USfy/FnCN4x33uf6GPJh2rTrDAcJ8gwsb8bHUbfICGptfVcBwQ4f4VyxOY18RPdHfB0qmlG1LoiZW55pc81lg4ahD+4PoW6faCo/dCCK/4zYRArvSrQP9S2kNU24UFsdWR88KumcEWO3iO1u897MLE8vvX9EJilWU6nleTV769rnR8tfPRw875swDWQpGCaH10Mxvl8dRtdyLWb97a+a4trOP7eQdU8BW311fckvzw3j/+b+QwoDe6+QZGqiDy+ehOpGrfzFi7OjkFJVAeXaJa4yffSaG4D/EENc6yf6Ah5Nju9qNJu1XeE+m9EONhQdrak06P5bqKRfY1iG6FHzcP9ITg0aDJq92il2O8odONPTBzumPmGlK9OoeP/NYrX1+aCZiT3E7AyDq4T3YRa5WRp2hhBRos2fzdCeJ8xu4YexzcZ1JOwqgeL2qWX1NFeQzDc4AnQdyNoDsK0izodq6fP6PETBCHFF71Rqh8hcR5enhlPJ1Ws4BNMYY3fqzrTdoboe2ee9poVIYUJsiNP1opCr7a+8FaEwIL1Q809puEV/LGZuLUWMTiyNa9+1CBwtU2JAsg8hvjIjyxowzMeljDW/mMkp9ZOnlFXuNViEVWPVlmL+b9ef4QEZsnxv1KsRAaOVNCBloDH/s0qM6EtbgdY9GWNDOpYAFhqlolx099vLNKPDuq9xNbZ19syvUznXBOM8vRNHB+ATZNrcuVGYn+eXv/XmV2yNPlXVesuK0VIsPcjqVONaG6uvy114o3cCr/RVTlv/HLHPEg9P4mzaq8brWGLhlhm7I3/6dJvxOxkUOYvhXxfvDsZgEZumO0NuAk0HwpeFr4djdKw8x5aTEc981pUHAiWRhD7F5fhw/UvBpR6GoSJxcKxZ0rJxz/4wLn9h19yy+/fAyZn/bY6UWWNgoyMEo99K773GCQTM7t1JFAro7vsq2lrpIpHE/8xw1ZxRt6iAkB7C7slqcD/z+WnXIK4sPhIxU+FYWbbmn+W44Wai4KyT3IgpQfoCUIC07xsg7svafHy7AtjsqxaBSFZNWcSibkQQiHcajwL9AQZhLiSNHjz+AyaW4M+xc4R0Q9tgi/wlKlyscUW7eBTMo0kWpm8VrPQLBmdK9nogJbeUSKALyeDUMD2FJtxAVYsSzmgvGmVlmPAdrIvDkZ5yFTbkYkryxyMQJs37WOXlsvCF7Qd/eEDmYAomPEcw6IIWEQzRsOCjWPMk3QjVmIBSC4Gp/GtaArsWg8jepLzzgW7cm2I1wz7M9zwpI22X0ySHJKE3oMtUYEHPl6WZUcR2ML+jzWvzYksIW/ac9lvmMODroyKO9IgNKu0oORuQ7cBvIeqQGnkep3F/knKGY80VfwdYEFDZjtYucoFr357tadCB5TBBHaisUM1M2uBr2UDGpu7geQY5e7fhBgMEFQQkiYnYKJLIZZzu8F4/vRrVld9FYG0JkAaOlundVlTbFQjJX5Dt3dz6sKgRqMarP3VzgtpDBWhTIP/+f2G8Cu4cm+6lZzI23VWMtsHkP9tJ156XKLb60mI0J8BR/3Db4QcQQ54RKNhQOOg3pVayhmpA9iegcrw3fEaurXHzWq9ZA/D2FK6jCTcSGv0qmt2EGU8KoE5VRt/vOSHvAx4gB6s/u9JZiiRgZgQ0HgkFmXlQzTikDgodp4h0uLO2XOF3hxlA92e/rXmzu4jmOzUTbJbO+9e+arDMTbHoEsgPVwSnBq9Rz/gkRjWo2j1U6lAaEXs9bsoOpHa6l/Gvh/u8sM78b0d/uO5U3NAYnxsLhDZBJ8DPu8Pa/voGdPBZOaCfnXCbiXxhOGnIwEyL0e5u4w5/qKEiw2/r5dPLHeFI6bBtRnzotMdMoXQJzahcs8BOArsD5vpsNijvkpCivXM3jENDzzs52BBMSNDYjnslkmX4rNGTJ6Wbg2Sq0jup1ZBj3yeHnNb4YY460yVyjHP8KwaiaKcKfgjeL/r1lDCnve2Vvq22twdZnXHRDLOg838t6nfzS+D08Ki6craEfwc6b3NDTxladpsla0Jh2FTFs6F48sjEhu8FRjqYobEnVGxhMw+HxcJhiB9nda3Ea+s+bspEmLBKC9Si4c1K06NKA7K8ydC0UIHHwUgk+5uYqotFJzCd3sFePoTNKw2i2rK5eUSQYNxObIhKgxyX5bNd5yEgKG7ZVXAawMK36dkCEnQEn+LK8ZTkWgwXi8aK8vVxtEQiBjTjfmsF+qiysjtlGTJiq7uCvxJvpk+qfY2ez5KQf+vz1LrcJEbK13iDQGn+/bCYGIz2QR/FG04Ao9gNqNnLPzfop7GW4S9GHU2K8Q6PoDnqx8YjmWRmFk62LI997sA7ZHu0dJ1zyKPhB1xDcP2r8Z/iTlA3KHYS6CAI9OKYsBZttKtKe9h1BOXyKZ+Niw2/erPlhkKxB9GlmQI9Y7eNEClQ2VSEmITuf484+4AKDQ2rQBpiXAOM8CLwmsfYcPab0Hzc4P8rEm6uBOt/ImrTK4PNFR/F6gXvb+E6mXgHQIAuiQlvVwX155H/ar0Xnzk0ZMpmfvAQ8DRZEAvTpb8jH8jap5U4IhpYwyGVuY3GUcBRRPQ6hAUtjC3tJrvLyfxCeGS0NjdX0a94byGkvqOiT8rbOb4rqNI+XASFxhe0guCM2SaZ1EkrmbU/cL1E0Rtgi8IgZuGHfpjQvzqCg70fv9GWoqWmNFWmVkskC2XAyJpaJFH0saNWDSTz9+wBdkqkRXPtEZy1tYedNGvdL9U0VQRQF766l49aImsoFjDlzj5hKEQZq9noCVaxufCWKyYibR1HxV4qLuGIaxrwE2yGFUD1p5XB0J8SE0L3QJI8iwR1KfQUqoQC0zhQBm44ajLt8lV69s3tnTbIKGkpLyGgBeu+lh5CK6Ye/3y6qkCnJ4H2pBJks1Q1sqjzN3AWJKI2VTOrBLcJulb8LWVyhirOa+85sNMsOoroggzeacWFj51bgQ9s3PyvwNC5XBdG2pUHNJHsplYDlKLszKt39GggVs5sWNlY3ye/V8Lr7wLv1ZqeS5hdUTjZ+k2xspU/Z7+eR5btLSciGIzoJ5yrpRO6ESPqlqEo52KtiS8Alh0zMK4sCEF16ApwFz20kUG9oTUFS95954Zc1yunilx87Px4de5hcCxz0o+JDUTradoNDk5Uy5l7rJMJBkEWC/4iZmoJe5uo1OWPqKwyqfolE01jWb6yyIdKEFSwwFzjhWM2liuibxSaLD96fcP2nTR64YxnWWnrdwfMY9GA83hqOTv4EiPnmRsSb1ySLBEvWLnQdtbkmLnwWkPmeDBJIGN1aRGnfOTCY81X1KN7XHa6HTcIea7ncBEY6z/pTYUKGE7iU16a6KPp08AFKKm23DPEet4mbwMJa/8Z9m7jrkKNed2ojnT4K3XJIBKCFR822baNWVAHnZZkaqyFgffPGb/Hbz8pGUB1AUPG/4fTxKQOIBI4foUoywDi++zOADG5mpR71yepog/4M21OZX7R3kyFrFMAYF8q5OQ0v70nc8sYiyl4GYXk1on+hcNkMU1cLTsKCp9pWwLeruDkvDDkBJ+q6wmGAwGYAmJr8rSO5z53VBo8lpgmJLT5uTEQBB0DxK2oTMAcDA7faOMh5ZaYZD6ZJdS7RcA3EVo8VSak2qWESHNZ4O3qgP9XtcwBnar26wW5reyDUeeJ509uIxyciqbDDCaNZXRCjRd72K0HaBs6MrKS9wzQrNAG/V7W5thX5DjvApp9rzcFPAZN6XzA2I54xGTKO+7jVUKNy1G6xxG1CwSXnijTz9ZhjTB3/iQstsr0vIlAkZ+0e3F+ARQoLpa3QDCMYHGVEV9H+AVyzcc7Nng4TxR2++KOUbO4UbULf0Bbrd9Sxs9q4OnH5s0b3smzmKb3dAGXxhiJhKG6ET/EsQjTlZ5Ly2jy3HVdooP9Nq5aHs0bFz0Eff+HP3KVq218aATJYdZ+DHsghi5o0NiOimtt2EnE5I/YmB4LHM9M1Snjz9svYS87RNrAX1/xMPI79gyNCVkGiNArMAQhnz+2u6l3qcrqecg9nX4jZVO5qSdjd8JSGPU9kdpl1azKNq2ShoyenlOqr8yldxCxXdBdy0PHOeddTPQUEQj6U1d5zOSEAeYkyI2uR+6cmQje2siW4HvAMtOcGLMPUmESzqPupC34Z6UTA556vWGz8UwoxdIuKcXplI0HvY1vcfxL9LZBQuMUwAkXV0k2r0dp8nVxphCZ4cA3gg+qjngcyWj9OKL2abFmAIHNkv7npp/9CqxN1vx/OocRhQ7PlloODaQ48wt/F+2jw3dNF+gRtWO3vfzWw9Ed/3djizeCqfc2eDDmQrWL0hdomKMY8sTUiMG8EA8PX6JpjTE655gSjWxYZ3oJLSkVk519DiQYvLJm/p+DEhB+O4X9O0ArBcNdwzqhJ7PxRK06CI/mP45ifqJ66/rHfILuU4LhGxcyX63/u71Dk/7DPinXbQChcxRlPW6sNnG6kX98YqaXqnP2iGtZIUiYs59NKVOHaE0X66klNdvdrDmNTFNc8Wao7W+PUieWJzQH5bw+w3g+8nl8gdM9wFOuC+MYIEsr3Ba8CgDQBJBZ9Gh+MyTvi3yvkY43GdquMRBNf34NFGZXONMlPikyh78k6lzgvPeX0QOXbWhJmmmwM1ZiMjMvEp54ehPJfJNI1noxtjsq9YMXS/A/M2ri/PhXHbxFRoo0GQroUVDb+L9+wJ5dYn2NB7+uX3+fXYuHWiBx1M+xFSeZl544jCdtixUZdZqzfsWq/fPTaKme8Sa+AvhO7ddbCN8LFF0eKLyxh6whKABJnyhvZuZ/CNq4FYeWPTQbnygfnuYzxHJdg/Bxk5hfAsKF7P396IldH76+Dr2DS/Sra3R2tRvEWCxio6m5WlOtY4Mq1EUEPQGmpK31zVy0Gp+QKE/CCx0PBO22UHWz/gYPmB4guxCNK9Txv9vAj6u+3OLkH+3MYdIqKjoIvOPee/CNOA31J6xZImPgdWxe2xEyiKX/iBSzPuSRM+PZiSrJP8IIvX8puD073R+Tj7qmZ9WZc1XcVx5l4UGap9xlDi2Fquv0/DVxaU5L9xefaX2KualO9co4yWeLeX/jad1vk+y/OuVzuXedmIYvXhHFbv3uxaxRdme+4wzTDVHdlROt3bFQRlbj2SO9JlRXghyKxWEll/f9RW0mSAGD3vmynDfK2Tio/ytUzOI1yksQxEO/25j6y9o1v3C7m/ph/c1GZugpQyfXppUljC3hPAcLoIAslJwmAmoreVc06Uh3jjHOGjhqH82xZQw8/U0OWKhXn4qSlvxhLwYBoVpqIqEem2MXFxb2vT0YT40ZYBkauEgInxsWEwIbn56Vb87piNZVqH5Th5iluf/UZFzPDX/IxFF2Mb2L0T3+JeHtcQtVqDNGa8hJR1zkuQAYM39houO1IjHPMdCMFtgSECsKqZ/J+D6Z+Rhj+TZ/SX+9U33KmrduRTQyeO5vIsjpYpFu6Tp+oYIXW+rg5xqrIDIOK067bEkaCkOCvahTcpLj8XCCMgd9lSPDvHUMxYEoJr73KAEpjAyv6eC2BlaFb881bs3Wb3rXVT/v5MGOJdOA6kVYWVQpWBTJl \ No newline at end of file diff --git a/test/ui/pokedex.test.ts b/test/ui/pokedex.test.ts index 41fb5e47f8c..ff5ca116ba8 100644 --- a/test/ui/pokedex.test.ts +++ b/test/ui/pokedex.test.ts @@ -12,6 +12,8 @@ import { DropDownColumn } from "#app/ui/filter-bar"; import type PokemonSpecies from "#app/data/pokemon-species"; import { PokemonType } from "#enums/pokemon-type"; import { UiMode } from "#enums/ui-mode"; +import PokedexPageUiHandler from "#app/ui/pokedex-page-ui-handler"; +import type { StarterAttributes } from "#app/system/game-data"; /* Information for the `data_pokedex_tests.psrv`: @@ -80,6 +82,26 @@ describe("UI - Pokedex", () => { return handler as PokedexUiHandler; } + /** + * Run the game to open the pokedex UI. + * @returns The handler for the pokedex UI. + */ + async function runToPokedexPage( + species: PokemonSpecies, + starterAttributes: StarterAttributes = {}, + ): Promise { + // Open the pokedex UI. + await game.runToTitle(); + + await game.phaseInterceptor.setOverlayMode(UiMode.POKEDEX_PAGE, species, starterAttributes); + + // Get the handler for the current UI. + const handler = game.scene.ui.getHandler(); + expect(handler).toBeInstanceOf(PokedexPageUiHandler); + + return handler as PokedexPageUiHandler; + } + /** * Compute a set of pokemon that have a specific ability in allAbilities * @param ability - The ability to filter for @@ -489,4 +511,37 @@ describe("UI - Pokedex", () => { expect(selectedPokemon).toEqual(pokedexHandler.lastSpecies.speciesId); }, ); + + /**************************** + * Tests for Pokédex Pages * + ****************************/ + + it("should show caught battle form as caught", async () => { + await game.importData("./test/testUtils/saves/data_pokedex_tests_v2.prsv"); + const pageHandler = await runToPokedexPage(getPokemonSpecies(Species.VENUSAUR), { form: 1 }); + + // @ts-expect-error - `species` is private + expect(pageHandler.species.speciesId).toEqual(Species.VENUSAUR); + + // @ts-expect-error - `formIndex` is private + expect(pageHandler.formIndex).toEqual(1); + + expect(pageHandler.isFormCaught()).toEqual(true); + expect(pageHandler.isSeen()).toEqual(true); + }); + + //TODO: check tint of the sprite + it("should show uncaught battle form as seen", async () => { + await game.importData("./test/testUtils/saves/data_pokedex_tests_v2.prsv"); + const pageHandler = await runToPokedexPage(getPokemonSpecies(Species.VENUSAUR), { form: 2 }); + + // @ts-expect-error - `species` is private + expect(pageHandler.species.speciesId).toEqual(Species.VENUSAUR); + + // @ts-expect-error - `formIndex` is private + expect(pageHandler.formIndex).toEqual(2); + + expect(pageHandler.isFormCaught()).toEqual(false); + expect(pageHandler.isSeen()).toEqual(true); + }); }); diff --git a/test/utils.test.ts b/test/utils.test.ts index 33f7906738c..fe93bdd6970 100644 --- a/test/utils.test.ts +++ b/test/utils.test.ts @@ -1,5 +1,6 @@ import { expect, describe, it, beforeAll } from "vitest"; import { randomString, padInt } from "#app/utils/common"; +import { deepMergeSpriteData } from "#app/utils/data"; import Phaser from "phaser"; @@ -9,6 +10,7 @@ describe("utils", () => { type: Phaser.HEADLESS, }); }); + describe("randomString", () => { it("should return a string of the specified length", () => { const str = randomString(10); @@ -46,4 +48,33 @@ describe("utils", () => { expect(result).toBe("1"); }); }); + describe("deepMergeSpriteData", () => { + it("should merge two objects' common properties", () => { + const dest = { a: 1, b: 2 }; + const source = { a: 3, b: 3, e: 4 }; + deepMergeSpriteData(dest, source); + expect(dest).toEqual({ a: 3, b: 3 }); + }); + + it("does nothing for identical objects", () => { + const dest = { a: 1, b: 2 }; + const source = { a: 1, b: 2 }; + deepMergeSpriteData(dest, source); + expect(dest).toEqual({ a: 1, b: 2 }); + }); + + it("should preserve missing and mistyped properties", () => { + const dest = { a: 1, c: 56, d: "test" }; + const source = { a: "apple", b: 3, d: "no hablo español" }; + deepMergeSpriteData(dest, source); + expect(dest).toEqual({ a: 1, c: 56, d: "no hablo español" }); + }); + + it("should copy arrays verbatim even with mismatches", () => { + const dest = { a: 1, b: [{ d: 1 }, { d: 2 }, { d: 3 }] }; + const source = { a: 3, b: [{ c: [4, 5] }, { p: [7, 8] }], e: 4 }; + deepMergeSpriteData(dest, source); + expect(dest).toEqual({ a: 3, b: [{ c: [4, 5] }, { p: [7, 8] }] }); + }); + }); }); diff --git a/tsconfig.json b/tsconfig.json index 30e208745b9..6af3e9ce650 100644 --- a/tsconfig.json +++ b/tsconfig.json @@ -7,7 +7,7 @@ "esModuleInterop": true, "strictNullChecks": true, "sourceMap": false, - "strict": false, + "strict": false, // TODO: Enable this eventually "rootDir": ".", "baseUrl": "./src", "paths": {